v0.0.4
Changes
- Add a
torepr/0
function that converts decoded value into what it represents.
Initially works for:bencode
,cbor
,bson
andmsgpack
#74
Example usage:
fq torepr file.cbor
fq -i torepr file.cbor
fq torepr.field file.cbor
fq 'torepr | .field | ...' file.cbor
- Add
stderr/0
function for jq compatibility #58 - Bitwise operators
band
,bor
etc are now normal functions instead of operators. Was done to be syntax compatible with jq #61
Uses the same convention as jq math functions: Unary uses input123 | bnot
, more than one argument all as argumentsband(123; 456)
- Decode API now supports null values #81
- Decode API now supports arbitrary large integers #79
- TCP reassembly now supports streams with missing SYN/ACK #57
- Update readline package to version with less dependencies #83
- Make REPL prompt more jqish #70
Decoder changes
bencode
Add decoder #64cbor
Add decoder #75msgpack
Add decoder #69mp4
Much improved sample decode #82 #78png
Decode PLTE and tRNS chunks #59tar
Don't assume there is a end marker and support more than 2 blocks #86 #87
Also thanks to @Doctor-love for keeping things tidy.
Changelog
- af8e7ef bencode: Add decoder
- 0b0f28e cbor: Add decoder
- 1383b41 decode,interp: Add arbitrary large integer support (BigInt)
- 548a065 decode,interp: Finish up nil value support
- ff5c0b8 decode: Error on negative number of bits when reading numbers
- cf8a50c decode: Use stable sort for values to not change order or values with same range start
- b4694b6 doc,dev: Add some more decoder implementation help
- 0c1716b doc: Add alpine and go run
- 809210b doc: Add more dev tips
- 59b8803 doc: Document dev dependencies and related PRs/issues etc
- 6ca4767 doc: Improve formats graph a bit
- 8e9700d doc: Improve readme a bit and add torepr example
- 0cf486d elf: fix all-platforms naming typo
- 263f1ae flac: Don't allow zero subframe sample size
- 729a6ca formats: Sort and make lists less likely to cause collision
- 78c0775 fq: Embed version in source
- aa7adb6 fq: Update version to 0.0.4
- 7461264 fuzz: Skip other tests when fuzzing
- be0ef80 interp,fq: Make bit operators normal functions
- a3cfcd0 interp: Add stderr again for jq compat
- 149cb3f interp: Add torepr/0 that converts decode value into what it reptresents
- b3a0980 interp: Document bit opts funcs and add some error tests
- 8d10423 make: Fix quote issue in release script
- 4a1e859 mp4: Improved stsz handling
- 61bf2ce mp4: Refactor sample decode into something more sane
- a6bf62c msgpack: Add decoder
- edad481 num,mathextra: Rename num package to mathextra
- bfc977b png: Decode PLTE and tRNS chunks and cleanup syms a bit
- 36d2891 readline: Update to verison with less deps
- 9770b00 repl: Make prompt for array and iter more jqish
- ba1edef tar: Allow more than 2 zero end blocks at end
- 5921d76 tar: Don't assume there is a end marker
- edd0ae1 tcp,flow: By default allow missing syn/ack for now
(Some commits have been removed from list for clarity)