"jq" is a JSON querying and processing tool for the command line. It implements features from awk/grep/sed for structured data, can be used in pipes or mangle data in-place with a simple query language and combination/filtering syntax. Implemented in portable C with minimal dependencies.
Homepage
Download
Recent Releases
1.7.114 Dec 2023 06:25
minor feature:
DecNumberToString calls for a buffer that can hold a string of digits+14
Characters, not a buffer of size digits+14.
We need to allocate an extra byte for the NUL byte.
-10E-1000010001, for example, will be stringified as -1.0E-1000010000.
And decNumberToString will currently write an extra NUL byte after the.
Allocated buffer in the heap.
Originally reported by @SEU-SSL on GitHub.
Ref: https://.chromium.org/p/oss-fuzz//detail?id=64574.
GHSA-686w-5m7m-54vc.
1.520 Aug 2015 18:05
major feature:
Regexp support (using Oniguruma)!
A proper module system.
Destructuring syntax ( . as first, second, foo, bar ... ).
Math functions.
An online streaming parser.
Minimal I/O builtions (inputs, debug).
Try/catch for catching and handling errors.
Tail call optimization (TCO), which allows efficient recursion in jq.
A variety of new control structure builtins (e.g., while(cond; exp),
repeat(exp), until(cond; next)), many of which internally use TCO.
An enhanced form of reduce : foreach exp as name (init_exp; update_exp;
extract_exp) .
The ability to read module data files.
Aupport for application/json-seq (RFC7464).
A large variety of new utility functions, many being community contributions
(e.g., bsearch , for binary searching arrays).
Datetime functions.
A variety of performance enhancements.
Def( a): ...; is now allowed as an equivalent of def(a): a as a ...;
test and build improvements, including gcov support.
|