Support #22922
closedUpgrade bundler to 2.5.x throughout
Description
The latest version available as I write this is 2.5.23 and it's the last version to support Ruby 3.0. Upgrading would be helpful because Bundler is a core component of our deployment, and we're currently working around some bugs we've seen in 2.4.22, so we stand to benefit from getting a more recent version that might fix some of those bugs. In all these places from git grep '\b2\.4\.':
build/package-build-dockerfiles/debian11/Dockerfile: gem install --conservative --version '~> 2.4.0' bundler && \
build/package-build-dockerfiles/debian12/Dockerfile: gem install --conservative --version '>= 2.4.0' bundler && \
build/package-build-dockerfiles/rocky8/Dockerfile: gem install --conservative --version '>= 2.4.0' bundler && \
build/package-build-dockerfiles/rocky9/Dockerfile: gem install --conservative --version '>= 2.4.0' bundler && \
build/package-build-dockerfiles/ubuntu2004/Dockerfile: gem install --conservative --version '~> 2.4.0' bundler && \
build/package-build-dockerfiles/ubuntu2204/Dockerfile: gem install --conservative --version '>= 2.4.0' bundler && \
build/package-build-dockerfiles/ubuntu2404/Dockerfile: gem install --conservative --version '>= 2.4.0' bundler && \
build/package-testing/test-package-arvados-api-server.sh:BUNDLE="$(gem contents --version '~> 2.4.0' bundler | grep -E '/(bin|e
xe)/bundle$' | tail -n1)"
build/rails-package-scripts/postinst.sh:run_and_report "Installing bundler" gem install --conservative --version '~> 2.4.0' bun
dler
build/rails-package-scripts/postinst.sh:BUNDLE="$(gem contents --version '~> 2.4.0' bundler | grep -E '/(bin|exe)/bundle$' | ta
il -n1)"
build/run-tests.sh: gem install --user --no-document --conservative --version '~> 2.4.0' bundler \
build/run-tests.sh: BUNDLE="$(gem contents --version '~> 2.4.0' bundler | grep -E '/(bin|exe)/bundle$' | tail -n1)"
lib/boot/passenger.go: err = super.RunProgram(ctx, appdir, runOptions{}, "gem", "install", "--user", "--conservative", "--no-document", "--version", "~> 2.4.0", "bundler")
lib/install/deps.go: defaultBundlerVersion = "~> 2.4.0"
services/api/Gemfile.lock: 2.4.22
services/api/test/integration/bundler_version_test.rb: expected = Gem::Dependency.new("", "~> 2.4.22")
tools/arvbox/lib/arvbox/docker/common.sh: flock $GEMLOCK /var/lib/arvados/bin/gem install --conservative --no-document --user --version '~> 2.4.0' bundler
Updated by Brett Smith 10 months ago
- Blocked by Support #22864: Drop support for Ubuntu 20.04 and Debian 11 added
Updated by Brett Smith 9 months ago
- Target version deleted (
Development 2025-07-09)
Updated by Brett Smith 9 months ago
- Precedes Idea #23000: Figure out how to consistently target a platform added
Updated by Tom Clegg 7 months ago
22922-bundler-2.5 @ 66049db97d3022b97988f1e7d5320a28be0e16b2 -- developer-run-tests: #4861
Updated by Tom Clegg 7 months ago
- All agreed upon points are implemented / addressed. Describe changes from pre-implementation design.
- ✅ Updated bundler version in the various places.
- Anything not implemented (discovered or discussed during work) has a follow-up story.
- ✅ n/a
- Code is tested and passing, both automated and manual, what manual testing was done is described.
- ✅ build-packages-multijob passed, see above
- The tested code incorporates recent main branch changes.
- ✅
- New or changed UI/UX has gotten feedback from stakeholders.
- ✅ n/a
- Documentation has been updated.
- ✅ n/a
- Behaves appropriately at the intended scale (describe intended scale).
- ✅ n/a
- Considered backwards and forwards compatibility issues between client and server.
- ✅ n/a
- Follows our coding standards and GUI style guidelines.
- ✅
Updated by Tom Clegg 7 months ago
- Status changed from In Progress to Resolved
Applied in changeset arvados|268f505a166009dd74ef5fa28621273b847a5916.
Updated by Brett Smith 7 months ago
- Status changed from Resolved to In Progress
source:services/api/Gemfile.lock still says "BUNDLED WITH: 2.4.22" I think this is significant because it means even where we preinstall Bundler 2.5, when working with the API server, Bundler will see that declaration and automatically download and use 2.4.22. Cleaning that up is an important part of this ticket.
Updated by Tom Clegg 7 months ago
Gemfile.lock is updated in #22920, because bundler update BUNDLED WITH when the gem set changes, but yes, we can also update it here to test packaging with the current gem set.
22922-bundler-2.5 @ c279006b16c460d6dd3faa9b3d9916db08ae0699
Updated by Brett Smith 7 months ago
Tom Clegg wrote in #note-18:
Gemfile.lock is updated in #22920, because bundler update
BUNDLED WITHwhen the gem set changes
For what it's worth, I would've been totally fine if the answer stopped here. I did think it was important to make sure the requirement didn't get lost, but we don't need to belt-and-suspenders literally everything. Saying "it's being taken care of in this related ticket" is a fine response.
But, since you spun out the separate branch, we might as well take advantage of it just so we have smaller changes.
Updated by Tom Clegg 7 months ago
- Status changed from In Progress to Resolved
Applied in changeset arvados|05eb46338b9b462fd409559462f74158a82eb3b8.