From 9642d675ba1a6ad9d0a4c037f61184bc3ecb46a6 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Tue, 17 Mar 2026 20:23:31 +0000 Subject: [PATCH 1/3] Initial plan From 01df45abfb325a2a4ac65abe5c8b49660b6544d5 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Tue, 17 Mar 2026 20:26:32 +0000 Subject: [PATCH 2/3] Update CI matrix: drop Ruby 3.1, Rails 6.1/7.0; add Ruby 3.5, Rails 8.0; update MySQL to 8.0 Co-authored-by: brendon <81871+brendon@users.noreply.github.com> --- .github/workflows/main.yml | 29 +++++-------------- Appraisals | 21 +++++--------- gemfiles/rails_6.1.gemfile | 10 ------- .../{rails_7.0.gemfile => rails_8.0.gemfile} | 6 ++-- unread.gemspec | 4 +-- 5 files changed, 19 insertions(+), 51 deletions(-) delete mode 100644 gemfiles/rails_6.1.gemfile rename gemfiles/{rails_7.0.gemfile => rails_8.0.gemfile} (60%) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index dc07643..3468de1 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -13,13 +13,8 @@ jobs: strategy: fail-fast: false matrix: - ruby: ['3.1', '3.2', '3.3', '3.4'] - rails: ['6.1', '7.0', '7.1', '7.2'] - exclude: - - ruby: 3.4 - rails: 6.1 - - ruby: 3.4 - rails: 7.0 + ruby: ['3.2', '3.3', '3.4', '3.5'] + rails: ['7.1', '7.2', '8.0'] name: SQLite / Ruby ${{ matrix.ruby }} / Rails ${{ matrix.rails }} @@ -49,7 +44,7 @@ jobs: services: mysql: - image: mysql:5.7 + image: mysql:8.0 env: MYSQL_ROOT_PASSWORD: password ports: @@ -63,13 +58,8 @@ jobs: strategy: fail-fast: false matrix: - ruby: ['3.1', '3.2', '3.3', '3.4'] - rails: ['6.1', '7.0', '7.1', '7.2'] - exclude: - - ruby: 3.4 - rails: 6.1 - - ruby: 3.4 - rails: 7.0 + ruby: ['3.2', '3.3', '3.4', '3.5'] + rails: ['7.1', '7.2', '8.0'] name: MySQL / Ruby ${{ matrix.ruby }} / Rails ${{ matrix.rails }} @@ -117,13 +107,8 @@ jobs: strategy: fail-fast: false matrix: - ruby: ['3.1', '3.2', '3.3', '3.4'] - rails: ['6.1', '7.0', '7.1', '7.2'] - exclude: - - ruby: 3.4 - rails: 6.1 - - ruby: 3.4 - rails: 7.0 + ruby: ['3.2', '3.3', '3.4', '3.5'] + rails: ['7.1', '7.2', '8.0'] name: PostgreSQL / Ruby ${{ matrix.ruby }} / Rails ${{ matrix.rails }} diff --git a/Appraisals b/Appraisals index 17deb80..c1ab50b 100644 --- a/Appraisals +++ b/Appraisals @@ -1,3 +1,10 @@ +appraise "rails-8.0" do + gem "activerecord", "~> 8.0.0" + gem "mysql2", "~> 0.5" + gem "pg", "~> 1.3" + gem "sqlite3", ">= 2.1" +end + appraise "rails-7.2" do gem "activerecord", "~> 7.2.0" gem "mysql2", "~> 0.5" @@ -11,17 +18,3 @@ appraise "rails-7.1" do gem "pg", "~> 1.3" gem "sqlite3", "~> 1.4" end - -appraise "rails-7.0" do - gem "activerecord", "~> 7.0.0" - gem "mysql2", "~> 0.5" - gem "pg", "~> 1.1" - gem "sqlite3", "~> 1.4" -end - -appraise "rails-6.1" do - gem "activerecord", "~> 6.1.2", ">= 6.1.2.1" - gem "mysql2", "~> 0.5" - gem "pg", "~> 1.1" - gem "sqlite3", "~> 1.4" -end diff --git a/gemfiles/rails_6.1.gemfile b/gemfiles/rails_6.1.gemfile deleted file mode 100644 index b107a77..0000000 --- a/gemfiles/rails_6.1.gemfile +++ /dev/null @@ -1,10 +0,0 @@ -# This file was generated by Appraisal - -source "https://rubygems.org" - -gem "activerecord", "~> 6.1.2", ">= 6.1.2.1" -gem "mysql2", "~> 0.5" -gem "pg", "~> 1.1" -gem "sqlite3", "~> 1.4" - -gemspec path: "../" diff --git a/gemfiles/rails_7.0.gemfile b/gemfiles/rails_8.0.gemfile similarity index 60% rename from gemfiles/rails_7.0.gemfile rename to gemfiles/rails_8.0.gemfile index e4e22d0..08ffa05 100644 --- a/gemfiles/rails_7.0.gemfile +++ b/gemfiles/rails_8.0.gemfile @@ -2,9 +2,9 @@ source "https://rubygems.org" -gem "activerecord", "~> 7.0.0" +gem "activerecord", "~> 8.0.0" gem "mysql2", "~> 0.5" -gem "pg", "~> 1.1" -gem "sqlite3", "~> 1.4" +gem "pg", "~> 1.3" +gem "sqlite3", ">= 2.1" gemspec path: "../" diff --git a/unread.gemspec b/unread.gemspec index 3dcfbca..6935a15 100644 --- a/unread.gemspec +++ b/unread.gemspec @@ -12,7 +12,7 @@ Gem::Specification.new do |s| s.homepage = "https://github.com/ledermann/unread" s.summary = %q{Manages read/unread status of ActiveRecord objects} s.description = %q{This gem creates a scope for unread objects and adds methods to mark objects as read } - s.required_ruby_version = '>= 3.1' + s.required_ruby_version = '>= 3.2' s.files = `git ls-files -z`.split("\x0").reject do |f| f.match(%r{^(test|spec|features)/}) @@ -21,7 +21,7 @@ Gem::Specification.new do |s| s.executables = s.files.grep(%r{^exe/}) { |f| File.basename(f) } s.require_paths = ["lib"] - s.add_dependency 'activerecord', '>= 6.1' + s.add_dependency 'activerecord', '>= 7.1' s.add_development_dependency 'bundler' s.add_development_dependency 'rake' From 2cdb6306d7ac9f7b0b8cfd617b6f7d7c80c3a414 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Tue, 17 Mar 2026 20:33:55 +0000 Subject: [PATCH 3/3] Fix missed versions: add Ruby 4.0 and Rails 8.1, remove non-existent Ruby 3.5 and EOL Rails 7.1 Co-authored-by: brendon <81871+brendon@users.noreply.github.com> --- .github/workflows/main.yml | 12 ++++++------ Appraisals | 14 +++++++------- gemfiles/{rails_7.1.gemfile => rails_8.1.gemfile} | 4 ++-- unread.gemspec | 2 +- 4 files changed, 16 insertions(+), 16 deletions(-) rename gemfiles/{rails_7.1.gemfile => rails_8.1.gemfile} (70%) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 3468de1..ee0315c 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -13,8 +13,8 @@ jobs: strategy: fail-fast: false matrix: - ruby: ['3.2', '3.3', '3.4', '3.5'] - rails: ['7.1', '7.2', '8.0'] + ruby: ['3.2', '3.3', '3.4', '4.0'] + rails: ['7.2', '8.0', '8.1'] name: SQLite / Ruby ${{ matrix.ruby }} / Rails ${{ matrix.rails }} @@ -58,8 +58,8 @@ jobs: strategy: fail-fast: false matrix: - ruby: ['3.2', '3.3', '3.4', '3.5'] - rails: ['7.1', '7.2', '8.0'] + ruby: ['3.2', '3.3', '3.4', '4.0'] + rails: ['7.2', '8.0', '8.1'] name: MySQL / Ruby ${{ matrix.ruby }} / Rails ${{ matrix.rails }} @@ -107,8 +107,8 @@ jobs: strategy: fail-fast: false matrix: - ruby: ['3.2', '3.3', '3.4', '3.5'] - rails: ['7.1', '7.2', '8.0'] + ruby: ['3.2', '3.3', '3.4', '4.0'] + rails: ['7.2', '8.0', '8.1'] name: PostgreSQL / Ruby ${{ matrix.ruby }} / Rails ${{ matrix.rails }} diff --git a/Appraisals b/Appraisals index c1ab50b..307bb5d 100644 --- a/Appraisals +++ b/Appraisals @@ -1,3 +1,10 @@ +appraise "rails-8.1" do + gem "activerecord", "~> 8.1.0" + gem "mysql2", "~> 0.5" + gem "pg", "~> 1.3" + gem "sqlite3", ">= 2.1" +end + appraise "rails-8.0" do gem "activerecord", "~> 8.0.0" gem "mysql2", "~> 0.5" @@ -11,10 +18,3 @@ appraise "rails-7.2" do gem "pg", "~> 1.3" gem "sqlite3", ">= 2.0" end - -appraise "rails-7.1" do - gem "activerecord", "~> 7.1.0" - gem "mysql2", "~> 0.5" - gem "pg", "~> 1.3" - gem "sqlite3", "~> 1.4" -end diff --git a/gemfiles/rails_7.1.gemfile b/gemfiles/rails_8.1.gemfile similarity index 70% rename from gemfiles/rails_7.1.gemfile rename to gemfiles/rails_8.1.gemfile index b155949..d7be185 100644 --- a/gemfiles/rails_7.1.gemfile +++ b/gemfiles/rails_8.1.gemfile @@ -2,9 +2,9 @@ source "https://rubygems.org" -gem "activerecord", "~> 7.1.0" +gem "activerecord", "~> 8.1.0" gem "mysql2", "~> 0.5" gem "pg", "~> 1.3" -gem "sqlite3", "~> 1.4" +gem "sqlite3", ">= 2.1" gemspec path: "../" diff --git a/unread.gemspec b/unread.gemspec index 6935a15..a4331aa 100644 --- a/unread.gemspec +++ b/unread.gemspec @@ -21,7 +21,7 @@ Gem::Specification.new do |s| s.executables = s.files.grep(%r{^exe/}) { |f| File.basename(f) } s.require_paths = ["lib"] - s.add_dependency 'activerecord', '>= 7.1' + s.add_dependency 'activerecord', '>= 7.2' s.add_development_dependency 'bundler' s.add_development_dependency 'rake'