From 7be390701f796f0a6defd400422d6410026e1c31 Mon Sep 17 00:00:00 2001 From: Mattia Roccoberton Date: Sat, 26 Mar 2022 19:02:36 +0100 Subject: [PATCH] Enable Rails 7.0 specs support --- .github/workflows/specs_rails60.yml | 4 +- .github/workflows/specs_rails61.yml | 4 +- .github/workflows/specs_rails70.yml | 42 +++ Appraisals | 6 + gemfiles/rails61_activeadmin.gemfile | 1 + gemfiles/rails61_activeadmin.gemfile.lock | 1 + gemfiles/rails70_activeadmin.gemfile | 28 ++ gemfiles/rails70_activeadmin.gemfile.lock | 341 ++++++++++++++++++++++ spec/dummy/config/application.rb | 4 + 9 files changed, 427 insertions(+), 4 deletions(-) create mode 100644 .github/workflows/specs_rails70.yml create mode 100644 gemfiles/rails70_activeadmin.gemfile create mode 100644 gemfiles/rails70_activeadmin.gemfile.lock diff --git a/.github/workflows/specs_rails60.yml b/.github/workflows/specs_rails60.yml index 3bf86f5..4815a74 100644 --- a/.github/workflows/specs_rails60.yml +++ b/.github/workflows/specs_rails60.yml @@ -1,5 +1,5 @@ --- -name: Specs +name: Specs Rails 6.0 on: push: @@ -10,7 +10,7 @@ on: - master jobs: - test: + tests: runs-on: ubuntu-latest strategy: diff --git a/.github/workflows/specs_rails61.yml b/.github/workflows/specs_rails61.yml index 4415b39..53c9568 100644 --- a/.github/workflows/specs_rails61.yml +++ b/.github/workflows/specs_rails61.yml @@ -1,5 +1,5 @@ --- -name: Specs +name: Specs Rails 6.1 on: push: @@ -10,7 +10,7 @@ on: - master jobs: - test: + tests: runs-on: ubuntu-latest strategy: diff --git a/.github/workflows/specs_rails70.yml b/.github/workflows/specs_rails70.yml new file mode 100644 index 0000000..dec344c --- /dev/null +++ b/.github/workflows/specs_rails70.yml @@ -0,0 +1,42 @@ +--- +name: Specs Rails 7.0 + +on: + push: + branches: + - master + pull_request: + branches: + - master + +jobs: + tests: + runs-on: ubuntu-latest + + strategy: + matrix: + ruby: ['2.7', '3.0'] + gemfile: ['rails70_activeadmin'] + + env: + BUNDLE_GEMFILE: ${{ github.workspace }}/gemfiles/${{ matrix.gemfile }}.gemfile + + steps: + - name: Checkout repository + uses: actions/checkout@v2 + + - name: Set up Ruby + uses: ruby/setup-ruby@v1 + with: + ruby-version: ${{ matrix.ruby }} + bundler-cache: true + + - name: Run tests + run: bundle exec rspec --profile + + - name: On failure, archive screenshots as artifacts + uses: actions/upload-artifact@v2 + if: failure() + with: + name: test-failed-screenshots + path: spec/dummy/tmp/screenshots diff --git a/Appraisals b/Appraisals index dc26cdd..bb2c105 100644 --- a/Appraisals +++ b/Appraisals @@ -26,3 +26,9 @@ appraise 'rails61-activeadmin' do gem 'activeadmin' gem 'rails', '~> 6.1.0' end + +appraise 'rails70-activeadmin' do + gem 'activeadmin' + gem 'rails', '~> 7.0.0' + gem 'sprockets-rails' +end diff --git a/gemfiles/rails61_activeadmin.gemfile b/gemfiles/rails61_activeadmin.gemfile index 014d339..f09f9a9 100644 --- a/gemfiles/rails61_activeadmin.gemfile +++ b/gemfiles/rails61_activeadmin.gemfile @@ -4,6 +4,7 @@ source "https://rubygems.org" gem "activeadmin" gem "rails", "~> 6.1.0" +gem "sprockets-rails" group :development, :test do gem "puma" diff --git a/gemfiles/rails61_activeadmin.gemfile.lock b/gemfiles/rails61_activeadmin.gemfile.lock index 4cf55ff..83d5e9d 100644 --- a/gemfiles/rails61_activeadmin.gemfile.lock +++ b/gemfiles/rails61_activeadmin.gemfile.lock @@ -309,6 +309,7 @@ DEPENDENCIES rubocop-rails rubocop-rspec sassc + sprockets-rails sqlite3 BUNDLED WITH diff --git a/gemfiles/rails70_activeadmin.gemfile b/gemfiles/rails70_activeadmin.gemfile new file mode 100644 index 0000000..c91eb4b --- /dev/null +++ b/gemfiles/rails70_activeadmin.gemfile @@ -0,0 +1,28 @@ +# This file was generated by Appraisal + +source "https://rubygems.org" + +gem "activeadmin" +gem "rails", "~> 7.0.0" +gem "sprockets-rails" + +group :development, :test do + gem "puma" + gem "sassc" + gem "sqlite3" + gem "capybara" + gem "cuprite" + gem "rspec_junit_formatter" + gem "rspec-rails" + gem "brakeman" + gem "fasterer" + gem "reek" + gem "rubocop" + gem "rubocop-packaging" + gem "rubocop-performance" + gem "rubocop-rails" + gem "rubocop-rspec" + gem "pry-rails" +end + +gemspec path: "../" diff --git a/gemfiles/rails70_activeadmin.gemfile.lock b/gemfiles/rails70_activeadmin.gemfile.lock new file mode 100644 index 0000000..fb5dde8 --- /dev/null +++ b/gemfiles/rails70_activeadmin.gemfile.lock @@ -0,0 +1,341 @@ +PATH + remote: .. + specs: + activeadmin_quill_editor (0.3.4) + activeadmin (~> 2.0) + +GEM + remote: https://rubygems.org/ + specs: + actioncable (7.0.2.3) + actionpack (= 7.0.2.3) + activesupport (= 7.0.2.3) + nio4r (~> 2.0) + websocket-driver (>= 0.6.1) + actionmailbox (7.0.2.3) + actionpack (= 7.0.2.3) + activejob (= 7.0.2.3) + activerecord (= 7.0.2.3) + activestorage (= 7.0.2.3) + activesupport (= 7.0.2.3) + mail (>= 2.7.1) + net-imap + net-pop + net-smtp + actionmailer (7.0.2.3) + actionpack (= 7.0.2.3) + actionview (= 7.0.2.3) + activejob (= 7.0.2.3) + activesupport (= 7.0.2.3) + mail (~> 2.5, >= 2.5.4) + net-imap + net-pop + net-smtp + rails-dom-testing (~> 2.0) + actionpack (7.0.2.3) + actionview (= 7.0.2.3) + activesupport (= 7.0.2.3) + rack (~> 2.0, >= 2.2.0) + rack-test (>= 0.6.3) + rails-dom-testing (~> 2.0) + rails-html-sanitizer (~> 1.0, >= 1.2.0) + actiontext (7.0.2.3) + actionpack (= 7.0.2.3) + activerecord (= 7.0.2.3) + activestorage (= 7.0.2.3) + activesupport (= 7.0.2.3) + globalid (>= 0.6.0) + nokogiri (>= 1.8.5) + actionview (7.0.2.3) + activesupport (= 7.0.2.3) + builder (~> 3.1) + erubi (~> 1.4) + rails-dom-testing (~> 2.0) + rails-html-sanitizer (~> 1.1, >= 1.2.0) + activeadmin (2.11.1) + arbre (~> 1.2, >= 1.2.1) + formtastic (>= 3.1, < 5.0) + formtastic_i18n (~> 0.4) + inherited_resources (~> 1.7) + jquery-rails (~> 4.2) + kaminari (~> 1.0, >= 1.2.1) + railties (>= 6.0, < 7.1) + ransack (~> 2.1, >= 2.1.1) + activejob (7.0.2.3) + activesupport (= 7.0.2.3) + globalid (>= 0.3.6) + activemodel (7.0.2.3) + activesupport (= 7.0.2.3) + activerecord (7.0.2.3) + activemodel (= 7.0.2.3) + activesupport (= 7.0.2.3) + activestorage (7.0.2.3) + actionpack (= 7.0.2.3) + activejob (= 7.0.2.3) + activerecord (= 7.0.2.3) + activesupport (= 7.0.2.3) + marcel (~> 1.0) + mini_mime (>= 1.1.0) + activesupport (7.0.2.3) + concurrent-ruby (~> 1.0, >= 1.0.2) + i18n (>= 1.6, < 2) + minitest (>= 5.1) + tzinfo (~> 2.0) + addressable (2.8.0) + public_suffix (>= 2.0.2, < 5.0) + appraisal (2.4.1) + bundler + rake + thor (>= 0.14.0) + arbre (1.5.0) + activesupport (>= 3.0.0, < 7.1) + ruby2_keywords (>= 0.0.2, < 1.0) + ast (2.4.2) + brakeman (5.2.1) + builder (3.2.4) + capybara (3.36.0) + addressable + matrix + mini_mime (>= 0.1.3) + nokogiri (~> 1.8) + rack (>= 1.6.0) + rack-test (>= 0.6.3) + regexp_parser (>= 1.5, < 3.0) + xpath (~> 3.2) + cliver (0.3.2) + coderay (1.1.3) + colorize (0.8.1) + concurrent-ruby (1.1.10) + crass (1.0.6) + cuprite (0.13) + capybara (>= 2.1, < 4) + ferrum (~> 0.11.0) + diff-lcs (1.5.0) + digest (3.1.0) + erubi (1.10.0) + fasterer (0.9.0) + colorize (~> 0.7) + ruby_parser (>= 3.14.1) + ferrum (0.11) + addressable (~> 2.5) + cliver (~> 0.3) + concurrent-ruby (~> 1.1) + websocket-driver (>= 0.6, < 0.8) + ffi (1.15.5) + formtastic (4.0.0) + actionpack (>= 5.2.0) + formtastic_i18n (0.7.0) + globalid (1.0.0) + activesupport (>= 5.0) + has_scope (0.8.0) + actionpack (>= 5.2) + activesupport (>= 5.2) + i18n (1.10.0) + concurrent-ruby (~> 1.0) + inherited_resources (1.13.1) + actionpack (>= 5.2, < 7.1) + has_scope (~> 0.6) + railties (>= 5.2, < 7.1) + responders (>= 2, < 4) + io-wait (0.2.1) + jquery-rails (4.4.0) + rails-dom-testing (>= 1, < 3) + railties (>= 4.2.0) + thor (>= 0.14, < 2.0) + kaminari (1.2.2) + activesupport (>= 4.1.0) + kaminari-actionview (= 1.2.2) + kaminari-activerecord (= 1.2.2) + kaminari-core (= 1.2.2) + kaminari-actionview (1.2.2) + actionview + kaminari-core (= 1.2.2) + kaminari-activerecord (1.2.2) + activerecord + kaminari-core (= 1.2.2) + kaminari-core (1.2.2) + kwalify (0.7.2) + loofah (2.15.0) + crass (~> 1.0.2) + nokogiri (>= 1.5.9) + mail (2.7.1) + mini_mime (>= 0.1.1) + marcel (1.0.2) + matrix (0.4.2) + method_source (1.0.0) + mini_mime (1.1.2) + minitest (5.15.0) + net-imap (0.2.3) + digest + net-protocol + strscan + net-pop (0.1.1) + digest + net-protocol + timeout + net-protocol (0.1.2) + io-wait + timeout + net-smtp (0.3.1) + digest + net-protocol + timeout + nio4r (2.5.8) + nokogiri (1.13.3-x86_64-darwin) + racc (~> 1.4) + nokogiri (1.13.3-x86_64-linux) + racc (~> 1.4) + parallel (1.22.1) + parser (3.1.1.0) + ast (~> 2.4.1) + pry (0.14.1) + coderay (~> 1.1) + method_source (~> 1.0) + pry-rails (0.3.9) + pry (>= 0.10.4) + public_suffix (4.0.6) + puma (5.6.2) + nio4r (~> 2.0) + racc (1.6.0) + rack (2.2.3) + rack-test (1.1.0) + rack (>= 1.0, < 3) + rails (7.0.2.3) + actioncable (= 7.0.2.3) + actionmailbox (= 7.0.2.3) + actionmailer (= 7.0.2.3) + actionpack (= 7.0.2.3) + actiontext (= 7.0.2.3) + actionview (= 7.0.2.3) + activejob (= 7.0.2.3) + activemodel (= 7.0.2.3) + activerecord (= 7.0.2.3) + activestorage (= 7.0.2.3) + activesupport (= 7.0.2.3) + bundler (>= 1.15.0) + railties (= 7.0.2.3) + rails-dom-testing (2.0.3) + activesupport (>= 4.2.0) + nokogiri (>= 1.6) + rails-html-sanitizer (1.4.2) + loofah (~> 2.3) + railties (7.0.2.3) + actionpack (= 7.0.2.3) + activesupport (= 7.0.2.3) + method_source + rake (>= 12.2) + thor (~> 1.0) + zeitwerk (~> 2.5) + rainbow (3.1.1) + rake (13.0.6) + ransack (2.6.0) + activerecord (>= 6.0.4) + activesupport (>= 6.0.4) + i18n + reek (6.1.0) + kwalify (~> 0.7.0) + parser (~> 3.1.0) + rainbow (>= 2.0, < 4.0) + regexp_parser (2.2.1) + responders (3.0.1) + actionpack (>= 5.0) + railties (>= 5.0) + rexml (3.2.5) + rspec-core (3.11.0) + rspec-support (~> 3.11.0) + rspec-expectations (3.11.0) + diff-lcs (>= 1.2.0, < 2.0) + rspec-support (~> 3.11.0) + rspec-mocks (3.11.0) + diff-lcs (>= 1.2.0, < 2.0) + rspec-support (~> 3.11.0) + rspec-rails (5.1.1) + actionpack (>= 5.2) + activesupport (>= 5.2) + railties (>= 5.2) + rspec-core (~> 3.10) + rspec-expectations (~> 3.10) + rspec-mocks (~> 3.10) + rspec-support (~> 3.10) + rspec-support (3.11.0) + rspec_junit_formatter (0.5.1) + rspec-core (>= 2, < 4, != 2.12.0) + rubocop (1.26.1) + parallel (~> 1.10) + parser (>= 3.1.0.0) + rainbow (>= 2.2.2, < 4.0) + regexp_parser (>= 1.8, < 3.0) + rexml + rubocop-ast (>= 1.16.0, < 2.0) + ruby-progressbar (~> 1.7) + unicode-display_width (>= 1.4.0, < 3.0) + rubocop-ast (1.16.0) + parser (>= 3.1.1.0) + rubocop-packaging (0.5.1) + rubocop (>= 0.89, < 2.0) + rubocop-performance (1.13.3) + rubocop (>= 1.7.0, < 2.0) + rubocop-ast (>= 0.4.0) + rubocop-rails (2.14.2) + activesupport (>= 4.2.0) + rack (>= 1.1) + rubocop (>= 1.7.0, < 2.0) + rubocop-rspec (2.9.0) + rubocop (~> 1.19) + ruby-progressbar (1.11.0) + ruby2_keywords (0.0.5) + ruby_parser (3.18.1) + sexp_processor (~> 4.16) + sassc (2.4.0) + ffi (~> 1.9) + sexp_processor (4.16.0) + sprockets (4.0.3) + concurrent-ruby (~> 1.0) + rack (> 1, < 3) + sprockets-rails (3.4.2) + actionpack (>= 5.2) + activesupport (>= 5.2) + sprockets (>= 3.0.0) + sqlite3 (1.4.2) + strscan (3.0.1) + thor (1.2.1) + timeout (0.2.0) + tzinfo (2.0.4) + concurrent-ruby (~> 1.0) + unicode-display_width (2.1.0) + websocket-driver (0.7.5) + websocket-extensions (>= 0.1.0) + websocket-extensions (0.1.5) + xpath (3.2.0) + nokogiri (~> 1.8) + zeitwerk (2.5.4) + +PLATFORMS + x86_64-darwin-21 + x86_64-linux + +DEPENDENCIES + activeadmin + activeadmin_quill_editor! + appraisal (~> 2.4) + brakeman + capybara + cuprite + fasterer + pry-rails + puma + rails (~> 7.0.0) + reek + rspec-rails + rspec_junit_formatter + rubocop + rubocop-packaging + rubocop-performance + rubocop-rails + rubocop-rspec + sassc + sprockets-rails + sqlite3 + +BUNDLED WITH + 2.3.8 diff --git a/spec/dummy/config/application.rb b/spec/dummy/config/application.rb index 1052c73..2f575f3 100644 --- a/spec/dummy/config/application.rb +++ b/spec/dummy/config/application.rb @@ -14,5 +14,9 @@ module Dummy # Application configuration can go into files in config/initializers # -- all .rb files in that directory are automatically loaded after loading # the framework and any gems in your application. + + ### + + config.active_record.legacy_connection_handling = false if Rails::VERSION::MAJOR > 6 end end