2.3
This release brings many new filters, adapts a few existing filters to behave more like in original jq, and squashes a few bugs.
New filters
My personal highlight for this release is the new repl filter. It allows you to capture the current input and run different filters interactively.
Apart from this, a few new filters from upstream jq are now available in jaq. Thanks to @dnelson-1901 and @wader for contributing!
- Implement
replfilter by @01mf02 in #303 - Implement more time-related functions by @dnelson-1901 in #283
- Add
@uridformat by @wader in #290 - Implement
bsearchby @01mf02 in #299
Behaviour changes
This release changes the behaviour of the recursion operator .. in updates: Previously, this operator could easily cause infinite loops if the right-hand side of an update with .. would produce a value that could be iterated over, such as an array or an object. With this release, this is now avoided, by performing .. updates from the leafs to the root instead of from the root to the leafs.
- New update semantics for
..(recursion) by @01mf02 in #285 - Convert inputs of
jointo strings by @01mf02 in #302
Bugs fixed
- Correctly handle labels inside of native function arguments by @01mf02 in #301
- Allow negation directly after a binary operator by @01mf02 in #298
- Ensure no file handles remain open during in-place persist by @fgimian in #300
Miscellaneous
- Implement
try-catchwithoutlabel $x | ...by @01mf02 in #297 - Make
Debugformatload::parse::Deflike a tuple by @01mf02 in #291
New Contributors
- @dnelson-1901 made their first contribution in #283
- @fgimian made their first contribution in #300
Full Changelog: v2.2.0...v2.3.0