Skip to content

Bump json to patched version, fixing CVE-2026-54696 (v2.2.1) - #130

Merged
evolve75 merged 2 commits into
masterfrom
features/json-cve-fix
Jul 25, 2026
Merged

Bump json to patched version, fixing CVE-2026-54696 (v2.2.1)#130
evolve75 merged 2 commits into
masterfrom
features/json-cve-fix

Conversation

@evolve75

Copy link
Copy Markdown
Owner

Summary

  • Bump the json runtime dependency's minimum constraint to >= 2.19.9, fixing CVE-2026-54696 / GHSA-x2f5-4prf-w687 (heap buffer overflow when generating to a streamed IO); Gemfile.lock resolves to 2.21.1
  • Bump Tree::VERSION to 2.2.1, add the History.md release note, and refresh the copyright year range in lib/tree/version.rb

Context

master's Gemfile.lock was resolving json (2.9.1), which falls in the vulnerable range (2.9.0-2.19.8). The gemspec's existing ~> 2.0 upper bound already permitted the patched version, so no constraint widening was needed — just a lower-bound bump and a bundle update json.

This is intended as the first real end-to-end test of the trusted-publishing release workflow added in #129: once merged, we'll tag R2.2.1 on master to trigger the OIDC publish to RubyGems.org, then cherry-pick both commits into next.

Test plan

  • rake test:all passes (96 tests / 36 examples, 0 failures)
  • rake gem:package builds rubytree-2.2.1.gem successfully
  • rake version reports rubytree-2.2.1.gem
  • End-to-end trusted-publishing verified once R2.2.1 is tagged after merge

evolve75 added 2 commits July 24, 2026 19:57
json 2.9.0 through 2.19.8 has a heap buffer overflow when the
generator streams an object containing a large string to an IO
(GHSA-x2f5-4prf-w687). Raise the gemspec's minimum json constraint
to the patched 2.19.9 and update Gemfile.lock accordingly (resolves
to 2.21.1). The existing `~> 2.0` upper bound already permitted this
version, so no constraint widening was needed.
Prepares the 2.2.1 patch release: bumps Tree::VERSION, updates the
self-referential Gemfile.lock entry, adds the History.md release
note for the json CVE-2026-54696 fix, and refreshes the copyright
year range.
@evolve75
evolve75 merged commit 6bf3aed into master Jul 25, 2026
25 checks passed
@evolve75
evolve75 deleted the features/json-cve-fix branch July 25, 2026 00:03
@coveralls

Copy link
Copy Markdown

Coverage Status

coverage: 96.35%. remained the same — features/json-cve-fix into master

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants