Releases: wader/fq
Releases · wader/fq
v0.0.3
Changes
- Now works on Windows #52
- Now builds and runs on 32-bit CPUs #30 @danfe
print/0
,println/0
function now properly convert input to string if needed. #54match
functions now don't try to be smart with buffers, use.tobytes
etc instead. Less confusing and also unbreakgrep
:ing decode values. #53
Now this works:fq 'grep("^strtab$") | parent | {name, string}' /bin/ls
- Add Arch package #19 @orhun @ulrichSchreiner @dundee
- Add Nix package #22 @siraben @jtojnar @portothree
- Add FreeBSD port @danfe
Decoder changes
bson
Add Binary JSON deccoderar
Add Unix archive decoderbsd_loopback_frame
Add BSD lookback frame decoder (used in pcap files)elf
Now does a two-pass decode to correctly handle string table referenceself
Decode more sections: symbol tables and hashesmatroska
Assert sane tag size only for stringspcap
Don't fail if incl_len > spanlen
Also thanks to @Doctor-love @mathieu-aubin for keeping things tidy.
Changelog
- 628f0f4 bson: Add decoder
- 46b59d0 crc: Unbreak build on 32-bit arch
- 681dbc2 elf,ar: Add ar decoder, improved elf decoder
- e5c620d github,ci: Add windows, macos and 32-bit linux
- 52dddbb goreleaser: Use draft release to allow release note changes
- e365f22 interp: Cleanup stdio usage and functions
- 55b1d5c interp: Move _registry to decode
- b6515c8 interp: Remove buffer smartness for regexp match functions
- b867113 matroska: Assert sane tag size only for strings
- b9aef39 pcap,pcapng,bsd_loopback_frame: Add decoder, refactor link frame into a group
- af23eb8 pcap: Don't fail if incl_len > spanlen
- a41f0d4 windows: Correct @Builtin include path join
- bf9e13c windows: Unbreak tests
(Some commits have been removed from list for clarity)
v0.0.2
Changelog
- 00f34c2 Update docker-golang from 1.17.3 to 1.17.4
- 05b179c Update docker-golang from 1.17.4 to 1.17.5
- c721ac8 Update github-go-version from 1.17.3, 1.17.3 to 1.17.4
- befe783 Update github-go-version from 1.17.4, 1.17.4 to 1.17.5
- 75aa475 decode: Generate Try?Scalar* methods for readers too
- 9b683cd deocde: Cleanup some io panic(err)
- e1e8a23 doc: Add color/unicode section and move config section
- ee023d7 doc: Add some more related and similar projects
- d02c7c4 doc: Add some more usage examples
- be46d5f doc: Cleanup todo and add some dev notes
- 47deb4d doc: Fix interpretation typo
- fe68b51 doc: Improve readme text a bit
- 916cb30 doc: Improve usage examples as bit
- 5cb3496 docker: Fix broken build, copy fq.go
- c2131bb flac: Cleanup scalar usage and fix incorrect sample rates
- 1500fd9 gojq: Update to rebased fq fork
- 3601fe3 gzip: fuzz: Don't uncompress on unknown compress method (nil create reader fn)
- f4f6383 interp: Add ._index for values in arrays
- 4558192 interp: Cleanup buffer code and implement ExtType()
- e823475 interp: Fix help a bit
- fa350c6 interp: Move display to jq
- f7c7801 interp: Rework buffer regex support
- 6ed2e2e interp: dump: Indicate arrays using jq-syntax
- 9aec91a interp: match: Fix issue with regexp meta characters when matching using a buffer
- e5e81e7 make: Fix prof build issue
- e91b22b matroska,ebml: Use scalar and require sane tag size
- eb9698f mp4,ctts: Seem more usable to treat sample count/offset as signed
- c149732 mp4,trun,fuzz: Limit number of constant sample entries
- 406263b mp4: Add comment about hdlr.component_name prefix byte
- 28a3b71 mp4: Cleanup sample decode code
- 6278529 mp4: fuzz: Make sure stsz has sane number of entries on constant sample size
- 9f08af3 mpeg,aac: Factor out escape value decoding
- dc1aea3 opus: Cleanup endian usage and fix incorrect preskip decode
- 2b2320d pcap,flows: fuzz: Handle broken packets more nicely
- 1d7ace3 pcap,pcapng,tcp: Use capture length not original length
- b525d0b pcap: fuzz: Skip ssl2 packet if too short
- 713ffe4 scalar: Add Require* and Require/Validate/AssertRange*
- f348002 sll2: fuzz: Limit address length to max 8 bytes
- eb4718f tar: Cleanup api usage
- 45026eb tar: Cleanup constant usage a bit more
- 91cc6d8 tar: Fix size decode regression after cleanup
- 07a2ebe tiff,fuzz: Fatal error on infinite ifd loops
- 91217e8 tiff: Fix endian typo and cleanup todos
- 3850968 udp: Use proper udp payload format var name
- 6a8d77b vorbis_comment: Cleanup endian usage and naming a bit
- 57e9f41 vorbis_packet: Cleanup endian usage
- f5a4d26 vscode: Use tabsize 2 for jq files
- dd883b3 wav: Cleanup endian usage
- e260830 webp: Cleanup endian usage
v0.0.1
Changelog
- 4242bf6 *_annexb: Refactor into avc/hevc_annexb
- e86b45b Add *grep/1/2 and find/1/2
- 36fd74a Add comment how raw byte regexp matching works
- d1be167 Add decode struct each order test
- 7f36f70 Add to/bytes/bits[range]
- 571bf29 Change project title
- 95ec5e1 Cleanup and rename s/BufferView/BufferRange
- 9797cdc Cleanup dev/snippets.jq
- 565f18d Correct avc_au format variable name
- 6a1fa04 Decode hvc1 as hevc samplesa also
- 74bad2d Fix broken value.fqtest
- 514739a Give proper error on missing short flag
- 57f0ec1 Improve cli help a bit
- 9704659 Init
- f33b310 Refactor decode.Value gojq bindings
- 3d90b6d Remove fixed comment
- e4e269b Rename and move cli test to pkg/cli
- 1bd34bf Same args error behavior as jq
- 3693667 Start of configurable json bit buffer formats
- 590ee52 Update ci-golang from 1.17.0 to 1.17.1
- 72a3f69 Update ci-golangci-lint from 1.42.0 to 1.42.1
- 078cf29 Update docker-golang from 1.17.1 to 1.17.2
- f5a8484 Update docker-golang from 1.17.2 to 1.17.3
- 1371bc7 Update docker-golangci-lint from 1.42.1 to 1.43.0
- f1ad700 Update github-go-version from 1.17.1, 1.17.1 to 1.17.2
- 314bd17 Update github-go-version from 1.17.2, 1.17.2 to 1.17.3
- 53a8d91 Update github-golangci-lint from 1.42.1 to 1.43.0
- 898cd26 Update golang from 1.17.0 to 1.17.1
- 31cd26e Update golangci-lint from 1.42.0 to 1.42.1
- d4b2d58 Update gomod-mapstructure from 1.4.2 to 1.4.3
- 1decf85 Update make-golangci-lint from 1.42.0 to 1.42.1
- 233aaa1 Update make-golangci-lint from 1.42.1 to 1.43.0
- 15e9f6f ansi: Correct background reset code
- 1ccab2d apev2: Add test
- 27e4770 apev2: Fatal if > 1000 tags
- 3bf1a57 avc: Cleanup and add color names etc
- 777191f avc: Correct sign expgolomb decode
- 20021f4 bitio: Handle < 0 nbits
- 7c4b0b3 bitio: Simplify by embedding reader
- f600f2e build: Require go 1.17
- 77f97aa builtin: Add chunk_by, count_by and debug
- 27ba359 bump: Add action and cleanup names
- 71e87e6 bump: Cleanup config, add config for release.yml
- 8f2f524 bump: Move bump config to where it's used
- 184df0a cli: A bit clearner array and iter prompt
- d350971 cli: Add --decode-file VAR PATH support
- 17104f0 cli: Add --options to make help a bit nicer
- 6356a84 cli: Add --raw-string
- 93fd097 cli: Add -M -C support and default to color if tty
- 8dc0f06 cli: Add completion tests
- 2010cac cli: Add error test
- 706b2f2 cli: Add exit 2 (like jq) for no args
- 569b631 cli: Add output join tests
- 49f541c cli: Add proper repl iterator support
- 3304f29 cli: Add string_input options test
- 0dd848d cli: Better filenames in errors
- 22eb53d cli: Cleanup MaybeLogFile
- c14c29a cli: Cleanup and more commens
- 10d7ed7 cli: Fix error filename on script error
- 2b8d11d cli: Fix indent
- 2d4eb9c cli: Fix non-string variables and var(; f) variant to delete etc
- f5ffd32 cli: Implement --arg, --argjson and --rawfile
- ae5566a cli: Include paths and some refactor
- ec98fd3 cli: Make --argjson and --decode-file error similar
- ac8cfca cli: Make --raw-string work with input/0 and inputs/0
- b33f2cd cli: Make profile build optional and move it to cli
- e2ff2a2 cli: Move help/0 to inter.jq, better help for -n
- d0bb9a5 cli: Nicer grammar for --null-input help
- 78eb737 cli: Nicer usage and indent input iteration
- 394e2b3 cli: Only compelete at end or whitespace
- 8d1fafe cli: Only show fq info for --help
- 2684ed2 cli: Prepare completion for better variables support
- e666380 cli: REPL and multiple files
- 75cf46f cli: Refactor options code
- f8ab00e cli: Remove unused eval debug arg
- 5c8fb5f cli: Revert accidental history path change
- 55cd45f cli: Simplify code
- 2874bc7 cli: Unbreak colors in windows
- 48517c7 cli: Unbreak part of completion
- 518b725 cli: Use format/0 to check if value is a format
- 21bef18 cli: User defined global vars
- 538f4ff cli: add -nul-output compat
- 85d1719 cli: jq compat, multiple -L
- c8f0264 cli: more jq compat
- f893295 cli: rename fq.jq to interp.jq
- 1436fdc completion: Better and _internal handling
- c7416e6 decode, interp: More buffer reuse
- 6ee7977 decode,format: Allow root array
- 58ba84f decode,interp: Add RecoverableErrorer interface instead of enumerate
- b66ed32 decode,interp: Make fuzzing work again and cleanup fatal/error code
- 5052bae decode,interp: Refactor to allow decode/fillgap a range
- d4142b8 decode,png: Add FieldFormatReaderLen, refactor out zlib to format
- 826c509 decode: Add Generated header for scalar
- 3db11d3 decode: Add UTF8Fn functions and trim some null terminated strings
- c083a9e decode: Fix MapRawToScalar regression
- c17483d decode: Fix accidental rename
- 6fba1a8 decode: Fix bitbuf root handling a bit
- d1e1cd9 decode: Fix walk root depth issue causing dump to indent incorrectly
- 1b32b42 decode: Major decode API refactor
- 7af191d decode: Move io helper into *D
- 26d615b decode: Move name/description into DecodeOptions
- 986d5ec decode: Move registry package to decode/registry and add a format group type
- ede2e77 decode: Nicer scalar template and add doc
- 6207fcc decode: Pass context to be able to cancel properly
- 5d98a69 decode: Refactor Error/Fatal into printf functions
- 9f55b6e decode: Refactor and add symbol struct and mapping
- 2fc0a71 decode: Refactor scalar usage
- 8eaba88 decode: Refactor walk code a bit, add WalkRoot* to stay inside one root
- f40320b decode: Remove D.Scalar* and add d.(Try)FieldScala*Fn instead
- c155c89 decode: Rename format *Decode to *Format
- f801cc0 decode: Rename s/FieldTryFormat/TryFieldFormat for consistency
- 776a6b3 decode: Reuse read buffer per decode to speed things up
- 9d116df decode: Rework use of TryFieldReaderRangeFormat
- d48ebc1 decode: Simplify Compound.Children
- 473b224 decode: Simplify and move format arg into DecodeOptions
- 0480a2f decode: Some format decode and sub buffer work
- a49e924 decode: Use golang.org/x/text for text decoding
- af3e6b1 dev: Add format_summary.jq
- 4c6de82 dev: Add summary how start to dump tree works
- a926c8f dev: Some debug notes
- b17a715 difftest: Remove accidental log
- 1e1ad14 difftest: Sync code
- 3cea849 dns: Cleanup a bit
- d469edf doc,make: Correctly strip out graphviz version from svg
- 15d85e1 doc: Add find/1 find/2
- 26ea6d8 doc: Cleanup
- a131210 doc: Cleanup and add note about . argument
- 0a97f86 doc: Cleanup and note about repl limit
- 8440e8a doc: Cleanup todo and dev a bit
- 15b6d64 doc: Cleanup up a bit
- 1047d90 doc: Document io packages a bit
- 1a0089e doc: Fix typo and some improvments
- 97c7403 doc: Fix typo in README
- 0814206 doc: Fix typos and old examples
- 0e8c82a doc: Improve readme goals a bit
- 2f9d93d doc: Improved readme and cleanup todo
- 242525f doc: Move formats to own file
- 583bc38 doc: Regenerate demo.svg
- a050adc doc: Regenerate demo.svg
- 18e3e20 doc: Regenerate demo.svg with newer ansisvg
- 1f61704 doc: Regenerate svg after ansisvg monospace update
- a7459b3 doc: Some basic usage and cleanup
- 6fa5ae8 doc: Some fixes
- 00b7c18 doc: Some more doc work
- 07c7daa doc: Some rewording
- 5a82224 doc: Update
- 21a74fa doc: Update
- d6d3265 doc: Update README a bit
- df5bd19 doc: Update TODO
- fb13fe5 doc: Update todo
- eee3c4e doc: Use unicode pipe in demo
- b9b0326 doc: fq - jq for files
- 790198c docker: Make image build again and install expect
- 2387ec8 docker: Use golang 1.17
- f8e5944 dump,json: Properly figure if compound or not
- ee972f4 dump: Add ascii header
- 69c6d15 editlit.jq: Update after mp4 field renames
- 27095b5 es: Decode MPEG ASC if audio stream
- 761c411 exif: Add note about JPEGInterchangeFormat
- 344f628 flac: Calculate correct md5 when total samples count is zero
- ce044ba flac: Cleanup
- 2af08da flac: Fix block_size regression
- 4f0bf92 flac: Make md5_calculated be a buffer
- 797bd4d flac: Refactor flac_metadatablock into flac_metadatablocks
- 1f26d4f flac_frame: Correctly read escaped samples and also a bit less allocations
- bc9951c flac_frame: Fail if trying to decode outside block size
- 723542a flac_frame: Make utf8Uint reader more correct and robust
- b643e22 flac_frame: Support non-8 bit align sample size
- 2daa738 flac_frame: Use d.Invalid for posssible errors
- c1d9b4d flac_metadatablocks: typ > 127 can't happen, add app id
- 984ba1a flac_metadatablocks: type >= 127 is invalid
- 2b35d28 flac_picture,mp4: avif images and data fallback is image format fails
- 509b8f8 flac_picture: Add picture_type names
- 4f8d037 format,decode: Some crc and endian refactor
- aa38ccf format,interp: Use MustGroup and add probe order test
- 577c0f5 format: Add panic if register after resolve
- 606c0b6 format: Add vorbis-comment-picture test, add .gitignore and cleanup
- 798141a format: Cleanup comments
- c0eebcc format: Remove unused ProtoBufType
- 4b48828 format: Rename source file to match format name
- d1b514e format: Some claeanup
- ec97eca format: Split default.go into format.go and shared.go
- 25f5ad7 fq,cli: Rename chunk to streaks, cleanup
- 905c0ab fq: Add chunk/1
- 46d37ef fq: Add cli sanity test
- b849895 fq: Add truncate array support to dump/display
- 8cb380e fq: Generate decode alises code
- dfcefc1 fq: Make format/0 native for performance
- ba273be fq: Make relative include work with @Builtin etc
- d23edaa fq: Rename bits/0 bytes/0 to tobits tobytes, remove string/0
- a7a58c8 fq: Rename main.go to fq.go
- 834f4a5 fq: use jq functions for all display alises
- 31d7611 fqtest: Add env support and isterminal/width/height support
- 285356d fqtest: Cleanup and dont assert when WRITE_ACTUAL
- 86b34a3 fqtest: Fix section regexp
- dee10db fqtest: No need to escape empty stdout
- 6916880 fqtest: Refactor our script part to own package
- 01d8a90 funcs: Add delta/0 delta_by/0
- 96f7a75 funcs: Fix typo add count/0
- 962d84d funcs: Make intdiv truncate to int
- 08ec4f0 funcs: Remove unsued string function
- d5c084c funcs: chunk_by comment
- 80eaa46 funcs: format helper
- c770a75 funcs: make in_bytes/bits_range more generic
- 6ff5aca gif: Support GIF87a
- 0d87018 github: Install expect to cli test
- 8e3d...