diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 270e31e..0dc56e6 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -8,33 +8,18 @@ jobs: fail-fast: false matrix: ruby-version: - - '3.0' - - '3.1' - '3.2' - '3.3' - '3.4' + - '4.0' gemfile: - - gemfiles/Gemfile.rails61 - - gemfiles/Gemfile.rails70 - gemfiles/Gemfile.rails71 - gemfiles/Gemfile.rails72 - gemfiles/Gemfile.rails80 + - gemfiles/Gemfile.rails81 exclude: - # rails 6.1 requires ruby < 3.4 - - ruby-version: '3.4' - gemfile: 'gemfiles/Gemfile.rails61' - # rails 7.0 requires ruby >= 2.7, < 3.4 - # https://www.fastruby.io/blog/ruby/rails/versions/compatibility-table.html - - ruby-version: '3.4' - gemfile: 'gemfiles/Gemfile.rails70' - # rails 7.2 requires ruby >= 3.1 - # https://www.fastruby.io/blog/ruby/rails/versions/compatibility-table.html - - ruby-version: '3.0' - gemfile: 'gemfiles/Gemfile.rails72' # rails 8.0 requires ruby >= 3.2 # https://www.fastruby.io/blog/ruby/rails/versions/compatibility-table.html - - ruby-version: '3.0' - gemfile: 'gemfiles/Gemfile.rails80' - ruby-version: '3.1' gemfile: 'gemfiles/Gemfile.rails80' diff --git a/CHANGELOG.md b/CHANGELOG.md index 87dffbc..8c03fa6 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,6 @@ ## [Unreleased] -* no unreleased changes +### Fixed +* Support Rails 8.1, Ruby 4.0 ## 2.4.3 / 2025-11-07 ### Fixed diff --git a/gemfiles/Gemfile.rails61 b/gemfiles/Gemfile.rails61 deleted file mode 100644 index 8fdb206..0000000 --- a/gemfiles/Gemfile.rails61 +++ /dev/null @@ -1,12 +0,0 @@ -source 'https://rubygems.org' - -gemspec path: '..' - -gem 'rails', '~> 6.1.0' - -# Rails 6.1 does not support sqlite3 2.x; it specifies gem "sqlite3", "~> 1.4" -# in lib/active_record/connection_adapters/sqlite3_adapter.rb -gem 'sqlite3', '~> 1.7' - -# Latest concurrent-ruby breaks Rails < 7.1. See https://github.com/rails/rails/issues/54260 -gem 'concurrent-ruby', '1.3.4' diff --git a/gemfiles/Gemfile.rails70 b/gemfiles/Gemfile.rails70 deleted file mode 100644 index 085807e..0000000 --- a/gemfiles/Gemfile.rails70 +++ /dev/null @@ -1,12 +0,0 @@ -source 'https://rubygems.org' - -gemspec path: '..' - -gem 'rails', '~> 7.0.0' - -# Rails 7.0 does not support sqlite3 2.x; it specifies gem "sqlite3", "~> 1.4" -# in lib/active_record/connection_adapters/sqlite3_adapter.rb -gem 'sqlite3', '~> 1.7' - -# Latest concurrent-ruby breaks Rails < 7.1. See https://github.com/rails/rails/issues/54260 -gem 'concurrent-ruby', '1.3.4' diff --git a/gemfiles/Gemfile.rails71 b/gemfiles/Gemfile.rails71 index 50624d7..173bb3f 100644 --- a/gemfiles/Gemfile.rails71 +++ b/gemfiles/Gemfile.rails71 @@ -3,6 +3,3 @@ source 'https://rubygems.org' gemspec path: '..' gem 'rails', '~> 7.1.0' - -# sqlite3 2.x is not supported on ruby 3.0 -gem 'sqlite3', '~> 1.7' diff --git a/gemfiles/Gemfile.rails81 b/gemfiles/Gemfile.rails81 new file mode 100644 index 0000000..4b958c0 --- /dev/null +++ b/gemfiles/Gemfile.rails81 @@ -0,0 +1,5 @@ +source 'https://rubygems.org' + +gemspec path: '..' + +gem 'rails', '~> 8.1.0' diff --git a/ndr_error.gemspec b/ndr_error.gemspec index 3eb4556..7a53367 100644 --- a/ndr_error.gemspec +++ b/ndr_error.gemspec @@ -19,14 +19,9 @@ Gem::Specification.new do |s| s.files = Dir['{app,config,db,lib}/**/*', 'CHANGELOG.md', 'CODE_OF_CONDUCT.md', 'MIT-LICENSE', 'Rakefile', 'README.md'] - ['.travis.yml'] - s.required_ruby_version = '>= 3.0' + s.required_ruby_version = '>= 3.2' - s.add_dependency 'rails', '>= 6.1', '< 8.1' - - # Support rails 6.1 with Ruby 3.1 - s.add_dependency 'net-imap' - s.add_dependency 'net-pop' - s.add_dependency 'net-smtp' + s.add_dependency 'rails', '>= 7.1', '< 8.2' s.add_dependency 'will_paginate' @@ -35,23 +30,8 @@ Gem::Specification.new do |s| s.add_development_dependency 'pry' s.add_development_dependency 'puma' - # Rails 6.1 and 7.0 do not support sqlite3 2.x; they specify gem "sqlite3", "~> 1.4" - # in lib/active_record/connection_adapters/sqlite3_adapter.rb - # cf. gemfiles/Gemfile.rails70 s.add_development_dependency 'sqlite3' - # Workaround build issue on GitHub Actions with ruby <= 3.1 when installing sass-embedded - # gem version 1.81.0: NoMethodError: undefined method `parse' for # - # https://bugs.ruby-lang.org/issues/19371 - s.add_development_dependency 'psych', '< 5' - - # Workaround build issue on GitHub Actions with ruby <= 3.1 when installing sass-embedded - # Versions 1.77.0 and above require ruby >= 3.2 for packaged x86_64-linux binaries - # but say they're compatible with ruby 3.1. - # 1.76.0 has a bug that was fixed in 1.77.1, which we can't use yet. - # https://github.com/sass/dart-sass/issues/2239 - s.add_development_dependency 'sass-embedded', '~> 1.75.0' if RUBY_VERSION.start_with?('3.1') # rubocop:disable Gemspec/RubyVersionGlobalsUsage - s.add_development_dependency 'mocha' s.add_development_dependency 'test-unit', '~> 3.0'