chore: Pin dev deps, track lockfile, add bundler to Dependabot#497
chore: Pin dev deps, track lockfile, add bundler to Dependabot#497itaybre wants to merge 2 commits into
Conversation
…r to Dependabot - Pin all dev dependencies in gemspec to pessimistic minor version ranges to prevent unexpected major version breakage - Remove bundler from gemspec dev deps (it's a toolchain dep, not a gem dep) - Track Gemfile.lock (generated with bundler 2.6.8 matching CI) - Add bundler ecosystem to Dependabot for automated gem updates Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Match test.yml by installing bundler 2.6.8 explicitly before bundle install, ensuring consistent dependency resolution. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
| PLATFORMS | ||
| arm64-darwin-24 | ||
| ruby |
There was a problem hiding this comment.
Bug: The Gemfile.lock is missing the Windows platform (x64-mingw-ucrt), which will cause the bundle install command to fail on the Windows CI runner.
Severity: HIGH
Suggested Fix
Add the required platforms to the lockfile by running bundle lock --add-platform x86_64-linux and bundle lock --add-platform x64-mingw-ucrt. This will ensure bundle install can resolve dependencies correctly across all CI environments.
Prompt for AI Agent
Review the code at the location below. A potential bug has been identified by an AI
agent. Verify if this is a real issue. If it is, propose a fix; if not, explain why it's
not valid.
Location: Gemfile.lock#L293-L295
Potential issue: The `Gemfile.lock` was generated on a macOS machine (`arm64-darwin-24`)
and does not include the necessary platform entry for Windows (e.g., `x64-mingw-ucrt`).
The CI pipeline is configured to run tests on `windows-latest` and has been updated to
use `bundler` version `2.6.8`. Bundler versions 2.2 and newer enforce strict platform
matching. When `bundle install` is executed on the Windows CI runner, it will fail
because the runner's platform is not present in the lockfile's `PLATFORMS` section,
leading to a build failure.
Also affects:
.github/workflows/integration-test.yml:21~27
Did we get this right? 👍 / 👎 to inform future reviews.
| with: | ||
| ruby-version: "3.1.2" | ||
|
|
||
| - run: gem install bundler -v '2.6.8' |
There was a problem hiding this comment.
h: I don't think we need this as bundle install uses the bundler version defined in the Gemfile.lock automatically
| arm64-darwin-24 | ||
| ruby |
There was a problem hiding this comment.
m: I think it should be enough to just define ruby here
Summary
~>) to prevent unexpected major version breakagebundlerfrom gemspec dev deps — it's a toolchain dependency, not a gem dependencyGemfile.lock(generated with bundler 2.6.8, matching CI)bundlerecosystem to Dependabot for automated gem updatesChanges
fastlane-plugin-sentry.gemspecfastlane ~> 2.10,pry ~> 0.14,rspec ~> 3.0,rubocop ~> 1.0,rubocop-rspec ~> 3.0; dropbundler.gitignoreGemfile.lockGemfile.lock.github/dependabot.ymlbundlerecosystem (weekly)Follow-up items
bundler-auditto CI to catch known CVEs in transitive depsintegration-test.yml(currently unspecified, unliketest.ymlwhich uses 2.6.8)Test plan
bundle installresolves cleanly against the tracked lockfile#skip-changelog