Skip to content

Bump nokogiri floor to 1.19.3 (GHSA-c4rq-3m3g-8wgx)#714

Merged
mokagio merged 2 commits into
trunkfrom
mokagio/nokogiri-floor
May 7, 2026
Merged

Bump nokogiri floor to 1.19.3 (GHSA-c4rq-3m3g-8wgx)#714
mokagio merged 2 commits into
trunkfrom
mokagio/nokogiri-floor

Conversation

@mokagio
Copy link
Copy Markdown
Contributor

@mokagio mokagio commented May 7, 2026

What does it do?

Tightens the nokogiri runtime dependency in fastlane-plugin-wpmreleasetoolkit.gemspec from ~> 1.11 to ~> 1.11, >= 1.19.3 to pull in the fix for GHSA-c4rq-3m3g-8wgx — a high-severity ReDoS in Nokogiri's CSS selector tokenizer (vulnerable: < 1.19.3, patched: 1.19.3).

Why

Several Automattic mobile repos consume nokogiri transitively through this plugin and have open Dependabot alerts on < 1.19.3 — e.g. pocket-casts-android alert #125.

Adding the floor here doesn't directly close those alerts (Dependabot reads the consumer's Gemfile.lock, not this gemspec), but it ensures that any future toolkit bump in a downstream repo carries the security fix along: bundler will refuse to resolve nokogiri below 1.19.3 once the consumer picks up this version of the plugin.

How to test

Gemfile.lock was refreshed via bundle install; nokogiri resolves to 1.19.3.
bundle exec rspec — 851 examples, 0 failures.
bundle exec rubocop — 195 files, no offenses.

Checklist before requesting a review

  • Run bundle exec rubocop to test for code style violations and recommendations.
  • Add Unit Tests (aka specs/*_spec.rb) if applicable. (N/A — dependency bump.)
  • Run bundle exec rspec to run the whole test suite and ensure all your tests pass.
  • Make sure you added an entry in the CHANGELOG.md file under the ## Trunk### Bug Fixes section.
  • If applicable, add an entry in MIGRATION.md. (N/A — no breaking change.)

Posted by Claude Code (Opus 4.7) on behalf of @mokagio with approval.

Pull in the fix for [GHSA-c4rq-3m3g-8wgx][advisory] (high-severity ReDoS
in Nokogiri's CSS selector tokenizer; vulnerable: `< 1.19.3`).

Adds `>= 1.19.3` alongside the existing `~> 1.11` constraint so consumers
that bump `fastlane-plugin-wpmreleasetoolkit` automatically resolve to
nokogiri >= 1.19.3 going forward.

Existing consumer Gemfile.lock entries still need a `bundle update` per
repo to actually advance their pinned version — Dependabot reads the
consumer's lockfile, not the plugin gemspec.

[advisory]: GHSA-c4rq-3m3g-8wgx

---

Generated with the help of Claude Code, https://claude.com/claude-code

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@mokagio mokagio self-assigned this May 7, 2026
@mokagio mokagio closed this May 7, 2026
@mokagio mokagio reopened this May 7, 2026
@mokagio mokagio marked this pull request as ready for review May 7, 2026 06:56
Copilot AI review requested due to automatic review settings May 7, 2026 06:56
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Updates the Release Toolkit Fastlane plugin’s Nokogiri dependency constraints to ensure downstream consumers resolve a patched Nokogiri version addressing GHSA-c4rq-3m3g-8wgx (CSS selector tokenizer ReDoS).

Changes:

  • Raise the runtime Nokogiri requirement to >= 1.19.3 (within Nokogiri 1.x).
  • Refresh Gemfile.lock to resolve Nokogiri 1.19.3.
  • Add a Trunk changelog entry documenting the security-motivated dependency floor bump.

Reviewed changes

Copilot reviewed 2 out of 3 changed files in this pull request and generated no comments.

File Description
Gemfile.lock Updates resolved Nokogiri version and dependency constraint in the local path spec to >= 1.19.3.
fastlane-plugin-wpmreleasetoolkit.gemspec Tightens runtime dependency constraint to ensure Nokogiri >= 1.19.3 is selected.
CHANGELOG.md Records the Nokogiri security floor bump under Trunk → Bug Fixes.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@mokagio
Copy link
Copy Markdown
Contributor Author

mokagio commented May 7, 2026

Admin-merging to move forward with the nokogiri security update rollout.

Internal ref: p1778137169508249-slack-C02KLTL3MKM

@mokagio mokagio merged commit 276c667 into trunk May 7, 2026
12 checks passed
@mokagio mokagio deleted the mokagio/nokogiri-floor branch May 7, 2026 07:36
@iangmaia
Copy link
Copy Markdown
Contributor

iangmaia commented May 7, 2026

LGTM, by the way 👍

@mokagio mokagio mentioned this pull request May 7, 2026
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.

3 participants