@port-labs/jq-node-bindings 1.0.4 → 1.1.0-dev
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.claude/settings.local.json +12 -0
- package/configure +6 -5
- package/deps/jq/.claude/settings.local.json +7 -0
- package/deps/jq/.gitattributes +1 -3
- package/deps/jq/AUTHORS +55 -1
- package/deps/jq/COPYING +40 -0
- package/deps/jq/Makefile.am +40 -36
- package/deps/jq/NEWS.md +277 -2
- package/deps/jq/README.md +23 -5
- package/deps/jq/compile-ios.sh +1 -1
- package/deps/jq/config/m4/check-math-func.m4 +2 -2
- package/deps/jq/config/m4/find-func-no-libs2.m4 +3 -3
- package/deps/jq/configure.ac +10 -18
- package/deps/jq/docs/Pipfile.lock +368 -313
- package/deps/jq/docs/README.md +3 -4
- package/deps/jq/docs/build_manpage.py +1 -1
- package/deps/jq/docs/build_mantests.py +1 -1
- package/deps/jq/docs/build_website.py +1 -8
- package/deps/jq/docs/content/download/default.yml +49 -9
- package/deps/jq/docs/content/index.yml +9 -0
- package/deps/jq/docs/content/manual/{manual.yml → dev/manual.yml} +218 -61
- package/deps/jq/docs/content/manual/v1.3/manual.yml +0 -5
- package/deps/jq/docs/content/manual/v1.4/manual.yml +0 -5
- package/deps/jq/docs/content/manual/v1.5/manual.yml +3 -8
- package/deps/jq/docs/content/manual/v1.6/manual.yml +3 -8
- package/deps/jq/docs/content/manual/v1.7/manual.yml +499 -500
- package/deps/jq/docs/content/manual/v1.8/manual.yml +3858 -0
- package/deps/jq/docs/content/tutorial/default.yml +3 -3
- package/deps/jq/docs/manual_schema.yml +0 -3
- package/deps/jq/docs/public/CNAME +1 -0
- package/deps/jq/docs/templates/index.html.j2 +10 -10
- package/deps/jq/docs/templates/manual.html.j2 +14 -3
- package/deps/jq/docs/templates/shared/_head.html.j2 +8 -3
- package/deps/jq/docs/templates/shared/_navbar.html.j2 +4 -4
- package/deps/jq/jq.1.prebuilt +219 -44
- package/deps/jq/jq.spec +2 -2
- package/deps/jq/libjq.pc.in +1 -1
- package/deps/jq/scripts/version +1 -1
- package/deps/jq/sig/v1.7.1/jq-1.7.1.tar.gz.asc +16 -0
- package/deps/jq/sig/v1.7.1/jq-1.7.1.zip.asc +16 -0
- package/deps/jq/sig/v1.7.1/jq-linux-amd64.asc +16 -0
- package/deps/jq/sig/v1.7.1/jq-linux-arm64.asc +16 -0
- package/deps/jq/sig/v1.7.1/jq-linux-armel.asc +16 -0
- package/deps/jq/sig/v1.7.1/jq-linux-armhf.asc +16 -0
- package/deps/jq/sig/v1.7.1/jq-linux-i386.asc +16 -0
- package/deps/jq/sig/v1.7.1/jq-linux-mips.asc +16 -0
- package/deps/jq/sig/v1.7.1/jq-linux-mips64.asc +16 -0
- package/deps/jq/sig/v1.7.1/jq-linux-mips64el.asc +16 -0
- package/deps/jq/sig/v1.7.1/jq-linux-mips64r6.asc +16 -0
- package/deps/jq/sig/v1.7.1/jq-linux-mips64r6el.asc +16 -0
- package/deps/jq/sig/v1.7.1/jq-linux-mipsel.asc +16 -0
- package/deps/jq/sig/v1.7.1/jq-linux-mipsr6.asc +16 -0
- package/deps/jq/sig/v1.7.1/jq-linux-mipsr6el.asc +16 -0
- package/deps/jq/sig/v1.7.1/jq-linux-powerpc.asc +16 -0
- package/deps/jq/sig/v1.7.1/jq-linux-ppc64el.asc +16 -0
- package/deps/jq/sig/v1.7.1/jq-linux-riscv64.asc +16 -0
- package/deps/jq/sig/v1.7.1/jq-linux-s390x.asc +16 -0
- package/deps/jq/sig/v1.7.1/jq-linux64.asc +16 -0
- package/deps/jq/sig/v1.7.1/jq-macos-amd64.asc +16 -0
- package/deps/jq/sig/v1.7.1/jq-macos-arm64.asc +16 -0
- package/deps/jq/sig/v1.7.1/jq-osx-amd64.asc +16 -0
- package/deps/jq/sig/v1.7.1/jq-win64.exe.asc +16 -0
- package/deps/jq/sig/v1.7.1/jq-windows-amd64.exe.asc +16 -0
- package/deps/jq/sig/v1.7.1/jq-windows-i386.exe.asc +16 -0
- package/deps/jq/sig/v1.7.1/sha256sum.txt +26 -0
- package/deps/jq/sig/v1.8.0/jq-1.8.0.tar.gz.asc +16 -0
- package/deps/jq/sig/v1.8.0/jq-1.8.0.zip.asc +16 -0
- package/deps/jq/sig/v1.8.0/jq-linux-amd64.asc +16 -0
- package/deps/jq/sig/v1.8.0/jq-linux-arm64.asc +16 -0
- package/deps/jq/sig/v1.8.0/jq-linux-armel.asc +16 -0
- package/deps/jq/sig/v1.8.0/jq-linux-armhf.asc +16 -0
- package/deps/jq/sig/v1.8.0/jq-linux-i386.asc +16 -0
- package/deps/jq/sig/v1.8.0/jq-linux-mips.asc +16 -0
- package/deps/jq/sig/v1.8.0/jq-linux-mips64.asc +16 -0
- package/deps/jq/sig/v1.8.0/jq-linux-mips64el.asc +16 -0
- package/deps/jq/sig/v1.8.0/jq-linux-mips64r6.asc +16 -0
- package/deps/jq/sig/v1.8.0/jq-linux-mips64r6el.asc +16 -0
- package/deps/jq/sig/v1.8.0/jq-linux-mipsel.asc +16 -0
- package/deps/jq/sig/v1.8.0/jq-linux-mipsr6.asc +16 -0
- package/deps/jq/sig/v1.8.0/jq-linux-mipsr6el.asc +16 -0
- package/deps/jq/sig/v1.8.0/jq-linux-powerpc.asc +16 -0
- package/deps/jq/sig/v1.8.0/jq-linux-ppc64el.asc +16 -0
- package/deps/jq/sig/v1.8.0/jq-linux-riscv64.asc +16 -0
- package/deps/jq/sig/v1.8.0/jq-linux-s390x.asc +16 -0
- package/deps/jq/sig/v1.8.0/jq-linux64.asc +16 -0
- package/deps/jq/sig/v1.8.0/jq-macos-amd64.asc +16 -0
- package/deps/jq/sig/v1.8.0/jq-macos-arm64.asc +16 -0
- package/deps/jq/sig/v1.8.0/jq-osx-amd64.asc +16 -0
- package/deps/jq/sig/v1.8.0/jq-win64.exe.asc +16 -0
- package/deps/jq/sig/v1.8.0/jq-windows-amd64.exe.asc +16 -0
- package/deps/jq/sig/v1.8.0/jq-windows-i386.exe.asc +16 -0
- package/deps/jq/sig/v1.8.0/sha256sum.txt +26 -0
- package/deps/jq/src/builtin.c +446 -271
- package/deps/jq/src/builtin.jq +25 -60
- package/deps/jq/src/bytecode.h +8 -3
- package/deps/jq/src/compile.c +22 -43
- package/deps/jq/src/compile.h +1 -1
- package/deps/jq/src/execute.c +20 -25
- package/deps/jq/src/jq_test.c +113 -44
- package/deps/jq/src/jv.c +134 -42
- package/deps/jq/src/jv.h +10 -3
- package/deps/jq/src/jv_alloc.c +8 -5
- package/deps/jq/src/jv_alloc.h +0 -1
- package/deps/jq/src/jv_aux.c +41 -8
- package/deps/jq/src/jv_dtoa.c +4 -12
- package/deps/jq/src/jv_dtoa_tsd.c +5 -4
- package/deps/jq/src/jv_dtoa_tsd.h +1 -1
- package/deps/jq/src/jv_parse.c +5 -3
- package/deps/jq/src/jv_print.c +87 -65
- package/deps/jq/src/jv_unicode.c +18 -0
- package/deps/jq/src/jv_unicode.h +2 -0
- package/deps/jq/src/lexer.c +303 -278
- package/deps/jq/src/lexer.h +5 -4
- package/deps/jq/src/lexer.l +8 -2
- package/deps/jq/src/libm.h +15 -5
- package/deps/jq/src/linker.c +6 -4
- package/deps/jq/src/locfile.c +12 -12
- package/deps/jq/src/main.c +204 -270
- package/deps/jq/src/parser.c +1105 -1273
- package/deps/jq/src/parser.y +149 -181
- package/deps/jq/src/util.c +46 -48
- package/deps/jq/src/util.h +1 -1
- package/deps/jq/tests/base64.test +12 -0
- package/deps/jq/tests/jq.test +429 -37
- package/deps/jq/tests/jq_fuzz_load_file.c +1 -0
- package/deps/jq/tests/man.test +46 -13
- package/deps/jq/tests/manonig.test +13 -0
- package/deps/jq/tests/onig.test +40 -2
- package/deps/jq/tests/optional.test +4 -12
- package/deps/jq/tests/setup +5 -1
- package/deps/jq/tests/shtest +358 -130
- package/deps/jq/tests/uri.test +38 -0
- package/deps/jq/tests/uritest +5 -0
- package/deps/jq/{src → vendor}/decNumber/decBasic.c +1 -1
- package/deps/jq/{src → vendor}/decNumber/decCommon.c +1 -1
- package/deps/jq/{src → vendor}/decNumber/decNumber.c +4 -4
- package/deps/jq/{modules → vendor}/oniguruma/CMakeLists.txt +5 -3
- package/deps/jq/{modules → vendor}/oniguruma/HISTORY +45 -7
- package/deps/jq/{modules → vendor}/oniguruma/Makefile.am +1 -1
- package/deps/jq/{modules → vendor}/oniguruma/README.md +10 -23
- package/deps/jq/{modules → vendor}/oniguruma/compile +29 -13
- package/deps/jq/{modules → vendor}/oniguruma/config.guess +91 -27
- package/deps/jq/{modules → vendor}/oniguruma/config.sub +716 -242
- package/deps/jq/{modules → vendor}/oniguruma/configure.ac +2 -2
- package/deps/jq/{modules → vendor}/oniguruma/depcomp +10 -9
- package/deps/jq/{modules → vendor}/oniguruma/doc/API +3 -1
- package/deps/jq/{modules → vendor}/oniguruma/doc/API.ja +3 -1
- package/deps/jq/{modules → vendor}/oniguruma/doc/CALLOUTS.BUILTIN +10 -1
- package/deps/jq/{modules → vendor}/oniguruma/doc/CALLOUTS.BUILTIN.ja +9 -1
- package/deps/jq/{modules → vendor}/oniguruma/doc/RE +12 -13
- package/deps/jq/{modules → vendor}/oniguruma/doc/RE.ja +12 -13
- package/deps/jq/{modules → vendor}/oniguruma/doc/SYNTAX.md +202 -167
- package/deps/jq/{modules → vendor}/oniguruma/doc/UNICODE_PROPERTIES +33 -1
- package/deps/jq/vendor/oniguruma/doc/onig_syn_md.c +667 -0
- package/deps/jq/{modules → vendor}/oniguruma/harnesses/base.c +1 -1
- package/deps/jq/{modules → vendor}/oniguruma/install-sh +9 -9
- package/deps/jq/{modules → vendor}/oniguruma/missing +50 -29
- package/deps/jq/{modules → vendor}/oniguruma/sample/callback_each_match.c +1 -3
- package/deps/jq/vendor/oniguruma/sbom.cdx.json +44 -0
- package/deps/jq/{modules → vendor}/oniguruma/src/ascii.c +4 -1
- package/deps/jq/{modules → vendor}/oniguruma/src/gperf_fold_key_conv.py +4 -4
- package/deps/jq/{modules → vendor}/oniguruma/src/gperf_unfold_key_conv.py +4 -4
- package/deps/jq/vendor/oniguruma/src/make_unicode_egcb.sh +7 -0
- package/deps/jq/{modules → vendor}/oniguruma/src/make_unicode_egcb_data.py +20 -19
- package/deps/jq/{modules → vendor}/oniguruma/src/make_unicode_fold.sh +5 -5
- package/deps/jq/{modules → vendor}/oniguruma/src/make_unicode_fold_data.py +37 -37
- package/deps/jq/{modules → vendor}/oniguruma/src/make_unicode_property.sh +2 -2
- package/deps/jq/{modules → vendor}/oniguruma/src/make_unicode_property_data.py +66 -65
- package/deps/jq/vendor/oniguruma/src/make_unicode_wb.sh +7 -0
- package/deps/jq/{modules → vendor}/oniguruma/src/make_unicode_wb_data.py +20 -19
- package/deps/jq/{modules → vendor}/oniguruma/src/oniguruma.h +6 -3
- package/deps/jq/{modules → vendor}/oniguruma/src/regcomp.c +14 -6
- package/deps/jq/{modules → vendor}/oniguruma/src/regerror.c +2 -2
- package/deps/jq/{modules → vendor}/oniguruma/src/regexec.c +85 -14
- package/deps/jq/{modules → vendor}/oniguruma/src/regint.h +17 -4
- package/deps/jq/{modules → vendor}/oniguruma/src/regparse.c +115 -27
- package/deps/jq/{modules → vendor}/oniguruma/src/regsyntax.c +10 -7
- package/deps/jq/{modules → vendor}/oniguruma/src/st.c +49 -75
- package/deps/jq/{modules → vendor}/oniguruma/src/st.h +3 -10
- package/deps/jq/{modules → vendor}/oniguruma/src/unicode_egcb_data.c +54 -49
- package/deps/jq/{modules → vendor}/oniguruma/src/unicode_fold1_key.c +1567 -1507
- package/deps/jq/{modules → vendor}/oniguruma/src/unicode_fold2_key.c +1 -1
- package/deps/jq/{modules → vendor}/oniguruma/src/unicode_fold3_key.c +1 -1
- package/deps/jq/vendor/oniguruma/src/unicode_fold_data.c +1619 -0
- package/deps/jq/{modules → vendor}/oniguruma/src/unicode_property_data.c +5520 -4178
- package/deps/jq/{modules → vendor}/oniguruma/src/unicode_property_data_posix.c +239 -83
- package/deps/jq/vendor/oniguruma/src/unicode_unfold_key.c +3497 -0
- package/deps/jq/{modules → vendor}/oniguruma/src/unicode_wb_data.c +51 -19
- package/deps/jq/{modules → vendor}/oniguruma/src/utf16_be.c +3 -2
- package/deps/jq/{modules → vendor}/oniguruma/src/utf16_le.c +3 -2
- package/deps/jq/{modules → vendor}/oniguruma/test/test_back.c +3 -3
- package/deps/jq/{modules → vendor}/oniguruma/test/test_options.c +2 -2
- package/deps/jq/{modules → vendor}/oniguruma/test/test_syntax.c +54 -2
- package/deps/jq/{modules → vendor}/oniguruma/test/test_utf8.c +19 -5
- package/deps/jq/{modules → vendor}/oniguruma/test/testc.c +1 -1
- package/deps/jq/{modules → vendor}/oniguruma/test/testp.c +1 -1
- package/deps/jq/{modules → vendor}/oniguruma/test-driver +13 -6
- package/deps/jq/{modules → vendor}/oniguruma/windows/CMakeLists.txt +1 -1
- package/index.d.ts +2 -1
- package/lib/index.js +1 -0
- package/lib/jq.js +2 -1
- package/package.json +4 -3
- package/test/santiy-async.test.js +4 -4
- package/test/santiy.test.js +4 -4
- package/test/template.test.js +6 -6
- package/deps/jq/modules/oniguruma/src/make_unicode_egcb.sh +0 -7
- package/deps/jq/modules/oniguruma/src/make_unicode_wb.sh +0 -7
- package/deps/jq/modules/oniguruma/src/unicode_fold_data.c +0 -1592
- package/deps/jq/modules/oniguruma/src/unicode_unfold_key.c +0 -3394
- package/deps/jq/scripts/update-website +0 -30
- /package/deps/jq/{src → vendor}/decNumber/ICU-license.html +0 -0
- /package/deps/jq/{src → vendor}/decNumber/decContext.c +0 -0
- /package/deps/jq/{src → vendor}/decNumber/decContext.h +0 -0
- /package/deps/jq/{src → vendor}/decNumber/decDPD.h +0 -0
- /package/deps/jq/{src → vendor}/decNumber/decDouble.c +0 -0
- /package/deps/jq/{src → vendor}/decNumber/decDouble.h +0 -0
- /package/deps/jq/{src → vendor}/decNumber/decNumber.h +0 -0
- /package/deps/jq/{src → vendor}/decNumber/decNumberLocal.h +0 -0
- /package/deps/jq/{src → vendor}/decNumber/decPacked.c +0 -0
- /package/deps/jq/{src → vendor}/decNumber/decPacked.h +0 -0
- /package/deps/jq/{src → vendor}/decNumber/decQuad.c +0 -0
- /package/deps/jq/{src → vendor}/decNumber/decQuad.h +0 -0
- /package/deps/jq/{src → vendor}/decNumber/decSingle.c +0 -0
- /package/deps/jq/{src → vendor}/decNumber/decSingle.h +0 -0
- /package/deps/jq/{src → vendor}/decNumber/decimal128.c +0 -0
- /package/deps/jq/{src → vendor}/decNumber/decimal128.h +0 -0
- /package/deps/jq/{src → vendor}/decNumber/decimal32.c +0 -0
- /package/deps/jq/{src → vendor}/decNumber/decimal32.h +0 -0
- /package/deps/jq/{src → vendor}/decNumber/decimal64.c +0 -0
- /package/deps/jq/{src → vendor}/decNumber/decimal64.h +0 -0
- /package/deps/jq/{src → vendor}/decNumber/decnumber.pdf +0 -0
- /package/deps/jq/{src → vendor}/decNumber/example1.c +0 -0
- /package/deps/jq/{src → vendor}/decNumber/example2.c +0 -0
- /package/deps/jq/{src → vendor}/decNumber/example3.c +0 -0
- /package/deps/jq/{src → vendor}/decNumber/example4.c +0 -0
- /package/deps/jq/{src → vendor}/decNumber/example5.c +0 -0
- /package/deps/jq/{src → vendor}/decNumber/example6.c +0 -0
- /package/deps/jq/{src → vendor}/decNumber/example7.c +0 -0
- /package/deps/jq/{src → vendor}/decNumber/example8.c +0 -0
- /package/deps/jq/{src → vendor}/decNumber/readme.txt +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/.travis.yml +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/AUTHORS +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/COPYING +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/ChangeLog +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/NEWS +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/README +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/README_japanese +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/autogen.sh +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/cmake/Config.cmake.in +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/doc/CALLOUTS.API +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/doc/CALLOUTS.API.ja +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/doc/FAQ +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/doc/FAQ.ja +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/harnesses/ascii_compatible.dict +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/harnesses/deluxe.c +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/harnesses/dict_conv.py +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/harnesses/fuzzer.options +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/harnesses/libfuzzer-onig.cpp +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/harnesses/regset.c +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/index.html +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/index_ja.html +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/m4/.whatever +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/make_win.bat +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/make_win32.bat +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/make_win64.bat +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/onig-config.cmake.in +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/onig-config.in +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/oniguruma.pc.cmake.in +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/oniguruma.pc.in +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/sample/CMakeLists.txt +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/sample/Makefile.am +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/sample/bug_fix.c +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/sample/callout.c +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/sample/count.c +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/sample/crnl.c +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/sample/echo.c +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/sample/encode.c +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/sample/listcap.c +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/sample/names.c +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/sample/posix.c +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/sample/regset.c +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/sample/scan.c +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/sample/simple.c +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/sample/sql.c +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/sample/syntax.c +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/sample/user_property.c +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/src/Makefile.am +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/src/Makefile.windows +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/src/big5.c +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/src/config.h.cmake.in +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/src/config.h.win32 +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/src/config.h.win64 +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/src/config.h.windows.in +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/src/cp1251.c +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/src/euc_jp.c +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/src/euc_jp_prop.c +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/src/euc_jp_prop.gperf +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/src/euc_kr.c +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/src/euc_tw.c +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/src/gb18030.c +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/src/iso8859_1.c +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/src/iso8859_10.c +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/src/iso8859_11.c +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/src/iso8859_13.c +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/src/iso8859_14.c +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/src/iso8859_15.c +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/src/iso8859_16.c +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/src/iso8859_2.c +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/src/iso8859_3.c +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/src/iso8859_4.c +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/src/iso8859_5.c +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/src/iso8859_6.c +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/src/iso8859_7.c +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/src/iso8859_8.c +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/src/iso8859_9.c +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/src/koi8.c +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/src/koi8_r.c +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/src/make_property.sh +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/src/mktable.c +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/src/onig_init.c +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/src/oniggnu.h +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/src/onigposix.h +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/src/regenc.c +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/src/regenc.h +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/src/regext.c +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/src/reggnu.c +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/src/regparse.h +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/src/regposerr.c +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/src/regposix.c +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/src/regtrav.c +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/src/regversion.c +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/src/sjis.c +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/src/sjis_prop.c +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/src/sjis_prop.gperf +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/src/unicode.c +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/src/utf32_be.c +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/src/utf32_le.c +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/src/utf8.c +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/test/CMakeLists.txt +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/test/Makefile.am +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/test/test.sh +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/test/test_regset.c +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/test/testu.c +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/tis-ci/stub.c +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/tis-ci/test_back.config +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/tis-ci/test_regset.config +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/tis-ci/test_syntax.config +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/tis-ci/test_utf8.config +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/tis-ci/testc.config +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/tis-ci/testu.config +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/tis.config +0 -0
- /package/deps/jq/{modules → vendor}/oniguruma/windows/testc.c +0 -0
package/deps/jq/tests/jq.test
CHANGED
|
@@ -36,9 +36,11 @@ null
|
|
|
36
36
|
null
|
|
37
37
|
[]
|
|
38
38
|
|
|
39
|
-
{x
|
|
40
|
-
|
|
41
|
-
{"x"
|
|
39
|
+
{x:-1},{x:-.},{x:-.|abs}
|
|
40
|
+
1
|
|
41
|
+
{"x":-1}
|
|
42
|
+
{"x":-1}
|
|
43
|
+
{"x":1}
|
|
42
44
|
|
|
43
45
|
# The input line starts with a 0xFEFF (byte order mark) codepoint
|
|
44
46
|
# No, there is no reason to have a byte order mark in UTF8 text.
|
|
@@ -57,11 +59,17 @@ null
|
|
|
57
59
|
"Aa\r\n\t\b\f\u03bc"
|
|
58
60
|
"Aa\u000d\u000a\u0009\u0008\u000c\u03bc"
|
|
59
61
|
|
|
62
|
+
%%FAIL
|
|
63
|
+
"u\vw"
|
|
64
|
+
jq: error: Invalid escape at line 1, column 4 (while parsing '"\v"') at <top-level>, line 1, column 3:
|
|
65
|
+
"u\vw"
|
|
66
|
+
^^
|
|
67
|
+
|
|
60
68
|
"inter\("pol" + "ation")"
|
|
61
69
|
null
|
|
62
70
|
"interpolation"
|
|
63
71
|
|
|
64
|
-
@text,@json,([1,.]|@csv,@tsv),@html
|
|
72
|
+
@text,@json,([1,.]|@csv,@tsv),@html,(@uri|.,@urid),@sh,(@base64|.,@base64d)
|
|
65
73
|
"!()<>&'\"\t"
|
|
66
74
|
"!()<>&'\"\t"
|
|
67
75
|
"\"!()<>&'\\\"\\t\""
|
|
@@ -69,6 +77,7 @@ null
|
|
|
69
77
|
"1\t!()<>&'\"\\t"
|
|
70
78
|
"!()<>&'"\t"
|
|
71
79
|
"%21%28%29%3C%3E%26%27%22%09"
|
|
80
|
+
"!()<>&'\"\t"
|
|
72
81
|
"'!()<>&'\\''\"\t'"
|
|
73
82
|
"ISgpPD4mJyIJ"
|
|
74
83
|
"!()<>&'\"\t"
|
|
@@ -86,6 +95,10 @@ null
|
|
|
86
95
|
"\u03bc"
|
|
87
96
|
"%CE%BC"
|
|
88
97
|
|
|
98
|
+
@urid
|
|
99
|
+
"%CE%BC"
|
|
100
|
+
"\u03bc"
|
|
101
|
+
|
|
89
102
|
@html "<b>\(.)</b>"
|
|
90
103
|
"<script>hax</script>"
|
|
91
104
|
"<b><script>hax</script></b>"
|
|
@@ -112,11 +125,21 @@ null
|
|
|
112
125
|
|
|
113
126
|
%%FAIL
|
|
114
127
|
{(0):1}
|
|
115
|
-
jq: error: Cannot use number (0) as object key at <top-level>, line 1:
|
|
128
|
+
jq: error: Cannot use number (0) as object key at <top-level>, line 1, column 3:
|
|
129
|
+
{(0):1}
|
|
130
|
+
^
|
|
131
|
+
|
|
132
|
+
%%FAIL
|
|
133
|
+
{1+2:3}
|
|
134
|
+
jq: error: May need parentheses around object key expression at <top-level>, line 1, column 2:
|
|
135
|
+
{1+2:3}
|
|
136
|
+
^^^
|
|
116
137
|
|
|
117
138
|
%%FAIL
|
|
118
139
|
{non_const:., (0):1}
|
|
119
|
-
jq: error: Cannot use number (0) as object key at <top-level>, line 1:
|
|
140
|
+
jq: error: Cannot use number (0) as object key at <top-level>, line 1, column 16:
|
|
141
|
+
{non_const:., (0):1}
|
|
142
|
+
^
|
|
120
143
|
|
|
121
144
|
#
|
|
122
145
|
# Field access, piping
|
|
@@ -178,6 +201,11 @@ map(try .a[] catch ., try .a.[] catch ., .a[]?, .a.[]?)
|
|
|
178
201
|
[{"a": [1,2]}, {"a": 123}]
|
|
179
202
|
[1,2,1,2,1,2,1,2,"Cannot iterate over number (123)","Cannot iterate over number (123)"]
|
|
180
203
|
|
|
204
|
+
# oss-fuzz #66070: objects[] leaks if a non-last element throws an error
|
|
205
|
+
try ["OK", (.[] | error)] catch ["KO", .]
|
|
206
|
+
{"a":["b"],"c":["d"]}
|
|
207
|
+
["KO",["b"]]
|
|
208
|
+
|
|
181
209
|
#
|
|
182
210
|
# Negative array indices
|
|
183
211
|
#
|
|
@@ -198,6 +226,10 @@ null
|
|
|
198
226
|
[0,1,2]
|
|
199
227
|
[0,5,2]
|
|
200
228
|
|
|
229
|
+
try (.[999999999] = 0) catch .
|
|
230
|
+
null
|
|
231
|
+
"Array index too large"
|
|
232
|
+
|
|
201
233
|
#
|
|
202
234
|
# Multiple outputs, iteration
|
|
203
235
|
#
|
|
@@ -290,7 +322,9 @@ null
|
|
|
290
322
|
|
|
291
323
|
%%FAIL
|
|
292
324
|
. as $foo | break $foo
|
|
293
|
-
jq: error: $*label-foo is not defined at <top-level>, line 1:
|
|
325
|
+
jq: error: $*label-foo is not defined at <top-level>, line 1, column 13:
|
|
326
|
+
. as $foo | break $foo
|
|
327
|
+
^^^^^^^^^^
|
|
294
328
|
|
|
295
329
|
[.[]|[.,1]|until(.[0] < 1; [.[0] - 1, .[1] * .[0]])|.[1]]
|
|
296
330
|
[1,2,3,4,5]
|
|
@@ -312,6 +346,18 @@ null
|
|
|
312
346
|
[{"a":1}, {"b":2}, {"a":3, "b":4}]
|
|
313
347
|
[-1, -1, -4]
|
|
314
348
|
|
|
349
|
+
[-foreach -.[] as $x (0; . + $x)]
|
|
350
|
+
[1,2,3]
|
|
351
|
+
[1,3,6]
|
|
352
|
+
|
|
353
|
+
[foreach .[] / .[] as $i (0; . + $i)]
|
|
354
|
+
[1,2]
|
|
355
|
+
[1,3,3.5,4.5]
|
|
356
|
+
|
|
357
|
+
[foreach .[] as $x (0; . + $x) as $x | $x]
|
|
358
|
+
[1,2,3]
|
|
359
|
+
[1,3,6]
|
|
360
|
+
|
|
315
361
|
[limit(3; .[])]
|
|
316
362
|
[11,22,33,44,55,66,77,88,99]
|
|
317
363
|
[11,22,33]
|
|
@@ -324,10 +370,38 @@ null
|
|
|
324
370
|
"badness"
|
|
325
371
|
[1]
|
|
326
372
|
|
|
373
|
+
try limit(-1; error) catch .
|
|
374
|
+
null
|
|
375
|
+
"limit doesn't support negative count"
|
|
376
|
+
|
|
377
|
+
[skip(3; .[])]
|
|
378
|
+
[1,2,3,4,5,6,7,8,9]
|
|
379
|
+
[4,5,6,7,8,9]
|
|
380
|
+
|
|
381
|
+
[skip(0,2,3,4; .[])]
|
|
382
|
+
[1,2,3]
|
|
383
|
+
[1,2,3,3]
|
|
384
|
+
|
|
385
|
+
[skip(3; .[])]
|
|
386
|
+
[]
|
|
387
|
+
[]
|
|
388
|
+
|
|
389
|
+
try skip(-1; error) catch .
|
|
390
|
+
null
|
|
391
|
+
"skip doesn't support negative count"
|
|
392
|
+
|
|
393
|
+
nth(1; 0,1,error("foo"))
|
|
394
|
+
null
|
|
395
|
+
1
|
|
396
|
+
|
|
327
397
|
[first(range(.)), last(range(.))]
|
|
328
398
|
10
|
|
329
399
|
[0,9]
|
|
330
400
|
|
|
401
|
+
[first(range(.)), last(range(.))]
|
|
402
|
+
0
|
|
403
|
+
[]
|
|
404
|
+
|
|
331
405
|
[nth(0,5,9,10,15; range(.)), try nth(-1; range(.)) catch .]
|
|
332
406
|
10
|
|
333
407
|
[0,5,9,"nth doesn't support negative indices"]
|
|
@@ -435,6 +509,14 @@ null
|
|
|
435
509
|
34324
|
|
436
510
|
43
|
|
437
511
|
|
|
512
|
+
1 + 2 as $x | -$x
|
|
513
|
+
null
|
|
514
|
+
-3
|
|
515
|
+
|
|
516
|
+
"x" as $x | "a"+"y" as $y | $x+","+$y
|
|
517
|
+
null
|
|
518
|
+
"x,ay"
|
|
519
|
+
|
|
438
520
|
1 as $x | [$x,$x,$x as $x | $x]
|
|
439
521
|
null
|
|
440
522
|
[1,1,1]
|
|
@@ -462,13 +544,29 @@ null
|
|
|
462
544
|
[0]
|
|
463
545
|
[0]
|
|
464
546
|
|
|
465
|
-
%%FAIL
|
|
547
|
+
%%FAIL
|
|
466
548
|
. as [] | null
|
|
467
|
-
jq: error: syntax error, unexpected ']', expecting
|
|
549
|
+
jq: error: syntax error, unexpected ']', expecting BINDING or '[' or '{' at <top-level>, line 1, column 7:
|
|
550
|
+
. as [] | null
|
|
551
|
+
^
|
|
468
552
|
|
|
469
|
-
%%FAIL
|
|
553
|
+
%%FAIL
|
|
470
554
|
. as {} | null
|
|
471
|
-
jq: error: syntax error, unexpected '}'
|
|
555
|
+
jq: error: syntax error, unexpected '}' at <top-level>, line 1, column 7:
|
|
556
|
+
. as {} | null
|
|
557
|
+
^
|
|
558
|
+
|
|
559
|
+
%%FAIL
|
|
560
|
+
. as $foo | [$foo, $bar]
|
|
561
|
+
jq: error: $bar is not defined at <top-level>, line 1, column 20:
|
|
562
|
+
. as $foo | [$foo, $bar]
|
|
563
|
+
^^^^
|
|
564
|
+
|
|
565
|
+
%%FAIL
|
|
566
|
+
. as {(true):$foo} | $foo
|
|
567
|
+
jq: error: Cannot use boolean (true) as object key at <top-level>, line 1, column 8:
|
|
568
|
+
. as {(true):$foo} | $foo
|
|
569
|
+
^^^^
|
|
472
570
|
|
|
473
571
|
# [.,(.[] | {x:.},.),.,.[]]
|
|
474
572
|
|
|
@@ -536,6 +634,10 @@ null
|
|
|
536
634
|
1
|
|
537
635
|
[2,4]
|
|
538
636
|
|
|
637
|
+
[-1 as $x | 1,$x]
|
|
638
|
+
null
|
|
639
|
+
[1,-1]
|
|
640
|
+
|
|
539
641
|
[10 * 20, 20 / .]
|
|
540
642
|
4
|
|
541
643
|
[200, 5]
|
|
@@ -596,6 +698,21 @@ null
|
|
|
596
698
|
4
|
|
597
699
|
15
|
|
598
700
|
|
|
701
|
+
map(toboolean)
|
|
702
|
+
["false","true",false,true]
|
|
703
|
+
[false,true,false,true]
|
|
704
|
+
|
|
705
|
+
.[] | try toboolean catch .
|
|
706
|
+
[null,0,"tru","truee","fals","falsee",[],{}]
|
|
707
|
+
"null (null) cannot be parsed as a boolean"
|
|
708
|
+
"number (0) cannot be parsed as a boolean"
|
|
709
|
+
"string (\"tru\") cannot be parsed as a boolean"
|
|
710
|
+
"string (\"truee\") cannot be parsed as a boolean"
|
|
711
|
+
"string (\"fals\") cannot be parsed as a boolean"
|
|
712
|
+
"string (\"falsee\") cannot be parsed as a boolean"
|
|
713
|
+
"array ([]) cannot be parsed as a boolean"
|
|
714
|
+
"object ({}) cannot be parsed as a boolean"
|
|
715
|
+
|
|
599
716
|
[{"a":42},.object,10,.num,false,true,null,"b",[1,4]] | .[] as $x | [$x == .[]]
|
|
600
717
|
{"object": {"a":42}, "num":10.0}
|
|
601
718
|
[true, true, false, false, false, false, false, false, false]
|
|
@@ -637,6 +754,19 @@ map_values(.+1)
|
|
|
637
754
|
[0,1,2]
|
|
638
755
|
[1,2,3]
|
|
639
756
|
|
|
757
|
+
[add(null), add(range(range(10))), add(empty), add(10,range(10))]
|
|
758
|
+
null
|
|
759
|
+
[null,120,null,55]
|
|
760
|
+
|
|
761
|
+
# Real-world use case for add(empty)
|
|
762
|
+
.sum = add(.arr[])
|
|
763
|
+
{"arr":[]}
|
|
764
|
+
{"arr":[],"sum":null}
|
|
765
|
+
|
|
766
|
+
add({(.[]):1}) | keys
|
|
767
|
+
["a","a","b","a","d","b","d","a","d"]
|
|
768
|
+
["a","b","d"]
|
|
769
|
+
|
|
640
770
|
#
|
|
641
771
|
# User-defined functions
|
|
642
772
|
# Oh god.
|
|
@@ -769,6 +899,18 @@ reduce [[1,2,10], [3,4,10]][] as [$i,$j] (0; . + $i * $j)
|
|
|
769
899
|
null
|
|
770
900
|
14
|
|
771
901
|
|
|
902
|
+
[-reduce -.[] as $x (0; . + $x)]
|
|
903
|
+
[1,2,3]
|
|
904
|
+
[6]
|
|
905
|
+
|
|
906
|
+
[reduce .[] / .[] as $i (0; . + $i)]
|
|
907
|
+
[1,2]
|
|
908
|
+
[4.5]
|
|
909
|
+
|
|
910
|
+
reduce .[] as $x (0; . + $x) as $x | $x
|
|
911
|
+
[1,2,3]
|
|
912
|
+
6
|
|
913
|
+
|
|
772
914
|
# This, while useless, should still compile.
|
|
773
915
|
reduce . as $n (.; .)
|
|
774
916
|
null
|
|
@@ -1196,6 +1338,18 @@ null
|
|
|
1196
1338
|
7
|
|
1197
1339
|
[7]
|
|
1198
1340
|
|
|
1341
|
+
[-if true then 1 else 2 end]
|
|
1342
|
+
null
|
|
1343
|
+
[-1]
|
|
1344
|
+
|
|
1345
|
+
{x: if true then 1 else 2 end}
|
|
1346
|
+
null
|
|
1347
|
+
{"x":1}
|
|
1348
|
+
|
|
1349
|
+
if true then [.] else . end []
|
|
1350
|
+
null
|
|
1351
|
+
null
|
|
1352
|
+
|
|
1199
1353
|
[.[] | [.foo[] // .bar]]
|
|
1200
1354
|
[{"foo":[1,2], "bar": 42}, {"foo":[1], "bar": null}, {"foo":[null,false,3], "bar": 18}, {"foo":[], "bar":42}, {"foo": [null,false,null], "bar": 41}]
|
|
1201
1355
|
[[1,2], [1], [3], [42], [41]]
|
|
@@ -1286,6 +1440,39 @@ null
|
|
|
1286
1440
|
[null,true,{"a":1}]
|
|
1287
1441
|
[]
|
|
1288
1442
|
|
|
1443
|
+
[if error then 1 else 2 end?]
|
|
1444
|
+
"foo"
|
|
1445
|
+
[]
|
|
1446
|
+
|
|
1447
|
+
try error(0) // 1
|
|
1448
|
+
null
|
|
1449
|
+
1
|
|
1450
|
+
|
|
1451
|
+
1, try error(2), 3
|
|
1452
|
+
null
|
|
1453
|
+
1
|
|
1454
|
+
3
|
|
1455
|
+
|
|
1456
|
+
1 + try 2 catch 3 + 4
|
|
1457
|
+
null
|
|
1458
|
+
7
|
|
1459
|
+
|
|
1460
|
+
[-try .]
|
|
1461
|
+
1
|
|
1462
|
+
[-1]
|
|
1463
|
+
|
|
1464
|
+
try -.? catch .
|
|
1465
|
+
"foo"
|
|
1466
|
+
"string (\"foo\") cannot be negated"
|
|
1467
|
+
|
|
1468
|
+
{x: try 1, y: try error catch 2, z: if true then 3 end}
|
|
1469
|
+
null
|
|
1470
|
+
{"x":1,"y":2,"z":3}
|
|
1471
|
+
|
|
1472
|
+
{x: 1 + 2, y: false or true, z: null // 3}
|
|
1473
|
+
null
|
|
1474
|
+
{"x":3,"y":true,"z":3}
|
|
1475
|
+
|
|
1289
1476
|
.[] | try error catch .
|
|
1290
1477
|
[1,null,2]
|
|
1291
1478
|
1
|
|
@@ -1321,6 +1508,10 @@ split("")
|
|
|
1321
1508
|
["fo", "foo", "barfoo", "foobar", "foob"]
|
|
1322
1509
|
["fo","","bar","foobar","foob"]
|
|
1323
1510
|
|
|
1511
|
+
[.[]|trimstr("foo")]
|
|
1512
|
+
["fo", "foo", "barfoo", "foobarfoo", "foob"]
|
|
1513
|
+
["fo","","bar","bar","b"]
|
|
1514
|
+
|
|
1324
1515
|
[(index(","), rindex(",")), indices(",")]
|
|
1325
1516
|
"a,bc,def,ghij,klmno"
|
|
1326
1517
|
[1,13,[1,4,8,13]]
|
|
@@ -1329,6 +1520,26 @@ split("")
|
|
|
1329
1520
|
"xababababax"
|
|
1330
1521
|
[1,7,[1,3,5,7]]
|
|
1331
1522
|
|
|
1523
|
+
# trim
|
|
1524
|
+
# \u000b is vertical tab (\v not supported by json)
|
|
1525
|
+
map(trim), map(ltrim), map(rtrim)
|
|
1526
|
+
[" \n\t\r\f\u000b", ""," ", "a", " a ", "abc", " abc ", " abc", "abc "]
|
|
1527
|
+
["", "", "", "a", "a", "abc", "abc", "abc", "abc"]
|
|
1528
|
+
["", "", "", "a", "a ", "abc", "abc ", "abc", "abc "]
|
|
1529
|
+
["", "", "", "a", " a", "abc", " abc", " abc", "abc"]
|
|
1530
|
+
|
|
1531
|
+
trim, ltrim, rtrim
|
|
1532
|
+
"\u0009\u000A\u000B\u000C\u000D\u0020\u0085\u00A0\u1680\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u2028\u2029\u202F\u205F\u3000abc\u0009\u000A\u000B\u000C\u000D\u0020\u0085\u00A0\u1680\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u2028\u2029\u202F\u205F\u3000"
|
|
1533
|
+
"abc"
|
|
1534
|
+
"abc\u0009\u000A\u000B\u000C\u000D\u0020\u0085\u00A0\u1680\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u2028\u2029\u202F\u205F\u3000"
|
|
1535
|
+
"\u0009\u000A\u000B\u000C\u000D\u0020\u0085\u00A0\u1680\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u2028\u2029\u202F\u205F\u3000abc"
|
|
1536
|
+
|
|
1537
|
+
try trim catch ., try ltrim catch ., try rtrim catch .
|
|
1538
|
+
123
|
|
1539
|
+
"trim input must be a string"
|
|
1540
|
+
"trim input must be a string"
|
|
1541
|
+
"trim input must be a string"
|
|
1542
|
+
|
|
1332
1543
|
indices(1)
|
|
1333
1544
|
[0,1,1,2,3,4,1,5]
|
|
1334
1545
|
[1,2,6]
|
|
@@ -1345,6 +1556,22 @@ indices(", ")
|
|
|
1345
1556
|
"a,b, cd,e, fgh, ijkl"
|
|
1346
1557
|
[3,9,14]
|
|
1347
1558
|
|
|
1559
|
+
index("!")
|
|
1560
|
+
"здравствуй мир!"
|
|
1561
|
+
14
|
|
1562
|
+
|
|
1563
|
+
.[:rindex("x")]
|
|
1564
|
+
"正xyz"
|
|
1565
|
+
"正"
|
|
1566
|
+
|
|
1567
|
+
indices("o")
|
|
1568
|
+
"🇬🇧oo"
|
|
1569
|
+
[2,3]
|
|
1570
|
+
|
|
1571
|
+
indices("o")
|
|
1572
|
+
"ƒoo"
|
|
1573
|
+
[1,2]
|
|
1574
|
+
|
|
1348
1575
|
[.[]|split(",")]
|
|
1349
1576
|
["a, bc, def, ghij, jklmn, a,b, c,d, e,f", "a,b,c,d, e,f,g,h"]
|
|
1350
1577
|
[["a"," bc"," def"," ghij"," jklmn"," a","b"," c","d"," e","f"],["a","b","c","d"," e","f","g","h"]]
|
|
@@ -1365,6 +1592,18 @@ indices(", ")
|
|
|
1365
1592
|
"abc"
|
|
1366
1593
|
[null,null]
|
|
1367
1594
|
|
|
1595
|
+
. * 100000 | [.[:10],.[-10:]]
|
|
1596
|
+
"abc"
|
|
1597
|
+
["abcabcabca","cabcabcabc"]
|
|
1598
|
+
|
|
1599
|
+
. * 1000000000
|
|
1600
|
+
""
|
|
1601
|
+
""
|
|
1602
|
+
|
|
1603
|
+
try (. * 1000000000) catch .
|
|
1604
|
+
"abc"
|
|
1605
|
+
"Repeat string result too long"
|
|
1606
|
+
|
|
1368
1607
|
[.[] / ","]
|
|
1369
1608
|
["a, bc, def, ghij, jklmn, a,b, c,d, e,f", "a,b,c,d, e,f,g,h"]
|
|
1370
1609
|
[["a"," bc"," def"," ghij"," jklmn"," a","b"," c","d"," e","f"],["a","b","c","d"," e","f","g","h"]]
|
|
@@ -1547,13 +1786,21 @@ ascii_upcase
|
|
|
1547
1786
|
"useful but not for é"
|
|
1548
1787
|
"USEFUL BUT NOT FOR é"
|
|
1549
1788
|
|
|
1550
|
-
bsearch(0,2,4)
|
|
1789
|
+
bsearch(0,1,2,3,4)
|
|
1551
1790
|
[1,2,3]
|
|
1552
1791
|
-1
|
|
1792
|
+
0
|
|
1553
1793
|
1
|
|
1794
|
+
2
|
|
1554
1795
|
-4
|
|
1555
1796
|
|
|
1556
|
-
|
|
1797
|
+
bsearch({x:1})
|
|
1798
|
+
[{ "x": 0 },{ "x": 1 },{ "x": 2 }]
|
|
1799
|
+
1
|
|
1800
|
+
|
|
1801
|
+
try ["OK", bsearch(0)] catch ["KO",.]
|
|
1802
|
+
"aa"
|
|
1803
|
+
["KO","string (\"aa\") cannot be searched from"]
|
|
1557
1804
|
|
|
1558
1805
|
strftime("%Y-%m-%dT%H:%M:%SZ")
|
|
1559
1806
|
[2015,2,5,23,51,47,4,63]
|
|
@@ -1563,6 +1810,14 @@ strftime("%A, %B %d, %Y")
|
|
|
1563
1810
|
1435677542.822351
|
|
1564
1811
|
"Tuesday, June 30, 2015"
|
|
1565
1812
|
|
|
1813
|
+
strftime("%Y-%m-%dT%H:%M:%SZ")
|
|
1814
|
+
[2024,2,15]
|
|
1815
|
+
"2024-03-15T00:00:00Z"
|
|
1816
|
+
|
|
1817
|
+
mktime
|
|
1818
|
+
[2024,8,21]
|
|
1819
|
+
1726876800
|
|
1820
|
+
|
|
1566
1821
|
gmtime
|
|
1567
1822
|
1425599507
|
|
1568
1823
|
[2015,2,5,23,51,47,4,63]
|
|
@@ -1580,6 +1835,29 @@ try mktime catch .
|
|
|
1580
1835
|
["a",1,2,3,4,5,6,7]
|
|
1581
1836
|
"mktime requires parsed datetime inputs"
|
|
1582
1837
|
|
|
1838
|
+
# oss-fuzz #67403: non-string argument with number input fails assert
|
|
1839
|
+
try ["OK", strftime([])] catch ["KO", .]
|
|
1840
|
+
0
|
|
1841
|
+
["KO","strftime/1 requires a string format"]
|
|
1842
|
+
|
|
1843
|
+
try ["OK", strflocaltime({})] catch ["KO", .]
|
|
1844
|
+
0
|
|
1845
|
+
["KO","strflocaltime/1 requires a string format"]
|
|
1846
|
+
|
|
1847
|
+
[strptime("%Y-%m-%dT%H:%M:%SZ")|(.,mktime)]
|
|
1848
|
+
"2015-03-05T23:51:47Z"
|
|
1849
|
+
[[2015,2,5,23,51,47,4,63],1425599507]
|
|
1850
|
+
|
|
1851
|
+
[strptime("%FT%T")|(.,mktime)]
|
|
1852
|
+
"2025-06-07T08:09:10"
|
|
1853
|
+
[[2025,5,7,8,9,10,6,157],1749283750]
|
|
1854
|
+
|
|
1855
|
+
# Check day-of-week and day of year computations
|
|
1856
|
+
# (should trip an assert if this fails)
|
|
1857
|
+
last(range(365 * 67)|("1970-03-01T01:02:03Z"|strptime("%Y-%m-%dT%H:%M:%SZ")|mktime) + (86400 * .)|strftime("%Y-%m-%dT%H:%M:%SZ")|strptime("%Y-%m-%dT%H:%M:%SZ"))
|
|
1858
|
+
null
|
|
1859
|
+
[2037,1,11,1,2,3,3,41]
|
|
1860
|
+
|
|
1583
1861
|
# module system
|
|
1584
1862
|
import "a" as foo; import "b" as bar; def fooa: foo::a; [fooa, bar::a, bar::b, foo::a]
|
|
1585
1863
|
null
|
|
@@ -1616,27 +1894,39 @@ null
|
|
|
1616
1894
|
|
|
1617
1895
|
%%FAIL
|
|
1618
1896
|
module (.+1); 0
|
|
1619
|
-
jq: error: Module metadata must be constant at <top-level>, line 1:
|
|
1897
|
+
jq: error: Module metadata must be constant at <top-level>, line 1, column 8:
|
|
1898
|
+
module (.+1); 0
|
|
1899
|
+
^^^^^
|
|
1620
1900
|
|
|
1621
1901
|
%%FAIL
|
|
1622
1902
|
module []; 0
|
|
1623
|
-
jq: error: Module metadata must be an object at <top-level>, line 1:
|
|
1903
|
+
jq: error: Module metadata must be an object at <top-level>, line 1, column 8:
|
|
1904
|
+
module []; 0
|
|
1905
|
+
^^
|
|
1624
1906
|
|
|
1625
1907
|
%%FAIL
|
|
1626
1908
|
include "a" (.+1); 0
|
|
1627
|
-
jq: error: Module metadata must be constant at <top-level>, line 1:
|
|
1909
|
+
jq: error: Module metadata must be constant at <top-level>, line 1, column 13:
|
|
1910
|
+
include "a" (.+1); 0
|
|
1911
|
+
^^^^^
|
|
1628
1912
|
|
|
1629
1913
|
%%FAIL
|
|
1630
1914
|
include "a" []; 0
|
|
1631
|
-
jq: error: Module metadata must be an object at <top-level>, line 1:
|
|
1915
|
+
jq: error: Module metadata must be an object at <top-level>, line 1, column 13:
|
|
1916
|
+
include "a" []; 0
|
|
1917
|
+
^^
|
|
1632
1918
|
|
|
1633
1919
|
%%FAIL
|
|
1634
1920
|
include "\ "; 0
|
|
1635
|
-
jq: error: Invalid escape at line 1, column 4 (while parsing '"\ "') at <top-level>, line 1:
|
|
1921
|
+
jq: error: Invalid escape at line 1, column 4 (while parsing '"\ "') at <top-level>, line 1, column 10:
|
|
1922
|
+
include "\ "; 0
|
|
1923
|
+
^^
|
|
1636
1924
|
|
|
1637
1925
|
%%FAIL
|
|
1638
1926
|
include "\(a)"; 0
|
|
1639
|
-
jq: error: Import path must be constant at <top-level>, line 1:
|
|
1927
|
+
jq: error: Import path must be constant at <top-level>, line 1, column 9:
|
|
1928
|
+
include "\(a)"; 0
|
|
1929
|
+
^^^^^^
|
|
1640
1930
|
|
|
1641
1931
|
modulemeta
|
|
1642
1932
|
"c"
|
|
@@ -1652,11 +1942,15 @@ modulemeta | .defs | length
|
|
|
1652
1942
|
|
|
1653
1943
|
%%FAIL IGNORE MSG
|
|
1654
1944
|
import "syntaxerror" as e; .
|
|
1655
|
-
jq: error: syntax error, unexpected ';', expecting
|
|
1945
|
+
jq: error: syntax error, unexpected ';', expecting end of file at tests/modules/syntaxerror/syntaxerror.jq, line 1, column 4:
|
|
1946
|
+
wat;
|
|
1947
|
+
^
|
|
1656
1948
|
|
|
1657
|
-
%%FAIL
|
|
1949
|
+
%%FAIL
|
|
1658
1950
|
%::wat
|
|
1659
|
-
jq: error: syntax error, unexpected '%', expecting
|
|
1951
|
+
jq: error: syntax error, unexpected '%', expecting end of file at <top-level>, line 1, column 1:
|
|
1952
|
+
%::wat
|
|
1953
|
+
^
|
|
1660
1954
|
|
|
1661
1955
|
import "test_bind_order" as check; check::check
|
|
1662
1956
|
null
|
|
@@ -1666,6 +1960,19 @@ try -. catch .
|
|
|
1666
1960
|
"very-long-string"
|
|
1667
1961
|
"string (\"very-long-...) cannot be negated"
|
|
1668
1962
|
|
|
1963
|
+
try (.-.) catch .
|
|
1964
|
+
"very-long-string"
|
|
1965
|
+
"string (\"very-long-...) and string (\"very-long-...) cannot be subtracted"
|
|
1966
|
+
|
|
1967
|
+
"x" * range(0; 12; 2) + "☆" * 5 | try -. catch .
|
|
1968
|
+
null
|
|
1969
|
+
"string (\"☆☆☆...) cannot be negated"
|
|
1970
|
+
"string (\"xx☆☆...) cannot be negated"
|
|
1971
|
+
"string (\"xxxx☆☆...) cannot be negated"
|
|
1972
|
+
"string (\"xxxxxx☆...) cannot be negated"
|
|
1973
|
+
"string (\"xxxxxxxx...) cannot be negated"
|
|
1974
|
+
"string (\"xxxxxxxxxx...) cannot be negated"
|
|
1975
|
+
|
|
1669
1976
|
join(",")
|
|
1670
1977
|
["1",2,true,false,3.4]
|
|
1671
1978
|
"1,2,true,false,3.4"
|
|
@@ -1722,9 +2029,17 @@ true
|
|
|
1722
2029
|
[range(-99/2;99/2;1)] as $orig | [$orig[]|pow(2;.)|log2] as $back | ($orig|keys)[]|. as $k | (($orig|.[$k])-($back|.[$k]))|if . < 0 then . * -1 else . end|select(.>.00005)
|
|
1723
2030
|
null
|
|
1724
2031
|
|
|
1725
|
-
%%FAIL
|
|
2032
|
+
%%FAIL
|
|
2033
|
+
{
|
|
2034
|
+
jq: error: syntax error, unexpected end of file at <top-level>, line 1, column 1:
|
|
2035
|
+
{
|
|
2036
|
+
^
|
|
2037
|
+
|
|
2038
|
+
%%FAIL
|
|
1726
2039
|
}
|
|
1727
|
-
jq: error: syntax error, unexpected INVALID_CHARACTER, expecting
|
|
2040
|
+
jq: error: syntax error, unexpected INVALID_CHARACTER, expecting end of file at <top-level>, line 1, column 1:
|
|
2041
|
+
}
|
|
2042
|
+
^
|
|
1728
2043
|
|
|
1729
2044
|
(.[{}] = 0)?
|
|
1730
2045
|
null
|
|
@@ -1836,17 +2151,17 @@ map(. == 1)
|
|
|
1836
2151
|
|
|
1837
2152
|
# When no arithmetic is involved jq should preserve the literal value
|
|
1838
2153
|
|
|
1839
|
-
.[0] | tostring
|
|
2154
|
+
.[0] | tostring | . == if have_decnum then "13911860366432393" else "13911860366432392" end
|
|
1840
2155
|
[13911860366432393]
|
|
1841
|
-
|
|
2156
|
+
true
|
|
1842
2157
|
|
|
1843
|
-
.x | tojson
|
|
2158
|
+
.x | tojson | . == if have_decnum then "13911860366432393" else "13911860366432392" end
|
|
1844
2159
|
{"x":13911860366432393}
|
|
1845
|
-
|
|
2160
|
+
true
|
|
1846
2161
|
|
|
1847
|
-
13911860366432393 == 13911860366432392
|
|
2162
|
+
(13911860366432393 == 13911860366432392) | . == if have_decnum then false else true end
|
|
1848
2163
|
null
|
|
1849
|
-
|
|
2164
|
+
true
|
|
1850
2165
|
|
|
1851
2166
|
|
|
1852
2167
|
# Applying arithmetic to the value will truncate the result to double
|
|
@@ -1863,6 +2178,19 @@ false
|
|
|
1863
2178
|
{"x":13911860366432393}
|
|
1864
2179
|
13911860366432382
|
|
1865
2180
|
|
|
2181
|
+
# Unary negation preserves numerical precision
|
|
2182
|
+
-. | tojson == if have_decnum then "-13911860366432393" else "-13911860366432392" end
|
|
2183
|
+
13911860366432393
|
|
2184
|
+
true
|
|
2185
|
+
|
|
2186
|
+
-. | tojson == if have_decnum then "0.12345678901234567890123456789" else "0.12345678901234568" end
|
|
2187
|
+
-0.12345678901234567890123456789
|
|
2188
|
+
true
|
|
2189
|
+
|
|
2190
|
+
[1E+1000,-1E+1000 | tojson] == if have_decnum then ["1E+1000","-1E+1000"] else ["1.7976931348623157e+308","-1.7976931348623157e+308"] end
|
|
2191
|
+
null
|
|
2192
|
+
true
|
|
2193
|
+
|
|
1866
2194
|
. |= try . catch .
|
|
1867
2195
|
1
|
|
1868
2196
|
1
|
|
@@ -1885,7 +2213,11 @@ map(abs)
|
|
|
1885
2213
|
[-0, 0, -10, -1.1]
|
|
1886
2214
|
[0,0,10,1.1]
|
|
1887
2215
|
|
|
1888
|
-
map(fabs
|
|
2216
|
+
map(fabs)
|
|
2217
|
+
[-0, 0, -10, -1.1]
|
|
2218
|
+
[0,0,10,1.1]
|
|
2219
|
+
|
|
2220
|
+
map(abs == length) | unique
|
|
1889
2221
|
[-10, -1.1, -1e-1, 1000000000000000002]
|
|
1890
2222
|
[true]
|
|
1891
2223
|
|
|
@@ -1894,6 +2226,14 @@ map(abs)
|
|
|
1894
2226
|
[0.1,1000000000000000002]
|
|
1895
2227
|
[1e-1, 1000000000000000002]
|
|
1896
2228
|
|
|
2229
|
+
[1E+1000,-1E+1000 | abs | tojson] | unique == if have_decnum then ["1E+1000"] else ["1.7976931348623157e+308"] end
|
|
2230
|
+
null
|
|
2231
|
+
true
|
|
2232
|
+
|
|
2233
|
+
[1E+1000,-1E+1000 | length | tojson] | unique == if have_decnum then ["1E+1000"] else ["1.7976931348623157e+308"] end
|
|
2234
|
+
null
|
|
2235
|
+
true
|
|
2236
|
+
|
|
1897
2237
|
# Using a keyword as variable/label name
|
|
1898
2238
|
|
|
1899
2239
|
123 as $label | $label
|
|
@@ -1938,11 +2278,17 @@ tojson | fromjson
|
|
|
1938
2278
|
{"a":nan}
|
|
1939
2279
|
{"a":null}
|
|
1940
2280
|
|
|
1941
|
-
#
|
|
1942
|
-
fromjson | isnan
|
|
1943
|
-
"
|
|
2281
|
+
# NaN with payload is not parsed
|
|
2282
|
+
.[] | try (fromjson | isnan) catch .
|
|
2283
|
+
["NaN","-NaN","NaN1","NaN10","NaN100","NaN1000","NaN10000","NaN100000"]
|
|
1944
2284
|
true
|
|
1945
|
-
|
|
2285
|
+
true
|
|
2286
|
+
"Invalid numeric literal at EOF at line 1, column 4 (while parsing 'NaN1')"
|
|
2287
|
+
"Invalid numeric literal at EOF at line 1, column 5 (while parsing 'NaN10')"
|
|
2288
|
+
"Invalid numeric literal at EOF at line 1, column 6 (while parsing 'NaN100')"
|
|
2289
|
+
"Invalid numeric literal at EOF at line 1, column 7 (while parsing 'NaN1000')"
|
|
2290
|
+
"Invalid numeric literal at EOF at line 1, column 8 (while parsing 'NaN10000')"
|
|
2291
|
+
"Invalid numeric literal at EOF at line 1, column 9 (while parsing 'NaN100000')"
|
|
1946
2292
|
|
|
1947
2293
|
# calling input/0, or debug/0 in a test doesn't crash jq
|
|
1948
2294
|
|
|
@@ -2000,8 +2346,8 @@ null
|
|
|
2000
2346
|
2
|
|
2001
2347
|
|
|
2002
2348
|
.[] |= try tonumber
|
|
2003
|
-
["1", "2a", "3", 4]
|
|
2004
|
-
[1, 3,
|
|
2349
|
+
["1", "2a", "3", " 4", "5 ", "6.7", ".89", "-876", "+5.43", 21]
|
|
2350
|
+
[1, 3, 6.7, 0.89, -876, 5.43, 21]
|
|
2005
2351
|
|
|
2006
2352
|
# Also 1859, but from 2073
|
|
2007
2353
|
any(keys[]|tostring?;true)
|
|
@@ -2020,6 +2366,10 @@ map(try implode catch .)
|
|
|
2020
2366
|
[123,["a"],[nan]]
|
|
2021
2367
|
["implode input must be an array","string (\"a\") can't be imploded, unicode codepoint needs to be numeric","number (null) can't be imploded, unicode codepoint needs to be numeric"]
|
|
2022
2368
|
|
|
2369
|
+
try 0[implode] catch .
|
|
2370
|
+
[]
|
|
2371
|
+
"Cannot index number with string \"\""
|
|
2372
|
+
|
|
2023
2373
|
# walk
|
|
2024
2374
|
walk(.)
|
|
2025
2375
|
{"x":0}
|
|
@@ -2103,6 +2453,9 @@ try ["ok", setpath([1]; 1)] catch ["ko", .]
|
|
|
2103
2453
|
{"hi":"hello"}
|
|
2104
2454
|
["ko","Cannot index object with number"]
|
|
2105
2455
|
|
|
2456
|
+
try fromjson catch .
|
|
2457
|
+
"{'a': 123}"
|
|
2458
|
+
"Invalid string literal; expected \", but got ' at line 1, column 5 (while parsing '{'a': 123}')"
|
|
2106
2459
|
|
|
2107
2460
|
# ltrimstr/1 rtrimstr/1 don't leak on invalid input #2977
|
|
2108
2461
|
|
|
@@ -2115,3 +2468,42 @@ try ltrimstr("x") catch "x", try rtrimstr("x") catch "x" | "ok"
|
|
|
2115
2468
|
{"hey":[]}
|
|
2116
2469
|
"ok"
|
|
2117
2470
|
"ok"
|
|
2471
|
+
|
|
2472
|
+
# ltrimstr/1 and rtrimstr/1 return an error for non-strings. #2969
|
|
2473
|
+
|
|
2474
|
+
.[] as [$x, $y] | try ["ok", ($x | ltrimstr($y))] catch ["ko", .]
|
|
2475
|
+
[["hi",1],[1,"hi"],["hi","hi"],[1,1]]
|
|
2476
|
+
["ko","startswith() requires string inputs"]
|
|
2477
|
+
["ko","startswith() requires string inputs"]
|
|
2478
|
+
["ok",""]
|
|
2479
|
+
["ko","startswith() requires string inputs"]
|
|
2480
|
+
|
|
2481
|
+
.[] as [$x, $y] | try ["ok", ($x | rtrimstr($y))] catch ["ko", .]
|
|
2482
|
+
[["hi",1],[1,"hi"],["hi","hi"],[1,1]]
|
|
2483
|
+
["ko","endswith() requires string inputs"]
|
|
2484
|
+
["ko","endswith() requires string inputs"]
|
|
2485
|
+
["ok",""]
|
|
2486
|
+
["ko","endswith() requires string inputs"]
|
|
2487
|
+
|
|
2488
|
+
|
|
2489
|
+
# oss-fuzz #66061: setpath/2 leaks when indexing array with array
|
|
2490
|
+
|
|
2491
|
+
try ["OK", setpath([[1]]; 1)] catch ["KO", .]
|
|
2492
|
+
[]
|
|
2493
|
+
["KO","Cannot update field at array index of array"]
|
|
2494
|
+
|
|
2495
|
+
# regression test for #3227
|
|
2496
|
+
foreach .[] as $x (0, 1; . + $x)
|
|
2497
|
+
[1, 2]
|
|
2498
|
+
1
|
|
2499
|
+
3
|
|
2500
|
+
2
|
|
2501
|
+
4
|
|
2502
|
+
|
|
2503
|
+
# regression test for CVE-2025-49014 (use of fmt after free)
|
|
2504
|
+
# tests with both empty string literal and empty string created by function
|
|
2505
|
+
# as they seems to behave referecne wise differently.
|
|
2506
|
+
strflocaltime("" | ., @uri)
|
|
2507
|
+
0
|
|
2508
|
+
""
|
|
2509
|
+
""
|