Skip to content

v0.0.4

Compare
Choose a tag to compare
@wader wader released this 21 Jan 14:38
· 2226 commits to master since this release

Changes

  • Add a torepr/0 function that converts decoded value into what it represents.
    Initially works for:bencode, cbor, bson and msgpack #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 input 123 | bnot, more than one argument all as arguments band(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 #64
  • cbor Add decoder #75
  • msgpack Add decoder #69
  • mp4 Much improved sample decode #82 #78
  • png Decode PLTE and tRNS chunks #59
  • tar 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)