Repository navigation
Rails main compat: render_in(**options); canary pairs rspec-rails main - #9
Merged
Merged
Conversation
Found by the first canary run: - Rails main calls render_in(context, locals:) and deprecates render_in without options; Component#render_in accepts and ignores them - rspec-rails 8.0.x writes Rails main's now-frozen default_url_options (fixed on rspec-rails main): the edge leg uses rspec-rails main - Rails main's render log calls renderable.class.name.sub, so anonymous component classes in specs get names (stub_const) Rails edge: 78 examples, 0 failures. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Benchmarks: x86_64 (linux)
escape_bench (C ext) · peak RSS 118 MB
escape_bench (pure Ruby) · peak RSS 154 MB
render_bench (C ext) · peak RSS 131 MB
render_bench (pure Ruby) · peak RSS 131 MB
tag_bench (C ext) · peak RSS 43 MB
tag_bench (pure Ruby) · peak RSS 27 MB
Rails request (C ext) · peak RSS 220 MB
|
Benchmarks: aarch64 (linux)
escape_bench (C ext) · peak RSS 117 MB
escape_bench (pure Ruby) · peak RSS 150 MB
render_bench (C ext) · peak RSS 130 MB
render_bench (pure Ruby) · peak RSS 131 MB
tag_bench (C ext) · peak RSS 42 MB
tag_bench (pure Ruby) · peak RSS 26 MB
Rails request (C ext) · peak RSS 219 MB
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The first canary run (Ruby head ✅, Rails edge ❌) found three Rails-main incompatibilities:
render_in(context, locals:)and deprecatesrender_inwithout options (it would break in Rails 9).Ruby2html::Component#render_innow accepts and ignores keyword options; components take data via#initialize. CHANGELOG entry added.default_url_options, which Rails main now freezes (already fixed on rspec-rails main). WithRAILS_VERSION=edge,gemfiles/rails_common.rbuses rspec-rails main.renderable.class.name.sub, which isnilfor anonymous classes, so the component specs give their classes names viastub_const.Verified: Rails edge
spec/features spec/gem/rails78/0; defaultCI=1 bundle exec rspec236/0; rubocop clean.🤖 Generated with Claude Code