Work on this release has been sponsored by the NLnet foundation, to whom I would like to express my deep gratitude.
This release brings an exciting new addition: the jaq playground! Unlike its counterpart, the jq playground, the jaq playground runs jq filters on your computer and does not send data to a server to process it there. This makes it also suitable to run filters that yield an infinite number of outputs. For more details, see here.
The other big change is that when jaq is used as a library, you can now use it to process custom types of values. That makes it possible to adapt jaq to process non-JSON data, similarly to fq. See ValT
for a description of the functions that every value type has to provide. (Thanks to @wader for providing feedback!)
In this version, the core and standard libraries of jaq (which provide named functions, such as length
) still only provide functionality for JSON, but I plan to also change this in the future.
New features
- New command-line options:
--indent
and--tab
by @chutz #153 - New filters:
indices
,index
, andrindex
by @kklingenberg #158 #165 - Division of strings (string splitting) #167
- Subtraction of arrays #164
Smaller changes
- Fall back to regular file loading if memory mapping fails #168
- More cleanly handle
range(from; upto; 0)
#170 - Provide binary builds for
aarch64-apple-darwin
(Apple Silicon) by @amitksingh1490 #166 - Make
jaq-interpret
tests pass on 32-bit platforms by @nekopsykose #159 - Add Windows install (Scoop) instructions by @IndyV in #171
New Contributors
- @nekopsykose made their first contribution in #159
- @amitksingh1490 made their first contribution in #166
- @chutz made their first contribution in #153
- @IndyV made their first contribution in #171
Full Changelog: v1.3.0...v1.4.0