diff --git a/.github/workflows/super_diff.yml b/.github/workflows/super_diff.yml index 230691d1..bbd48caa 100644 --- a/.github/workflows/super_diff.yml +++ b/.github/workflows/super_diff.yml @@ -62,11 +62,15 @@ jobs: - rails_7_0 - rails_7_1 - rails_7_2 + - rails_8_0 - no_rails rspec_appraisal: - rspec_lt_3_10 - rspec_gte_3_10 - rspec_gte_3_13 + exclude: + - ruby: "3.1" + rails_appraisal: "rails_8_0" env: BUNDLE_GEMFILE: gemfiles/${{ matrix.rails_appraisal }}_${{ matrix.rspec_appraisal }}.gemfile steps: diff --git a/Appraisals b/Appraisals index 227b12d4..d70a48b4 100644 --- a/Appraisals +++ b/Appraisals @@ -37,6 +37,13 @@ appraisals = { gem 'rails', '~> 7.2.0' gem 'sqlite3', '~> 1.4.0', platform: %i[ruby mswin mingw] end, + rails_8_0: + proc do + instance_eval(&rails_dependencies) + + gem 'rails', '~> 8.0.0' + gem 'sqlite3', '>= 2.1', platform: %i[ruby mswin mingw] + end, no_rails: proc {}, rspec_lt_3_10: proc do |with_rails| @@ -73,7 +80,7 @@ appraisals = { end } -rails_appraisals = %i[no_rails rails_6_1 rails_7_0 rails_7_1 rails_7_2] +rails_appraisals = %i[no_rails rails_6_1 rails_7_0 rails_7_1 rails_7_2 rails_8_0] rspec_appraisals = %i[rspec_lt_3_10 rspec_gte_3_10 rspec_gte_3_13] rails_appraisals.each do |rails_appraisal| diff --git a/CHANGELOG.md b/CHANGELOG.md index 53c28b57..a65b4767 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -10,6 +10,7 @@ - Add official Rails 7.1 support. [#278](https://github.com/splitwise/super_diff/pull/278) - Add official Rails 7.2 support. [#279](https://github.com/splitwise/super_diff/pull/279) +- Add official Rails 8.0 support. [#281](https://github.com/splitwise/super_diff/pull/281) ### Other changes diff --git a/gemfiles/rails_8_0_rspec_gte_3_10.gemfile b/gemfiles/rails_8_0_rspec_gte_3_10.gemfile new file mode 100644 index 00000000..3c0055e1 --- /dev/null +++ b/gemfiles/rails_8_0_rspec_gte_3_10.gemfile @@ -0,0 +1,30 @@ +# This file was generated by Appraisal + +source "https://rubygems.org" + +gem "appraisal", git: "https://github.com/thoughtbot/appraisal" +gem "bundler-audit" +gem "childprocess" +gem "climate_control" +gem "prettier_print" +gem "pry-byebug", platform: :mri +gem "pry-nav", platform: :jruby +gem "rake" +gem "rubocop" +gem "syntax_tree" +gem "syntax_tree-haml" +gem "syntax_tree-rbs" +gem "activerecord-jdbcsqlite3-adapter", platform: :jruby +gem "jdbc-sqlite3", platform: :jruby +gem "net-ftp" +gem "combustion" +gem "rails", "~> 8.0.0" +gem "sqlite3", ">= 2.1", platform: [:ruby, :mswin, :mingw] +gem "rspec", "3.12.0" +gem "rspec-core", "3.12.0" +gem "rspec-expectations", "3.12.3" +gem "rspec-mocks", "3.12.0" +gem "rspec-support", "3.12.0" +gem "rspec-rails" + +gemspec path: "../" diff --git a/gemfiles/rails_8_0_rspec_gte_3_13.gemfile b/gemfiles/rails_8_0_rspec_gte_3_13.gemfile new file mode 100644 index 00000000..2aa74ecb --- /dev/null +++ b/gemfiles/rails_8_0_rspec_gte_3_13.gemfile @@ -0,0 +1,30 @@ +# This file was generated by Appraisal + +source "https://rubygems.org" + +gem "appraisal", git: "https://github.com/thoughtbot/appraisal" +gem "bundler-audit" +gem "childprocess" +gem "climate_control" +gem "prettier_print" +gem "pry-byebug", platform: :mri +gem "pry-nav", platform: :jruby +gem "rake" +gem "rubocop" +gem "syntax_tree" +gem "syntax_tree-haml" +gem "syntax_tree-rbs" +gem "activerecord-jdbcsqlite3-adapter", platform: :jruby +gem "jdbc-sqlite3", platform: :jruby +gem "net-ftp" +gem "combustion" +gem "rails", "~> 8.0.0" +gem "sqlite3", ">= 2.1", platform: [:ruby, :mswin, :mingw] +gem "rspec", "3.13.0" +gem "rspec-core", "3.13.0" +gem "rspec-expectations", "3.13.0" +gem "rspec-mocks", "3.13.0" +gem "rspec-support", "3.13.0" +gem "rspec-rails" + +gemspec path: "../" diff --git a/gemfiles/rails_8_0_rspec_lt_3_10.gemfile b/gemfiles/rails_8_0_rspec_lt_3_10.gemfile new file mode 100644 index 00000000..2b687025 --- /dev/null +++ b/gemfiles/rails_8_0_rspec_lt_3_10.gemfile @@ -0,0 +1,26 @@ +# This file was generated by Appraisal + +source "https://rubygems.org" + +gem "appraisal", git: "https://github.com/thoughtbot/appraisal" +gem "bundler-audit" +gem "childprocess" +gem "climate_control" +gem "prettier_print" +gem "pry-byebug", platform: :mri +gem "pry-nav", platform: :jruby +gem "rake" +gem "rubocop" +gem "syntax_tree" +gem "syntax_tree-haml" +gem "syntax_tree-rbs" +gem "activerecord-jdbcsqlite3-adapter", platform: :jruby +gem "jdbc-sqlite3", platform: :jruby +gem "net-ftp" +gem "combustion" +gem "rails", "~> 8.0.0" +gem "sqlite3", ">= 2.1", platform: [:ruby, :mswin, :mingw] +gem "rspec", "~> 3.9.0" +gem "rspec-rails" + +gemspec path: "../"