Raise activerecord ceiling to < 9.0 for Rails 8 compatibility#1
Conversation
The current constraint (< 8.0) blocks bundle resolution when upgrading a host application to Rails 8.x. The gem has no known incompatibilities with Rails 8; this simply lifts the version ceiling.
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (2)
✅ Files skipped from review due to trivial changes (1)
🚧 Files skipped from review as they are similar to previous changes (1)
WalkthroughRaised local and required Ruby to 3.4.x, widened ActiveRecord compatibility to allow < 9.0, updated Gemfile dependencies and test DB, and adjusted CI workflow to run against multiple ActiveRecord versions and use actions/checkout v4. Changes
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~20 minutes 🚥 Pre-merge checks | ✅ 3✅ Passed checks (3 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Inline comments:
In `@annotate.gemspec`:
- Line 26: The project currently claims activerecord support up to '< 9.0' via
s.add_runtime_dependency(%q<activerecord>, ['>= 3.2', '< 9.0']) but CI/Gemfile
only pins AR '< 6' and lacks multi-version testing; update CI and dependency
test setup by adding Appraisal files (or separate Gemfiles) for ActiveRecord
6.x, 7.x, 8.x and 9.x and modify .github/workflows/ci.yml to run the matrix (or
Appraisal install + appraisal rake test) against those AR versions, and adjust
the Gemfile/dev dependency pins so CI exercises the full range declared by
s.add_runtime_dependency.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
- Gemfile: drop AR < 6 pin, use env-var-driven version selection (ACTIVERECORD_VERSION defaults to >= 7.2) - CI: matrix of Ruby 3.2/AR 7.2, Ruby 3.4/AR 8.0, Ruby 3.4/AR 8.1 - Remove obsolete dev deps (travis, coveralls, codeclimate, byebug, guard, overcommit, terminal-notifier-guard, pry) - Bump .tool-versions to Ruby 3.4.5 - Bump minimum Ruby to >= 3.2 (required by AR 8.0+)
There was a problem hiding this comment.
Actionable comments posted: 3
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Inline comments:
In @.github/workflows/ci.yml:
- Around line 4-6: The workflow uses branches: ['*'] under both the top-level
and push event which won't match branch names containing slashes; update the
branches filters in .github/workflows/ci.yml by replacing branches: ['*'] with
branches: ['**'] (or remove the branches: entries entirely) so that the
top-level and push triggers (the branches keys in the file) will match branches
with slashes such as feature/xyz.
In `@Gemfile`:
- Line 3: Update the minimum Ruby version declared in the Gemfile from "ruby '>=
3.2.0'" to a currently maintained release (for example "ruby '>= 3.3.0'" or a
later maintained version like 3.4/4.0) so the project no longer requires EOL
Ruby 3.2; if you must continue to support 3.2.0, add a brief comment in the
Gemfile explaining the exception and the reason for retaining the EOL
constraint.
- Around line 5-6: The Gemfile currently sets ar_version =
ENV.fetch('ACTIVERECORD_VERSION', '>= 7.2') which lacks the upper bound present
in the gemspec; update the default string returned by ENV.fetch to include the
same ceiling (e.g. ">= 7.2", "< 9.0") so activerecord gem 'activerecord',
ar_version, require: false uses the matching upper bound; modify the ar_version
default value to include the "< 9.0" constraint while leaving
ACTIVERECORD_VERSION override behavior unchanged.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: CHILL
Plan: Pro
Run ID: 545d0611-0178-4a28-a9f0-cfc1096a3133
📒 Files selected for processing (3)
.github/workflows/ci.yml.tool-versionsGemfile
✅ Files skipped from review due to trivial changes (1)
- .tool-versions
8403342 to
3e8667e
Compare
- Use '**' in branch filters to match names with slashes (e.g. feature/rails-8) - Bump minimum Ruby from >= 3.2 (EOL March 2026) to >= 3.4 (matches hivecore) - CI matrix: all 3 entries now use Ruby 3.4 - Add < 9.0 ceiling to Gemfile AR constraint to match gemspec
3e8667e to
8dffe61
Compare
Summary
activerecordruntime dependency upper bound from< 8.0to< 9.0Context
Hivecore is upgrading from Rails 7.2 to 8.1. This fork's
< 8.0ceiling is a hard blocker forbundle install.Summary by CodeRabbit
Chores
Tests / CI