Conversation
1c93556 to
41a31d3
Compare
1ebb12d to
97650f9
Compare
* Bundler 4.0.3 * Awaiting platform-specific gem: ffi, nokogiri, sqlite3, thruster * Gem upgrades for Ruby 4 compat * rubocop 1.82.0 for rubocop/rubocop#14644 * web-push 3.1.0 for pushpad/web-push#19 * Git sources for fixes and pending releases * rinku: vmg/rinku#97 * rubocop: rubocop/rubocop#14644 * web-push: for pushpad/web-push#19 * Many platform-specific gems aren't compiled for Ruby 4 yet, which triggers a Bundler bug wherein it selects a chooses an imcompatible platform-specific gem rather than falling back to the ruby platform and compiling. Fix: ruby/rubygems#9211
Contributor
There was a problem hiding this comment.
Pull request overview
This pull request upgrades the project from Ruby 3.4.7 to Ruby 4.0.0, along with Bundler 4.0.3 and various gem updates required for Ruby 4 compatibility.
Changes:
- Ruby version updated to 4.0.0 across all configuration files (.ruby-version, Dockerfiles)
- Bundler upgraded to 4.0.3 with new configuration for default CLI command
- Gem dependencies updated for Ruby 4 compatibility (rubocop >= 1.82.0, web-push >= 3.1.0)
- Platform fallback to generic "ruby" platform added to work around missing platform-specific gems
- CGI gem explicitly added as it was removed from Ruby 4.0 stdlib
- Rinku gem sourced from Git branch with Ruby 4 export fix
Reviewed changes
Copilot reviewed 6 out of 9 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
| .ruby-version | Updates Ruby version from 3.4.7 to 4.0.0 |
| Dockerfile | Updates Ruby version in base image to 4.0.0 |
| saas/Dockerfile | Updates Ruby version in SaaS base image to 4.0.0 |
| Gemfile | Adds ruby version declaration, updates gem constraints for rubocop and web-push, adds cgi gem for stdlib removal |
| Gemfile.saas | Adds rinku git source dependency for Ruby 4 fix |
| Gemfile.lock | Updates to Bundler 4.0.3, Ruby 4.0.0, adds ruby platform, updates gem versions including platform-specific gems |
| Gemfile.saas.lock | Updates to Bundler 4.0.3, Ruby 4.0.0, adds ruby platform and rinku git source, updates gem versions |
| .rubocop.yml | Updates TargetRubyVersion to 4.0 and adds ParserEngine: parser_prism |
| bin/setup | Adds Bundler config for default_cli_command setting |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| gem "selenium-webdriver" | ||
| gem "webmock" | ||
| gem "vcr" | ||
| gem "cgi" # Indirect vcr dep removed Ruby 4.0 stdlib |
There was a problem hiding this comment.
The comment has a minor grammatical issue. It should read "removed from Ruby 4.0 stdlib" (with "from" added) for clarity.
Suggested change
| gem "cgi" # Indirect vcr dep removed Ruby 4.0 stdlib | |
| gem "cgi" # Indirect vcr dep removed from Ruby 4.0 stdlib |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
TargetRubyVersion 4.0rubocop/rubocop#14644TargetRubyVersion 4.0rubocop/rubocop#14644