Skip to content

Releases

Release v0.12.20

Choose a tag to compare

@github-actions github-actions released this 01 Nov 12:01
  • implement gojq.ToInt and gojq.ToFloat64 for converting number values
  • fix destructuring alternative operator (?//) to reset variables of
    later alternatives, and to propagate break and halt errors
  • fix update-assignment operator against object with overlapping paths
  • fix delpaths function to delete ancestor paths before descendant paths
  • fix getpath function against string input
  • fix indexing and slicing a number literal written after a unary operator
  • fix slice indices of floating point numbers for jq compatibility
  • fix date and time functions against fractional, non-finite, and out of range numbers
  • fix strptime function to accept the zero time instant
  • fix match, test, and capture functions to support array arguments
  • fix match function to report an empty match after a non-empty one
  • fix split/1 function against empty input string
  • fix math functions against large number literals like 1e1000
  • fix jn/2 and yn/2 functions to avoid long recurrence on large orders
  • fix abs function against non-numbers for jq compatibility
  • fix isnan function to return false for non-numbers for jq compatibility
  • fix halt_error function not to print a newline after non-string values
  • fix --argjson and --jsonargs options to reject empty and multiple JSON values
  • fix --stream option error message against unterminated input
  • fix JSON parse error message after a large value in non-seekable input like stdin
  • fix offset of YAML parse error on multi-byte characters
  • fix panic on continuing iteration after an invalid path error
  • fix data race on input iterator when running code concurrently
  • fix add function to handle a nil map and slice as the first value
  • support destructuring alternative operator (?//) in reduce and foreach syntax
  • allow optional operator followed by alternative operator without spaces (.a?//1)
  • improve performance of function calls by avoiding copies of scope values,
    and path tracking in path, paths, |=, and del by reducing allocations

Release v0.12.19

Choose a tag to compare

@github-actions github-actions released this 01 Apr 13:04
  • fix gsub and sub when the replacement emits multiple values
  • fix fmax, fmin, modf functions against NaN and infinities
  • fix join/1 to use add/0 implementation and handle null separator
  • fix del and delpaths on null to emit null
  • fix arithmetic operations on the minimum integer
  • fix significand function against subnormal numbers
  • fix handling of -- in cli flag parsing for jq compatibility
  • fix flatten/1 to emit error when the depth is NaN
  • fix array slice update to validate index types
  • fix string repetition boundary check to match jq behavior
  • implement splits/2 using match/2 for better jq compatibility
  • implement to_entries and from_entries in jq for simplicity
  • improve performance of regexp functions by caching compiled regexps

Release v0.12.18

Choose a tag to compare

@github-actions github-actions released this 01 Dec 21:21
  • implement trimstr/1, toboolean/0 function
  • fix last/1 to be included in builtins/0
  • fix --indent 0 to preserve newlines
  • fix string repetition to emit error when the result is too large
  • increase the array index limit to 536870912 (2^29)
  • stop numeric normalization for concurrent execution (see 1ace748)
  • support binding expressions with binary operators (1 + 2 as $x | -$x)
  • improve gojq.NewIter to be a generic function
  • improve logic for getting file contents on JSON parse error
  • improve JSON parsing to preserve the precision of floating-point numbers
  • improve YAML parsing performance and preserve the precision of large integers
  • improve performance and reduce memory allocation of long-running queries

Release v0.12.17

Choose a tag to compare

@github-actions github-actions released this 01 Dec 12:33
  • implement add/1, skip/2 functions
  • implement --library-path option as the alias of -L option
  • fix reduce syntax to emit results for each initial value
  • fix last/1 to yield no values when the argument yields no values
  • fix limit/2 to emit an error on negative count
  • fix @uri and @urid formats not to convert space between plus sign
  • fix resolving search paths of import statements in the query
  • improve time functions to accept fewer element arrays

Release v0.12.16

Choose a tag to compare

@github-actions github-actions released this 01 Jun 14:46
  • fix offset of query parsing error on multi-byte characters
  • fix tests of exp10 and atan2 failing on some platforms
  • fix debug/1 to be available only when debug/0 is defined
  • improve parser to allow binary operators as object values
  • improve compiler to emit error if query is missing

Release v0.12.15

Choose a tag to compare

@github-actions github-actions released this 01 Apr 12:15
  • implement ltrim, rtrim, and trim functions
  • implement gojq.ParseError for getting the offset and token of query parsing error
  • implement gojq.HaltError for detecting halt errors and stopping outer iteration
  • fix object construction with duplicate keys ({x:0,y:1} | {a:.x,a:.y})
  • fix halt and halt_error functions to stop the command execution immediately
  • fix variable scope of binding syntax ("a" as $v | def f: $v; "b" as $v | f)
  • fix pre-defined variables to be available in initial modules ($ARGS in ~/.jq)
  • fix ltrimstr and rtrimstr functions to emit error on non-string input
  • fix nearbyint and rint functions to round ties to even
  • improve parser to allow reduce, foreach, if, try-catch syntax as object values
  • remove pow10 in favor of exp10, define scalbn and scalbln by ldexp

Release v0.12.14

Choose a tag to compare

@github-actions github-actions released this 01 Dec 10:21
  • implement abs, pick, and debug/1 functions
  • implement --raw-output0 option, and remove --nul-output (-0) option
  • fix string multiplication by zero to emit an empty string
  • fix zero divided by zero to emit an error, not nan
  • fix modulo operator to emit nan if either side is nan
  • fix implode function to emit replacement characters on invalid code points
  • fix stderr function to output strings in raw format
  • fix error function to throw an error even for null
  • fix walk function on multiple outputs arguments
  • fix --from-file option to work with --args and --jsonargs options
  • fix the default module search path ../lib relative to the executable
  • improve query parser to support comment continuation with backslash
  • improve modulemeta function to include defined function names in the module
  • improve search path of import and include directives to support $ORIGIN expansion
  • remove deprecated leaf_paths function

Release v0.12.13

Choose a tag to compare

@github-actions github-actions released this 01 Jun 14:21
  • implement @urid format string to decode URI values
  • fix functions returning arrays not to emit nil slices (flatten, group_by,
    unique, unique_by, nth, indices, path, and modulemeta.deps)

Release v0.12.12

Choose a tag to compare

@github-actions github-actions released this 01 Mar 14:35
  • fix assignment operator (=) with overlapping paths and multiple values ([[]] | .. = ..)
  • fix crash on multiplying large numbers to an empty string (9223372036854775807 * "")
  • improve zsh completion file

Release v0.12.11

Choose a tag to compare

@github-actions github-actions released this 24 Dec 02:01
  • fix crash on the assignment operator (=) with multiple values (. = (0,0))
  • fix isnormal and normals functions against subnormal numbers
⌂ 捒网址