Skip to content

Commit

Permalink
Updated miller to 5.1.0.
Browse files Browse the repository at this point in the history
This is a relatively minor release of Miller, containing feature
requests and bugfixes while I've been working on the Windows port
(which is nearly complete).

Features:

    JSON arrays: as described here, Miller being a tabular data
    processor isn't well-position to handle arbitrary JSON. (See
    jq for that.) But as of 5.1.0, arrays are converted to maps
    with integer keys, which are then at least processable using
    Miller. Details are here. The short of it is that you now have
    three options for the main mlr executable:

--json-map-arrays-on-input    Convert JSON array indices to Miller
map keys. (This is the default.) --json-skip-arrays-on-input
Disregard JSON arrays.  --json-fatal-arrays-on-input  Raise a fatal
error when JSON arrays are encountered in the input.

This resolves #133.

    The new mlr fraction verb makes possible in a few keystrokes
    what was only possible before using two-pass DSL logic: here
    you can turn numerical values down a column into their
    fractional/percentage contribution to column totals, optionally
    grouped by other key columns.

    The DSL functions strptime and strftime now handle fractional
    seconds. For parsing, use %S format as always; for formatting,
    there are now %1S through %9S which allow you to configure a
    specified number of decimal places. The return value from
    strptime is now floating-point, not integer, which is a minor
    backward incompatibility not worth labeling this release as
    6.0.0. (You can work around this using int(strptime(...)).) The
    DSL functions gmt2sec and sec2gmt, which are keystroke-savers
    for strptime and strftime, are similarly modified, as is the
    sec2gmt verb. This resolves #125.

    A few nearly-standalone programs -- which do not have anything
    to do with record streams -- are packaged within the Miller.
    (For example, hex-dump, unhex, and show-line-endings commands.)
    These are described here.

    The stats1 and merge-fields verbs now support an antimode
    aggregator, in addition to the existing mode aggregator.

    The join verb now by default does not require sorted input,
    which is the more common use case. (Memory-parsimonious joins
    which require sorted input, while no longer the default, are
    available using -s.) This another minor backward incompatibility
    not worth making a 6.0.0 over. This resolves #134.

    mlr nest has a keystroke-saving --evar option for a common use
    case, namely, exploding a field by value across records.

Documentation:

    The DSL reference now has per-function descriptions.

    There is a new feature-counting example in the cookbook.

Bugfixes:

    mlr join -j -l was not functioning correctly. This resolves
    #136.

    JSON escapes on output (\t and so on) were incorrect. This
    resolves #135.
  • Loading branch information
wiz committed Apr 19, 2017
1 parent 9a7187e commit 90439be
Show file tree
Hide file tree
Showing 2 changed files with 7 additions and 7 deletions.
4 changes: 2 additions & 2 deletions textproc/miller/Makefile
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# $NetBSD: Makefile,v 1.10 2017/03/20 13:04:13 wiz Exp $
# $NetBSD: Makefile,v 1.11 2017/04/19 13:39:38 wiz Exp $

DISTNAME= mlr-5.0.1
DISTNAME= mlr-5.1.0
PKGNAME= ${DISTNAME:S/mlr/miller/}
CATEGORIES= devel
MASTER_SITES= ${MASTER_SITE_GITHUB:=johnkerl/}
Expand Down
10 changes: 5 additions & 5 deletions textproc/miller/distinfo
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
$NetBSD: distinfo,v 1.11 2017/03/20 13:04:13 wiz Exp $
$NetBSD: distinfo,v 1.12 2017/04/19 13:39:38 wiz Exp $

SHA1 (mlr-5.0.1.tar.gz) = e4354464c780ed0d3885d61112803ef0d138a068
RMD160 (mlr-5.0.1.tar.gz) = ab49fbdfb35a557da870cbfd8744d2efcaf61275
SHA512 (mlr-5.0.1.tar.gz) = 8c6b7857f7c3fc96800510c9be90eae50eeb9c69b99770c6193a270027e01686230dc5f1b57de6dad09107c1025f09be7bbbcaa6611f75020c6b15b562ce4e7e
Size (mlr-5.0.1.tar.gz) = 1143933 bytes
SHA1 (mlr-5.1.0.tar.gz) = 7647bfe39b9dcff7c5319acb59ae64a761c48547
RMD160 (mlr-5.1.0.tar.gz) = 29907d15d970d1f2965252cbcd7403d30c9d9f6a
SHA512 (mlr-5.1.0.tar.gz) = 2cc16e920dfee0715679141359b71851e5b461ce58bd70817550fb4b2f667d73cec6a824cfa6c199e27836184171c58f80cbce386cd6839fb7755bff5b4df370
Size (mlr-5.1.0.tar.gz) = 1189051 bytes

0 comments on commit 90439be

Please sign in to comment.