diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 07b3475f7..30db51a0e 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -26,7 +26,6 @@ jobs: fail-fast: false matrix: ruby-version: - - 3.1 - 3.2 - 3.3 - 3.4 @@ -34,12 +33,6 @@ jobs: database: [ mysql, postgres, sqlite ] gemfile: [ rails_7_1, rails_7_2, rails_8_0, rails_8_1, rails_main ] exclude: - - ruby-version: "3.1" - gemfile: rails_8_0 - - ruby-version: "3.1" - gemfile: rails_8_1 - - ruby-version: "3.1" - gemfile: rails_main - ruby-version: "3.2" gemfile: rails_main services: diff --git a/Appraisals b/Appraisals index 9f3c8df48..303c1cc76 100644 --- a/Appraisals +++ b/Appraisals @@ -1,13 +1,10 @@ # frozen_string_literal: true appraise "rails-7-1" do - # rdoc 6.14 is not compatible with Ruby 3.1 - gem 'rdoc', '6.13' gem "railties", "~> 7.1.0" end appraise "rails-7-2" do - gem 'rdoc', '6.13' gem "railties", "~> 7.2.0" end diff --git a/README.md b/README.md index 02d706e62..02614847a 100644 --- a/README.md +++ b/README.md @@ -45,7 +45,7 @@ Solid Queue is configured by default in new Rails 8 applications. If you're runn 1. `bundle add solid_queue` 2. `bin/rails solid_queue:install` -(Note: The minimum supported version of Rails is 7.1 and Ruby is 3.1.6.) +(Note: The minimum supported version of Rails is 7.1 and Ruby is 3.2.) This will configure Solid Queue as the production Active Job backend, create the configuration files `config/queue.yml` and `config/recurring.yml`, and create the `db/queue_schema.rb`. It'll also create a `bin/jobs` executable wrapper that you can use to start Solid Queue. diff --git a/UPGRADING.md b/UPGRADING.md index 3db61e04a..544a6482e 100644 --- a/UPGRADING.md +++ b/UPGRADING.md @@ -1,4 +1,6 @@ # Upgrading to version 1.5.x +Ruby 3.1 is no longer supported, as it reached end-of-life in March 2025. Solid Queue now requires Ruby 3.2 or newer. If you're still on Ruby 3.1, Bundler will continue to resolve solid_queue 1.4.x for you, but you won't receive any new versions until you upgrade Ruby. + Recurring schedules that don't specify a time zone are now interpreted in your application's configured time zone (`config.time_zone`) by default, instead of the system's local time. This only affects schedules without an explicit time zone (e.g. `every day at 9am`); schedules that already include one (e.g. `0 9 * * * America/New_York`) are unaffected. If your `config.time_zone` differs from the system time where your processes run, recurring jobs may fire at a different wall-clock time than before. To keep the previous behavior, set: diff --git a/gemfiles/rails_7_1.gemfile b/gemfiles/rails_7_1.gemfile index fcb9a6541..036d98368 100644 --- a/gemfiles/rails_7_1.gemfile +++ b/gemfiles/rails_7_1.gemfile @@ -2,7 +2,6 @@ source "https://rubygems.org" -gem "rdoc", "6.13" gem "railties", "~> 7.1.0" gemspec path: "../" diff --git a/gemfiles/rails_7_2.gemfile b/gemfiles/rails_7_2.gemfile index bfd049922..23b503f0c 100644 --- a/gemfiles/rails_7_2.gemfile +++ b/gemfiles/rails_7_2.gemfile @@ -2,7 +2,6 @@ source "https://rubygems.org" -gem "rdoc", "6.13" gem "railties", "~> 7.2.0" gemspec path: "../" diff --git a/solid_queue.gemspec b/solid_queue.gemspec index 3a5c9693e..425a5adc6 100644 --- a/solid_queue.gemspec +++ b/solid_queue.gemspec @@ -22,7 +22,7 @@ Gem::Specification.new do |spec| Dir["{app,config,db,lib}/**/*", "MIT-LICENSE", "README.md", "UPGRADING.md"] end - spec.required_ruby_version = '>= 3.1' + spec.required_ruby_version = '>= 3.2' rails_version = ">= 7.1" spec.add_dependency "activerecord", rails_version