Skip to content

Update dummy app lockfile to shakapacker 9.6.0#958

Merged
justin808 merged 2 commits intomainfrom
jg/update-bundler-version
Mar 8, 2026
Merged

Update dummy app lockfile to shakapacker 9.6.0#958
justin808 merged 2 commits intomainfrom
jg/update-bundler-version

Conversation

@justin808
Copy link
Copy Markdown
Member

@justin808 justin808 commented Mar 8, 2026

Summary

Test plan

  • CI passes
  • Lockfile-only diff reviewed

Notes

  • no application code changes
  • no Bundler baseline change in this PR

@coderabbitai
Copy link
Copy Markdown

coderabbitai Bot commented Mar 8, 2026

Important

Review skipped

Review was skipped due to path filters

⛔ Files ignored due to path filters (1)
  • spec/dummy/Gemfile.lock is excluded by !**/*.lock

CodeRabbit blocks several paths by default. You can override this behavior by explicitly including those paths in the path filters. For example, including **/dist/** will override the default block on the dist directory, by removing the pattern from both the lists.

⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: aa5806f7-b479-4118-8b35-5d945941fc37

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch jg/update-bundler-version

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.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@claude
Copy link
Copy Markdown
Contributor

claude Bot commented Mar 8, 2026

PR Review: Bundler 2.5.23 to 4.0.7 Upgrade

This PR makes two changes: (1) bumps BUNDLED WITH in both lockfiles from 2.5.23 to 4.0.7, and (2) updates spec/dummy/Gemfile.lock to reference shakapacker 9.6.0 (stable) instead of 9.6.0.rc.3. The RC-to-stable version update is correct and expected. The Bundler version bump warrants careful review.

Concern: Bundler 4.x drops support for Ruby < 3.1

The CI test matrix in .github/workflows/ruby.yml still includes Ruby 2.7 and 3.0. Bundler 4.0 requires Ruby 3.1+. Because the test jobs do NOT remove Gemfile.lock before running (unlike the lint/rbs-validate jobs which do rm -f Gemfile.lock), the BUNDLED WITH 4.0.7 constraint will be enforced by ruby/setup-ruby's bundler-cache step. This is very likely to break CI for Ruby 2.7 and 3.0 jobs.

If the project still intends to support Ruby 2.7 and 3.0, Bundler should stay on the 2.x series. If those Rubies are being dropped, that should be an explicit, documented decision (with CI matrix and gemspec updates) rather than a side-effect of a Bundler upgrade.

Concern: Major version bump with no stated rationale

Going from Bundler 2.5.23 directly to 4.0.7, skipping the entire 3.x series, is a significant jump. Bundler 4 introduced breaking changes (stricter platform handling, removed deprecated flags). The PR description does not explain why 4.x was chosen over staying on the latest 2.x release. Was this intentional?

Minor: Lockfile-only changes affect contributors

Changing only the BUNDLED WITH line without a corresponding Gemfile change means this was generated by running bundle update --bundler locally with Bundler 4 installed. Contributors still on Bundler 2.x will see a mismatch warning or error when they bundle install after pulling this change.

Comment thread Gemfile.lock Outdated

BUNDLED WITH
2.5.23
4.0.7
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Bundler 4.0 requires Ruby 3.1+, but the CI matrix in .github/workflows/ruby.yml still tests Ruby 2.7 and 3.0. Because the test jobs do not remove Gemfile.lock before installing, ruby/setup-ruby will try to install Bundler 4.0.7 for those older Ruby jobs and likely fail.

Either keep BUNDLED WITH on the 2.x series (e.g. 2.5.23 or the latest 2.x patch), or explicitly drop Ruby 2.7/3.0 from the CI matrix in the same PR.

Comment thread spec/dummy/Gemfile.lock Outdated

BUNDLED WITH
2.5.23
4.0.7
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Same Ruby compatibility concern applies here — the dummy app lockfile also requires Bundler 4.0.7, which will affect spec/dummy-based test runs on Ruby 2.7 and 3.0.

@justin808
Copy link
Copy Markdown
Member Author

PR Review: Bundler 2.5.23 to 4.0.7 Upgrade

This PR makes two changes: (1) bumps BUNDLED WITH in both lockfiles from 2.5.23 to 4.0.7, and (2) updates spec/dummy/Gemfile.lock to reference shakapacker 9.6.0 (stable) instead of 9.6.0.rc.3. The RC-to-stable version update is correct and expected. The Bundler version bump warrants careful review.

Concern: Bundler 4.x drops support for Ruby < 3.1

The CI test matrix in .github/workflows/ruby.yml still includes Ruby 2.7 and 3.0. Bundler 4.0 requires Ruby 3.1+. Because the test jobs do NOT remove Gemfile.lock before running (unlike the lint/rbs-validate jobs which do rm -f Gemfile.lock), the BUNDLED WITH 4.0.7 constraint will be enforced by ruby/setup-ruby's bundler-cache step. This is very likely to break CI for Ruby 2.7 and 3.0 jobs.

If the project still intends to support Ruby 2.7 and 3.0, Bundler should stay on the 2.x series. If those Rubies are being dropped, that should be an explicit, documented decision (with CI matrix and gemspec updates) rather than a side-effect of a Bundler upgrade.

Concern: Major version bump with no stated rationale

Going from Bundler 2.5.23 directly to 4.0.7, skipping the entire 3.x series, is a significant jump. Bundler 4 introduced breaking changes (stricter platform handling, removed deprecated flags). The PR description does not explain why 4.x was chosen over staying on the latest 2.x release. Was this intentional?

Minor: Lockfile-only changes affect contributors

Changing only the BUNDLED WITH line without a corresponding Gemfile change means this was generated by running bundle update --bundler locally with Bundler 4 installed. Contributors still on Bundler 2.x will see a mismatch warning or error when they bundle install after pulling this change.

@claude should we move to 3.x?

Are we supporting old Rubies? Should moving to bundler v4 be a breaking change that needs to coincide with old rubies?

Does CI run against old rubies? Does it need to?

@justin808
Copy link
Copy Markdown
Member Author

Opened #960 and tagged it for 10.0.0 to track the intentional support-matrix cleanup for older Ruby/Rails versions.

I want to keep this PR narrowly scoped, so I do not think the Bundler/Ruby support shift should happen implicitly in 9.x via a lockfile update. The plan here is to revert the Bundler bump in this PR and handle the broader compatibility policy as part of 10.0.0.

@justin808 justin808 changed the title Update bundler from 2.5.23 to 4.0.7 Update dummy app lockfile to shakapacker 9.6.0 Mar 8, 2026
@claude
Copy link
Copy Markdown
Contributor

claude Bot commented Mar 8, 2026

The PR title and description are misleading. The two commits cancel each other out for the Bundler version:

  • Commit 1 upgrades Bundler from 2.5.23 to 4.0.7 in both lockfiles
  • Commit 2 reverts Bundler back to 2.5.23 in both lockfiles

The only net change is updating shakapacker (9.6.0.rc.3) to shakapacker (9.6.0) in spec/dummy/Gemfile.lock.

Issue 1 — Misleading title/description: The PR is titled 'Update bundler from 2.5.23 to 4.0.7' but Bundler is effectively unchanged. The PR description's test plan (bundle check) and the Cursor Bugbot risk note both describe a change that was then reverted.

Issue 2 — Messy commit history: Two commits that partially cancel each other make the git history harder to understand. The branch should be squashed to a single commit reflecting the actual change.

Issue 3 — Actual change is fine: Bumping the dummy app's locked shakapacker version from RC (9.6.0.rc.3) to stable (9.6.0) is correct and low-risk. That change alone is worth keeping.

Recommendation: Please squash the commits to reflect only the meaningful change, and update the PR title/description accordingly — e.g. 'Update dummy app lockfile: shakapacker 9.6.0.rc.3 to 9.6.0'.

Comment thread spec/dummy/Gemfile.lock
remote: ../..
specs:
shakapacker (9.6.0.rc.3)
shakapacker (9.6.0)
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

This is the only effective change in the PR (RC → stable release). This change itself is correct and appropriate. However, it should be the sole content of this PR with a matching title and description.

@justin808 justin808 merged commit 02456e1 into main Mar 8, 2026
8 checks passed
@justin808 justin808 deleted the jg/update-bundler-version branch March 8, 2026 07:18
justin808 added a commit that referenced this pull request Mar 8, 2026
## Summary
- updates `spec/dummy/Gemfile.lock` so the local path gem is locked at
stable `shakapacker 9.6.0` instead of `9.6.0.rc.3`
- keeps the Bundler/Ruby support-policy discussion out of `9.x`; that
broader work is tracked in #960 for `10.0.0`

## Test plan
- [ ] CI passes
- [ ] Lockfile-only diff reviewed

## Notes
- no application code changes
- no Bundler baseline change in this PR

---------

Co-authored-by: Claude Opus 4.6 <[email protected]>
justin808 added a commit that referenced this pull request Mar 8, 2026
## Summary

- Added [Unreleased] changelog entries for two merged PRs missing from
CHANGELOG.md:
- **PR #963**: Fixed `Env#current` crashing when Rails is not loaded
(bug fix by @ihabadham)
  - **PR #900**: Added Node package API documentation (by @justin808)
- Skipped non-user-visible PRs: #958, #957, #959

## Test plan

- [x] `yarn lint` passes
- [x] Changelog formatting matches existing conventions

🤖 Generated with [Claude Code](https://claude.com/claude-code)

<!-- CURSOR_SUMMARY -->
---

> [!NOTE]
> **Low Risk**
> Documentation-only change confined to `CHANGELOG.md`, with no runtime
or build behavior impact.
> 
> **Overview**
> Updates `CHANGELOG.md` under **[Unreleased]** to document two
previously-merged changes: a fix preventing `Env#current` from crashing
when Rails isn’t loaded, and new documentation for the Node package
JavaScript API (`docs/node_package_api.md`).
> 
> <sup>Written by [Cursor
Bugbot](https://cursor.com/dashboard?tab=bugbot) for commit
81bf2b8. Configure
[here](https://cursor.com/dashboard?tab=bugbot).</sup>
<!-- /CURSOR_SUMMARY -->

---------

Co-authored-by: Claude Opus 4.6 <[email protected]>
justin808 added a commit that referenced this pull request Mar 10, 2026
## Summary
- updates `spec/dummy/Gemfile.lock` so the local path gem is locked at
stable `shakapacker 9.6.0` instead of `9.6.0.rc.3`
- keeps the Bundler/Ruby support-policy discussion out of `9.x`; that
broader work is tracked in #960 for `10.0.0`

## Test plan
- [ ] CI passes
- [ ] Lockfile-only diff reviewed

## Notes
- no application code changes
- no Bundler baseline change in this PR

---------

Co-authored-by: Claude Opus 4.6 <[email protected]>
justin808 added a commit that referenced this pull request Mar 10, 2026
## Summary
- updates `spec/dummy/Gemfile.lock` so the local path gem is locked at
stable `shakapacker 9.6.0` instead of `9.6.0.rc.3`
- keeps the Bundler/Ruby support-policy discussion out of `9.x`; that
broader work is tracked in #960 for `10.0.0`

## Test plan
- [ ] CI passes
- [ ] Lockfile-only diff reviewed

## Notes
- no application code changes
- no Bundler baseline change in this PR

---------

Co-authored-by: Claude Opus 4.6 <[email protected]>
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.

1 participant