Skip to content

Release v2.2.11

Choose a tag to compare

@github-actions github-actions released this 02 Oct 02:16
· 214 commits to main since this release

Release v2.2.11

Changed

  • GitHub Release notes are now the version's CHANGELOG.md section (via the new
    scripts/release-notes.sh) instead of a list of every commit subject since the previous tag,
    which included merge commits, superseded intermediate steps and unrelated housekeeping. The
    notes also link to the full commit comparison and include the Cargo install line.
  • Updated Rust dependencies: thiserror 2.0.20 → 2.0.21 and rand 0.10.2 → 0.10.3. (#175)

Fixed

  • The release workflow now updates the jsonata-core = "…" install snippet in README.md when
    it bumps the version. It previously went stale on every release and needed a manual follow-up
    commit. The snippet is updated to 2.2.10 here.
  • $match now returns undefined (an empty sequence, as in jsonata-js) instead of null when a
    regex matches nothing. Since 2.2.8 made $exists(null) true, $exists($match(...)) was true and
    $count($match(...)) was 1 for a failed match; they are now false and 0, and [$match(...)]
    is []. (#176, #177) Thanks to @MonkeyChap for the problem identification and fix.

Security

  • Updated the locked Python dev dependencies pyjwt 2.13.0 → 2.15.1 and urllib3 2.7.0 → 2.8.0,
    clearing 15 advisories that pip-audit reported against uv.lock and that were failing the
    Security Scanning workflow. Both are transitive dependencies of optional extras (fastmcp and
    the docs tooling), not of the published crate or of the wheel, which has no runtime
    dependencies. This only changes the repository's lockfile; users of the mcp extra resolve
    their own versions and should upgrade pyjwt to 2.15.1 or later. (#178)

Full commit list: v2.2.10...v2.2.11

Test Suite Compatibility

See the README for the current
reference-suite pass count -- this changelog no longer hardcodes a number here, since a
stale hardcoded count is exactly the kind of bug this project has previously shipped
and had to correct.

Installation

pip install jsonatapy==2.2.11
# Cargo.toml
jsonata-core = "2.2.11"

Verification

import jsonatapy
print(jsonatapy.__version__)  # Should print: 2.2.11