Skip to content

Hold json below 3 for the Rails 8.0 build - #109

Merged
jeremy merged 1 commit into
masterfrom
rails-8-0-json-pin
Nov 2, 2026
Merged

jeremy merged 1 commit into
masterfrom
rails-8-0-json-pin

Conversation

@jeremy

@jeremy jeremy commented Nov 2, 2026

Copy link
Copy Markdown
Member

Every rails_8_0 job has failed since json 3.0 shipped on 2026-09-07, on master and on every PR (#108's run included): ArgumentError: unknown keyword: quirks_mode.

The cause is in Rails, not here. Active Support 8.0.5.1, the latest 8.0 release, calls JSON.generate(…, quirks_mode: true, max_nesting: false) and JSON.parse(…, quirks_mode: true), and json 3 rejects the keyword. 8-0-stable fixed this in rails/rails@2786de26c6, but no 8.0 release carries the fix yet. Rails 7.2, 8.1 and edge don't pass the keyword, so they pass.

This pins json < 3 in the rails-8-0 appraisal (Appraisals and gemfiles/rails_8_0.gemfile) only, with a note to drop it once an 8.0 release has the fix.

Locally with the Rails 8.0 gemfile: 22 of 62 tests fail under json 3.1.0, and 62 of 62 pass under json 2.21.2 with the pin.

Active Support 8.0.5.1, the latest 8.0 release, passes quirks_mode: to
JSON.generate and JSON.parse. json 3.0 (2026-09-07) rejects the keyword,
so every rails_8_0 job fails ("unknown keyword: quirks_mode"): 22 of 62
tests locally with json 3.1.0, 0 with json 2.21.2. 8-0-stable stopped
passing it in rails/rails@2786de26c6, but no 8.0 release has it yet.
Pin json for that appraisal only, and drop the pin once one does.
Copilot AI balanced review requested due to automatic review settings November 2, 2026 22:24
@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Nov 2, 2026 •

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review ⚠️ Failed 2026-11-02T22:29:43.009093Z
We couldn’t complete this review. Comment @codex review to try again.
3959acb Manual request
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@chatgpt-codex-connector

Copy link
Copy Markdown

You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard.

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

🟢 Approved

No active review issues are reported for the Rails 8.0 JSON version constraint.

No open issues 🎉

What changed in this PR

This PR constrains json to versions below 3 in the Rails 8.0 test configuration to avoid Active Support’s incompatible quirks_mode calls. Other Rails appraisals remain unchanged.

Changes:

  • Adds json < 3 to the Rails 8.0 appraisal and its generated Gemfile.
  • Documents the upstream fix and when to remove the constraint.

[!TIP]
If you aren't ready for review, convert to a draft PR.
Click "Convert to draft" or run gh pr ready --undo.
Click "Ready for review" or run gh pr ready to reengage.

File Description
gemfiles/​rails_8_0.gemfile Adds the JSON version constraint for Rails 8.0 builds.
Appraisals Defines the constraint and documents its removal condition.

Review effort: Balanced

@jeremy

jeremy commented Nov 2, 2026

Copy link
Copy Markdown
Member Author

@codex review

@chatgpt-codex-connector

Copy link
Copy Markdown

You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard.

@jeremy

jeremy commented Nov 2, 2026

Copy link
Copy Markdown
Member Author

Review threads: none. Copilot approved 3959acb.
Not reported on the head: Codex, at 3959acb. Its review failed on its usage limit, including after one @codex review.
CI: all 24 matrix jobs green on 3959acb, plus Rubocop and CodeQL.

@chatgpt-codex-connector

Copy link
Copy Markdown

You have reached your Codex usage limits. You can see your limits in the Codex usage dashboard.

@jeremy
jeremy merged commit 34f5439 into master Nov 2, 2026
31 checks passed
@jeremy
jeremy deleted the rails-8-0-json-pin branch November 2, 2026 23:42
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