Link [ pkgsrc | NetBSD | pkgsrc git mirror | PR fulltext-search | netbsd commit viewer ]


   
        usage: [branch:branch] [user:user] [path[@revision]] keyword [... [-excludekeyword [...]]] (e.g. branch:MAIN pkgtools/pkg)




switch to index mode

recent branches: MAIN (1h)  pkgsrc-2024Q1 (19d)  pkgsrc-2023Q4 (66d)  pkgsrc-2023Q2 (98d)  pkgsrc-2023Q3 (178d) 

2024-06-06 07:16:26 UTC Now

2016-09-01 16:25:51 UTC MAIN commitmail json YAML

Updated miller to 4.5.0.

4.5.0

Customizable output format for redirected output

In a natural follow-on to the 4.4.0 redirected-output feature, the
4.5.0 release allows your tap-files to be in a different output
format from the main program output.

For example, using

mlr --icsv --opprint ... then put --ojson 'tee > "mytap-".$a.".dat",
$*' then ...

the input is CSV, the output is pretty-print tabular, but the
tee-files output is written in JSON format. Likewise --ofs, --ors,
--ops, --jvstack, and all other output-formatting options from the
main help at mlr -h and/or man mlr default to the main command-line
options, and may be overridden with flags supplied to mlr put and
mlr tee.

4.4.0

Redirected output, row-value shift, and other features

The principal feature of Miller 4.4.0 is redirected output. Inspired
by awk, Miller lets you tap/tee your data as it's processed, run
output through subordinate processes such as gzip and jq, split a
single file into multiple files per an account-ID column, and so
on.

Details:
http://johnkerl.org/miller/doc/reference.html#Redirected-output_statements_for_put

Other features:

    mlr step -a shift allows you to place the previous record's
    values alongside the current record's values:
    http://johnkerl.org/miller/doc/reference.html#step

    mlr head, when used without the group-by flag (-g), stops after
    the specified number of records has been output. For example,
    even with a multi-gigabyte data file, mlr head -n 10 hugefile.dat
    will complete quickly after producing the first ten records
    from the file.

    The sec2gmtdate verb, and sec2gmtdate function for filter/put,
    is new: please see
    http://johnkerl.org/miller/doc/reference.html#sec2gmtdate and
    http://johnkerl.org/miller/doc/reference.html#Functions_for_filter_and_put.

    sec2gmt and sec2gmtdate both leave non-numbers as-is, rather
    than formatting them as (error). This is particularly relevant
    for formatting nullable epoch-seconds columns in SQL-table
    output: if a column value is NULL then after sec2gmt or
    sec2gmtdate it will still be NULL.

    The dot operator has been universalized to work with any data
    type and produce a string. For example, if the field n has
    integers, then instead of typing mlr put '$name = "value:".string($n)'
    you can now simply domlr put '$name = "value:".$n'. This is
    particularly timely for creating filenames for redirected
    print/dump/tee/emit output.

    The online documents now have a copy of the Miller manpage:
    http://johnkerl.org/miller/doc/manpage.html

    Bugfix: inside filter/put, $x=="" was distinct from isempty($x).
    This was nonsensical; now both are the same.

(wiz)