The NetBSD Project

CVS log for pkgsrc/devel/jq/Makefile

[BACK] Up to [cvs.NetBSD.org] / pkgsrc / devel / jq

Request diff between arbitrary revisions


Default branch: MAIN


Revision 1.20 / (download) - annotate - [select for diffs], Thu Dec 14 08:08:03 2023 UTC (2 months, 2 weeks ago) by adam
Branch: MAIN
CVS Tags: pkgsrc-2023Q4-base, pkgsrc-2023Q4, HEAD
Changes since 1.19: +2 -2 lines
Diff to previous 1.19 (colored)

jq: updated to 1.7.1

1.7.1

Security

CVE-2023-50246: Fix heap buffer overflow in jvp_literal_number_literal
CVE-2023-50268: fix stack-buffer-overflow if comparing nan with payload

CLI changes

Make the default background color more suitable for bright backgrounds.
Allow passing the inline jq script after --.
Restrict systems operations on OpenBSD and remove unused mkstemp.
Fix possible uninitialised value dereference if jq_init() fails.

Language changes

Simplify paths/0 and paths/1.
Reject U+001F in string literals.
Remove unused nref accumulator in block_bind_library.
Remove a bunch of unused variables, and useless assignments.
main.c: Remove unused EXIT_STATUS_EXACT option.
Actually use the number correctly casted from double to int as index.
src/builtin.c: remove unnecessary jv_copy-s in type_error/type_error2.
Remove undefined behavior caught by LLVM 10 UBSAN.
Convert decnum to binary64 (double) instead of decimal64. This makes jq behave like the JSON specification suggests and more similar to other languages.
Fix memory leaks on invalid input for ltrimstr/1 and rtrimstr/1.
Fix memory leak on failed get for setpath/2.
Fix nan from json parsing also for nans with payload that start with 'n'.
Allow carriage return characters in comments.

Documentation changes

Generate links in the man page.
Standardize arch types to AMD64 & ARM64 from index page download dropdown.

Revision 1.19 / (download) - annotate - [select for diffs], Sat Sep 9 19:52:53 2023 UTC (5 months, 2 weeks ago) by wiz
Branch: MAIN
CVS Tags: pkgsrc-2023Q3-base, pkgsrc-2023Q3
Changes since 1.18: +9 -11 lines
Diff to previous 1.18 (colored)

jq: update to 1.7.

# 1.7

Since the last stable release many things have happened:

- jq now lives at <https://github.com/jqlang>

Full commit log can be found at <https://github.com/jqlang/jq/compare/jq-1.6...jq-1.7> but here are some highlights:

## CLI changes

- Make object key color configurable using `JQ_COLORS` environment variable. @itchyny @haguenau @ericpruitt #2703

  ```sh
  # this would make "field" bold yellow (`1;33`, the last value)
  $ JQ_COLORS="0;90:0;37:0;37:0;37:0;32:1;37:1;37:1;33" ./jq -n '{field: 123}'
  {
    "field": 123
  }
  ```

- Change the default color of null to Bright Black. @itchyny #2824
- Respect `NO_COLOR` environment variable to disable color output. See <https://no-color.org> for details. @itchyny #2728
- Improved `--help` output. Now mentions all options and nicer order. @itchyny @wader #2747 #2766 #2799
- Fix multiple issues of exit code using `--exit-code`/`-e` option. @ryo1kato #1697

  ```sh
  # true-ish last output value exits with zero
  $ jq -ne true ; echo $?
  true
  0
  # false-ish last output value (false and null) exits with 1
  $ jq -ne false ; echo $?
  false
  1
  # no output value exists with 4
  $ jq -ne empty ; echo $?
  4
  ```

- Add `--binary`/`-b` on Windows for binary output. To get `\n` instead of `\r\n` line endings. @nicowilliams 0dab2b1
- Add `--raw-output0` for NUL (zero byte) separated output. @asottile @pabs3 @itchyny #1990 #2235 #2684

  ```sh
  # will output a zero byte after each output
  $ jq -n --raw-output0 '1,2,3' | xxd
  00000000: 3100 3200 3300                           1.2.3.
  # can be used with xargs -0
  $ jq -n --raw-output0 '"a","b","c"' | xargs -0 -n1
  a
  b
  c
  $ jq -n --raw-output0 '"a b c", "d\ne\nf"' | xargs -0 printf '[%s]\n'
  [a b c]
  [d
  e
  f]
  # can be used with read -d ''
  $ while IFS= read -r -d '' json; do
  >   jq '.name' <<< "$json"
  > done < <(jq -n --raw-output0 '{name:"a b c"},{name:"d\ne\nf"}')
  "a b c"
  "d\ne\nf"
  # also it's an error to output a string containing a NUL when using NUL separator
  $ jq -n --raw-output0 '"\u0000"'
  jq: error (at <unknown>): Cannot dump a string containing NUL with --raw-output0 option
  ```

- Fix assert crash and validate JSON for `--jsonarg`. @wader #2658
- Remove deprecated `--argfile` option. @itchyny #2768
- Enable stack protection. @nicowilliams #2801

## Language changes

- Use decimal number literals to preserve precision. Comparison operations respects precision but arithmetic operations might truncate. @leonid-s-usov #1752

  ```sh
  # precision is preserved
  $ echo '100000000000000000' | jq .
  100000000000000000
  # comparison respects precision (this is false in JavaScript)
  $ jq -n '100000000000000000 < 100000000000000001'
  true
  # sort/0 works
  $ jq -n -c '[100000000000000001, 100000000000000003, 100000000000000004, 100000000000000002] | sort'
  [100000000000000001,100000000000000002,100000000000000003,100000000000000004]
  # arithmetic operations might truncate (same as JavaScript)
  $ jq -n '100000000000000000 + 10'
  100000000000000020
  ```

- Adds new builtin `pick(stream)` to emit a projection of the input object or array. @pkoppstein #2656 #2779

  ```sh
  $ jq -n '{"a": 1, "b": {"c": 2, "d": 3}, "e": 4} | pick(.a, .b.c, .x)'
  {
    "a": 1,
    "b": {
      "c": 2
    },
    "x": null
  }
  ```

- Adds new builtin `debug(msgs)` that works like `debug` but applies a filter on the input before writing to stderr. @pkoppstein #2710

  ```sh
  $ jq -n '1 as $x | 2 | debug("Entering function foo with $x == \($x)", .) | (.+1)'
  ["DEBUG:","Entering function foo with $x == 1"]
  ["DEBUG:",2]
  3
  $ jq -n '{a: 1, b: 2, c: 3} | debug({a, b, sum: (.a+.b)})'
  ["DEBUG:",{"a":1,"b":2,"sum":3}]
  {
    "a": 1,
    "b": 2,
    "c": 3
  }
  ```

- Adds new builtin `scan($re; $flags)`. Was documented but not implemented. @itchyny #1961

  ```sh
  # look for pattern "ab" in "abAB" ignoring casing
  $ jq -n '"abAB" | scan("ab"; "i")'
  "ab"
  "AB"
  ```

- Adds new builtin `abs` to get absolute value. This potentially allows the literal value of numbers to be preserved as `length` and `fabs` convert to float. @pkoppstein #2767
- Allow `if` without `else`-branch. When skipped the `else`-branch will be `.` (identity). @chancez @wader #1825 #2481

  ```sh
  # convert 1 to "one" otherwise keep as is
  $ jq -n '1,2 | if . == 1 then "one" end'
  "one"
  2
  # behaves the same as
  $ jq -n '1,2 | if . == 1 then "one" else . end'
  "one"
  2
  # also works with elif
  $ jq -n '1,2,3 | if . == 1 then "one" elif . == 2 then "two" end
  "one"
  "two"
  3
  ```

- Allow use of `$binding` as key in object literals. @nicowilliams 8ea4a55

  ```sh
  $ jq -n '"a" as $key | {$key: 123}'
  {
    "a": 123
  }
  # previously parentheses were needed
  $ jq -n '"a" as $key | {($key): 123}'
  {
    "a": 123
  }
  ```

- Allow dot between chained indexes when using `.["index"]` @nicowilliams #1168

  ```sh
  $ jq -n '{"a": {"b": 123}} | .a["b"]'
  123
  # now this also works
  $ jq -n '{"a": {"b": 123}} | .a.["b"]'
  123
  ```

- Allow dot for chained value iterator `.[]`, `.[]?` @wader #2650

  ```sh
  $ jq -n '{"a": [123]} | .a[]'
  123
  # now this also works
  $ jq -n '{"a": [123]} | .a.[]'
  123
  ```

- Fix try/catch catches more than it should. @nicowilliams #2750
- Speed up and refactor some builtins, also remove `scalars_or_empty/0`. @muhmuhten #1845
- Now `halt` and `halt_error` exit immediately instead of continuing to the next input. @emanuele6 #2667
- Fix issue converting string to number after previous convert error. @thalman #2400
- Fix issue representing large numbers on some platforms causing invalid JSON output. @itchyny #2661
- Fix deletion using assigning empty against arrays. @itchyny #2133

  ```sh
  # now this works as expected, filter out all values over 2 by assigning empty
  $ jq -c '(.[] | select(. >= 2)) |= empty' <<< '[1,5,3,0,7]'
  [1,0]
  ```

- Allow keywords to be used as binding name in more places. @emanuele6 #2681
- Allow using `nan` as NaN in JSON. @emanuele6 #2712
- Expose a module's function names in `modulemeta`. @mrwilson #2837
- Fix `contains/1` to handle strings with NUL. @nicowilliams 61cd6db
- Fix `stderr/0` to output raw text without any decoration. @itchyny #2751
- Fix `nth/2` to emit empty on index out of range. @itchyny #2674
- Fix `implode` to not assert and instead replace invalid unicode codepoints. @wader #2646
- Fix `indices/1` and `rindex/1` in case of overlapping matches in strings. @emanuele6 #2718
- Fix `sub/3` to resolve issues involving global search-and-replace (gsub) operations. @pkoppstein #2641
- Fix `significand/0`, `gamma/0` and `drem/2` to be available on macOS. @itchyny #2756 #2775
- Fix empty regular expression matches. @itchyny #2677
- Fix overflow exception of the modulo operator. @itchyny #2629
- Fix string multiplication by 0 (and less than 1) to emit empty string. @itchyny #2142
- Fix segfault when using libjq and threads. @thalman #2546
- Fix constant folding of division and reminder with zero divisor. @itchyny #2797
- Fix `error/0`, `error/1` to throw null error. @emanuele6 #2823
- Simpler and faster `transpose`. @pkoppstein #2758
- Simple and efficient implementation of `walk/1`. @pkoppstein #2795
- Remove deprecated filters `leaf_paths`, `recurse_down`. @itchyny #2666

Revision 1.18 / (download) - annotate - [select for diffs], Sat Apr 23 21:05:18 2022 UTC (22 months ago) by tnn
Branch: MAIN
CVS Tags: pkgsrc-2023Q2-base, pkgsrc-2023Q2, pkgsrc-2023Q1-base, pkgsrc-2023Q1, pkgsrc-2022Q4-base, pkgsrc-2022Q4, pkgsrc-2022Q3-base, pkgsrc-2022Q3, pkgsrc-2022Q2-base, pkgsrc-2022Q2
Changes since 1.17: +3 -1 lines
Diff to previous 1.17 (colored)

jq: distfile changed on master site (autoconf files added)

but keep autoconf as a dependency since we have patch-configure.ac

Revision 1.17 / (download) - annotate - [select for diffs], Sat Nov 3 12:47:16 2018 UTC (5 years, 3 months ago) by leot
Branch: MAIN
CVS Tags: pkgsrc-2022Q1-base, pkgsrc-2022Q1, pkgsrc-2021Q4-base, pkgsrc-2021Q4, pkgsrc-2021Q3-base, pkgsrc-2021Q3, pkgsrc-2021Q2-base, pkgsrc-2021Q2, pkgsrc-2021Q1-base, pkgsrc-2021Q1, pkgsrc-2020Q4-base, pkgsrc-2020Q4, pkgsrc-2020Q3-base, pkgsrc-2020Q3, pkgsrc-2020Q2-base, pkgsrc-2020Q2, pkgsrc-2020Q1-base, pkgsrc-2020Q1, pkgsrc-2019Q4-base, pkgsrc-2019Q4, pkgsrc-2019Q3-base, pkgsrc-2019Q3, pkgsrc-2019Q2-base, pkgsrc-2019Q2, pkgsrc-2019Q1-base, pkgsrc-2019Q1, pkgsrc-2018Q4-base, pkgsrc-2018Q4
Changes since 1.16: +3 -10 lines
Diff to previous 1.16 (colored)

jq: Update devel/jq to 1.6

pkgsrc changes:
 - Use GITHUB_RELEASE instead of GITHUB_TAG because the former does not need
   auto* tools (despite we need auto* tools for patches/, hopefully one day they
   will be applied!)
 - Remove no longer needed SUBST_*, `git describe' is no longer used
 - Remove patch-src_jv__parse.c and patch-src_jv__print.c, they are
   present in 1.6
 - Rename and readjust patch-Makefile.in to patch-Makefile.am
   (pre-configure target rewrote it due `autoreconf')

Changes:
1.6
---
New in this release since 1.5:
- Destructuring Alternation
- New Builtins:
   * builtins/0
   * stderr/0
   * halt/0, halt_error/1
   * isempty/1
   * walk/1
   * utf8bytelength/1
   * localtime/0, strflocaltime/1
   * SQL-style builtins
   * and more!
- Add support for ASAN and UBSAN
- Make it easier to use jq with shebangs (8f6f28c)
- Add $ENV builtin variable to access environment
- Add JQ_COLORS env var for configuring the output colors

Bug fixes:
- Calling jq without a program argument now always assumes . for the program,
  regardless of stdin/stdout. (5fe0536)
- Make sorting stable regardless of qsort. (7835a72)
- Adds a local oniguruma submodule and the
  `./configure --with-oniguruma=builtin' option to make it easier to build
  with oniguruma support on systems where you can't install system-level
  libraries. (c6374b6 and 02bad4b)
- And much more!

Revision 1.16 / (download) - annotate - [select for diffs], Sun Aug 19 18:08:05 2018 UTC (5 years, 6 months ago) by leot
Branch: MAIN
CVS Tags: pkgsrc-2018Q3-base, pkgsrc-2018Q3
Changes since 1.15: +15 -9 lines
Diff to previous 1.15 (colored)

jq: Avoid SIGSEGVs when using date builtins

Apply patch written by <soda> and shared with upstream as part of
<https://github.com/stedolan/jq/pull/1458> in order to fix crashes of jq when
using date builtin functions.

Also add a SUBST class intended to avoid invoking git as part of pre-configure
phase when invoking autoreconf.

While here take the MAINTAINERship and reformat a bit the Makefile
(NFCI).

Thanks a lot to <soda>, Takehiko NOZAKI and <nonaka> for investigating
the issue, writing the patches, sharing them with upstream and as
part of PR pkg/52460!

Bump PKGREVISION

Revision 1.14.2.1 / (download) - annotate - [select for diffs], Sun Jun 17 12:43:56 2018 UTC (5 years, 8 months ago) by spz
Branch: pkgsrc-2018Q1
Changes since 1.14: +2 -2 lines
Diff to previous 1.14 (colored) next main 1.15 (colored)

Pullup ticket #5766 - requested by bsiegert
devel/jq: security patch

Revisions pulled up:
- devel/jq/Makefile                                             1.15
- devel/jq/distinfo                                             1.9
- devel/jq/patches/patch-src_jv__print.c                        1.1

-------------------------------------------------------------------
   Module Name:    pkgsrc
   Committed By:   ginsbach
   Date:           Wed May 30 16:03:48 UTC 2018

   Modified Files:
           pkgsrc/devel/jq: Makefile distinfo
   Added Files:
           pkgsrc/devel/jq/patches: patch-src_jv__print.c

   Log Message:
   CVE-2016-4074 denial-of-service (via upstream)

   Fix present in jq-1.6rc1 (https://github.com/stedolan/jq/commit/83e2cf6).
   The fix prevents 'infinite' recursion preventing stack exhaustion.


   To generate a diff of this commit:
   cvs rdiff -u -r1.14 -r1.15 pkgsrc/devel/jq/Makefile
   cvs rdiff -u -r1.8 -r1.9 pkgsrc/devel/jq/distinfo
   cvs rdiff -u -r0 -r1.1 pkgsrc/devel/jq/patches/patch-src_jv__print.c

Revision 1.15 / (download) - annotate - [select for diffs], Wed May 30 16:03:48 2018 UTC (5 years, 9 months ago) by ginsbach
Branch: MAIN
CVS Tags: pkgsrc-2018Q2-base, pkgsrc-2018Q2
Changes since 1.14: +2 -2 lines
Diff to previous 1.14 (colored)

CVE-2016-4074 denial-of-service (via upstream)

Fix present in jq-1.6rc1 (https://github.com/stedolan/jq/commit/83e2cf6).
The fix prevents 'infinite' recursion preventing stack exhaustion.

Revision 1.14 / (download) - annotate - [select for diffs], Thu Mar 22 08:14:52 2018 UTC (5 years, 11 months ago) by adam
Branch: MAIN
CVS Tags: pkgsrc-2018Q1-base
Branch point for: pkgsrc-2018Q1
Changes since 1.13: +2 -2 lines
Diff to previous 1.13 (colored)

Revbump after updating textproc/oniguruma

Revision 1.13 / (download) - annotate - [select for diffs], Mon Jan 22 13:27:41 2018 UTC (6 years, 1 month ago) by fhajny
Branch: MAIN
Changes since 1.12: +4 -4 lines
Diff to previous 1.12 (colored)

Turn oniguruma support into a (default) option.

Revision 1.12 / (download) - annotate - [select for diffs], Mon Jan 15 08:51:55 2018 UTC (6 years, 1 month ago) by adam
Branch: MAIN
Changes since 1.11: +4 -4 lines
Diff to previous 1.11 (colored)

jq: fixed dynamic linking (now bin/jq is tiny); cleaned pkglint warnings

Revision 1.11 / (download) - annotate - [select for diffs], Fri Jan 12 14:41:24 2018 UTC (6 years, 1 month ago) by fhajny
Branch: MAIN
Changes since 1.10: +5 -2 lines
Diff to previous 1.10 (colored)

devel/jq: Link against textproc/oniguruma to enable regexp support.

Revision 1.10 / (download) - annotate - [select for diffs], Thu Aug 3 12:38:22 2017 UTC (6 years, 6 months ago) by jperkin
Branch: MAIN
CVS Tags: pkgsrc-2017Q4-base, pkgsrc-2017Q4, pkgsrc-2017Q3-base, pkgsrc-2017Q3
Changes since 1.9: +2 -2 lines
Diff to previous 1.9 (colored)

Reset MAINTAINERship.

Revision 1.9 / (download) - annotate - [select for diffs], Sun Jul 30 22:32:14 2017 UTC (6 years, 6 months ago) by wiz
Branch: MAIN
Changes since 1.8: +2 -2 lines
Diff to previous 1.8 (colored)

Switch github HOMEPAGEs to https.

Revision 1.8 / (download) - annotate - [select for diffs], Wed Aug 10 15:52:15 2016 UTC (7 years, 6 months ago) by jperkin
Branch: MAIN
CVS Tags: pkgsrc-2017Q2-base, pkgsrc-2017Q2, pkgsrc-2017Q1-base, pkgsrc-2017Q1, pkgsrc-2016Q4-base, pkgsrc-2016Q4, pkgsrc-2016Q3-base, pkgsrc-2016Q3
Changes since 1.7: +2 -2 lines
Diff to previous 1.7 (colored)

Fix build on SunOS.  Submitted by Attila Fueloep.

Revision 1.7 / (download) - annotate - [select for diffs], Tue May 10 09:20:52 2016 UTC (7 years, 9 months ago) by tnn
Branch: MAIN
CVS Tags: pkgsrc-2016Q2-base, pkgsrc-2016Q2
Changes since 1.6: +2 -1 lines
Diff to previous 1.6 (colored)

CVE-2015-8863 heap-based buffer overflow (via upstream)

Revision 1.6 / (download) - annotate - [select for diffs], Fri Aug 28 09:09:22 2015 UTC (8 years, 6 months ago) by wiz
Branch: MAIN
CVS Tags: pkgsrc-2016Q1-base, pkgsrc-2016Q1, pkgsrc-2015Q4-base, pkgsrc-2015Q4, pkgsrc-2015Q3-base, pkgsrc-2015Q3
Changes since 1.5: +3 -7 lines
Diff to previous 1.5 (colored)

Update to 1.5, and simplify a lot.

New features in 1.5 since 1.4:

 - regular expressions (with Oniguruma)

 - a library/module system

 - many new builtins

    - datetime builtins
    - math builtins
    - regexp-related builtins
    - stream-related builtins (e.g., all/1, any/1)
    - minimal I/O builtins (`inputs`, `debug`)

 - new syntactic features, including:

    - destructuring (`. as [$first, $second] | ...`)
    - try/catch, generalized `?` operator, and label/break
    - `foreach`
    - multiple definitions of a function with different numbers of
      arguments

 - command-line arguments

    - --join-lines / -j for raw output
    - --argjson and --slurpfile
    - --tab and --indent
    - --stream (streaming JSON parser)
    - --seq (RFC7464 JSON text sequence)
    - --run-tests improvements

 - optimizations:

    - tail-call optimization
    - reduce and foreach no longer leak a reference to .

Revision 1.5 / (download) - annotate - [select for diffs], Fri Jul 31 13:14:20 2015 UTC (8 years, 7 months ago) by ryoon
Branch: MAIN
Changes since 1.4: +6 -5 lines
Diff to previous 1.4 (colored)

Update to 1.4

* Use github framework.

Changelog:
Not available.

Revision 1.4 / (download) - annotate - [select for diffs], Thu Apr 17 09:08:34 2014 UTC (9 years, 10 months ago) by fhajny
Branch: MAIN
CVS Tags: pkgsrc-2015Q2-base, pkgsrc-2015Q2, pkgsrc-2015Q1-base, pkgsrc-2015Q1, pkgsrc-2014Q4-base, pkgsrc-2014Q4, pkgsrc-2014Q3-base, pkgsrc-2014Q3, pkgsrc-2014Q2-base, pkgsrc-2014Q2
Changes since 1.3: +10 -6 lines
Diff to previous 1.3 (colored)

Update jq to 1.3.

Changelog not provided, see commits made since 1.2:

https://github.com/stedolan/jq/compare/jq-1.2...jq-1.3

Revision 1.3 / (download) - annotate - [select for diffs], Mon Jan 27 18:41:11 2014 UTC (10 years, 1 month ago) by wiz
Branch: MAIN
CVS Tags: pkgsrc-2014Q1-base, pkgsrc-2014Q1
Changes since 1.2: +1 -3 lines
Diff to previous 1.2 (colored)

Do not set FETCH_USING, should not be set in a package Makefile.

Revision 1.2 / (download) - annotate - [select for diffs], Fri Apr 26 10:20:34 2013 UTC (10 years, 10 months ago) by jperkin
Branch: MAIN
CVS Tags: pkgsrc-2013Q4-base, pkgsrc-2013Q4, pkgsrc-2013Q3-base, pkgsrc-2013Q3, pkgsrc-2013Q2-base, pkgsrc-2013Q2
Changes since 1.1: +6 -4 lines
Diff to previous 1.1 (colored)

Update jq to version 1.2.  This is the version which should have been added
in the first place, but I somehow missed it.

Unfortunately there is no changelog, just a git history, with no indication
of which are the important changes.  However a lot of bugfixes are included.

The main pkgsrc change in 1.2 is that there is now a manual page.

Revision 1.1 / (download) - annotate - [select for diffs], Thu Apr 25 09:10:26 2013 UTC (10 years, 10 months ago) by jperkin
Branch: MAIN

Import jq-1.1 as devel/jq into pkgsrc.

jq is a lightweight and flexible command-line JSON processor.

jq is like sed for JSON data you can use it to slice and filter and
map and transform structured data with the same ease that sed, awk, grep
and friends let you play with text.

This form allows you to request diff's between any two revisions of a file. You may select a symbolic revision name using the selection box or you may type in a numeric name using the type-in text box.




CVSweb <webmaster@jp.NetBSD.org>