Skip to content

Conversation

@bshand
Copy link
Contributor

@bshand bshand commented Dec 31, 2025

Support Rails 8.1, Ruby 4.0
capistrano: Support bundler 4 with capistrano 2

Bundler 4 no longer provides capistrano 2 integrations; this PR recreates them, with modifications to support Bundler 4 (which e.g. no longer supports the long-deprecated --deployment flags to bundle install).

I've left the original Bundler capistrano 2 tasks unchanged as far as possible, rather than trying to rewrite them more cleanly.

This code will work as before for existing config/deploy.rb files on Bundler 2. But if the require 'bundler/capistrano' line is removed, the new behaviour will instead be introduced when calling require 'ndr_dev_support/capistrano/ndr_model'. This means existing code will work as before, but projects can switch to the new behaviour before switching to Bundler 4 (which is the new default version with Ruby 4.0).

@bshand bshand marked this pull request as draft December 31, 2025 10:43
@bshand bshand marked this pull request as ready for review January 2, 2026 14:37
@bshand bshand marked this pull request as draft January 2, 2026 14:42
@bshand bshand marked this pull request as ready for review January 5, 2026 12:54
@bshand bshand requested a review from miles-smith January 12, 2026 13:57
Copy link
Contributor

@kenny-lee-1 kenny-lee-1 left a comment

Choose a reason for hiding this comment

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

Looks ok to me.

Tested "This code will work as before for existing config/deploy.rb files on Bundler 2. But if the require 'bundler/capistrano' line is removed, the new behaviour will instead be introduced" on one of the external api era targets and it did as you said.

@bshand bshand merged commit 6662a0f into main Jan 13, 2026
23 checks passed
@bshand bshand deleted the feature/rails_81 branch January 13, 2026 17:31
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.

2 participants