summaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)Author
2023-07-14WIP: Instruction timingnicowilliams/inst-timingNicolas Williams
TODO: - add a --debug mode that prints only cycle counts, no refcounts, no values - add a --debug mode that prints stats at VM teardown or when `jq_next()` returns - for each opcode the count of instructions - for each opcode the total time or CPU cycles spent executing it
2023-07-13Make sure distcheck passes and run dist job on Pull Requestitchyny
2023-07-14Update jinja2 to fix deprecation warnings on building website (#2711)itchyny
2023-07-13Fix uri format to follow RFC 3986 (#2157)itchyny
2023-07-13Also run manpage.yml workflow on pull requests that modify the manualEmanuele Torre
2023-07-12Mark src/decNumber/** as vendored filesEmanuele Torre
This excludes those files from the Languages statistics on github.
2023-07-12Fix has(nan) on arrays to output falseitchyny
2023-07-11Revert unexpected changes in decNumber code (ref #2031)itchyny
2023-07-11Update "tests/man.test" and remove superflous whitespace in manual.ymlEmanuele Torre
tests/man.test was generated incorrectly and had some duplicate tests, the new CI workflow didn't like that.
2023-07-11Fix build_manpage.py with newer markdown versionsEmanuele Torre
The markdown python changed its API for markdown extensions. Bumping the markdown package version in previous commits broke docs/build_manpage.py since it was using registering an extension with the old API.
2023-07-11Add CI workflow to make sure the man page and man.test can be builtEmanuele Torre
And that man.test is up to date.
2023-07-10Add checksums.txt for releaseOwen Ou
Add checksums.txt for release
2023-07-10Do not remove manpage prebuild file on build failureitchyny
2023-07-10Use jinja2 ==3.0.2 for nowEmanuele Torre
We are using some deprecated jinja2 features that have been removed in newer versions.
2023-07-10Revert "Update docs/Pipfile.lock"Nicolas Williams
This reverts commit 7fba85095b83659e121819b8f55c0a1b90befd13.
2023-07-10Update docs/Pipfile.lockEmanuele Torre
2023-07-10Mark generated manual files as linguist-generated=trueEmanuele Torre
2023-07-10Update docs/README.mdNicolas Williams
2023-07-10Update tests/man.testNicolas Williams
2023-07-10Update jq.1.prebuiltNicolas Williams
2023-07-10Add first fuzzer for integration with OSS-Fuzz.davkor
Signed-off-by: David Korczynski <david@adalogics.com>
2023-07-10Allow using { $__loc__ } as shorthand for { __loc__: $__loc__ }Emanuele Torre
n.b.: { $__loc__: "foo" } is still not allowed. $__loc__ cannot be overwritten, and it is always an object. Using { $x: "foo" } where $x is not a string is an error, so there is not much of a point in supporting that.
2023-07-10Build Docker image using pre-built executables (#2686)itchyny
2023-07-10manual.yml: further tweaks re map and map_valuespkoppstein
Further tweaks, e.g. i.f.o. explicitness: `map_values(f)` outputs an array if given an array, or an object if given an object.
2023-07-10manual.yml: further tweaks re map and map_valuespkoppstein
A more systematic exposition
2023-07-10manual.yml: clarify explanation of map_values, including description of new ↵pkoppstein
behavior #2466
2023-07-10Cross compile for Linux, MacOS and Windows on CI (#2665)Owen Ou
2023-07-09Lex $foo as a single token, instead of using '$' IDENTEmanuele Torre
Previously, bindings were parsed as the combination of two tokens: '$' IDENT This meant that using a keyword as variable name (e.g. $then, $label) did not work. Attempts were made to allow $keyword to work by adding some '$' Keyword rules in the parser, but this did not allow $keyword in all places: jq --arg label foo -n '$label' # ok jq -n '"foo" as $label | .' # error Treating $foo as a single token is much simpler, in my opinion. This patch also changes how LOC is lexed: "$__loc__" instead of as "__loc__" that gets combined with '$' in the parser. This patch also disallows having spaces after '$' when recalling a variable `$ foo' since that was probably just an unintentional side effect of the implementation, and it was not documented. Fixes #2675
2023-07-09Mark src/{parser,lexer}.{c,h} as generated files in .gitattributesEmanuele Torre
This should hide edit to those files in PR diffs making PRs easier to review.
2023-07-09Fix empty regular expression matches (fix #2565)itchyny
2023-07-09Fix manual on paths/1 to use boolean filter for its argumentitchyny
2023-07-09Support .a.[] and .a.[]? each syntaxMattias Wadman
Fixes #1699
2023-07-08Fix nth/2 to emit empty on index out of rangeitchyny
2023-07-08Fix the latest manual on string multiplication by zeroitchyny
2023-07-08Fix string multiplication by 0 (and less than 1) to emit empty stringitchyny
2023-07-08Fix string multiplication with a value between 0.0 and 1.0itchyny
This commit fixes a regression of 6306ac89667c.
2023-07-07Optimize appending deletion path in modifyitchyny
2023-07-07Fix deletion using assigning empty against arrays (fix #2051)itchyny
2023-07-07exit immediately after halt or halt_error is calledEmanuele Torre
Instead of continuing to the next input, and only exiting if there are no more inputs. Closes #2533
2023-07-07Remove deprecated filters: leaf_paths, recurse_downitchyny
2023-07-06Fix dumping large floating numbers (fix #2367) (#2661)itchyny
2023-07-05manual.yml: pick(pathexps)pkoppstein
Change formal parameter name
2023-07-05builtin.jq: def pick(pathexps):pkoppstein
Change the name of the formal parameter.
2023-07-05builtin: add pick(stream)pkoppstein
pick(stream) works on both arrays and objects Restrictions on the dot-paths are specified in manual.yml See #2578
2023-07-06Fix exit code on JSON parse error (#2654)itchyny
2023-07-05Validate JSON for --jsonargMattias Wadman
Fixes #2572
2023-07-05Remove outdated CI badges from README.md (#2653)itchyny
2023-07-05Release Docker image to GitHub Container Registry (#2652)itchyny
2023-07-05Make 0 divided by 0 results in NaN consistently (#2253)itchyny
2023-07-05Setup path correctly after stream parsing a key:value object pair (#2642)Mattias Wadman