Update React on Rails to 14.2.1 (latest stable)#650
Conversation
- Upgrade react_on_rails gem from 14.1.0.rc.0 to 16.0.1.rc.0 - Update react-on-rails npm package from 14.0.3 to 16.0.1-rc.0 - Update bundle dependencies including Rails to 8.0.2.1 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
WalkthroughUpdated dependency versions for React on Rails across Ruby (Gemfile) and JavaScript (package.json): Ruby gem react_on_rails from 14.1.0.rc.0 to 16.0.1.rc.0, and NPM package react-on-rails from 14.0.3 to 16.0.1-rc.0. No other files or code changes. Changes
Estimated code review effort🎯 1 (Trivial) | ⏱️ ~3 minutes Possibly related PRs
Poem
Pre-merge checks and finishing touches❌ Failed checks (1 warning)
✅ Passed checks (2 passed)
✨ Finishing touches
🧪 Generate unit tests
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
🚀 Quick Review App CommandsWelcome! Here are the commands you can use in this PR:
|
There was a problem hiding this comment.
Actionable comments posted: 1
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
⛔ Files ignored due to path filters (2)
Gemfile.lockis excluded by!**/*.lockyarn.lockis excluded by!**/yarn.lock,!**/*.lock
📒 Files selected for processing (2)
Gemfile(1 hunks)package.json(1 hunks)
🔇 Additional comments (1)
package.json (1)
81-81: Confirm react-on-rails 16.0.1-rc.0 upstream release + API & lockfile checks
- package.json lists "react-on-rails": "16.0.1-rc.0" and yarn.lock contains a react-on-rails@16.0.1-rc.0 entry (lockfile appears to pin the RC).
- No public GitHub/Rubygems release or changelog for 16.0.1.rc.0 was found as of Sep 20, 2025 — provide the release/tag link or confirm this is an internal/published RC.
- Ripgrep search for ReactOnRails usage skipped files, so API compatibility (ReactOnRails.register and other calls) was not verified — run locally: rg -nP --hidden '\bReactOnRails.' -C2 --glob '!/node_modules/' (or search app/javascript/**/* for ReactOnRails.register) and confirm no API breaks.
- Validate runtime/peer compatibility in a branch: React 19, Node 22, Rails 8, and Shakapacker 8 (include SSR + assets precompile tests).
| ruby "3.3.4" | ||
|
|
||
| gem "react_on_rails", "14.1.0.rc.0" | ||
| gem "react_on_rails", "16.0.1.rc.0" |
There was a problem hiding this comment.
🧩 Analysis chain
Gem bump aligns with JS; remove temporary net-pop override now that Ruby 3.3.4 is set.
The version pin to react_on_rails 16.0.1.rc.0 matches package.json. However, the temporary net-pop GitHub override (Lines 48–52) was meant to be removed “when Ruby 3.3.4 is released,” and you’re already on ruby "3.3.4". Keeping a GitHub-sourced core lib is a stability and supply‑chain risk; please remove or pin to a released gem.
Quick checks:
Optionally confirm upstream support matrix:
Also applies to: 48-52
🏁 Script executed:
#!/bin/bash
set -euo pipefail
echo "react_on_rails gem line:"
rg -nP '^\s*gem\s+"react_on_rails",\s*"[^\"]+"' Gemfile
echo "Temporary net-pop override present?"
rg -nP '^\s*gem\s+"net-pop",\s*github:' Gemfile && echo "-> Please remove this override."Length of output: 171
🌐 Web query:
Does react_on_rails 16.0.1.rc.0 officially support Rails 8.0.x and Ruby 3.3.x?
💡 Result:
Short answer: No—there's no official evidence that a gem version "16.0.1.rc.0" exists or officially supports Rails 8.0.x / Ruby 3.3.x.
Evidence:
- React on Rails releases/tags page on GitHub has no release named 16.0.1.rc.0 and the repo/prereqs/docs show support statements up through Rails 7 (prereqs: Rails >= 5.2, Ruby >= 3.0). (github.com)
- RubyGems shows recent published versions (up to 15.x pre-releases in 2025) and the gem metadata lists required rails >= 5.2 and required Ruby >= 3.0 for published versions. No 16.0.1.rc.0 entry appears on RubyGems. (rubygems.org)
If you have a specific release candidate reference (a URL, a repository tag, or a Gemfile entry), share it and I’ll check that exact source.
Citations:
- 1: https://github.com/shakacode/react_on_rails?utm_source=openai
- 2: https://rubygems.org/gems/react_on_rails/versions/14.1.0?utm_source=openai
Remove GitHub net-pop override and correct react_on_rails pin
- Gemfile line 8 — react_on_rails is pinned to "16.0.1.rc.0"; no public release found upstream/RubyGems. Pin to a published version or point to a valid repo/tag if this pre-release is intentional.
- Gemfile line 51 — net-pop is sourced from GitHub (gem "net-pop", github: "ruby/net-pop"); remove the override or replace with a released gem to remove supply‑chain/stability risk.
🤖 Prompt for AI Agents
In Gemfile around lines 8 and 51, react_on_rails is pinned to an unreleased
pre‑release "16.0.1.rc.0" and net-pop is overridden to a GitHub source; replace
the react_on_rails pin with a published RubyGems version (e.g., the latest
stable release) or change the source to a valid repo and tag if you
intentionally need an unreleased pre‑release, and remove the GitHub override for
net-pop by switching to the released gem version (or a vetted gem source) to
eliminate the GitHub dependency and supply‑chain risk; update the Gemfile
entries accordingly and run bundle install to verify.
- Change from 16.0.1.rc.0/16.0.0 to 14.2.1 due to Shakapacker compatibility issues - React on Rails 16 has breaking changes that cause PackerUtils.packer_type nil errors - Version 14.2.1 is stable and works correctly with Shakapacker 8.0.0 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
|
/deploy-review-app |
|
✅ Deployment complete for PR #650, commit 045668e |
|
✅ Review app for PR #650 was successfully deleted |
Summary
Changes Made
react_on_railsto 14.2.1react-on-railsto 14.2.1Why 14.2.1 instead of 16.x?
React on Rails 16 introduced breaking changes that caused compatibility issues:
task_helpersfile in 16.0.1.rc.0 causing rake task failuresPackerUtils.packer_typereturning nil in 16.0.0 causing configuration errorsTest plan
bundle exec rake react_on_rails:localeworks🤖 Generated with Claude Code
This change is