1
1
mirror of https://github.com/wader/fq.git synced 2024-11-24 03:05:22 +03:00
Commit Graph

503 Commits

Author SHA1 Message Date
Mattias Wadman
9770b0046b repl: Make prompt for array and iter more jqish
Really need to refactor script.go some day into a proper parser
2022-01-10 20:02:43 +01:00
Mattias Wadman
a6bf62ce19 msgpack: Add decoder
Fixes #25
2022-01-10 19:33:09 +01:00
Mattias Wadman
af8e7efc61 bencode: Add decoder
Closes #63
2022-01-10 10:52:14 +01:00
Mattias Wadman
b3a09805a4 interp: Document bit opts funcs and add some error tests 2022-01-09 10:43:07 +01:00
Mattias Wadman
be0ef80c8d interp,fq: Make bit operators normal functions
Uses same rule as jq math functions, 1 arg uses input, more than one all passed as args.
So "bnot 1" -> "1 | bnot", "1 bsl 1" -> "bsl(1; 1)"

Don't think it's worth changing the jq syntax for this and also it could make fq
scripts no compatiblr with other jq tools. Non-10 base number literals are still allowed
but should probably not be used in scripts, only in repl and with cli.
2022-01-09 01:06:36 +01:00
Mattias Wadman
a3cfcd0ad2 interp: Add stderr again for jq compat
Also add tests for print* and stderr
2022-01-07 11:30:09 +01:00
Mattias Wadman
628f0f403d bson: Add decoder
Only supports basic types for now
2022-01-06 00:51:37 +01:00
Mattias Wadman
681dbc26b7 elf,ar: Add ar decoder, improved elf decoder
Add x86, 386, arm64, arm v6, arm v7 linux elf test files
2022-01-05 22:05:09 +01:00
Mattias Wadman
f6abcff1fc
Merge pull request #54 from wader/interp-stdio-cleanup
interp: Cleanup stdio usage and functions
2022-01-05 21:44:48 +01:00
Mattias Wadman
e365f22084 interp: Cleanup stdio usage and functions 2022-01-05 21:41:11 +01:00
Mattias Wadman
b6515c8b15 interp: Remove buffer smartness for regexp match functions
Just confusing and breaks symbolic grep for decode values (as they are buffers).
To get buffer use tobytes functions intstead.
2022-01-05 21:13:39 +01:00
Mattias Wadman
a41f0d4b5f windows: Correct @builtin include path join
Failed because go embed paths always uses /
Switch to always use forward slash paths internally

Related to #21
2022-01-04 22:10:53 +01:00
Mattias Wadman
b9aef39ed4 pcap,pcapng,bsd_loopback_frame: Add decoder, refactor link frame into a group
Also fix incorrect struct name s/UDPDatagramIn/UDPPayloadIn/
2022-01-03 21:06:27 +01:00
Mattias Wadman
6db7218093 doc: Some more dev infomration 2021-12-31 17:13:16 +01:00
Xentripetal
7a8e3ca26e Hook into registry, add codecs 2021-12-28 13:05:10 -06:00
Mattias Wadman
55b1d5c3e7 interp: Move _registry to decode
More related to decode than interp. Maybe should have a format.go?
2021-12-25 16:29:45 +01:00
Mattias Wadman
46b59d0ebf crc: Unbreak build on 32-bit arch
Thanks Alexey Dokuchaev @danfe for report and fix.

Fixes #30
2021-12-25 15:47:54 +01:00
Mattias Wadman
f7c7801bbe interp: Rework buffer regex support
Now all regexp functions should work similar to string version for buffers.
Added scan_toend that works as scan but outputs buffer from match to end of buffer,
useful when trying to decode a format and you dont know or care to limit.
2021-12-17 16:23:44 +01:00
Mattias Wadman
f4f63835dc interp: Add ._index for values in arrays 2021-12-10 18:19:11 +01:00
Mattias Wadman
e823475d3c interp: Fix help a bit 2021-12-09 21:11:24 +01:00
Mattias Wadman
f3480026bf sll2: fuzz: Limit address length to max 8 bytes 2021-12-09 10:38:34 +01:00
Mattias Wadman
6ed2e2e72e interp: dump: Indicate arrays using jq-syntax
Related to #16
2021-12-08 16:24:28 +01:00
Mattias Wadman
c2131bb4a0 flac: Cleanup scalar usage and fix incorrect sample rates
Also split DisplayFormat into actual and sym
2021-12-08 00:39:52 +01:00
Mattias Wadman
9b683cd839 deocde: Cleanup some io panic(err) 2021-12-07 17:33:57 +01:00
Mattias Wadman
713ffe4770 scalar: Add Require* and Require/Validate/AssertRange* 2021-12-07 15:50:55 +01:00
Mattias Wadman
fa350c6165 interp: Move display to jq 2021-12-06 21:08:40 +01:00
Mattias Wadman
4558192e7c interp: Cleanup buffer code and implement ExtType() 2021-12-06 21:08:40 +01:00
Mattias Wadman
75aa47556a decode: Generate Try?Scalar* methods for readers too 2021-12-04 19:05:16 +01:00
Mattias Wadman
9aec91a675 interp: match: Fix issue with regexp meta characters when matching using a buffer 2021-12-04 17:24:43 +01:00
Mattias Wadman
d48ebc12ee decode: Simplify Compound.Children
Not a array reference anymore but instead pass around Compound reference
2021-12-03 00:06:11 +01:00
Mattias Wadman
36e5562e5b interp: Rename value.* to decode.* as it makes more sense 2021-12-02 21:43:16 +01:00
Mattias Wadman
1b7b2f9641 interp: Use gojqextra.NonUpdatableTypeError 2021-12-02 21:41:38 +01:00
Mattias Wadman
2fc0a71a47 decode: Refactor scalar usage
Move scalar into own package.
Split scalar code into decode related scalar code (that reads etc) and
scalar code that just transform the scalar value.
Use a scalar.Mapper interface instead of just a function.
Make mappers, assert and validat impement the interface.
2021-12-02 17:39:26 +01:00
Mattias Wadman
01a407a462 interp: Rename s/bufferrange/buffer and cleanup 2021-11-30 21:10:26 +01:00
Mattias Wadman
4eccb1ee71 interp: Fix broken aes_ctr, should return buffer instead of []byte 2021-11-30 15:30:34 +01:00
Mattias Wadman
f801cc0af7 decode: Rename s/FieldTryFormat/TryFieldFormat for consistency 2021-11-30 15:29:41 +01:00
Mattias Wadman
d1e1cd98c2 decode: Fix walk root depth issue causing dump to indent incorrectly 2021-11-30 12:51:52 +01:00
Mattias Wadman
8d442b82ee interp: Cleanup stdin reading and add more option tests 2021-11-30 12:25:56 +01:00
Mattias Wadman
f55b1af6ac inet: Add tcp and ipv4 reassembly
Also add tcp_stream and udp_payload to decode content
2021-11-29 18:42:18 +01:00
Mattias Wadman
9f2dddc6e1 interp,gojqextra: Make buffers values even more lazy and error early on non-scalar calls 2021-11-29 14:51:00 +01:00
Mattias Wadman
afb1050355 interp: Move _decode_value to value.jq 2021-11-29 14:26:59 +01:00
Mattias Wadman
8e5442f023 interp: Limit how often decode progress fn is called 2021-11-29 14:26:59 +01:00
Mattias Wadman
3bf1a57cfa avc: Cleanup and add color names etc 2021-11-28 17:29:56 +01:00
Mattias Wadman
6034ad7d67 interp: More sure stdOS stops the signal forward gorutine 2021-11-25 13:35:20 +01:00
Mattias Wadman
7b7faaf02b pcap: Add pcap, pcapng, ether8023, ipv4, udp, udp 2021-11-24 18:13:00 +01:00
Mattias Wadman
9d116df799 decode: Rework use of TryFieldReaderRangeFormat
Handle failure better
2021-11-24 15:25:27 +01:00
Mattias Wadman
4f8d03731d format,decode: Some crc and endian refactor 2021-11-24 12:01:01 +01:00
Mattias Wadman
e6cb708d38 mpeg: Nicer sym and description 2021-11-22 17:02:07 +01:00
Mattias Wadman
69e4eea920 interp: Better error if format/group is not found 2021-11-22 13:28:18 +01:00
Mattias Wadman
abcecb8156 interp: Remove unused []byte type 2021-11-22 01:46:06 +01:00
Mattias Wadman
fdb811ec54 gojqextra,decode: Add generic lazy JQValue 2021-11-22 01:23:59 +01:00
Mattias Wadman
1047d909ac doc: Document io packages a bit 2021-11-21 21:55:53 +01:00
Mattias Wadman
7c4b0b3844 bitio: Simplify by embedding reader 2021-11-21 21:55:09 +01:00
Mattias Wadman
aab32cf2db gojqextra,interp: Add lazy string to speed usage of decode value buffer where string is not used 2021-11-21 21:27:44 +01:00
Mattias Wadman
f40320b04c decode: Remove D.Scalar* and add d.(Try)FieldScala*Fn instead
Idea is scalar fn should not read
2021-11-21 13:08:18 +01:00
Mattias Wadman
0480a2f722 decode: Some format decode and sub buffer work 2021-11-20 18:56:59 +01:00
Mattias Wadman
278e909a2f mp4: Add tapt, prof, enof and clap boxes 2021-11-19 15:29:49 +01:00
Mattias Wadman
9cba69e64d interp: Use todescription in tests 2021-11-19 11:56:58 +01:00
Mattias Wadman
07b421011f interp: add topath/0 and make todescription return null if there is none
Move out more code from funcs.jq
2021-11-19 11:44:23 +01:00
Mattias Wadman
07c7daaf92 doc: Some rewording 2021-11-19 00:23:04 +01:00
Mattias Wadman
d838d2f613 zip: Add format decoder 2021-11-19 00:22:26 +01:00
Mattias Wadman
ffb5adff1d registry: Move to pkg/registry, feels better 2021-11-18 01:22:21 +01:00
Mattias Wadman
7af191d974 decode: Move io helper into *D 2021-11-18 01:17:41 +01:00
Mattias Wadman
6fba1a8125 decode: Fix bitbuf root handling a bit 2021-11-18 01:17:15 +01:00
Mattias Wadman
c083a9e475 decode: Fix MapRawToScalar regression 2021-11-17 17:14:19 +01:00
Mattias Wadman
986d5ecc50 decode: Move registry package to decode/registry and add a format group type 2021-11-17 16:59:56 +01:00
Mattias Wadman
5d98a6949a decode: Refactor Error/Fatal into printf functions 2021-11-17 16:26:13 +01:00
Mattias Wadman
ede2e77975 decode: Nicer scalar template and add doc 2021-11-17 16:13:10 +01:00
Mattias Wadman
826c5094f2 decode: Add Generated header for scalar 2021-11-17 10:19:10 +01:00
Mattias Wadman
b66ed32614 decode,interp: Make fuzzing work again and cleanup fatal/error code 2021-11-16 17:11:26 +01:00
Mattias Wadman
f9f866000e interp,decode: Add force option to ignore asserts 2021-11-16 13:03:56 +01:00
Mattias Wadman
5cd5633374 interp: Move jq function impls closer to where they belong 2021-11-16 11:43:11 +01:00
Mattias Wadman
996be0fae3 interp: Move more options code into options.jq 2021-11-16 10:49:18 +01:00
Mattias Wadman
3fafee8559 interp: Clearer help for -d 2021-11-16 08:43:29 +01:00
Mattias Wadman
1b32b42f93 decode: Major decode API refactor
Generate more code
More generic and comfortable API
Improve and Update format decoder to new API
Add some more format tests
2021-11-15 21:12:07 +01:00
Mattias Wadman
fcbfc29154 make: Move testjq.sh into pkg/interp 2021-11-12 00:23:16 +01:00
Mattias Wadman
178032e0a8 interp: Fix $opts shadowing in decode 2021-11-12 00:22:57 +01:00
Mattias Wadman
cc5f405554 interp,format: Update tests after decode refactor/tosym/toactual 2021-11-05 17:29:23 +01:00
Mattias Wadman
6a15625587 interp,decode: Refactor out Scalar from Value and merge Array/Struct into Compound
Also add tosym, toactual
2021-11-05 17:29:22 +01:00
Mattias Wadman
6cacc9b398 interp: Move *CtxWriter to ioextra, some comments cleanup 2021-11-05 17:28:29 +01:00
Mattias Wadman
ff2077bc0f interp: Simplify Function, aliases done in jq now 2021-11-05 17:28:29 +01:00
Mattias Wadman
93322bc434 interp: Implement format/0 in jq 2021-11-03 10:58:33 +01:00
Mattias Wadman
571bf29ab2 Change project title 2021-11-01 17:47:36 +01:00
Mattias Wadman
58ba84ff93 decode,interp: Add RecoverableErrorer interface instead of enumerate 2021-11-01 17:41:39 +01:00
Mattias Wadman
96cc1283cd interp: Eval options in jq instead of calling jq from go
Simpler and causes less weird performance issues
2021-11-01 17:05:36 +01:00
Mattias Wadman
13fae09172 interp: Don't print context cancel 2021-11-01 13:01:05 +01:00
Mattias Wadman
80b5d66c7a interp: Document inputs and repl/cli details 2021-11-01 13:01:05 +01:00
Mattias Wadman
0660ff08c6 interp: Clear up confusing --rawfile (add a jq alias) 2021-11-01 13:01:05 +01:00
Mattias Wadman
472c1ef081 interp: Refactor out string_input to own function 2021-11-01 11:40:24 +01:00
Mattias Wadman
0d693aa59e interp: Add line between usage and args help 2021-10-30 18:35:21 +02:00
Mattias Wadman
67898cb44a interp: Cleanup, use BufferRange for _open, progress for all decode 2021-10-30 01:17:14 +02:00
Mattias Wadman
88eade9ab9 ogg: Add flac support
Refactor flac_streaminfo and flac_metadata from flac_metadatablocks
Some deocde bitbuf api cleanup
2021-10-29 18:30:16 +02:00
Mattias Wadman
97f7317928 interp: Rework repl prompt code and fix some whitespace issues again 2021-10-28 12:08:19 +02:00
Mattias Wadman
cfdd92215d interp: Fix prompt issue with format 2021-10-27 16:40:39 +02:00
Mattias Wadman
80a69977a1 interp: Fix file leak and always cache for now 2021-10-26 11:50:59 +02:00
Mattias Wadman
826c8bd555 interp: Make include abs path work again 2021-10-26 11:02:30 +02:00
Mattias Wadman
2e964fa44f interp: Disable progress after decode is done
Otherwise reading might cause progress output
2021-10-25 11:11:26 +02:00
Mattias Wadman
bc1b3bf819 todo: Add note about symbols and iprint improvments 2021-10-22 11:01:48 +02:00
Mattias Wadman
b024316289 interp: Remove accidental extra space after path in prompt 2021-10-22 00:17:46 +02:00
Mattias Wadman
95ec5e1077 Cleanup and rename s/BufferView/BufferRange 2021-10-21 00:48:30 +02:00
Mattias Wadman
eedfd16b40 interp: Replace find with overloaded match that support buffer 2021-10-20 21:16:13 +02:00
Mattias Wadman
4af5739712 interp: Rework string/buffer for decode values 2021-10-20 01:31:59 +02:00
Mattias Wadman
58bf069ad5 interp: Return []byte value as a buffer for now 2021-10-19 15:44:48 +02:00
Mattias Wadman
5052bae18e decode,interp: Refactor to allow decode/fillgap a range 2021-10-19 14:38:11 +02:00
Mattias Wadman
6ff5acae03 gif: Support GIF87a 2021-10-19 01:53:37 +02:00
Mattias Wadman
8eaba88a10 decode: Refactor walk code a bit, add WalkRoot* to stay inside one root 2021-10-18 15:06:08 +02:00
Mattias Wadman
16d1f45de1 interp: find buffer should always use ByteRuneReader
Fixes grep and bgrep with buffer
2021-10-18 01:34:05 +02:00
Mattias Wadman
d6d94842b5 interp: Remove --options, probably just confusing 2021-10-18 00:59:35 +02:00
Mattias Wadman
36fd74a181 Add comment how raw byte regexp matching works 2021-10-17 14:48:50 +02:00
Mattias Wadman
7f36f703dd Add to/bytes/bits[range] 2021-10-17 14:43:37 +02:00
Mattias Wadman
7298a4cd8d interp: Add buffer match support to find and grep 2021-10-17 01:26:30 +02:00
Mattias Wadman
e86b45bd1a Add *grep/1/2 and find/1/2 2021-10-13 01:27:04 +02:00
Mattias Wadman
f0233bb811 test: Refactor out diff testing into own package 2021-10-10 17:20:49 +02:00
Mattias Wadman
879bb569f3 interp: Correctly check if _decode_value, add more has/1 tests 2021-10-07 13:35:48 +02:00
Mattias Wadman
691688022f fqtest: Refactor our script part to own package
Hopefully can be reused for docs generation
2021-10-06 18:49:03 +02:00
Mattias Wadman
1c3c65b191 interp: Rework buffer, still confusing 2021-10-05 22:26:05 +02:00
Mattias Wadman
b641c77216 interp: Cleanup unfinished/broken preview 2021-10-02 20:42:11 +02:00
Mattias Wadman
ff143d0bdb interp: Remove redundant decode arg 2021-10-02 10:53:01 +02:00
Mattias Wadman
20021f48ec bitio: Handle < 0 nbits
Read/Write64 panic on < 0 bits
Readers return error
2021-09-29 11:53:21 +02:00
Mattias Wadman
aa38ccf0e1 format,interp: Use MustGroup and add probe order test 2021-09-28 13:08:22 +02:00
Mattias Wadman
13e98d44be lint: Fix unused bufferRange and toBufferView 2021-09-28 02:07:44 +02:00
Mattias Wadman
618c1ea79f interp: Refactor/Rename BufferView
TODO: fix bit level dump again
2021-09-28 01:46:32 +02:00
Mattias Wadman
c997536f14 interp: Add root, buffer_root, format_root, parent and parents 2021-09-28 01:46:29 +02:00
Mattias Wadman
f1fcbe5dfb interp: Make has/1 work for _ext keys 2021-09-28 01:45:27 +02:00
Mattias Wadman
567bc4b342 interp: Rename to* funcs to match 2021-09-27 23:03:53 +02:00
Mattias Wadman
ab8080f495 make: Reorganize test targets
Fix whitespaces in tests
2021-09-27 22:47:17 +02:00
Mattias Wadman
3ff0c9b5e0 lint: Enable errcheck adnd revive 2021-09-27 11:01:14 +02:00
Mattias Wadman
00b7c18b65 doc: Some more doc work 2021-09-24 15:41:23 +02:00
Mattias Wadman
cf26b1fc8e interp: _readline: Use _repeat_break, add test 2021-09-23 14:39:03 +02:00
Mattias Wadman
0cce5ec61f interp: Reorganize, move out repl and options, more functions to funcs.jq 2021-09-22 21:08:36 +02:00
Mattias Wadman
110c86b959 interp: Fix broken dynamic width/height
Refactor options to fixed/dynamic and just use stack
Added support for env in fqtest readlines
2021-09-22 18:18:57 +02:00
Mattias Wadman
528e6b91ab interp: Refactor and use mapstructure 2021-09-22 01:35:27 +02:00
Mattias Wadman
6ce4ba919b interp: Use snake_case for all options 2021-09-22 00:32:57 +02:00
Mattias Wadman
bf19588e35 interp: Add ansi helper 2021-09-21 17:34:02 +02:00
Mattias Wadman
3e7e133047 interp: Move formats func def to jq 2021-09-21 16:42:35 +02:00
Mattias Wadman
ed21f36b23 mp3_frame: Rename samples_per_frame to sample_count 2021-09-20 18:54:20 +02:00
Mattias Wadman
976e992c31 interp: Move progress logic to jq 2021-09-20 17:47:40 +02:00
Mattias Wadman
d4142b875c decode,png: Add FieldFormatReaderLen, refactor out zlib to format 2021-09-19 20:49:15 +02:00
Mattias Wadman
3bfc95b3c2 test: Nicer test output 2021-09-19 11:58:37 +02:00
Mattias Wadman
90c19c6cc1 make,test: Move testjq to own script and reuse fq binary
Remove version from --help for now
2021-09-19 11:50:41 +02:00
Mattias Wadman
31d7611f55 fqtest: Add env support and isterminal/width/height support 2021-09-19 02:17:31 +02:00
Mattias Wadman
93fd097b53 cli: Add -M -C support and default to color if tty 2021-09-19 01:19:48 +02:00
Mattias Wadman
e4e269b162 Rename and move cli test to pkg/cli 2021-09-18 18:23:28 +02:00
Mattias Wadman
1fe5d95307 interp: Some better naming and typos 2021-09-18 10:47:43 +02:00
Mattias Wadman
3db11d3fa8 decode: Add UTF8Fn functions and trim some null terminated strings 2021-09-17 22:13:35 +02:00
Mattias Wadman
797bd4d652 flac: Refactor flac_metadatablock into flac_metadatablocks
metadatablocks are not really used alone
2021-09-17 15:46:13 +02:00
Mattias Wadman
ee972f490d dump: Add ascii header 2021-09-16 22:40:03 +02:00
Mattias Wadman
6ee7977c53 decode,format: Allow root array 2021-09-16 16:27:47 +02:00
Mattias Wadman
473b2243c9 decode: Simplify and move format arg into DecodeOptions 2021-09-16 15:29:11 +02:00
Mattias Wadman
26d615b852 decode: Move name/description into DecodeOptions 2021-09-16 14:42:32 +02:00
Mattias Wadman
c7416e6dcb decode, interp: More buffer reuse 2021-09-16 12:24:53 +02:00
Mattias Wadman
6207fcc8f0 decode: Pass context to be able to cancel properly 2021-09-16 10:32:29 +02:00
Mattias Wadman
8277b79c21 gojq: Update fq fork, support JQValue alt // 2021-09-16 00:46:25 +02:00
Mattias Wadman
c17483dbe0 decode: Fix accidental rename 2021-09-15 00:52:57 +02:00
Mattias Wadman
776a6b3136 decode: Reuse read buffer per decode to speed things up 2021-09-14 18:54:59 +02:00
Mattias Wadman
c770a754dc funcs: make in_bytes/bits_range more generic 2021-09-14 12:55:53 +02:00
Mattias Wadman
26c594feb1 input: make -R mimic jq on io error 2021-09-13 12:12:34 +02:00
Mattias Wadman
dcceaa4b35 repl: Fix help and error message a bit 2021-09-12 13:08:56 +02:00
Mattias Wadman
7423f450ef interp: Cleanup output types 2021-09-12 13:08:56 +02:00
Mattias Wadman
3d90b6d4b3 Remove fixed comment 2021-09-12 13:08:56 +02:00
Mattias Wadman
c9777aaded repl: completion in jq 2021-09-12 13:08:56 +02:00
Mattias Wadman
44d8b66a8e repl: Give error if repl is used in non-repl mode 2021-09-12 13:08:56 +02:00
Mattias Wadman
ec98fd315a cli: Make --argjson and --decode-file error similar 2021-09-12 13:08:56 +02:00
Mattias Wadman
1d15c1d0f2 gojq: Update fq fork 2021-09-12 13:08:56 +02:00
Mattias Wadman
4344b621da mp3: Only look for supported mp3 sync headers 2021-09-12 13:08:55 +02:00
Mattias Wadman
da386ea282 mp3: Be more relaxed with zero padding, just warn 2021-09-12 13:08:55 +02:00
Mattias Wadman
d350971fa2 cli: Add --decode-file VAR PATH support 2021-09-12 13:08:55 +02:00
Mattias Wadman
f5ffd32096 cli: Implement --arg, --argjson and --rawfile 2021-09-12 13:08:55 +02:00
Mattias Wadman
962d84dc68 funcs: Make intdiv truncate to int 2021-09-12 13:08:55 +02:00
Mattias Wadman
48517c7c60 cli: Unbreak part of completion 2021-09-12 13:08:55 +02:00
Mattias Wadman
f8e5944f91 dump,json: Properly figure if compound or not 2021-09-12 13:08:55 +02:00
Mattias Wadman
0a97f86f32 doc: Cleanup and note about repl limit 2021-09-12 13:08:55 +02:00
Mattias Wadman
a49e924d5f decode: Use golang.org/x/text for text decoding 2021-09-12 13:08:55 +02:00
Mattias Wadman
85d17199de cli: jq compat, multiple -L 2021-09-12 13:08:55 +02:00
Mattias Wadman
c8f0264682 cli: more jq compat 2021-09-12 13:08:55 +02:00
Mattias Wadman
ccf6cab491 repl: use map in _query_slurp_wrap 2021-09-12 13:08:55 +02:00
Mattias Wadman
538f4ffe71 cli: add -nul-output compat 2021-09-12 13:08:55 +02:00
Mattias Wadman
8cb380e7d9 fq: Generate decode alises code 2021-09-12 13:08:55 +02:00
Mattias Wadman
834f4a5893 fq: use jq functions for all display alises 2021-09-12 13:08:55 +02:00
Mattias Wadman
905c0ab74e fq: Add chunk/1 2021-09-12 13:08:55 +02:00
Mattias Wadman
25f5ad7566 fq,cli: Rename chunk to streaks, cleanup 2021-09-12 13:08:55 +02:00
Mattias Wadman
285356d21e fqtest: Cleanup and dont assert when WRITE_ACTUAL 2021-09-12 13:08:55 +02:00
Mattias Wadman
1d0ebb55e4 repl: Handle directives, add tests 2021-09-12 13:08:55 +02:00
Mattias Wadman
49f541c317 cli: Add proper repl iterator support 2021-09-12 13:08:54 +02:00
Mattias Wadman
c14c29a4a9 cli: Cleanup and more commens 2021-09-12 13:08:54 +02:00
Mattias Wadman
184df0a11b cli: A bit clearner array and iter prompt 2021-09-12 13:08:54 +02:00
Mattias Wadman
c7d45ff1e0 mp4: add pssh_playready format 2021-09-12 13:08:54 +02:00
Mattias Wadman
10d7ed7806 cli: Fix error filename on script error 2021-09-12 13:08:54 +02:00
Mattias Wadman
ac8cfca500 cli: Make --raw-string work with input/0 and inputs/0
Also lots of refactor
2021-09-12 13:08:54 +02:00
Mattias Wadman
2010caccd5 cli: Add error test 2021-09-12 13:08:54 +02:00
Mattias Wadman
569b631904 cli: Add output join tests 2021-09-12 13:08:54 +02:00
Mattias Wadman
3304f2956a cli: Add string_input options test 2021-09-12 13:08:54 +02:00
Mattias Wadman
17104f02d3 cli: Add --options to make help a bit nicer 2021-09-12 13:08:54 +02:00
Mattias Wadman
6356a84f15 cli: Add --raw-string 2021-09-12 13:08:54 +02:00
Mattias Wadman
4242bf6013 *_annexb: Refactor into avc/hevc_annexb 2021-09-12 13:08:54 +02:00
Mattias Wadman
9f55b6e619 decode: Refactor and add symbol struct and mapping 2021-09-12 13:08:53 +02:00
Mattias Wadman
f4b11b4be2 mpeg_annexb: Add format 2021-09-12 13:08:53 +02:00
Mattias Wadman
b33f2cd678 cli: Make profile build optional and move it to cli 2021-09-12 13:08:53 +02:00
Mattias Wadman
b849895970 fq: Add truncate array support to dump/display 2021-09-12 13:08:53 +02:00
Mattias Wadman
ba273be71e fq: Make relative include work with @builtin etc 2021-09-12 13:08:53 +02:00
Mattias Wadman
f828ae1319 gojq: Update gojq fq fork
Removed some unneeded error changes in fork
2021-09-12 13:08:53 +02:00
Mattias Wadman
dfcefc1b55 fq: Make format/0 native for performance 2021-09-12 13:08:53 +02:00
Mattias Wadman
45afbe6201 wip 2021-09-12 13:08:53 +02:00
Mattias Wadman
08ec4f0eeb funcs: Remove unsued string function 2021-09-12 13:08:53 +02:00
Mattias Wadman
dee10dbb78 fqtest: No need to escape empty stdout 2021-09-12 13:08:53 +02:00
Mattias Wadman
e2ff2a277a cli: Move help/0 to inter.jq, better help for -n 2021-09-12 13:08:53 +02:00
Mattias Wadman
d23edaa4a5 fq: Rename bits/0 bytes/0 to tobits tobytes, remove string/0 2021-09-12 13:08:53 +02:00
Mattias Wadman
518b7250e5 cli: Use format/0 to check if value is a format 2021-09-12 13:08:53 +02:00
Mattias Wadman
01d8a902eb funcs: Add delta/0 delta_by/0 2021-09-12 13:08:53 +02:00
Mattias Wadman
96f7a750b9 funcs: Fix typo add count/0 2021-09-12 13:08:53 +02:00
Mattias Wadman
2874bc7995 cli: Unbreak colors in windows 2021-09-12 13:08:53 +02:00
Mattias Wadman
75cf46f8f4 cli: Refactor options code
Make nearly all options be just options and cli arguments
just sets various options.
2021-09-12 13:08:53 +02:00
Mattias Wadman
5c8fb5f97a cli: Revert accidental history path change 2021-09-12 13:08:52 +02:00
Mattias Wadman
22eb53d5f6 cli: Cleanup MaybeLogFile 2021-09-12 13:08:52 +02:00
Mattias Wadman
6a8ba315fa number_to_bytes: Force int to make it work with bigint 2021-09-12 13:08:52 +02:00
Mattias Wadman
1888bb2892 gojq: Remove div operator
Add intdiv function intead
2021-09-12 13:08:52 +02:00
Mattias Wadman
e374b427f2 test: Less verbose 2021-09-12 13:08:52 +02:00
Mattias Wadman
b9b0326009 doc: fq - jq for files 2021-09-12 13:08:52 +02:00
Mattias Wadman
f600f2e54f build: Require go 1.17 2021-09-12 13:08:52 +02:00
Mattias Wadman
d9b45ba1ec internal: _global_var returns new value instead of _global_state 2021-09-12 13:08:52 +02:00
Mattias Wadman
80eaa4637e funcs: format helper 2021-09-12 13:08:52 +02:00
Mattias Wadman
d5c084c54a funcs: chunk_by comment 2021-09-12 13:08:52 +02:00
Mattias Wadman
54e121c72b interp: Refactor repl inputs a bit 2021-09-12 13:08:51 +02:00
Mattias Wadman
86b34a3f41 fqtest: Fix section regexp 2021-09-12 13:08:51 +02:00
Mattias Wadman
2684ed2561 cli: Prepare completion for better variables support 2021-09-12 13:08:51 +02:00
Mattias Wadman
e666380c4f cli: REPL and multiple files 2021-09-12 13:08:51 +02:00
Mattias Wadman
0dd848de6c cli: Better filenames in errors 2021-09-12 13:08:51 +02:00
Mattias Wadman
394e2b3837 cli: Only compelete at end or whitespace 2021-09-12 13:08:51 +02:00
Mattias Wadman
77f97aade2 builtin: Add chunk_by, count_by and debug 2021-09-12 13:08:51 +02:00
Mattias Wadman
f1507f7f65 mod: Use proper path and dont use replace 2021-09-12 13:08:50 +02:00
Mattias Wadman
1436fdc8ba completion: Better and _internal handling 2021-09-12 13:08:50 +02:00
Mattias Wadman
c155c89ba3 decode: Rename format *Decode to *Format 2021-09-12 13:08:50 +02:00
Mattias Wadman
2d4eb9ccc7 cli: Fix non-string variables and var(; f) variant to delete etc 2021-09-12 13:08:50 +02:00
Mattias Wadman
21bef18666 cli: User defined global vars 2021-09-12 13:08:50 +02:00
Mattias Wadman
0c7fa090b0 gojq: Initial update support
decode value give no updateable error
JQValue json value tries to replicate behaveior
2021-09-12 13:08:50 +02:00
Mattias Wadman
f8ab00eb84 cli: Remove unused eval debug arg 2021-09-12 13:08:50 +02:00
Mattias Wadman
f89329568a cli: rename fq.jq to interp.jq 2021-09-12 13:08:50 +02:00
Mattias Wadman
ae5566a6ce cli: Include paths and some refactor 2021-09-12 13:08:50 +02:00
Mattias Wadman
706b2f28e5 cli: Add exit 2 (like jq) for no args 2021-09-12 13:08:50 +02:00
Mattias Wadman
8d1fafe4b8 cli: Only show fq info for --help 2021-09-12 13:08:50 +02:00
Mattias Wadman
55cd45f675 cli: Simplify code 2021-09-12 13:08:49 +02:00
Mattias Wadman
8dc0f06b62 cli: Add completion tests 2021-09-12 13:08:49 +02:00
Mattias Wadman
2b8d11db20 cli: Fix indent 2021-09-12 13:08:49 +02:00
Mattias Wadman
78eb73724a cli: Nicer usage and indent input iteration 2021-09-12 13:08:49 +02:00
Mattias Wadman
3693667df4 Start of configurable json bit buffer formats 2021-09-12 13:08:49 +02:00
Mattias Wadman
f33b31049d Refactor decode.Value gojq bindings 2021-09-12 13:08:48 +02:00
Mattias Wadman
d0bb9a59f6 cli: Nicer grammar for --null-input help 2021-09-12 13:08:48 +02:00
Mattias Wadman
57f0ec1856 Improve cli help a bit 2021-09-12 13:08:48 +02:00
Mattias Wadman
d1be16784b Add decode struct each order test 2021-09-12 13:08:48 +02:00
Mattias Wadman
74bad2dca5 Fix broken value.fqtest 2021-09-12 13:08:48 +02:00
Mattias Wadman
1bd34bffc8 Same args error behavior as jq 2021-09-12 13:08:48 +02:00
Mattias Wadman
514739a149 Give proper error on missing short flag 2021-09-12 13:08:48 +02:00
Mattias Wadman
970465996c Init 2021-09-12 13:08:42 +02:00