React on Rails 17.1.0 Release Notes
The 17.1.0 release line is currently available as a release candidate. Use the exact matching gem and npm prerelease
versions. For example, Ruby uses 17.1.0.rc.1, while npm uses 17.1.0-rc.1.
For the complete list of changes, see the CHANGELOG.
When you upgrade from an earlier release candidate, also compare the exact tags. Both placeholders use Ruby/tag dot
notation, such as 17.1.0.rc.1:
https://github.com/shakacode/react_on_rails/compare/v<CURRENT_VERSION>...v<TARGET_VERSION>.
Action required for Pro applications
Deploy the Node Renderer first
Render requests now use a raw JavaScript request body. The upgraded Node Renderer accepts both the old form-encoded body and the new content type, but an older renderer rejects requests from an upgraded gem. Deploy the Node Renderer before the Rails gem. A simultaneous deployment is safe only when an atomic rollout prevents upgraded gem requests from reaching an old renderer. See PR 4579.
Re-check Node Renderer memory limits
The default maxVMPoolSize increased from 2 to 4 for each renderer worker. This prevents old and new RSC bundle
generations from rebuilding repeatedly during rolling deploys, but it can retain twice as many VM contexts. Re-check
memory requests and limits across every worker and replica. If you set MAX_VM_POOL_SIZE, it must be a positive
integer; invalid values now stop renderer startup instead of falling back to the default. See
PR 4811.
Update custom Pro helper overrides
ReactOnRailsProHelper methods are internal and are not stable extension points. The 17.1 release line added the
on_chunk_errors: keyword to build_react_component_result_for_server_streamed_content. An application override
with the older signature raises ArgumentError: unknown keyword: :on_chunk_errors during streamed rendering.
If your application prepends or overrides a Pro helper, compare the helper signatures between the exact tags. Update the override and run the application's streamed SSR and RSC tests before deployment. See PR 4722.
For the coupled gem and npm upgrade procedure, see the Pro upgrade guide.