Conversation
…e convention The spec/dummy used `SERVER_BUNDLE_ONLY=true` while the generator template and all other Procfiles use `=yes`. The inconsistency was introduced accidentally in PR #1630 and has no functional impact (webpack checks truthiness, not exact string), but aligning with the template convention keeps the spec/dummy representative of what users get. Closes #2409 Co-Authored-By: Claude Opus 4.6 (1M context) <[email protected]>
WalkthroughChanged environment variable values from Changes
Estimated code review effort🎯 1 (Trivial) | ⏱️ ~2 minutes Poem
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
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 |
|
Reviewed the change. This is a clean, minimal consistency fix — all other Verified:
The webpack configs check truthiness ( LGTM. ✅ |
Greptile SummaryThis PR standardizes Confidence Score: 5/5
Important Files Changed
Flowchart%%{init: {'theme': 'neutral'}}%%
flowchart TD
A["Procfile.dev\n(spec/dummy)"] -->|"SERVER_BUNDLE_ONLY=yes\n(was: =true)"| B["bin/shakapacker-watch --watch"]
B --> C{"webpack config\nif (process.env.SERVER_BUNDLE_ONLY)"}
C -->|truthy — both 'yes' and 'true'| D["Build server bundle only"]
C -->|falsy| E["Build all bundles"]
style A fill:#d4edda,stroke:#28a745
style D fill:#cce5ff,stroke:#004085
Reviews (1): Last reviewed commit: "Fix spec/dummy Procfile.dev SERVER_BUNDL..." | Re-trigger Greptile |
Same consistency issue as SERVER_BUNDLE_ONLY: the RSC "how it works" doc used `CLIENT_BUNDLE_ONLY=true` while all other usage (server_manager.rb, specs, other docs) uses `=yes`. Both are functionally identical (webpack checks truthiness), but the docs should match the codebase convention. Co-Authored-By: Claude Opus 4.6 (1M context) <[email protected]>
|
Review: PR 2922 - Fix SERVER_BUNDLE_ONLY/CLIENT_BUNDLE_ONLY convention alignment Summary: Clean, low-risk consistency fix. No issues found. Verification: Checked all remaining uses of SERVER_BUNDLE_ONLY and CLIENT_BUNDLE_ONLY across Procfiles, docs, and source files. All now consistently use the yes value after this PR merges. No remaining instances of the old true value in any Procfile or doc. Assessment:
LGTM |
## Summary - Replaces all `SERVER_BUNDLE_ONLY=yes`, `CLIENT_BUNDLE_ONLY=yes`, and `RSC_BUNDLE_ONLY=yes` with `=true` across source code, Procfiles, specs, and documentation - Both values are truthy in JS (`if (process.env.X)`) and Ruby, but `true` is the more conventional and self-documenting value - Reverses the direction of #2922 which standardized on `=yes` — this PR standardizes on `=true` instead ## Changed files (18) - **Source**: `server_manager.rb`, `doctor.rb`, `rsc_setup.rb`, Procfile template - **Procfiles**: `spec/dummy`, `react_on_rails_pro/spec/dummy`, `execjs-compatible-dummy` - **Specs**: `server_manager_spec.rb`, `doctor_spec.rb`, `install_generator_spec.rb` - **Docs**: 8 documentation files referencing these env vars ## Test plan - [x] `bundle exec rspec spec/react_on_rails/dev/server_manager_spec.rb` — 92 examples, 0 failures - [x] `bundle exec rspec spec/lib/react_on_rails/doctor_spec.rb` — 152 examples, 0 failures - [x] `bundle exec rspec spec/react_on_rails/generators/install_generator_spec.rb` — 131 examples, 0 failures - [x] `bundle exec rubocop` passes on all changed Ruby files - [x] No functional change — both `"yes"` and `"true"` are truthy in JS/Ruby 🤖 Generated with [Claude Code](https://claude.com/claude-code) <!-- CURSOR_SUMMARY --> --- > [!NOTE] > **Low Risk** > Low risk refactor that mainly updates documentation/templates/tests and development tooling env var conventions; runtime impact is limited to dev/test watch process detection. > > **Overview** > Standardizes Shakapacker bundle-selection env vars across the project by replacing `CLIENT_BUNDLE_ONLY`, `SERVER_BUNDLE_ONLY`, and `RSC_BUNDLE_ONLY` values from `=yes` to `=true` in docs, Procfile templates/dummies, generators, and specs. > > Updates `ServerManager` test-watch behavior to set `CLIENT_BUNDLE_ONLY=true` and to detect both `SERVER_BUNDLE_ONLY=true` and legacy `=yes` watcher processes during the transition, with corresponding spec adjustments. > > <sup>Written by [Cursor Bugbot](https://cursor.com/dashboard?tab=bugbot) for commit b72ede2. This will update automatically on new commits. Configure [here](https://cursor.com/dashboard?tab=bugbot).</sup> <!-- /CURSOR_SUMMARY --> <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit * **Documentation** * Updated development setup guides and configuration examples to use consistent boolean values (`true`) instead of string values (`yes`) for bundler environment variables across all documentation. * **Chores** * Standardized development process configuration templates and test fixtures to use consistent environment variable formatting for bundler settings. <!-- end of auto-generated comment: release notes by coderabbit.ai --> --------- Co-authored-by: Claude Opus 4.6 (1M context) <[email protected]>
…e-dedup * origin/main: (51 commits) Fix Content-Length mismatch and null renderingRequest errors in node renderer (#3069) Improve memory debugging docs with simpler heap snapshot approach (#3072) Enforce strict version matching in doctor and recommend doctor on errors (#3070) Remove immediate_hydration feature from codebase (#2834) Fix infinite fork loop when node renderer worker fails to bind port (#2881) Fix TanStack Router SSR hydration mismatch in Pro async path (#2932) Improve node renderer error messages for malformed render requests (#3068) Add interactive mode prompt to create-react-on-rails-app (#3063) docs: replace hardcoded version numbers with unversioned install commands (#2893) Remove Contributing section from docs sidebar (#3064) Consolidate docs comparison pages into single evaluation entry (#3065) Docs route cleanup: canonicalize worst verbose URL slugs (#3067) Add agent summary blocks to high-value docs pages (#3066) Fix brittle positional assertions in create-app tests (#2923) Auto-resolve renderer password from ENV in Rails Pro (#2921) Standardize bundle env vars from =yes to =true (#2925) Fix Pro generator multiline and template-literal rewrites (#2918) Fix spec/dummy Procfile.dev SERVER_BUNDLE_ONLY to match template convention (#2922) Add llms docs entry points (#2916) Bump version to 16.6.0.rc.0 ... # Conflicts: # packages/create-react-on-rails-app/src/create-app.ts
…lacement-2835-main * origin/main: (44 commits) Fix Content-Length mismatch and null renderingRequest errors in node renderer (#3069) Improve memory debugging docs with simpler heap snapshot approach (#3072) Enforce strict version matching in doctor and recommend doctor on errors (#3070) Remove immediate_hydration feature from codebase (#2834) Fix infinite fork loop when node renderer worker fails to bind port (#2881) Fix TanStack Router SSR hydration mismatch in Pro async path (#2932) Improve node renderer error messages for malformed render requests (#3068) Add interactive mode prompt to create-react-on-rails-app (#3063) docs: replace hardcoded version numbers with unversioned install commands (#2893) Remove Contributing section from docs sidebar (#3064) Consolidate docs comparison pages into single evaluation entry (#3065) Docs route cleanup: canonicalize worst verbose URL slugs (#3067) Add agent summary blocks to high-value docs pages (#3066) Fix brittle positional assertions in create-app tests (#2923) Auto-resolve renderer password from ENV in Rails Pro (#2921) Standardize bundle env vars from =yes to =true (#2925) Fix Pro generator multiline and template-literal rewrites (#2918) Fix spec/dummy Procfile.dev SERVER_BUNDLE_ONLY to match template convention (#2922) Add llms docs entry points (#2916) Bump version to 16.6.0.rc.0 ... # Conflicts: # CHANGELOG.md
### Summary Adds missing changelog entries to the `[Unreleased]` section for PRs merged since `v16.6.0.rc.0`. Analyzed 19 commits on `origin/main` since the last tag, identified 1 missing user-visible PR (#3069), and skipped 10 non-user-visible PRs (docs, tests, internal refactors). **New entries added:** - **Added**: `[Pro] Configurable HTTP keep-alive timeout for node renderer connections` (PR #3069) - **Fixed**: `[Pro] Fixed SSR failures from stale persistent HTTP/2 connections` (PR #3069) **Entries already present** (added in prior changelog updates): PRs #2834, #2881, #2918, #2921, #2923, #2932, #3063, #3068, #3070. **Skipped** (not user-visible): #2893 (docs), #2916 (docs), #2922 (test fix), #2923 (test fix), #2925 (internal refactor), #3064 (docs), #3065 (docs), #3066 (docs), #3067 (docs), #3072 (docs). ### Pull Request checklist - [x] ~Add/update test to cover these changes~ - [x] ~Update documentation~ - [x] Update CHANGELOG file ### Other Information No code changes — CHANGELOG.md only. <!-- CURSOR_SUMMARY --> --- > [!NOTE] > **Low Risk** > Low risk because this PR only changes documentation (`CHANGELOG.md`) and does not modify runtime code. > > **Overview** > Updates `CHANGELOG.md` *[Unreleased]* to include missing Pro release notes for PR `#3069`, documenting the new `renderer_http_keep_alive_timeout` config and the associated fix for SSR failures from stale persistent HTTP/2 connections to the node renderer. > > <sup>Reviewed by [Cursor Bugbot](https://cursor.com/bugbot) for commit 8d1a480. Bugbot is set up for automated code reviews on this repo. Configure [here](https://www.cursor.com/dashboard/bugbot).</sup> <!-- /CURSOR_SUMMARY --> <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit * **New Features** * Interactive mode selection prompt for CLI tool when no explicit mode is specified * Configurable keep-alive timeout setting for Pro users (default 30 seconds) * **Bug Fixes** * Enhanced validation and error handling for invalid request payloads * Improved template literal handling in code generation * Better HTTP connection stability with enhanced diagnostic messaging <!-- end of auto-generated comment: release notes by coderabbit.ai --> Co-authored-by: Claude Opus 4.6 (1M context) <[email protected]>
Adds missing changelog entries to the `[Unreleased]` section for PRs merged since `v16.6.0.rc.0`. Analyzed 19 commits on `origin/main` since the last tag, identified 1 missing user-visible PR (#3069), and skipped 10 non-user-visible PRs (docs, tests, internal refactors). **New entries added:** - **Added**: `[Pro] Configurable HTTP keep-alive timeout for node renderer connections` (PR #3069) - **Fixed**: `[Pro] Fixed SSR failures from stale persistent HTTP/2 connections` (PR #3069) **Entries already present** (added in prior changelog updates): PRs **Skipped** (not user-visible): #2893 (docs), #2916 (docs), #2922 (test fix), #2923 (test fix), #2925 (internal refactor), #3064 (docs), #3065 (docs), #3066 (docs), #3067 (docs), #3072 (docs). - [x] ~Add/update test to cover these changes~ - [x] ~Update documentation~ - [x] Update CHANGELOG file No code changes — CHANGELOG.md only. <!-- CURSOR_SUMMARY --> --- > [!NOTE] > **Low Risk** > Low risk because this PR only changes documentation (`CHANGELOG.md`) and does not modify runtime code. > > **Overview** > Updates `CHANGELOG.md` *[Unreleased]* to include missing Pro release notes for PR `#3069`, documenting the new `renderer_http_keep_alive_timeout` config and the associated fix for SSR failures from stale persistent HTTP/2 connections to the node renderer. > > <sup>Reviewed by [Cursor Bugbot](https://cursor.com/bugbot) for commit 8d1a480. Bugbot is set up for automated code reviews on this repo. Configure [here](https://www.cursor.com/dashboard/bugbot).</sup> <!-- /CURSOR_SUMMARY --> <!-- This is an auto-generated comment: release notes by coderabbit.ai --> * **New Features** * Interactive mode selection prompt for CLI tool when no explicit mode is specified * Configurable keep-alive timeout setting for Pro users (default 30 seconds) * **Bug Fixes** * Enhanced validation and error handling for invalid request payloads * Improved template literal handling in code generation * Better HTTP connection stability with enhanced diagnostic messaging <!-- end of auto-generated comment: release notes by coderabbit.ai --> Co-authored-by: Claude Opus 4.6 (1M context) <[email protected]>
Adds missing changelog entries to the `[Unreleased]` section for PRs merged since `v16.6.0.rc.0`. Analyzed 19 commits on `origin/main` since the last tag, identified 1 missing user-visible PR (#3069), and skipped 10 non-user-visible PRs (docs, tests, internal refactors). **New entries added:** - **Added**: `[Pro] Configurable HTTP keep-alive timeout for node renderer connections` (PR #3069) - **Fixed**: `[Pro] Fixed SSR failures from stale persistent HTTP/2 connections` (PR #3069) **Entries already present** (added in prior changelog updates): PRs **Skipped** (not user-visible): #2893 (docs), #2916 (docs), #2922 (test fix), #2923 (test fix), #2925 (internal refactor), #3064 (docs), #3065 (docs), #3066 (docs), #3067 (docs), #3072 (docs). - [x] ~Add/update test to cover these changes~ - [x] ~Update documentation~ - [x] Update CHANGELOG file No code changes — CHANGELOG.md only. <!-- CURSOR_SUMMARY --> --- > [!NOTE] > **Low Risk** > Low risk because this PR only changes documentation (`CHANGELOG.md`) and does not modify runtime code. > > **Overview** > Updates `CHANGELOG.md` *[Unreleased]* to include missing Pro release notes for PR `#3069`, documenting the new `renderer_http_keep_alive_timeout` config and the associated fix for SSR failures from stale persistent HTTP/2 connections to the node renderer. > > <sup>Reviewed by [Cursor Bugbot](https://cursor.com/bugbot) for commit 8d1a480. Bugbot is set up for automated code reviews on this repo. Configure [here](https://www.cursor.com/dashboard/bugbot).</sup> <!-- /CURSOR_SUMMARY --> <!-- This is an auto-generated comment: release notes by coderabbit.ai --> * **New Features** * Interactive mode selection prompt for CLI tool when no explicit mode is specified * Configurable keep-alive timeout setting for Pro users (default 30 seconds) * **Bug Fixes** * Enhanced validation and error handling for invalid request payloads * Improved template literal handling in code generation * Better HTTP connection stability with enhanced diagnostic messaging <!-- end of auto-generated comment: release notes by coderabbit.ai --> Co-authored-by: Claude Opus 4.6 (1M context) <[email protected]>
…ention (#2922) ## Summary - Aligns `spec/dummy/Procfile.dev` to use `SERVER_BUNDLE_ONLY=yes` instead of `=true`, matching the generator template and all other Procfiles in the codebase - Also fixes `CLIENT_BUNDLE_ONLY=true` → `=yes` in the RSC "how it works" doc, which had the same inconsistency - Both inconsistencies are purely cosmetic — webpack configs check truthiness (`if (process.env.X)`), not exact string equality ## Context - The `SERVER_BUNDLE_ONLY` inconsistency was introduced accidentally in PR #1630 (June 2024) when the value was changed from `=yes` to `=true` without review - The `CLIENT_BUNDLE_ONLY` inconsistency in `docs/pro/react-server-components/how-react-server-components-work.md` was found during investigation — all other `CLIENT_BUNDLE_ONLY` usage (`server_manager.rb`, specs, other docs) uses `=yes` Closes #2409 ## Test plan - [x] CI passes (no functional change — both `"yes"` and `"true"` are truthy in JS) - [x] Verify `spec/dummy/Procfile.dev` now matches the template convention - [x] Verify RSC doc commands match the codebase convention 🤖 Generated with [Claude Code](https://claude.com/claude-code) <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit * **Chores** * Updated development/build configuration to adjust a server bundle setting for consistent local tooling behavior. * Updated documentation to reflect the revised build command and clarify the local development workflow. <!-- end of auto-generated comment: release notes by coderabbit.ai --> --------- Co-authored-by: Claude Opus 4.6 (1M context) <[email protected]>
## Summary - Replaces all `SERVER_BUNDLE_ONLY=yes`, `CLIENT_BUNDLE_ONLY=yes`, and `RSC_BUNDLE_ONLY=yes` with `=true` across source code, Procfiles, specs, and documentation - Both values are truthy in JS (`if (process.env.X)`) and Ruby, but `true` is the more conventional and self-documenting value - Reverses the direction of #2922 which standardized on `=yes` — this PR standardizes on `=true` instead ## Changed files (18) - **Source**: `server_manager.rb`, `doctor.rb`, `rsc_setup.rb`, Procfile template - **Procfiles**: `spec/dummy`, `react_on_rails_pro/spec/dummy`, `execjs-compatible-dummy` - **Specs**: `server_manager_spec.rb`, `doctor_spec.rb`, `install_generator_spec.rb` - **Docs**: 8 documentation files referencing these env vars ## Test plan - [x] `bundle exec rspec spec/react_on_rails/dev/server_manager_spec.rb` — 92 examples, 0 failures - [x] `bundle exec rspec spec/lib/react_on_rails/doctor_spec.rb` — 152 examples, 0 failures - [x] `bundle exec rspec spec/react_on_rails/generators/install_generator_spec.rb` — 131 examples, 0 failures - [x] `bundle exec rubocop` passes on all changed Ruby files - [x] No functional change — both `"yes"` and `"true"` are truthy in JS/Ruby 🤖 Generated with [Claude Code](https://claude.com/claude-code) <!-- CURSOR_SUMMARY --> --- > [!NOTE] > **Low Risk** > Low risk refactor that mainly updates documentation/templates/tests and development tooling env var conventions; runtime impact is limited to dev/test watch process detection. > > **Overview** > Standardizes Shakapacker bundle-selection env vars across the project by replacing `CLIENT_BUNDLE_ONLY`, `SERVER_BUNDLE_ONLY`, and `RSC_BUNDLE_ONLY` values from `=yes` to `=true` in docs, Procfile templates/dummies, generators, and specs. > > Updates `ServerManager` test-watch behavior to set `CLIENT_BUNDLE_ONLY=true` and to detect both `SERVER_BUNDLE_ONLY=true` and legacy `=yes` watcher processes during the transition, with corresponding spec adjustments. > > <sup>Written by [Cursor Bugbot](https://cursor.com/dashboard?tab=bugbot) for commit b72ede2. This will update automatically on new commits. Configure [here](https://cursor.com/dashboard?tab=bugbot).</sup> <!-- /CURSOR_SUMMARY --> <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit * **Documentation** * Updated development setup guides and configuration examples to use consistent boolean values (`true`) instead of string values (`yes`) for bundler environment variables across all documentation. * **Chores** * Standardized development process configuration templates and test fixtures to use consistent environment variable formatting for bundler settings. <!-- end of auto-generated comment: release notes by coderabbit.ai --> --------- Co-authored-by: Claude Opus 4.6 (1M context) <[email protected]>
### Summary Adds missing changelog entries to the `[Unreleased]` section for PRs merged since `v16.6.0.rc.0`. Analyzed 19 commits on `origin/main` since the last tag, identified 1 missing user-visible PR (#3069), and skipped 10 non-user-visible PRs (docs, tests, internal refactors). **New entries added:** - **Added**: `[Pro] Configurable HTTP keep-alive timeout for node renderer connections` (PR #3069) - **Fixed**: `[Pro] Fixed SSR failures from stale persistent HTTP/2 connections` (PR #3069) **Entries already present** (added in prior changelog updates): PRs #2834, #2881, #2918, #2921, #2923, #2932, #3063, #3068, #3070. **Skipped** (not user-visible): #2893 (docs), #2916 (docs), #2922 (test fix), #2923 (test fix), #2925 (internal refactor), #3064 (docs), #3065 (docs), #3066 (docs), #3067 (docs), #3072 (docs). ### Pull Request checklist - [x] ~Add/update test to cover these changes~ - [x] ~Update documentation~ - [x] Update CHANGELOG file ### Other Information No code changes — CHANGELOG.md only. <!-- CURSOR_SUMMARY --> --- > [!NOTE] > **Low Risk** > Low risk because this PR only changes documentation (`CHANGELOG.md`) and does not modify runtime code. > > **Overview** > Updates `CHANGELOG.md` *[Unreleased]* to include missing Pro release notes for PR `#3069`, documenting the new `renderer_http_keep_alive_timeout` config and the associated fix for SSR failures from stale persistent HTTP/2 connections to the node renderer. > > <sup>Reviewed by [Cursor Bugbot](https://cursor.com/bugbot) for commit 8d1a480. Bugbot is set up for automated code reviews on this repo. Configure [here](https://www.cursor.com/dashboard/bugbot).</sup> <!-- /CURSOR_SUMMARY --> <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit * **New Features** * Interactive mode selection prompt for CLI tool when no explicit mode is specified * Configurable keep-alive timeout setting for Pro users (default 30 seconds) * **Bug Fixes** * Enhanced validation and error handling for invalid request payloads * Improved template literal handling in code generation * Better HTTP connection stability with enhanced diagnostic messaging <!-- end of auto-generated comment: release notes by coderabbit.ai --> Co-authored-by: Claude Opus 4.6 (1M context) <[email protected]>
…ention (#2922) ## Summary - Aligns `spec/dummy/Procfile.dev` to use `SERVER_BUNDLE_ONLY=yes` instead of `=true`, matching the generator template and all other Procfiles in the codebase - Also fixes `CLIENT_BUNDLE_ONLY=true` → `=yes` in the RSC "how it works" doc, which had the same inconsistency - Both inconsistencies are purely cosmetic — webpack configs check truthiness (`if (process.env.X)`), not exact string equality ## Context - The `SERVER_BUNDLE_ONLY` inconsistency was introduced accidentally in PR #1630 (June 2024) when the value was changed from `=yes` to `=true` without review - The `CLIENT_BUNDLE_ONLY` inconsistency in `docs/pro/react-server-components/how-react-server-components-work.md` was found during investigation — all other `CLIENT_BUNDLE_ONLY` usage (`server_manager.rb`, specs, other docs) uses `=yes` Closes #2409 ## Test plan - [x] CI passes (no functional change — both `"yes"` and `"true"` are truthy in JS) - [x] Verify `spec/dummy/Procfile.dev` now matches the template convention - [x] Verify RSC doc commands match the codebase convention 🤖 Generated with [Claude Code](https://claude.com/claude-code) <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit * **Chores** * Updated development/build configuration to adjust a server bundle setting for consistent local tooling behavior. * Updated documentation to reflect the revised build command and clarify the local development workflow. <!-- end of auto-generated comment: release notes by coderabbit.ai --> --------- Co-authored-by: Claude Opus 4.6 (1M context) <[email protected]>
## Summary - Replaces all `SERVER_BUNDLE_ONLY=yes`, `CLIENT_BUNDLE_ONLY=yes`, and `RSC_BUNDLE_ONLY=yes` with `=true` across source code, Procfiles, specs, and documentation - Both values are truthy in JS (`if (process.env.X)`) and Ruby, but `true` is the more conventional and self-documenting value - Reverses the direction of #2922 which standardized on `=yes` — this PR standardizes on `=true` instead ## Changed files (18) - **Source**: `server_manager.rb`, `doctor.rb`, `rsc_setup.rb`, Procfile template - **Procfiles**: `spec/dummy`, `react_on_rails_pro/spec/dummy`, `execjs-compatible-dummy` - **Specs**: `server_manager_spec.rb`, `doctor_spec.rb`, `install_generator_spec.rb` - **Docs**: 8 documentation files referencing these env vars ## Test plan - [x] `bundle exec rspec spec/react_on_rails/dev/server_manager_spec.rb` — 92 examples, 0 failures - [x] `bundle exec rspec spec/lib/react_on_rails/doctor_spec.rb` — 152 examples, 0 failures - [x] `bundle exec rspec spec/react_on_rails/generators/install_generator_spec.rb` — 131 examples, 0 failures - [x] `bundle exec rubocop` passes on all changed Ruby files - [x] No functional change — both `"yes"` and `"true"` are truthy in JS/Ruby 🤖 Generated with [Claude Code](https://claude.com/claude-code) <!-- CURSOR_SUMMARY --> --- > [!NOTE] > **Low Risk** > Low risk refactor that mainly updates documentation/templates/tests and development tooling env var conventions; runtime impact is limited to dev/test watch process detection. > > **Overview** > Standardizes Shakapacker bundle-selection env vars across the project by replacing `CLIENT_BUNDLE_ONLY`, `SERVER_BUNDLE_ONLY`, and `RSC_BUNDLE_ONLY` values from `=yes` to `=true` in docs, Procfile templates/dummies, generators, and specs. > > Updates `ServerManager` test-watch behavior to set `CLIENT_BUNDLE_ONLY=true` and to detect both `SERVER_BUNDLE_ONLY=true` and legacy `=yes` watcher processes during the transition, with corresponding spec adjustments. > > <sup>Written by [Cursor Bugbot](https://cursor.com/dashboard?tab=bugbot) for commit b72ede2. This will update automatically on new commits. Configure [here](https://cursor.com/dashboard?tab=bugbot).</sup> <!-- /CURSOR_SUMMARY --> <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit * **Documentation** * Updated development setup guides and configuration examples to use consistent boolean values (`true`) instead of string values (`yes`) for bundler environment variables across all documentation. * **Chores** * Standardized development process configuration templates and test fixtures to use consistent environment variable formatting for bundler settings. <!-- end of auto-generated comment: release notes by coderabbit.ai --> --------- Co-authored-by: Claude Opus 4.6 (1M context) <[email protected]>
### Summary Adds missing changelog entries to the `[Unreleased]` section for PRs merged since `v16.6.0.rc.0`. Analyzed 19 commits on `origin/main` since the last tag, identified 1 missing user-visible PR (#3069), and skipped 10 non-user-visible PRs (docs, tests, internal refactors). **New entries added:** - **Added**: `[Pro] Configurable HTTP keep-alive timeout for node renderer connections` (PR #3069) - **Fixed**: `[Pro] Fixed SSR failures from stale persistent HTTP/2 connections` (PR #3069) **Entries already present** (added in prior changelog updates): PRs #2834, #2881, #2918, #2921, #2923, #2932, #3063, #3068, #3070. **Skipped** (not user-visible): #2893 (docs), #2916 (docs), #2922 (test fix), #2923 (test fix), #2925 (internal refactor), #3064 (docs), #3065 (docs), #3066 (docs), #3067 (docs), #3072 (docs). ### Pull Request checklist - [x] ~Add/update test to cover these changes~ - [x] ~Update documentation~ - [x] Update CHANGELOG file ### Other Information No code changes — CHANGELOG.md only. <!-- CURSOR_SUMMARY --> --- > [!NOTE] > **Low Risk** > Low risk because this PR only changes documentation (`CHANGELOG.md`) and does not modify runtime code. > > **Overview** > Updates `CHANGELOG.md` *[Unreleased]* to include missing Pro release notes for PR `#3069`, documenting the new `renderer_http_keep_alive_timeout` config and the associated fix for SSR failures from stale persistent HTTP/2 connections to the node renderer. > > <sup>Reviewed by [Cursor Bugbot](https://cursor.com/bugbot) for commit 8d1a480. Bugbot is set up for automated code reviews on this repo. Configure [here](https://www.cursor.com/dashboard/bugbot).</sup> <!-- /CURSOR_SUMMARY --> <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit * **New Features** * Interactive mode selection prompt for CLI tool when no explicit mode is specified * Configurable keep-alive timeout setting for Pro users (default 30 seconds) * **Bug Fixes** * Enhanced validation and error handling for invalid request payloads * Improved template literal handling in code generation * Better HTTP connection stability with enhanced diagnostic messaging <!-- end of auto-generated comment: release notes by coderabbit.ai --> Co-authored-by: Claude Opus 4.6 (1M context) <[email protected]>
Summary
spec/dummy/Procfile.devto useSERVER_BUNDLE_ONLY=yesinstead of=true, matching the generator template and all other Procfiles in the codebaseCLIENT_BUNDLE_ONLY=true→=yesin the RSC "how it works" doc, which had the same inconsistencyif (process.env.X)), not exact string equalityContext
SERVER_BUNDLE_ONLYinconsistency was introduced accidentally in PR Update bin/shakapacker to auto-generate packs #1630 (June 2024) when the value was changed from=yesto=truewithout reviewCLIENT_BUNDLE_ONLYinconsistency indocs/pro/react-server-components/how-react-server-components-work.mdwas found during investigation — all otherCLIENT_BUNDLE_ONLYusage (server_manager.rb, specs, other docs) uses=yesCloses #2409
Test plan
"yes"and"true"are truthy in JS)spec/dummy/Procfile.devnow matches the template convention🤖 Generated with Claude Code
Summary by CodeRabbit