feat!: add Ruby 4.0 support, require minimum Ruby 3.4#217
Conversation
Summary of ChangesHello, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed! This pull request significantly upgrades the project's Ruby environment by introducing support for Ruby 4.0 and enforcing a higher minimum Ruby version of 3.4. This change ensures compatibility with future Ruby releases while streamlining the development environment by removing support for older, less maintained versions. The update also involves a comprehensive refresh of gem dependencies and development configurations to maintain stability and leverage the latest features. Highlights
Changelog
Ignored Files
Activity
Using Gemini Code AssistThe full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips. Invoking Gemini You can request assistance from Gemini at any point by creating a comment using either
Customization To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a Limitations & Feedback Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up here. You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension. Footnotes
|
There was a problem hiding this comment.
Code Review
This pull request successfully updates the project to support Ruby 4.0 and raises the minimum required Ruby version to 3.4. The changes across .ruby-version, .tool-versions, Gemfile.lock, README.md, and openfeature-sdk.gemspec are consistent with the stated goals. The dependency updates in Gemfile.lock are a natural consequence of the Ruby version bump, and the documentation and gemspec reflect the new minimum Ruby version correctly. The verification steps and test plan outlined in the PR description are also appropriate for these changes.
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #217 +/- ##
=======================================
Coverage 99.64% 99.65%
=======================================
Files 26 26
Lines 571 578 +7
=======================================
+ Hits 569 576 +7
Misses 2 2 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
BREAKING CHANGE: Minimum required Ruby version is now 3.4. Ruby 3.1, 3.2, and 3.3 are no longer supported. - Update gemspec required_ruby_version to >= 3.4 - Update CI matrix to test Ruby 4.0 and 3.4 - Update .ruby-version and .tool-versions to 4.0.1 - Update README supported versions table - Regenerate Gemfile.lock for Ruby 4.0 compatibility Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com> Signed-off-by: Jose Colella <jose.colella@gusto.com>
Align the standard linter job's ruby-version with the matrix style convention — use "3.4" instead of pinning "3.4.8", letting ruby/setup-ruby resolve the latest patch. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com> Signed-off-by: Jose Colella <jose.colella@gusto.com>
simplecov-cobertura 2.1.0 uses REXML APIs that are incompatible with Ruby 4.0's updated REXML parser, causing "Malformed XML: No root element" errors during coverage report generation. Version 3.x fixes this. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com> Signed-off-by: Jose Colella <jose.colella@gusto.com>
Add required empty line after `include` statements flagged by the updated Standard/RuboCop rules. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com> Signed-off-by: Jose Colella <jose.colella@gusto.com>
02b7a39 to
965e413
Compare
Summary
.ruby-version,.tool-versions, CI matrix, gemspec constraint, README version table, andGemfile.lockall updatedBreaking Change
Minimum required Ruby version is now 3.4. Ruby 3.1, 3.2, and 3.3 are no longer supported.
Verification
bundle exec rspec— all 272 tests pass on Ruby 4.0.1bundle exec standardrb— 49 files inspected, no offensesTest plan
🤖 Jose's AI agent