From 1baf4a607702fe4f9ff2851ec553a919f2aea1ca Mon Sep 17 00:00:00 2001 From: Mattia Roccoberton Date: Wed, 19 Mar 2025 09:43:33 +0100 Subject: [PATCH 1/5] ci: Update to the GH workflows --- .github/workflows/linters.yml | 2 +- .github/workflows/specs.yml | 40 ------------------- .../{specs2.yml => specs_rails61.yml} | 6 +-- .../{specs3.yml => specs_rails70.yml} | 6 +-- README.md | 2 +- 5 files changed, 8 insertions(+), 48 deletions(-) delete mode 100644 .github/workflows/specs.yml rename .github/workflows/{specs2.yml => specs_rails61.yml} (88%) rename .github/workflows/{specs3.yml => specs_rails70.yml} (87%) diff --git a/.github/workflows/linters.yml b/.github/workflows/linters.yml index dadfd59..28d8bc6 100644 --- a/.github/workflows/linters.yml +++ b/.github/workflows/linters.yml @@ -14,7 +14,7 @@ jobs: steps: - name: Checkout repository - uses: actions/checkout@v2 + uses: actions/checkout@v4 - name: Set up Ruby uses: ruby/setup-ruby@v1 diff --git a/.github/workflows/specs.yml b/.github/workflows/specs.yml deleted file mode 100644 index c00ebd3..0000000 --- a/.github/workflows/specs.yml +++ /dev/null @@ -1,40 +0,0 @@ ---- -name: Specs Rails 6.0 - -on: - pull_request: - branches: [master] - push: - branches: [master] - -jobs: - test: - runs-on: ubuntu-latest - - strategy: - matrix: - ruby: ['2.7'] - gemfile: ['rails60_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/.github/workflows/specs2.yml b/.github/workflows/specs_rails61.yml similarity index 88% rename from .github/workflows/specs2.yml rename to .github/workflows/specs_rails61.yml index 89c04d7..4679a30 100644 --- a/.github/workflows/specs2.yml +++ b/.github/workflows/specs_rails61.yml @@ -13,7 +13,7 @@ jobs: strategy: matrix: - ruby: ['2.7', '3.0'] + ruby: ['3.0'] gemfile: ['rails61_activeadmin29', 'rails61_activeadmin'] env: @@ -21,7 +21,7 @@ jobs: steps: - name: Checkout repository - uses: actions/checkout@v2 + uses: actions/checkout@v4 - name: Set up Ruby uses: ruby/setup-ruby@v1 @@ -33,7 +33,7 @@ jobs: run: bundle exec rspec --profile - name: On failure, archive screenshots as artifacts - uses: actions/upload-artifact@v2 + uses: actions/upload-artifact@v4 if: failure() with: name: test-failed-screenshots diff --git a/.github/workflows/specs3.yml b/.github/workflows/specs_rails70.yml similarity index 87% rename from .github/workflows/specs3.yml rename to .github/workflows/specs_rails70.yml index 6f082a8..13fc872 100644 --- a/.github/workflows/specs3.yml +++ b/.github/workflows/specs_rails70.yml @@ -13,7 +13,7 @@ jobs: strategy: matrix: - ruby: ['3.0', '3.1', '3.2'] + ruby: ['3.0', '3.2'] gemfile: ['rails70_activeadmin'] env: @@ -21,7 +21,7 @@ jobs: steps: - name: Checkout repository - uses: actions/checkout@v2 + uses: actions/checkout@v4 - name: Set up Ruby uses: ruby/setup-ruby@v1 @@ -33,7 +33,7 @@ jobs: run: bundle exec rspec --profile - name: On failure, archive screenshots as artifacts - uses: actions/upload-artifact@v2 + uses: actions/upload-artifact@v4 if: failure() with: name: test-failed-screenshots diff --git a/README.md b/README.md index 4f1a0d7..d9b844c 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,5 @@ # ActiveAdmin Dynamic Fields -[![gem version](https://badge.fury.io/rb/activeadmin_dynamic_fields.svg)](https://badge.fury.io/rb/activeadmin_dynamic_fields) [![gem downloads](https://badgen.net/rubygems/dt/activeadmin_dynamic_fields)](https://rubygems.org/gems/activeadmin_dynamic_fields) [![linters](https://github.com/blocknotes/activeadmin_dynamic_fields/actions/workflows/linters.yml/badge.svg)](https://github.com/blocknotes/activeadmin_dynamic_fields/actions/workflows/linters.yml) [![specs](https://github.com/blocknotes/activeadmin_dynamic_fields/actions/workflows/specs.yml/badge.svg)](https://github.com/blocknotes/activeadmin_dynamic_fields/actions/workflows/specs.yml) +[![gem version](https://badge.fury.io/rb/activeadmin_dynamic_fields.svg)](https://badge.fury.io/rb/activeadmin_dynamic_fields) [![gem downloads](https://badgen.net/rubygems/dt/activeadmin_dynamic_fields)](https://rubygems.org/gems/activeadmin_dynamic_fields) [![linters](https://github.com/blocknotes/activeadmin_dynamic_fields/actions/workflows/linters.yml/badge.svg)](https://github.com/blocknotes/activeadmin_dynamic_fields/actions/workflows/linters.yml) [![specs](https://github.com/blocknotes/activeadmin_dynamic_fields/actions/workflows/specs_rails70.yml/badge.svg)](https://github.com/blocknotes/activeadmin_dynamic_fields/actions/workflows/specs_rails70.yml) An Active Admin plugin to add dynamic behaviors to some fields. From c767928b677bb777ae25104c655cbeb347e6b381 Mon Sep 17 00:00:00 2001 From: Mattia Roccoberton Date: Wed, 19 Mar 2025 09:36:35 +0100 Subject: [PATCH 2/5] test: Appraisal: update dependencies --- .gitignore | 1 + Appraisals | 16 +- Gemfile | 40 +-- activeadmin_dynamic_fields.gemspec | 2 +- gemfiles/rails60_activeadmin.gemfile | 27 -- gemfiles/rails60_activeadmin.gemfile.lock | 319 -------------------- gemfiles/rails61_activeadmin.gemfile | 37 +-- gemfiles/rails61_activeadmin.gemfile.lock | 24 +- gemfiles/rails61_activeadmin29.gemfile | 37 +-- gemfiles/rails61_activeadmin29.gemfile.lock | 24 +- gemfiles/rails70_activeadmin.gemfile | 38 +-- gemfiles/rails70_activeadmin.gemfile.lock | 23 +- 12 files changed, 119 insertions(+), 469 deletions(-) delete mode 100644 gemfiles/rails60_activeadmin.gemfile delete mode 100644 gemfiles/rails60_activeadmin.gemfile.lock diff --git a/.gitignore b/.gitignore index 3cad262..afec83b 100644 --- a/.gitignore +++ b/.gitignore @@ -4,6 +4,7 @@ /.rspec_failures /.rubocop-* /Gemfile.lock +/gemfiles/.bundle/config /_misc/ /spec/dummy/db/*.sqlite3* diff --git a/Appraisals b/Appraisals index e1710d6..ccb40c8 100644 --- a/Appraisals +++ b/Appraisals @@ -1,25 +1,25 @@ # frozen_string_literal: true -appraise 'rails60-activeadmin' do - gem 'activeadmin' - gem 'rails', '~> 6.0.0' - gem 'selenium-webdriver', require: false -end - appraise 'rails61-activeadmin29' do gem 'activeadmin', '~> 2.9.0' gem 'rails', '~> 6.1.0' + + gem 'nokogiri', '~> 1.17.2' + gem 'sqlite3', '~> 1.7.0' end appraise 'rails61-activeadmin' do gem 'activeadmin' gem 'rails', '~> 6.1.0' + + gem 'nokogiri', '~> 1.17.2' + gem 'sqlite3', '~> 1.7.0' end appraise 'rails70-activeadmin' do gem 'activeadmin' gem 'rails', '~> 7.0.0' - # NOTE: workaround for "undefined method `assets' for #" - gem 'sprockets-rails', '~> 3.4.2' + gem 'nokogiri', '~> 1.17.2' + gem 'sqlite3', '~> 1.7.0' end diff --git a/Gemfile b/Gemfile index 8450e3b..4f4fa13 100644 --- a/Gemfile +++ b/Gemfile @@ -4,26 +4,26 @@ source 'https://rubygems.org' gemspec -group :development, :test do - gem 'puma' - gem 'sassc' - gem 'sqlite3' +gem 'bigdecimal' +gem 'mutex_m' +gem 'puma' +gem 'sassc' +gem 'sprockets-rails' - # Testing - gem 'capybara' - gem 'cuprite' - gem 'rspec_junit_formatter' - gem 'rspec-rails' - gem 'rspec-retry' +# Testing +gem 'capybara' +gem 'cuprite' +gem 'rspec_junit_formatter' +gem 'rspec-rails' +gem 'rspec-retry' - # Linters - gem 'fasterer' - gem 'rubocop' - gem 'rubocop-packaging' - gem 'rubocop-performance' - gem 'rubocop-rails' - gem 'rubocop-rspec' +# Linters +gem 'fasterer' +gem 'rubocop' +gem 'rubocop-packaging' +gem 'rubocop-performance' +gem 'rubocop-rails' +gem 'rubocop-rspec' - # Tools - gem 'pry-rails' -end +# Tools +gem 'pry-rails' diff --git a/activeadmin_dynamic_fields.gemspec b/activeadmin_dynamic_fields.gemspec index 09afe3a..62a63cb 100644 --- a/activeadmin_dynamic_fields.gemspec +++ b/activeadmin_dynamic_fields.gemspec @@ -23,5 +23,5 @@ Gem::Specification.new do |spec| spec.add_runtime_dependency 'activeadmin', '>= 2.0', '< 4' - spec.add_development_dependency 'appraisal', '~> 2.4' + spec.add_development_dependency 'appraisal', '~> 2.4' # rubocop:disable Gemspec/DevelopmentDependencies end diff --git a/gemfiles/rails60_activeadmin.gemfile b/gemfiles/rails60_activeadmin.gemfile deleted file mode 100644 index 288d046..0000000 --- a/gemfiles/rails60_activeadmin.gemfile +++ /dev/null @@ -1,27 +0,0 @@ -# This file was generated by Appraisal - -source "https://rubygems.org" - -gem "activeadmin" -gem "rails", "~> 6.0.0" -gem "selenium-webdriver", require: false - -group :development, :test do - gem "puma" - gem "sassc" - gem "sqlite3" - gem "capybara" - gem "cuprite" - gem "rspec_junit_formatter" - gem "rspec-rails" - gem "rspec-retry" - gem "fasterer" - gem "rubocop" - gem "rubocop-packaging" - gem "rubocop-performance" - gem "rubocop-rails" - gem "rubocop-rspec" - gem "pry-rails" -end - -gemspec path: "../" diff --git a/gemfiles/rails60_activeadmin.gemfile.lock b/gemfiles/rails60_activeadmin.gemfile.lock deleted file mode 100644 index b7990cf..0000000 --- a/gemfiles/rails60_activeadmin.gemfile.lock +++ /dev/null @@ -1,319 +0,0 @@ -PATH - remote: .. - specs: - activeadmin_dynamic_fields (0.8.0) - activeadmin (>= 2.0, < 4) - -GEM - remote: https://rubygems.org/ - specs: - actioncable (6.0.4.7) - actionpack (= 6.0.4.7) - nio4r (~> 2.0) - websocket-driver (>= 0.6.1) - actionmailbox (6.0.4.7) - actionpack (= 6.0.4.7) - activejob (= 6.0.4.7) - activerecord (= 6.0.4.7) - activestorage (= 6.0.4.7) - activesupport (= 6.0.4.7) - mail (>= 2.7.1) - actionmailer (6.0.4.7) - actionpack (= 6.0.4.7) - actionview (= 6.0.4.7) - activejob (= 6.0.4.7) - mail (~> 2.5, >= 2.5.4) - rails-dom-testing (~> 2.0) - actionpack (6.0.4.7) - actionview (= 6.0.4.7) - activesupport (= 6.0.4.7) - rack (~> 2.0, >= 2.0.8) - rack-test (>= 0.6.3) - rails-dom-testing (~> 2.0) - rails-html-sanitizer (~> 1.0, >= 1.2.0) - actiontext (6.0.4.7) - actionpack (= 6.0.4.7) - activerecord (= 6.0.4.7) - activestorage (= 6.0.4.7) - activesupport (= 6.0.4.7) - nokogiri (>= 1.8.5) - actionview (6.0.4.7) - activesupport (= 6.0.4.7) - builder (~> 3.1) - erubi (~> 1.4) - rails-dom-testing (~> 2.0) - rails-html-sanitizer (~> 1.1, >= 1.2.0) - activeadmin (2.11.0) - 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 (6.0.4.7) - activesupport (= 6.0.4.7) - globalid (>= 0.3.6) - activemodel (6.0.4.7) - activesupport (= 6.0.4.7) - activerecord (6.0.4.7) - activemodel (= 6.0.4.7) - activesupport (= 6.0.4.7) - activestorage (6.0.4.7) - actionpack (= 6.0.4.7) - activejob (= 6.0.4.7) - activerecord (= 6.0.4.7) - marcel (~> 1.0.0) - activesupport (6.0.4.7) - concurrent-ruby (~> 1.0, >= 1.0.2) - i18n (>= 0.7, < 2) - minitest (~> 5.1) - tzinfo (~> 1.1) - zeitwerk (~> 2.2, >= 2.2.2) - 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) - 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) - childprocess (4.1.0) - cliver (0.3.2) - coderay (1.1.3) - colorize (0.8.1) - concurrent-ruby (1.1.9) - crass (1.0.6) - cuprite (0.13) - capybara (>= 2.1, < 4) - ferrum (~> 0.11.0) - diff-lcs (1.5.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) - 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) - loofah (2.14.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) - mini_portile2 (2.8.4) - minitest (5.15.0) - nio4r (2.5.8) - nokogiri (1.13.3) - mini_portile2 (~> 2.8.0) - racc (~> 1.4) - nokogiri (1.13.3-x86_64-darwin) - racc (~> 1.4) - nokogiri (1.13.3-x86_64-linux) - racc (~> 1.4) - parallel (1.21.0) - 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 (6.0.4.7) - actioncable (= 6.0.4.7) - actionmailbox (= 6.0.4.7) - actionmailer (= 6.0.4.7) - actionpack (= 6.0.4.7) - actiontext (= 6.0.4.7) - actionview (= 6.0.4.7) - activejob (= 6.0.4.7) - activemodel (= 6.0.4.7) - activerecord (= 6.0.4.7) - activestorage (= 6.0.4.7) - activesupport (= 6.0.4.7) - bundler (>= 1.3.0) - railties (= 6.0.4.7) - sprockets-rails (>= 2.0.0) - rails-dom-testing (2.0.3) - activesupport (>= 4.2.0) - nokogiri (>= 1.6) - rails-html-sanitizer (1.4.2) - loofah (~> 2.3) - railties (6.0.4.7) - actionpack (= 6.0.4.7) - activesupport (= 6.0.4.7) - method_source - rake (>= 0.8.7) - thor (>= 0.20.3, < 2.0) - rainbow (3.1.1) - rake (13.0.6) - ransack (2.6.0) - activerecord (>= 6.0.4) - activesupport (>= 6.0.4) - i18n - 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-retry (0.6.2) - rspec-core (> 3.3) - rspec-support (3.11.0) - rspec_junit_formatter (0.5.1) - rspec-core (>= 2, < 4, != 2.12.0) - rubocop (1.26.0) - 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.13.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) - rubyzip (2.3.2) - sassc (2.4.0) - ffi (~> 1.9) - selenium-webdriver (4.1.0) - childprocess (>= 0.5, < 5.0) - rexml (~> 3.2, >= 3.2.5) - rubyzip (>= 1.2.2) - 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) - thor (1.2.1) - thread_safe (0.3.6) - tzinfo (1.2.9) - thread_safe (~> 0.1) - 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 - arm64-darwin-22 - x86_64-darwin-21 - x86_64-linux - -DEPENDENCIES - activeadmin - activeadmin_dynamic_fields! - appraisal (~> 2.4) - capybara - cuprite - fasterer - pry-rails - puma - rails (~> 6.0.0) - rspec-rails - rspec-retry - rspec_junit_formatter - rubocop - rubocop-packaging - rubocop-performance - rubocop-rails - rubocop-rspec - sassc - selenium-webdriver - sqlite3 - -BUNDLED WITH - 2.3.8 diff --git a/gemfiles/rails61_activeadmin.gemfile b/gemfiles/rails61_activeadmin.gemfile index 184df44..4965457 100644 --- a/gemfiles/rails61_activeadmin.gemfile +++ b/gemfiles/rails61_activeadmin.gemfile @@ -2,25 +2,26 @@ source "https://rubygems.org" +gem "bigdecimal" +gem "mutex_m" +gem "puma" +gem "sassc" +gem "sprockets-rails" +gem "capybara" +gem "cuprite" +gem "rspec_junit_formatter" +gem "rspec-rails" +gem "rspec-retry" +gem "fasterer" +gem "rubocop" +gem "rubocop-packaging" +gem "rubocop-performance" +gem "rubocop-rails" +gem "rubocop-rspec" +gem "pry-rails" gem "activeadmin" gem "rails", "~> 6.1.0" - -group :development, :test do - gem "puma" - gem "sassc" - gem "sqlite3" - gem "capybara" - gem "cuprite" - gem "rspec_junit_formatter" - gem "rspec-rails" - gem "rspec-retry" - gem "fasterer" - gem "rubocop" - gem "rubocop-packaging" - gem "rubocop-performance" - gem "rubocop-rails" - gem "rubocop-rspec" - gem "pry-rails" -end +gem "nokogiri", "~> 1.17.2" +gem "sqlite3", "~> 1.7.0" gemspec path: "../" diff --git a/gemfiles/rails61_activeadmin.gemfile.lock b/gemfiles/rails61_activeadmin.gemfile.lock index 22b99e2..8581230 100644 --- a/gemfiles/rails61_activeadmin.gemfile.lock +++ b/gemfiles/rails61_activeadmin.gemfile.lock @@ -85,6 +85,7 @@ GEM activesupport (>= 3.0.0, < 7.1) ruby2_keywords (>= 0.0.2, < 1.0) ast (2.4.2) + bigdecimal (3.1.9) builder (3.2.4) capybara (3.36.0) addressable @@ -154,15 +155,10 @@ GEM matrix (0.4.2) method_source (1.0.0) mini_mime (1.1.2) - mini_portile2 (2.8.4) minitest (5.15.0) - nio4r (2.5.8) - nokogiri (1.13.3) - mini_portile2 (~> 2.8.0) - racc (~> 1.4) - nokogiri (1.13.3-x86_64-darwin) - racc (~> 1.4) - nokogiri (1.13.3-x86_64-linux) + mutex_m (0.3.0) + nio4r (2.7.4) + nokogiri (1.17.2-x86_64-linux) racc (~> 1.4) parallel (1.21.0) parser (3.1.1.0) @@ -175,7 +171,7 @@ GEM public_suffix (4.0.6) puma (5.6.2) nio4r (~> 2.0) - racc (1.6.0) + racc (1.8.1) rack (2.2.3) rack-test (1.1.0) rack (>= 1.0, < 3) @@ -273,7 +269,7 @@ GEM actionpack (>= 5.2) activesupport (>= 5.2) sprockets (>= 3.0.0) - sqlite3 (1.4.2) + sqlite3 (1.7.3-x86_64-linux) thor (1.2.1) tzinfo (2.0.4) concurrent-ruby (~> 1.0) @@ -286,17 +282,18 @@ GEM zeitwerk (2.5.4) PLATFORMS - arm64-darwin-22 - x86_64-darwin-21 x86_64-linux DEPENDENCIES activeadmin activeadmin_dynamic_fields! appraisal (~> 2.4) + bigdecimal capybara cuprite fasterer + mutex_m + nokogiri (~> 1.17.2) pry-rails puma rails (~> 6.1.0) @@ -309,7 +306,8 @@ DEPENDENCIES rubocop-rails rubocop-rspec sassc - sqlite3 + sprockets-rails + sqlite3 (~> 1.7.0) BUNDLED WITH 2.3.8 diff --git a/gemfiles/rails61_activeadmin29.gemfile b/gemfiles/rails61_activeadmin29.gemfile index ef2dbe8..82bc1e0 100644 --- a/gemfiles/rails61_activeadmin29.gemfile +++ b/gemfiles/rails61_activeadmin29.gemfile @@ -2,25 +2,26 @@ source "https://rubygems.org" +gem "bigdecimal" +gem "mutex_m" +gem "puma" +gem "sassc" +gem "sprockets-rails" +gem "capybara" +gem "cuprite" +gem "rspec_junit_formatter" +gem "rspec-rails" +gem "rspec-retry" +gem "fasterer" +gem "rubocop" +gem "rubocop-packaging" +gem "rubocop-performance" +gem "rubocop-rails" +gem "rubocop-rspec" +gem "pry-rails" gem "activeadmin", "~> 2.9.0" gem "rails", "~> 6.1.0" - -group :development, :test do - gem "puma" - gem "sassc" - gem "sqlite3" - gem "capybara" - gem "cuprite" - gem "rspec_junit_formatter" - gem "rspec-rails" - gem "rspec-retry" - gem "fasterer" - gem "rubocop" - gem "rubocop-packaging" - gem "rubocop-performance" - gem "rubocop-rails" - gem "rubocop-rspec" - gem "pry-rails" -end +gem "nokogiri", "~> 1.17.2" +gem "sqlite3", "~> 1.7.0" gemspec path: "../" diff --git a/gemfiles/rails61_activeadmin29.gemfile.lock b/gemfiles/rails61_activeadmin29.gemfile.lock index 678aad4..641bb02 100644 --- a/gemfiles/rails61_activeadmin29.gemfile.lock +++ b/gemfiles/rails61_activeadmin29.gemfile.lock @@ -85,6 +85,7 @@ GEM activesupport (>= 3.0.0, < 7.1) ruby2_keywords (>= 0.0.2, < 1.0) ast (2.4.2) + bigdecimal (3.1.9) builder (3.2.4) capybara (3.36.0) addressable @@ -154,15 +155,10 @@ GEM matrix (0.4.2) method_source (1.0.0) mini_mime (1.1.2) - mini_portile2 (2.8.4) minitest (5.15.0) - nio4r (2.5.8) - nokogiri (1.13.3) - mini_portile2 (~> 2.8.0) - racc (~> 1.4) - nokogiri (1.13.3-x86_64-darwin) - racc (~> 1.4) - nokogiri (1.13.3-x86_64-linux) + mutex_m (0.3.0) + nio4r (2.7.4) + nokogiri (1.17.2-x86_64-linux) racc (~> 1.4) parallel (1.21.0) parser (3.1.1.0) @@ -175,7 +171,7 @@ GEM public_suffix (4.0.6) puma (5.6.2) nio4r (~> 2.0) - racc (1.6.0) + racc (1.8.1) rack (2.2.3) rack-test (1.1.0) rack (>= 1.0, < 3) @@ -273,7 +269,7 @@ GEM actionpack (>= 5.2) activesupport (>= 5.2) sprockets (>= 3.0.0) - sqlite3 (1.4.2) + sqlite3 (1.7.3-x86_64-linux) thor (1.2.1) tzinfo (2.0.4) concurrent-ruby (~> 1.0) @@ -286,17 +282,18 @@ GEM zeitwerk (2.5.4) PLATFORMS - arm64-darwin-22 - x86_64-darwin-21 x86_64-linux DEPENDENCIES activeadmin (~> 2.9.0) activeadmin_dynamic_fields! appraisal (~> 2.4) + bigdecimal capybara cuprite fasterer + mutex_m + nokogiri (~> 1.17.2) pry-rails puma rails (~> 6.1.0) @@ -309,7 +306,8 @@ DEPENDENCIES rubocop-rails rubocop-rspec sassc - sqlite3 + sprockets-rails + sqlite3 (~> 1.7.0) BUNDLED WITH 2.3.8 diff --git a/gemfiles/rails70_activeadmin.gemfile b/gemfiles/rails70_activeadmin.gemfile index 5ea9244..3d1d12e 100644 --- a/gemfiles/rails70_activeadmin.gemfile +++ b/gemfiles/rails70_activeadmin.gemfile @@ -2,26 +2,26 @@ source "https://rubygems.org" +gem "bigdecimal" +gem "mutex_m" +gem "puma" +gem "sassc" +gem "sprockets-rails" +gem "capybara" +gem "cuprite" +gem "rspec_junit_formatter" +gem "rspec-rails" +gem "rspec-retry" +gem "fasterer" +gem "rubocop" +gem "rubocop-packaging" +gem "rubocop-performance" +gem "rubocop-rails" +gem "rubocop-rspec" +gem "pry-rails" gem "activeadmin" gem "rails", "~> 7.0.0" -gem "sprockets-rails", "~> 3.4.2" - -group :development, :test do - gem "puma" - gem "sassc" - gem "sqlite3" - gem "capybara" - gem "cuprite" - gem "rspec_junit_formatter" - gem "rspec-rails" - gem "rspec-retry" - gem "fasterer" - gem "rubocop" - gem "rubocop-packaging" - gem "rubocop-performance" - gem "rubocop-rails" - gem "rubocop-rspec" - gem "pry-rails" -end +gem "nokogiri", "~> 1.17.2" +gem "sqlite3", "~> 1.7.0" gemspec path: "../" diff --git a/gemfiles/rails70_activeadmin.gemfile.lock b/gemfiles/rails70_activeadmin.gemfile.lock index 821a57e..40fc86e 100644 --- a/gemfiles/rails70_activeadmin.gemfile.lock +++ b/gemfiles/rails70_activeadmin.gemfile.lock @@ -92,6 +92,7 @@ GEM ruby2_keywords (>= 0.0.2, < 1.0) ast (2.4.2) base64 (0.1.1) + bigdecimal (3.1.9) builder (3.2.4) capybara (3.39.2) addressable @@ -167,6 +168,7 @@ GEM method_source (1.0.0) mini_mime (1.1.5) minitest (5.20.0) + mutex_m (0.3.0) net-imap (0.3.7) date net-protocol @@ -177,11 +179,7 @@ GEM net-smtp (0.3.3) net-protocol nio4r (2.5.9) - nokogiri (1.15.4-arm64-darwin) - racc (~> 1.4) - nokogiri (1.15.4-x86_64-darwin) - racc (~> 1.4) - nokogiri (1.15.4-x86_64-linux) + nokogiri (1.17.2-x86_64-linux) racc (~> 1.4) parallel (1.23.0) parser (3.2.2.3) @@ -195,7 +193,7 @@ GEM public_suffix (5.0.3) puma (6.3.1) nio4r (~> 2.0) - racc (1.7.1) + racc (1.8.1) rack (2.2.8) rack-test (2.1.0) rack (>= 1.3) @@ -304,9 +302,7 @@ GEM actionpack (>= 5.2) activesupport (>= 5.2) sprockets (>= 3.0.0) - sqlite3 (1.6.5-arm64-darwin) - sqlite3 (1.6.5-x86_64-darwin) - sqlite3 (1.6.5-x86_64-linux) + sqlite3 (1.7.3-x86_64-linux) thor (1.2.2) timeout (0.4.0) tzinfo (2.0.6) @@ -321,17 +317,18 @@ GEM zeitwerk (2.6.11) PLATFORMS - arm64-darwin-22 - x86_64-darwin-21 x86_64-linux DEPENDENCIES activeadmin activeadmin_dynamic_fields! appraisal (~> 2.4) + bigdecimal capybara cuprite fasterer + mutex_m + nokogiri (~> 1.17.2) pry-rails puma rails (~> 7.0.0) @@ -344,8 +341,8 @@ DEPENDENCIES rubocop-rails rubocop-rspec sassc - sprockets-rails (~> 3.4.2) - sqlite3 + sprockets-rails + sqlite3 (~> 1.7.0) BUNDLED WITH 2.3.8 From 4510ebd55ebda836866f1e7184814b17d4849236 Mon Sep 17 00:00:00 2001 From: Mattia Roccoberton Date: Wed, 19 Mar 2025 10:38:53 +0100 Subject: [PATCH 3/5] test: Update Capybara config --- spec/support/capybara.rb | 24 ++++++++++++++++++++---- spec/support/capybara_cuprite.rb | 26 -------------------------- 2 files changed, 20 insertions(+), 30 deletions(-) delete mode 100644 spec/support/capybara_cuprite.rb diff --git a/spec/support/capybara.rb b/spec/support/capybara.rb index 400342c..15060c4 100644 --- a/spec/support/capybara.rb +++ b/spec/support/capybara.rb @@ -1,12 +1,28 @@ # frozen_string_literal: true -Capybara.server = :puma -Capybara.default_driver = Capybara.javascript_driver = :cuprite +require 'capybara/cuprite' + +Capybara.register_driver(:capybara_cuprite) do |app| + browser_options = {}.tap do |opts| + opts['no-sandbox'] = nil if ENV['DEVEL'] + end + + Capybara::Cuprite::Driver.new( + app, + window_size: [1600, 1280], + browser_options: browser_options, + process_timeout: 20, + timeout: 20, + inspector: true, + headless: !ENV['CUPRITE_HEADLESS'].in?(%w[n 0 no false]) + ) +end + +# Capybara.server = :puma +Capybara.default_driver = Capybara.javascript_driver = :capybara_cuprite RSpec.configure do |config| - # Make sure this hook runs before others config.prepend_before(:each, type: :system) do - # Use JS driver always driven_by Capybara.javascript_driver end end diff --git a/spec/support/capybara_cuprite.rb b/spec/support/capybara_cuprite.rb deleted file mode 100644 index ed539ae..0000000 --- a/spec/support/capybara_cuprite.rb +++ /dev/null @@ -1,26 +0,0 @@ -# frozen_string_literal: true - -require 'capybara/cuprite' - -Capybara.register_driver(:cuprite) do |app| - browser_options = {}.tap do |opts| - opts['no-sandbox'] = nil if ENV['CI'] - end - - Capybara::Cuprite::Driver.new( - app, - **{ - window_size: [1600, 1280], - # See additional options for Dockerized environment in the respective section of this article - browser_options: browser_options, - # Increase Chrome startup wait time (required for stable CI builds) - process_timeout: 15, - # The number of seconds we'll wait for a response when communicating with browser. Default is 5 - timeout: 15, - # Enable debugging capabilities - inspector: true, - # Allow running Chrome in a headful mode by setting HEADLESS env var to a falsey value - headless: !ENV['CUPRITE_HEADLESS'].in?(%w[n 0 no false]) - } - ) -end From 5ad25a275cf520eea4b9547817c905da208db866 Mon Sep 17 00:00:00 2001 From: Mattia Roccoberton Date: Wed, 19 Mar 2025 22:42:51 +0100 Subject: [PATCH 4/5] ci: Add new GH workflows --- .../{specs_rails61.yml => specs_rails71.yml} | 6 +- .github/workflows/specs_rails72.yml | 40 ++ .github/workflows/specs_rails80.yml | 40 ++ Appraisals | 21 + gemfiles/rails71_activeadmin.gemfile | 26 ++ gemfiles/rails71_activeadmin.gemfile.lock | 387 ++++++++++++++++ gemfiles/rails72_activeadmin.gemfile | 26 ++ gemfiles/rails72_activeadmin.gemfile.lock | 382 ++++++++++++++++ gemfiles/rails80_activeadmin.gemfile | 26 ++ gemfiles/rails80_activeadmin.gemfile.lock | 418 ++++++++++++++++++ spec/dummy/config/application.rb | 6 +- spec/dummy/config/environments/development.rb | 4 + spec/dummy/config/environments/production.rb | 112 ----- spec/dummy/config/environments/test.rb | 4 + spec/rails_helper.rb | 8 +- 15 files changed, 1385 insertions(+), 121 deletions(-) rename .github/workflows/{specs_rails61.yml => specs_rails71.yml} (87%) create mode 100644 .github/workflows/specs_rails72.yml create mode 100644 .github/workflows/specs_rails80.yml create mode 100644 gemfiles/rails71_activeadmin.gemfile create mode 100644 gemfiles/rails71_activeadmin.gemfile.lock create mode 100644 gemfiles/rails72_activeadmin.gemfile create mode 100644 gemfiles/rails72_activeadmin.gemfile.lock create mode 100644 gemfiles/rails80_activeadmin.gemfile create mode 100644 gemfiles/rails80_activeadmin.gemfile.lock delete mode 100644 spec/dummy/config/environments/production.rb diff --git a/.github/workflows/specs_rails61.yml b/.github/workflows/specs_rails71.yml similarity index 87% rename from .github/workflows/specs_rails61.yml rename to .github/workflows/specs_rails71.yml index 4679a30..c42e797 100644 --- a/.github/workflows/specs_rails61.yml +++ b/.github/workflows/specs_rails71.yml @@ -1,5 +1,5 @@ --- -name: Specs Rails 6.1 +name: Specs Rails 7.1 on: pull_request: @@ -13,8 +13,8 @@ jobs: strategy: matrix: - ruby: ['3.0'] - gemfile: ['rails61_activeadmin29', 'rails61_activeadmin'] + ruby: ['3.2', '3.4'] + gemfile: ['rails71_activeadmin'] env: BUNDLE_GEMFILE: ${{ github.workspace }}/gemfiles/${{ matrix.gemfile }}.gemfile diff --git a/.github/workflows/specs_rails72.yml b/.github/workflows/specs_rails72.yml new file mode 100644 index 0000000..131831b --- /dev/null +++ b/.github/workflows/specs_rails72.yml @@ -0,0 +1,40 @@ +--- +name: Specs Rails 7.2 + +on: + pull_request: + branches: [master] + push: + branches: [master] + +jobs: + test: + runs-on: ubuntu-latest + + strategy: + matrix: + ruby: ['3.2', '3.4'] + gemfile: ['rails72_activeadmin'] + + env: + BUNDLE_GEMFILE: ${{ github.workspace }}/gemfiles/${{ matrix.gemfile }}.gemfile + + steps: + - name: Checkout repository + uses: actions/checkout@v4 + + - 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@v4 + if: failure() + with: + name: test-failed-screenshots + path: spec/dummy/tmp/screenshots diff --git a/.github/workflows/specs_rails80.yml b/.github/workflows/specs_rails80.yml new file mode 100644 index 0000000..97f2ac9 --- /dev/null +++ b/.github/workflows/specs_rails80.yml @@ -0,0 +1,40 @@ +--- +name: Specs Rails 8.0 + +on: + pull_request: + branches: [master] + push: + branches: [master] + +jobs: + test: + runs-on: ubuntu-latest + + strategy: + matrix: + ruby: ['3.2', '3.4'] + gemfile: ['rails80_activeadmin'] + + env: + BUNDLE_GEMFILE: ${{ github.workspace }}/gemfiles/${{ matrix.gemfile }}.gemfile + + steps: + - name: Checkout repository + uses: actions/checkout@v4 + + - 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@v4 + if: failure() + with: + name: test-failed-screenshots + path: spec/dummy/tmp/screenshots diff --git a/Appraisals b/Appraisals index ccb40c8..656032d 100644 --- a/Appraisals +++ b/Appraisals @@ -23,3 +23,24 @@ appraise 'rails70-activeadmin' do gem 'nokogiri', '~> 1.17.2' gem 'sqlite3', '~> 1.7.0' end + +appraise 'rails71-activeadmin' do + gem 'activeadmin' + gem 'rails', '~> 7.1.0' + + gem 'sqlite3' +end + +appraise 'rails72-activeadmin' do + gem 'activeadmin' + gem 'rails', '~> 7.2.0' + + gem 'sqlite3' +end + +appraise 'rails80-activeadmin' do + gem 'activeadmin' + gem 'rails', '~> 8.0.0' + + gem 'sqlite3' +end diff --git a/gemfiles/rails71_activeadmin.gemfile b/gemfiles/rails71_activeadmin.gemfile new file mode 100644 index 0000000..1bc5560 --- /dev/null +++ b/gemfiles/rails71_activeadmin.gemfile @@ -0,0 +1,26 @@ +# This file was generated by Appraisal + +source "https://rubygems.org" + +gem "bigdecimal" +gem "mutex_m" +gem "puma" +gem "sassc" +gem "sprockets-rails" +gem "capybara" +gem "cuprite" +gem "rspec_junit_formatter" +gem "rspec-rails" +gem "rspec-retry" +gem "fasterer" +gem "rubocop" +gem "rubocop-packaging" +gem "rubocop-performance" +gem "rubocop-rails" +gem "rubocop-rspec" +gem "pry-rails" +gem "activeadmin" +gem "rails", "~> 7.1.0" +gem "sqlite3" + +gemspec path: "../" diff --git a/gemfiles/rails71_activeadmin.gemfile.lock b/gemfiles/rails71_activeadmin.gemfile.lock new file mode 100644 index 0000000..cbdd232 --- /dev/null +++ b/gemfiles/rails71_activeadmin.gemfile.lock @@ -0,0 +1,387 @@ +PATH + remote: .. + specs: + activeadmin_dynamic_fields (0.8.0) + activeadmin (>= 2.0, < 4) + +GEM + remote: https://rubygems.org/ + specs: + actioncable (7.1.5.1) + actionpack (= 7.1.5.1) + activesupport (= 7.1.5.1) + nio4r (~> 2.0) + websocket-driver (>= 0.6.1) + zeitwerk (~> 2.6) + actionmailbox (7.1.5.1) + actionpack (= 7.1.5.1) + activejob (= 7.1.5.1) + activerecord (= 7.1.5.1) + activestorage (= 7.1.5.1) + activesupport (= 7.1.5.1) + mail (>= 2.7.1) + net-imap + net-pop + net-smtp + actionmailer (7.1.5.1) + actionpack (= 7.1.5.1) + actionview (= 7.1.5.1) + activejob (= 7.1.5.1) + activesupport (= 7.1.5.1) + mail (~> 2.5, >= 2.5.4) + net-imap + net-pop + net-smtp + rails-dom-testing (~> 2.2) + actionpack (7.1.5.1) + actionview (= 7.1.5.1) + activesupport (= 7.1.5.1) + nokogiri (>= 1.8.5) + racc + rack (>= 2.2.4) + rack-session (>= 1.0.1) + rack-test (>= 0.6.3) + rails-dom-testing (~> 2.2) + rails-html-sanitizer (~> 1.6) + actiontext (7.1.5.1) + actionpack (= 7.1.5.1) + activerecord (= 7.1.5.1) + activestorage (= 7.1.5.1) + activesupport (= 7.1.5.1) + globalid (>= 0.6.0) + nokogiri (>= 1.8.5) + actionview (7.1.5.1) + activesupport (= 7.1.5.1) + builder (~> 3.1) + erubi (~> 1.11) + rails-dom-testing (~> 2.2) + rails-html-sanitizer (~> 1.6) + activeadmin (3.3.0) + arbre (~> 1.2, >= 1.2.1) + csv + formtastic (>= 3.1) + formtastic_i18n (>= 0.4) + inherited_resources (~> 1.7) + jquery-rails (>= 4.2) + kaminari (>= 1.2.1) + railties (>= 6.1) + ransack (>= 4.0) + activejob (7.1.5.1) + activesupport (= 7.1.5.1) + globalid (>= 0.3.6) + activemodel (7.1.5.1) + activesupport (= 7.1.5.1) + activerecord (7.1.5.1) + activemodel (= 7.1.5.1) + activesupport (= 7.1.5.1) + timeout (>= 0.4.0) + activestorage (7.1.5.1) + actionpack (= 7.1.5.1) + activejob (= 7.1.5.1) + activerecord (= 7.1.5.1) + activesupport (= 7.1.5.1) + marcel (~> 1.0) + activesupport (7.1.5.1) + base64 + benchmark (>= 0.3) + bigdecimal + concurrent-ruby (~> 1.0, >= 1.0.2) + connection_pool (>= 2.2.5) + drb + i18n (>= 1.6, < 2) + logger (>= 1.4.2) + minitest (>= 5.1) + mutex_m + securerandom (>= 0.3) + tzinfo (~> 2.0) + addressable (2.8.7) + public_suffix (>= 2.0.2, < 7.0) + appraisal (2.5.0) + bundler + rake + thor (>= 0.14.0) + arbre (1.7.0) + activesupport (>= 3.0.0) + ruby2_keywords (>= 0.0.2) + ast (2.4.3) + base64 (0.2.0) + benchmark (0.4.0) + bigdecimal (3.1.9) + builder (3.3.0) + capybara (3.40.0) + addressable + matrix + mini_mime (>= 0.1.3) + nokogiri (~> 1.11) + rack (>= 1.6.0) + rack-test (>= 0.6.3) + regexp_parser (>= 1.5, < 3.0) + xpath (~> 3.2) + coderay (1.1.3) + concurrent-ruby (1.3.5) + connection_pool (2.5.0) + crass (1.0.6) + csv (3.3.2) + cuprite (0.15.1) + capybara (~> 3.0) + ferrum (~> 0.15.0) + date (3.4.1) + diff-lcs (1.6.0) + drb (2.2.1) + erubi (1.13.1) + fasterer (0.11.0) + ruby_parser (>= 3.19.1) + ferrum (0.15) + addressable (~> 2.5) + concurrent-ruby (~> 1.1) + webrick (~> 1.7) + websocket-driver (~> 0.7) + ffi (1.17.1-x86_64-linux-gnu) + formtastic (5.0.0) + actionpack (>= 6.0.0) + formtastic_i18n (0.7.0) + globalid (1.2.1) + activesupport (>= 6.1) + has_scope (0.8.2) + actionpack (>= 5.2) + activesupport (>= 5.2) + i18n (1.14.7) + concurrent-ruby (~> 1.0) + inherited_resources (1.14.0) + actionpack (>= 6.0) + has_scope (>= 0.6) + railties (>= 6.0) + responders (>= 2) + io-console (0.8.0) + irb (1.15.1) + pp (>= 0.6.0) + rdoc (>= 4.0.0) + reline (>= 0.4.2) + jquery-rails (4.6.0) + rails-dom-testing (>= 1, < 3) + railties (>= 4.2.0) + thor (>= 0.14, < 2.0) + json (2.10.2) + 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) + language_server-protocol (3.17.0.4) + lint_roller (1.1.0) + logger (1.6.6) + loofah (2.24.0) + crass (~> 1.0.2) + nokogiri (>= 1.12.0) + mail (2.8.1) + mini_mime (>= 0.1.1) + net-imap + net-pop + net-smtp + marcel (1.0.4) + matrix (0.4.2) + method_source (1.1.0) + mini_mime (1.1.5) + minitest (5.25.5) + mutex_m (0.3.0) + net-imap (0.5.6) + date + net-protocol + net-pop (0.1.2) + net-protocol + net-protocol (0.2.2) + timeout + net-smtp (0.5.1) + net-protocol + nio4r (2.7.4) + nokogiri (1.18.5-x86_64-linux-gnu) + racc (~> 1.4) + parallel (1.26.3) + parser (3.3.7.1) + ast (~> 2.4.1) + racc + pp (0.6.2) + prettyprint + prettyprint (0.2.0) + pry (0.15.2) + coderay (~> 1.1) + method_source (~> 1.0) + pry-rails (0.3.11) + pry (>= 0.13.0) + psych (5.2.3) + date + stringio + public_suffix (6.0.1) + puma (6.6.0) + nio4r (~> 2.0) + racc (1.8.1) + rack (3.1.12) + rack-session (2.1.0) + base64 (>= 0.1.0) + rack (>= 3.0.0) + rack-test (2.2.0) + rack (>= 1.3) + rackup (2.2.1) + rack (>= 3) + rails (7.1.5.1) + actioncable (= 7.1.5.1) + actionmailbox (= 7.1.5.1) + actionmailer (= 7.1.5.1) + actionpack (= 7.1.5.1) + actiontext (= 7.1.5.1) + actionview (= 7.1.5.1) + activejob (= 7.1.5.1) + activemodel (= 7.1.5.1) + activerecord (= 7.1.5.1) + activestorage (= 7.1.5.1) + activesupport (= 7.1.5.1) + bundler (>= 1.15.0) + railties (= 7.1.5.1) + rails-dom-testing (2.2.0) + activesupport (>= 5.0.0) + minitest + nokogiri (>= 1.6) + rails-html-sanitizer (1.6.2) + loofah (~> 2.21) + nokogiri (>= 1.15.7, != 1.16.7, != 1.16.6, != 1.16.5, != 1.16.4, != 1.16.3, != 1.16.2, != 1.16.1, != 1.16.0.rc1, != 1.16.0) + railties (7.1.5.1) + actionpack (= 7.1.5.1) + activesupport (= 7.1.5.1) + irb + rackup (>= 1.0.0) + rake (>= 12.2) + thor (~> 1.0, >= 1.2.2) + zeitwerk (~> 2.6) + rainbow (3.1.1) + rake (13.2.1) + ransack (4.3.0) + activerecord (>= 6.1.5) + activesupport (>= 6.1.5) + i18n + rdoc (6.12.0) + psych (>= 4.0.0) + regexp_parser (2.10.0) + reline (0.6.0) + io-console (~> 0.5) + responders (3.1.1) + actionpack (>= 5.2) + railties (>= 5.2) + rspec-core (3.13.3) + rspec-support (~> 3.13.0) + rspec-expectations (3.13.3) + diff-lcs (>= 1.2.0, < 2.0) + rspec-support (~> 3.13.0) + rspec-mocks (3.13.2) + diff-lcs (>= 1.2.0, < 2.0) + rspec-support (~> 3.13.0) + rspec-rails (7.1.1) + actionpack (>= 7.0) + activesupport (>= 7.0) + railties (>= 7.0) + rspec-core (~> 3.13) + rspec-expectations (~> 3.13) + rspec-mocks (~> 3.13) + rspec-support (~> 3.13) + rspec-retry (0.6.2) + rspec-core (> 3.3) + rspec-support (3.13.2) + rspec_junit_formatter (0.6.0) + rspec-core (>= 2, < 4, != 2.12.0) + rubocop (1.74.0) + json (~> 2.3) + language_server-protocol (~> 3.17.0.2) + lint_roller (~> 1.1.0) + parallel (~> 1.10) + parser (>= 3.3.0.2) + rainbow (>= 2.2.2, < 4.0) + regexp_parser (>= 2.9.3, < 3.0) + rubocop-ast (>= 1.38.0, < 2.0) + ruby-progressbar (~> 1.7) + unicode-display_width (>= 2.4.0, < 4.0) + rubocop-ast (1.40.0) + parser (>= 3.3.1.0) + rubocop-packaging (0.5.2) + rubocop (>= 1.33, < 2.0) + rubocop-performance (1.24.0) + lint_roller (~> 1.1) + rubocop (>= 1.72.1, < 2.0) + rubocop-ast (>= 1.38.0, < 2.0) + rubocop-rails (2.30.3) + activesupport (>= 4.2.0) + lint_roller (~> 1.1) + rack (>= 1.1) + rubocop (>= 1.72.1, < 2.0) + rubocop-ast (>= 1.38.0, < 2.0) + rubocop-rspec (3.5.0) + lint_roller (~> 1.1) + rubocop (~> 1.72, >= 1.72.1) + ruby-progressbar (1.13.0) + ruby2_keywords (0.0.5) + ruby_parser (3.21.1) + racc (~> 1.5) + sexp_processor (~> 4.16) + sassc (2.4.0) + ffi (~> 1.9) + securerandom (0.4.1) + sexp_processor (4.17.3) + sprockets (4.2.1) + concurrent-ruby (~> 1.0) + rack (>= 2.2.4, < 4) + sprockets-rails (3.5.2) + actionpack (>= 6.1) + activesupport (>= 6.1) + sprockets (>= 3.0.0) + sqlite3 (2.6.0-x86_64-linux-gnu) + stringio (3.1.5) + thor (1.3.2) + timeout (0.4.3) + tzinfo (2.0.6) + concurrent-ruby (~> 1.0) + unicode-display_width (3.1.4) + unicode-emoji (~> 4.0, >= 4.0.4) + unicode-emoji (4.0.4) + webrick (1.9.1) + websocket-driver (0.7.7) + base64 + websocket-extensions (>= 0.1.0) + websocket-extensions (0.1.5) + xpath (3.2.0) + nokogiri (~> 1.8) + zeitwerk (2.7.2) + +PLATFORMS + x86_64-linux + +DEPENDENCIES + activeadmin + activeadmin_dynamic_fields! + appraisal (~> 2.4) + bigdecimal + capybara + cuprite + fasterer + mutex_m + pry-rails + puma + rails (~> 7.1.0) + rspec-rails + rspec-retry + rspec_junit_formatter + rubocop + rubocop-packaging + rubocop-performance + rubocop-rails + rubocop-rspec + sassc + sprockets-rails + sqlite3 + +BUNDLED WITH + 2.4.19 diff --git a/gemfiles/rails72_activeadmin.gemfile b/gemfiles/rails72_activeadmin.gemfile new file mode 100644 index 0000000..c2a6ff0 --- /dev/null +++ b/gemfiles/rails72_activeadmin.gemfile @@ -0,0 +1,26 @@ +# This file was generated by Appraisal + +source "https://rubygems.org" + +gem "bigdecimal" +gem "mutex_m" +gem "puma" +gem "sassc" +gem "sprockets-rails" +gem "capybara" +gem "cuprite" +gem "rspec_junit_formatter" +gem "rspec-rails" +gem "rspec-retry" +gem "fasterer" +gem "rubocop" +gem "rubocop-packaging" +gem "rubocop-performance" +gem "rubocop-rails" +gem "rubocop-rspec" +gem "pry-rails" +gem "activeadmin" +gem "rails", "~> 7.2.0" +gem "sqlite3" + +gemspec path: "../" diff --git a/gemfiles/rails72_activeadmin.gemfile.lock b/gemfiles/rails72_activeadmin.gemfile.lock new file mode 100644 index 0000000..7017685 --- /dev/null +++ b/gemfiles/rails72_activeadmin.gemfile.lock @@ -0,0 +1,382 @@ +PATH + remote: .. + specs: + activeadmin_dynamic_fields (0.8.0) + activeadmin (>= 2.0, < 4) + +GEM + remote: https://rubygems.org/ + specs: + actioncable (7.2.2.1) + actionpack (= 7.2.2.1) + activesupport (= 7.2.2.1) + nio4r (~> 2.0) + websocket-driver (>= 0.6.1) + zeitwerk (~> 2.6) + actionmailbox (7.2.2.1) + actionpack (= 7.2.2.1) + activejob (= 7.2.2.1) + activerecord (= 7.2.2.1) + activestorage (= 7.2.2.1) + activesupport (= 7.2.2.1) + mail (>= 2.8.0) + actionmailer (7.2.2.1) + actionpack (= 7.2.2.1) + actionview (= 7.2.2.1) + activejob (= 7.2.2.1) + activesupport (= 7.2.2.1) + mail (>= 2.8.0) + rails-dom-testing (~> 2.2) + actionpack (7.2.2.1) + actionview (= 7.2.2.1) + activesupport (= 7.2.2.1) + nokogiri (>= 1.8.5) + racc + rack (>= 2.2.4, < 3.2) + rack-session (>= 1.0.1) + rack-test (>= 0.6.3) + rails-dom-testing (~> 2.2) + rails-html-sanitizer (~> 1.6) + useragent (~> 0.16) + actiontext (7.2.2.1) + actionpack (= 7.2.2.1) + activerecord (= 7.2.2.1) + activestorage (= 7.2.2.1) + activesupport (= 7.2.2.1) + globalid (>= 0.6.0) + nokogiri (>= 1.8.5) + actionview (7.2.2.1) + activesupport (= 7.2.2.1) + builder (~> 3.1) + erubi (~> 1.11) + rails-dom-testing (~> 2.2) + rails-html-sanitizer (~> 1.6) + activeadmin (3.3.0) + arbre (~> 1.2, >= 1.2.1) + csv + formtastic (>= 3.1) + formtastic_i18n (>= 0.4) + inherited_resources (~> 1.7) + jquery-rails (>= 4.2) + kaminari (>= 1.2.1) + railties (>= 6.1) + ransack (>= 4.0) + activejob (7.2.2.1) + activesupport (= 7.2.2.1) + globalid (>= 0.3.6) + activemodel (7.2.2.1) + activesupport (= 7.2.2.1) + activerecord (7.2.2.1) + activemodel (= 7.2.2.1) + activesupport (= 7.2.2.1) + timeout (>= 0.4.0) + activestorage (7.2.2.1) + actionpack (= 7.2.2.1) + activejob (= 7.2.2.1) + activerecord (= 7.2.2.1) + activesupport (= 7.2.2.1) + marcel (~> 1.0) + activesupport (7.2.2.1) + base64 + benchmark (>= 0.3) + bigdecimal + concurrent-ruby (~> 1.0, >= 1.3.1) + connection_pool (>= 2.2.5) + drb + i18n (>= 1.6, < 2) + logger (>= 1.4.2) + minitest (>= 5.1) + securerandom (>= 0.3) + tzinfo (~> 2.0, >= 2.0.5) + addressable (2.8.7) + public_suffix (>= 2.0.2, < 7.0) + appraisal (2.5.0) + bundler + rake + thor (>= 0.14.0) + arbre (1.7.0) + activesupport (>= 3.0.0) + ruby2_keywords (>= 0.0.2) + ast (2.4.3) + base64 (0.2.0) + benchmark (0.4.0) + bigdecimal (3.1.9) + builder (3.3.0) + capybara (3.40.0) + addressable + matrix + mini_mime (>= 0.1.3) + nokogiri (~> 1.11) + rack (>= 1.6.0) + rack-test (>= 0.6.3) + regexp_parser (>= 1.5, < 3.0) + xpath (~> 3.2) + coderay (1.1.3) + concurrent-ruby (1.3.5) + connection_pool (2.5.0) + crass (1.0.6) + csv (3.3.2) + cuprite (0.15.1) + capybara (~> 3.0) + ferrum (~> 0.15.0) + date (3.4.1) + diff-lcs (1.6.0) + drb (2.2.1) + erubi (1.13.1) + fasterer (0.11.0) + ruby_parser (>= 3.19.1) + ferrum (0.15) + addressable (~> 2.5) + concurrent-ruby (~> 1.1) + webrick (~> 1.7) + websocket-driver (~> 0.7) + ffi (1.17.1-x86_64-linux-gnu) + formtastic (5.0.0) + actionpack (>= 6.0.0) + formtastic_i18n (0.7.0) + globalid (1.2.1) + activesupport (>= 6.1) + has_scope (0.8.2) + actionpack (>= 5.2) + activesupport (>= 5.2) + i18n (1.14.7) + concurrent-ruby (~> 1.0) + inherited_resources (1.14.0) + actionpack (>= 6.0) + has_scope (>= 0.6) + railties (>= 6.0) + responders (>= 2) + io-console (0.8.0) + irb (1.15.1) + pp (>= 0.6.0) + rdoc (>= 4.0.0) + reline (>= 0.4.2) + jquery-rails (4.6.0) + rails-dom-testing (>= 1, < 3) + railties (>= 4.2.0) + thor (>= 0.14, < 2.0) + json (2.10.2) + 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) + language_server-protocol (3.17.0.4) + lint_roller (1.1.0) + logger (1.6.6) + loofah (2.24.0) + crass (~> 1.0.2) + nokogiri (>= 1.12.0) + mail (2.8.1) + mini_mime (>= 0.1.1) + net-imap + net-pop + net-smtp + marcel (1.0.4) + matrix (0.4.2) + method_source (1.1.0) + mini_mime (1.1.5) + minitest (5.25.5) + mutex_m (0.3.0) + net-imap (0.5.6) + date + net-protocol + net-pop (0.1.2) + net-protocol + net-protocol (0.2.2) + timeout + net-smtp (0.5.1) + net-protocol + nio4r (2.7.4) + nokogiri (1.18.5-x86_64-linux-gnu) + racc (~> 1.4) + parallel (1.26.3) + parser (3.3.7.1) + ast (~> 2.4.1) + racc + pp (0.6.2) + prettyprint + prettyprint (0.2.0) + pry (0.15.2) + coderay (~> 1.1) + method_source (~> 1.0) + pry-rails (0.3.11) + pry (>= 0.13.0) + psych (5.2.3) + date + stringio + public_suffix (6.0.1) + puma (6.6.0) + nio4r (~> 2.0) + racc (1.8.1) + rack (3.1.12) + rack-session (2.1.0) + base64 (>= 0.1.0) + rack (>= 3.0.0) + rack-test (2.2.0) + rack (>= 1.3) + rackup (2.2.1) + rack (>= 3) + rails (7.2.2.1) + actioncable (= 7.2.2.1) + actionmailbox (= 7.2.2.1) + actionmailer (= 7.2.2.1) + actionpack (= 7.2.2.1) + actiontext (= 7.2.2.1) + actionview (= 7.2.2.1) + activejob (= 7.2.2.1) + activemodel (= 7.2.2.1) + activerecord (= 7.2.2.1) + activestorage (= 7.2.2.1) + activesupport (= 7.2.2.1) + bundler (>= 1.15.0) + railties (= 7.2.2.1) + rails-dom-testing (2.2.0) + activesupport (>= 5.0.0) + minitest + nokogiri (>= 1.6) + rails-html-sanitizer (1.6.2) + loofah (~> 2.21) + nokogiri (>= 1.15.7, != 1.16.7, != 1.16.6, != 1.16.5, != 1.16.4, != 1.16.3, != 1.16.2, != 1.16.1, != 1.16.0.rc1, != 1.16.0) + railties (7.2.2.1) + actionpack (= 7.2.2.1) + activesupport (= 7.2.2.1) + irb (~> 1.13) + rackup (>= 1.0.0) + rake (>= 12.2) + thor (~> 1.0, >= 1.2.2) + zeitwerk (~> 2.6) + rainbow (3.1.1) + rake (13.2.1) + ransack (4.3.0) + activerecord (>= 6.1.5) + activesupport (>= 6.1.5) + i18n + rdoc (6.12.0) + psych (>= 4.0.0) + regexp_parser (2.10.0) + reline (0.6.0) + io-console (~> 0.5) + responders (3.1.1) + actionpack (>= 5.2) + railties (>= 5.2) + rspec-core (3.13.3) + rspec-support (~> 3.13.0) + rspec-expectations (3.13.3) + diff-lcs (>= 1.2.0, < 2.0) + rspec-support (~> 3.13.0) + rspec-mocks (3.13.2) + diff-lcs (>= 1.2.0, < 2.0) + rspec-support (~> 3.13.0) + rspec-rails (7.1.1) + actionpack (>= 7.0) + activesupport (>= 7.0) + railties (>= 7.0) + rspec-core (~> 3.13) + rspec-expectations (~> 3.13) + rspec-mocks (~> 3.13) + rspec-support (~> 3.13) + rspec-retry (0.6.2) + rspec-core (> 3.3) + rspec-support (3.13.2) + rspec_junit_formatter (0.6.0) + rspec-core (>= 2, < 4, != 2.12.0) + rubocop (1.74.0) + json (~> 2.3) + language_server-protocol (~> 3.17.0.2) + lint_roller (~> 1.1.0) + parallel (~> 1.10) + parser (>= 3.3.0.2) + rainbow (>= 2.2.2, < 4.0) + regexp_parser (>= 2.9.3, < 3.0) + rubocop-ast (>= 1.38.0, < 2.0) + ruby-progressbar (~> 1.7) + unicode-display_width (>= 2.4.0, < 4.0) + rubocop-ast (1.40.0) + parser (>= 3.3.1.0) + rubocop-packaging (0.5.2) + rubocop (>= 1.33, < 2.0) + rubocop-performance (1.24.0) + lint_roller (~> 1.1) + rubocop (>= 1.72.1, < 2.0) + rubocop-ast (>= 1.38.0, < 2.0) + rubocop-rails (2.30.3) + activesupport (>= 4.2.0) + lint_roller (~> 1.1) + rack (>= 1.1) + rubocop (>= 1.72.1, < 2.0) + rubocop-ast (>= 1.38.0, < 2.0) + rubocop-rspec (3.5.0) + lint_roller (~> 1.1) + rubocop (~> 1.72, >= 1.72.1) + ruby-progressbar (1.13.0) + ruby2_keywords (0.0.5) + ruby_parser (3.21.1) + racc (~> 1.5) + sexp_processor (~> 4.16) + sassc (2.4.0) + ffi (~> 1.9) + securerandom (0.4.1) + sexp_processor (4.17.3) + sprockets (4.2.1) + concurrent-ruby (~> 1.0) + rack (>= 2.2.4, < 4) + sprockets-rails (3.5.2) + actionpack (>= 6.1) + activesupport (>= 6.1) + sprockets (>= 3.0.0) + sqlite3 (2.6.0-x86_64-linux-gnu) + stringio (3.1.5) + thor (1.3.2) + timeout (0.4.3) + tzinfo (2.0.6) + concurrent-ruby (~> 1.0) + unicode-display_width (3.1.4) + unicode-emoji (~> 4.0, >= 4.0.4) + unicode-emoji (4.0.4) + useragent (0.16.11) + webrick (1.9.1) + websocket-driver (0.7.7) + base64 + websocket-extensions (>= 0.1.0) + websocket-extensions (0.1.5) + xpath (3.2.0) + nokogiri (~> 1.8) + zeitwerk (2.7.2) + +PLATFORMS + x86_64-linux + +DEPENDENCIES + activeadmin + activeadmin_dynamic_fields! + appraisal (~> 2.4) + bigdecimal + capybara + cuprite + fasterer + mutex_m + pry-rails + puma + rails (~> 7.2.0) + rspec-rails + rspec-retry + rspec_junit_formatter + rubocop + rubocop-packaging + rubocop-performance + rubocop-rails + rubocop-rspec + sassc + sprockets-rails + sqlite3 + +BUNDLED WITH + 2.4.19 diff --git a/gemfiles/rails80_activeadmin.gemfile b/gemfiles/rails80_activeadmin.gemfile new file mode 100644 index 0000000..b4180e1 --- /dev/null +++ b/gemfiles/rails80_activeadmin.gemfile @@ -0,0 +1,26 @@ +# This file was generated by Appraisal + +source "https://rubygems.org" + +gem "bigdecimal" +gem "mutex_m" +gem "puma" +gem "sassc" +gem "sprockets-rails" +gem "capybara" +gem "cuprite" +gem "rspec_junit_formatter" +gem "rspec-rails" +gem "rspec-retry" +gem "fasterer" +gem "rubocop" +gem "rubocop-packaging" +gem "rubocop-performance" +gem "rubocop-rails" +gem "rubocop-rspec" +gem "pry-rails" +gem "activeadmin" +gem "rails", "~> 8.0.0" +gem "sqlite3" + +gemspec path: "../" diff --git a/gemfiles/rails80_activeadmin.gemfile.lock b/gemfiles/rails80_activeadmin.gemfile.lock new file mode 100644 index 0000000..a911266 --- /dev/null +++ b/gemfiles/rails80_activeadmin.gemfile.lock @@ -0,0 +1,418 @@ +PATH + remote: .. + specs: + activeadmin_dynamic_fields (0.8.0) + activeadmin (>= 2.0, < 4) + +GEM + remote: https://rubygems.org/ + specs: + actioncable (8.0.2) + actionpack (= 8.0.2) + activesupport (= 8.0.2) + nio4r (~> 2.0) + websocket-driver (>= 0.6.1) + zeitwerk (~> 2.6) + actionmailbox (8.0.2) + actionpack (= 8.0.2) + activejob (= 8.0.2) + activerecord (= 8.0.2) + activestorage (= 8.0.2) + activesupport (= 8.0.2) + mail (>= 2.8.0) + actionmailer (8.0.2) + actionpack (= 8.0.2) + actionview (= 8.0.2) + activejob (= 8.0.2) + activesupport (= 8.0.2) + mail (>= 2.8.0) + rails-dom-testing (~> 2.2) + actionpack (8.0.2) + actionview (= 8.0.2) + activesupport (= 8.0.2) + nokogiri (>= 1.8.5) + rack (>= 2.2.4) + rack-session (>= 1.0.1) + rack-test (>= 0.6.3) + rails-dom-testing (~> 2.2) + rails-html-sanitizer (~> 1.6) + useragent (~> 0.16) + actiontext (8.0.2) + actionpack (= 8.0.2) + activerecord (= 8.0.2) + activestorage (= 8.0.2) + activesupport (= 8.0.2) + globalid (>= 0.6.0) + nokogiri (>= 1.8.5) + actionview (8.0.2) + activesupport (= 8.0.2) + builder (~> 3.1) + erubi (~> 1.11) + rails-dom-testing (~> 2.2) + rails-html-sanitizer (~> 1.6) + activeadmin (3.3.0) + arbre (~> 1.2, >= 1.2.1) + csv + formtastic (>= 3.1) + formtastic_i18n (>= 0.4) + inherited_resources (~> 1.7) + jquery-rails (>= 4.2) + kaminari (>= 1.2.1) + railties (>= 6.1) + ransack (>= 4.0) + activejob (8.0.2) + activesupport (= 8.0.2) + globalid (>= 0.3.6) + activemodel (8.0.2) + activesupport (= 8.0.2) + activerecord (8.0.2) + activemodel (= 8.0.2) + activesupport (= 8.0.2) + timeout (>= 0.4.0) + activestorage (8.0.2) + actionpack (= 8.0.2) + activejob (= 8.0.2) + activerecord (= 8.0.2) + activesupport (= 8.0.2) + marcel (~> 1.0) + activesupport (8.0.2) + base64 + benchmark (>= 0.3) + bigdecimal + concurrent-ruby (~> 1.0, >= 1.3.1) + connection_pool (>= 2.2.5) + drb + i18n (>= 1.6, < 2) + logger (>= 1.4.2) + minitest (>= 5.1) + securerandom (>= 0.3) + tzinfo (~> 2.0, >= 2.0.5) + uri (>= 0.13.1) + addressable (2.8.7) + public_suffix (>= 2.0.2, < 7.0) + appraisal (2.5.0) + bundler + rake + thor (>= 0.14.0) + arbre (1.7.0) + activesupport (>= 3.0.0) + ruby2_keywords (>= 0.0.2) + ast (2.4.3) + base64 (0.2.0) + benchmark (0.4.0) + bigdecimal (3.1.9) + builder (3.3.0) + capybara (3.40.0) + addressable + matrix + mini_mime (>= 0.1.3) + nokogiri (~> 1.11) + rack (>= 1.6.0) + rack-test (>= 0.6.3) + regexp_parser (>= 1.5, < 3.0) + xpath (~> 3.2) + coderay (1.1.3) + concurrent-ruby (1.3.5) + connection_pool (2.5.0) + crass (1.0.6) + csv (3.3.2) + cuprite (0.15.1) + capybara (~> 3.0) + ferrum (~> 0.15.0) + date (3.4.1) + diff-lcs (1.6.0) + drb (2.2.1) + erubi (1.13.1) + fasterer (0.11.0) + ruby_parser (>= 3.19.1) + ferrum (0.15) + addressable (~> 2.5) + concurrent-ruby (~> 1.1) + webrick (~> 1.7) + websocket-driver (~> 0.7) + ffi (1.17.1-aarch64-linux-gnu) + ffi (1.17.1-aarch64-linux-musl) + ffi (1.17.1-arm-linux-gnu) + ffi (1.17.1-arm-linux-musl) + ffi (1.17.1-arm64-darwin) + ffi (1.17.1-x86_64-darwin) + ffi (1.17.1-x86_64-linux-gnu) + ffi (1.17.1-x86_64-linux-musl) + formtastic (5.0.0) + actionpack (>= 6.0.0) + formtastic_i18n (0.7.0) + globalid (1.2.1) + activesupport (>= 6.1) + has_scope (0.8.2) + actionpack (>= 5.2) + activesupport (>= 5.2) + i18n (1.14.7) + concurrent-ruby (~> 1.0) + inherited_resources (1.14.0) + actionpack (>= 6.0) + has_scope (>= 0.6) + railties (>= 6.0) + responders (>= 2) + io-console (0.8.0) + irb (1.15.1) + pp (>= 0.6.0) + rdoc (>= 4.0.0) + reline (>= 0.4.2) + jquery-rails (4.6.0) + rails-dom-testing (>= 1, < 3) + railties (>= 4.2.0) + thor (>= 0.14, < 2.0) + json (2.10.2) + 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) + language_server-protocol (3.17.0.4) + lint_roller (1.1.0) + logger (1.6.6) + loofah (2.24.0) + crass (~> 1.0.2) + nokogiri (>= 1.12.0) + mail (2.8.1) + mini_mime (>= 0.1.1) + net-imap + net-pop + net-smtp + marcel (1.0.4) + matrix (0.4.2) + method_source (1.1.0) + mini_mime (1.1.5) + minitest (5.25.5) + mutex_m (0.3.0) + net-imap (0.5.6) + date + net-protocol + net-pop (0.1.2) + net-protocol + net-protocol (0.2.2) + timeout + net-smtp (0.5.1) + net-protocol + nio4r (2.7.4) + nokogiri (1.18.5-aarch64-linux-gnu) + racc (~> 1.4) + nokogiri (1.18.5-aarch64-linux-musl) + racc (~> 1.4) + nokogiri (1.18.5-arm-linux-gnu) + racc (~> 1.4) + nokogiri (1.18.5-arm-linux-musl) + racc (~> 1.4) + nokogiri (1.18.5-arm64-darwin) + racc (~> 1.4) + nokogiri (1.18.5-x86_64-darwin) + racc (~> 1.4) + nokogiri (1.18.5-x86_64-linux-gnu) + racc (~> 1.4) + nokogiri (1.18.5-x86_64-linux-musl) + racc (~> 1.4) + parallel (1.26.3) + parser (3.3.7.1) + ast (~> 2.4.1) + racc + pp (0.6.2) + prettyprint + prettyprint (0.2.0) + pry (0.15.2) + coderay (~> 1.1) + method_source (~> 1.0) + pry-rails (0.3.11) + pry (>= 0.13.0) + psych (5.2.3) + date + stringio + public_suffix (6.0.1) + puma (6.6.0) + nio4r (~> 2.0) + racc (1.8.1) + rack (3.1.12) + rack-session (2.1.0) + base64 (>= 0.1.0) + rack (>= 3.0.0) + rack-test (2.2.0) + rack (>= 1.3) + rackup (2.2.1) + rack (>= 3) + rails (8.0.2) + actioncable (= 8.0.2) + actionmailbox (= 8.0.2) + actionmailer (= 8.0.2) + actionpack (= 8.0.2) + actiontext (= 8.0.2) + actionview (= 8.0.2) + activejob (= 8.0.2) + activemodel (= 8.0.2) + activerecord (= 8.0.2) + activestorage (= 8.0.2) + activesupport (= 8.0.2) + bundler (>= 1.15.0) + railties (= 8.0.2) + rails-dom-testing (2.2.0) + activesupport (>= 5.0.0) + minitest + nokogiri (>= 1.6) + rails-html-sanitizer (1.6.2) + loofah (~> 2.21) + nokogiri (>= 1.15.7, != 1.16.7, != 1.16.6, != 1.16.5, != 1.16.4, != 1.16.3, != 1.16.2, != 1.16.1, != 1.16.0.rc1, != 1.16.0) + railties (8.0.2) + actionpack (= 8.0.2) + activesupport (= 8.0.2) + irb (~> 1.13) + rackup (>= 1.0.0) + rake (>= 12.2) + thor (~> 1.0, >= 1.2.2) + zeitwerk (~> 2.6) + rainbow (3.1.1) + rake (13.2.1) + ransack (4.3.0) + activerecord (>= 6.1.5) + activesupport (>= 6.1.5) + i18n + rdoc (6.12.0) + psych (>= 4.0.0) + regexp_parser (2.10.0) + reline (0.6.0) + io-console (~> 0.5) + responders (3.1.1) + actionpack (>= 5.2) + railties (>= 5.2) + rspec-core (3.13.3) + rspec-support (~> 3.13.0) + rspec-expectations (3.13.3) + diff-lcs (>= 1.2.0, < 2.0) + rspec-support (~> 3.13.0) + rspec-mocks (3.13.2) + diff-lcs (>= 1.2.0, < 2.0) + rspec-support (~> 3.13.0) + rspec-rails (7.1.1) + actionpack (>= 7.0) + activesupport (>= 7.0) + railties (>= 7.0) + rspec-core (~> 3.13) + rspec-expectations (~> 3.13) + rspec-mocks (~> 3.13) + rspec-support (~> 3.13) + rspec-retry (0.6.2) + rspec-core (> 3.3) + rspec-support (3.13.2) + rspec_junit_formatter (0.6.0) + rspec-core (>= 2, < 4, != 2.12.0) + rubocop (1.74.0) + json (~> 2.3) + language_server-protocol (~> 3.17.0.2) + lint_roller (~> 1.1.0) + parallel (~> 1.10) + parser (>= 3.3.0.2) + rainbow (>= 2.2.2, < 4.0) + regexp_parser (>= 2.9.3, < 3.0) + rubocop-ast (>= 1.38.0, < 2.0) + ruby-progressbar (~> 1.7) + unicode-display_width (>= 2.4.0, < 4.0) + rubocop-ast (1.40.0) + parser (>= 3.3.1.0) + rubocop-packaging (0.5.2) + rubocop (>= 1.33, < 2.0) + rubocop-performance (1.24.0) + lint_roller (~> 1.1) + rubocop (>= 1.72.1, < 2.0) + rubocop-ast (>= 1.38.0, < 2.0) + rubocop-rails (2.30.3) + activesupport (>= 4.2.0) + lint_roller (~> 1.1) + rack (>= 1.1) + rubocop (>= 1.72.1, < 2.0) + rubocop-ast (>= 1.38.0, < 2.0) + rubocop-rspec (3.5.0) + lint_roller (~> 1.1) + rubocop (~> 1.72, >= 1.72.1) + ruby-progressbar (1.13.0) + ruby2_keywords (0.0.5) + ruby_parser (3.21.1) + racc (~> 1.5) + sexp_processor (~> 4.16) + sassc (2.4.0) + ffi (~> 1.9) + securerandom (0.4.1) + sexp_processor (4.17.3) + sprockets (4.2.1) + concurrent-ruby (~> 1.0) + rack (>= 2.2.4, < 4) + sprockets-rails (3.5.2) + actionpack (>= 6.1) + activesupport (>= 6.1) + sprockets (>= 3.0.0) + sqlite3 (2.6.0-aarch64-linux-gnu) + sqlite3 (2.6.0-aarch64-linux-musl) + sqlite3 (2.6.0-arm-linux-gnu) + sqlite3 (2.6.0-arm-linux-musl) + sqlite3 (2.6.0-arm64-darwin) + sqlite3 (2.6.0-x86_64-darwin) + sqlite3 (2.6.0-x86_64-linux-gnu) + sqlite3 (2.6.0-x86_64-linux-musl) + stringio (3.1.5) + thor (1.3.2) + timeout (0.4.3) + tzinfo (2.0.6) + concurrent-ruby (~> 1.0) + unicode-display_width (3.1.4) + unicode-emoji (~> 4.0, >= 4.0.4) + unicode-emoji (4.0.4) + uri (1.0.3) + useragent (0.16.11) + webrick (1.9.1) + websocket-driver (0.7.7) + base64 + websocket-extensions (>= 0.1.0) + websocket-extensions (0.1.5) + xpath (3.2.0) + nokogiri (~> 1.8) + zeitwerk (2.7.2) + +PLATFORMS + aarch64-linux-gnu + aarch64-linux-musl + arm-linux-gnu + arm-linux-musl + arm64-darwin + x86_64-darwin + x86_64-linux-gnu + x86_64-linux-musl + +DEPENDENCIES + activeadmin + activeadmin_dynamic_fields! + appraisal (~> 2.4) + bigdecimal + capybara + cuprite + fasterer + mutex_m + pry-rails + puma + rails (~> 8.0.0) + rspec-rails + rspec-retry + rspec_junit_formatter + rubocop + rubocop-packaging + rubocop-performance + rubocop-rails + rubocop-rspec + sassc + sprockets-rails + sqlite3 + +BUNDLED WITH + 2.6.6 diff --git a/spec/dummy/config/application.rb b/spec/dummy/config/application.rb index 1d565d8..e2cfc82 100644 --- a/spec/dummy/config/application.rb +++ b/spec/dummy/config/application.rb @@ -14,8 +14,10 @@ class Application < Rails::Application # -- all .rb files in that directory are automatically loaded after loading # the framework and any gems in your application. - if (Rails::VERSION::MAJOR == 6 && Rails::VERSION::MINOR == 1) || Rails::VERSION::MAJOR >= 7 - config.active_record.legacy_connection_handling = false + config.active_record.legacy_connection_handling = false if Gem::Version.new(Rails.version) < Gem::Version.new('7.1') + + config.before_configuration do + ActiveSupport::Cache.format_version = 7.0 if Gem::Version.new(Rails.version) > Gem::Version.new('7.0') end end end diff --git a/spec/dummy/config/environments/development.rb b/spec/dummy/config/environments/development.rb index 7a352dd..fb67c55 100644 --- a/spec/dummy/config/environments/development.rb +++ b/spec/dummy/config/environments/development.rb @@ -59,4 +59,8 @@ # Use an evented file watcher to asynchronously detect changes in source code, # routes, locales, etc. This feature depends on the listen gem. # config.file_watcher = ActiveSupport::EventedFileUpdateChecker + + ### + + config.active_support.to_time_preserves_timezone = :zone if Gem::Version.new(Rails.version) >= Gem::Version.new('8.0') end diff --git a/spec/dummy/config/environments/production.rb b/spec/dummy/config/environments/production.rb deleted file mode 100644 index 319166f..0000000 --- a/spec/dummy/config/environments/production.rb +++ /dev/null @@ -1,112 +0,0 @@ -Rails.application.configure do - # Settings specified here will take precedence over those in config/application.rb. - - # Code is not reloaded between requests. - config.cache_classes = true - - # Eager load code on boot. This eager loads most of Rails and - # your application in memory, allowing both threaded web servers - # and those relying on copy on write to perform better. - # Rake tasks automatically ignore this option for performance. - config.eager_load = true - - # Full error reports are disabled and caching is turned on. - config.consider_all_requests_local = false - config.action_controller.perform_caching = true - - # Ensures that a master key has been made available in either ENV["RAILS_MASTER_KEY"] - # or in config/master.key. This key is used to decrypt credentials (and other encrypted files). - # config.require_master_key = true - - # Disable serving static files from the `/public` folder by default since - # Apache or NGINX already handles this. - config.public_file_server.enabled = ENV['RAILS_SERVE_STATIC_FILES'].present? - - # Compress CSS using a preprocessor. - # config.assets.css_compressor = :sass - - # Do not fallback to assets pipeline if a precompiled asset is missed. - config.assets.compile = false - - # Enable serving of images, stylesheets, and JavaScripts from an asset server. - # config.action_controller.asset_host = 'http://assets.example.com' - - # Specifies the header that your server uses for sending files. - # config.action_dispatch.x_sendfile_header = 'X-Sendfile' # for Apache - # config.action_dispatch.x_sendfile_header = 'X-Accel-Redirect' # for NGINX - - # Store uploaded files on the local file system (see config/storage.yml for options). - config.active_storage.service = :local - - # Mount Action Cable outside main process or domain. - # config.action_cable.mount_path = nil - # config.action_cable.url = 'wss://example.com/cable' - # config.action_cable.allowed_request_origins = [ 'http://example.com', /http:\/\/example.*/ ] - - # Force all access to the app over SSL, use Strict-Transport-Security, and use secure cookies. - # config.force_ssl = true - - # Use the lowest log level to ensure availability of diagnostic information - # when problems arise. - config.log_level = :debug - - # Prepend all log lines with the following tags. - config.log_tags = [ :request_id ] - - # Use a different cache store in production. - # config.cache_store = :mem_cache_store - - # Use a real queuing backend for Active Job (and separate queues per environment). - # config.active_job.queue_adapter = :resque - # config.active_job.queue_name_prefix = "dummy_production" - - # config.action_mailer.perform_caching = false - - # Ignore bad email addresses and do not raise email delivery errors. - # Set this to true and configure the email server for immediate delivery to raise delivery errors. - # config.action_mailer.raise_delivery_errors = false - - # Enable locale fallbacks for I18n (makes lookups for any locale fall back to - # the I18n.default_locale when a translation cannot be found). - config.i18n.fallbacks = true - - # Send deprecation notices to registered listeners. - config.active_support.deprecation = :notify - - # Use default logging formatter so that PID and timestamp are not suppressed. - config.log_formatter = ::Logger::Formatter.new - - # Use a different logger for distributed setups. - # require 'syslog/logger' - # config.logger = ActiveSupport::TaggedLogging.new(Syslog::Logger.new 'app-name') - - if ENV["RAILS_LOG_TO_STDOUT"].present? - logger = ActiveSupport::Logger.new(STDOUT) - logger.formatter = config.log_formatter - config.logger = ActiveSupport::TaggedLogging.new(logger) - end - - # Do not dump schema after migrations. - config.active_record.dump_schema_after_migration = false - - # Inserts middleware to perform automatic connection switching. - # The `database_selector` hash is used to pass options to the DatabaseSelector - # middleware. The `delay` is used to determine how long to wait after a write - # to send a subsequent read to the primary. - # - # The `database_resolver` class is used by the middleware to determine which - # database is appropriate to use based on the time delay. - # - # The `database_resolver_context` class is used by the middleware to set - # timestamps for the last write to the primary. The resolver uses the context - # class timestamps to determine how long to wait before reading from the - # replica. - # - # By default Rails will store a last write timestamp in the session. The - # DatabaseSelector middleware is designed as such you can define your own - # strategy for connection switching and pass that into the middleware through - # these configuration options. - # config.active_record.database_selector = { delay: 2.seconds } - # config.active_record.database_resolver = ActiveRecord::Middleware::DatabaseSelector::Resolver - # config.active_record.database_resolver_context = ActiveRecord::Middleware::DatabaseSelector::Resolver::Session -end diff --git a/spec/dummy/config/environments/test.rb b/spec/dummy/config/environments/test.rb index 270398b..64968d9 100644 --- a/spec/dummy/config/environments/test.rb +++ b/spec/dummy/config/environments/test.rb @@ -46,4 +46,8 @@ # Raises error for missing translations. # config.action_view.raise_on_missing_translations = true + + ### + + config.active_support.to_time_preserves_timezone = :zone if Gem::Version.new(Rails.version) >= Gem::Version.new('8.0') end diff --git a/spec/rails_helper.rb b/spec/rails_helper.rb index d976f4d..3ebd733 100644 --- a/spec/rails_helper.rb +++ b/spec/rails_helper.rb @@ -1,6 +1,6 @@ # frozen_string_literal: true -require 'spec_helper' +require_relative 'spec_helper' ENV['RAILS_ENV'] = 'test' @@ -11,10 +11,10 @@ require 'rspec/rails' require 'capybara/rails' -Dir[File.expand_path('support/**/*.rb', __dir__)].sort.each { |f| require f } +Dir[File.expand_path('support/**/*.rb', __dir__)].sort.each { |f| require_relative f } # Force deprecations to raise an exception. -ActiveSupport::Deprecation.behavior = :raise +# ActiveSupport::Deprecation.behavior = :raise # Checks for pending migrations and applies them before tests are run. # If you are not using ActiveRecord, you can remove these lines. @@ -26,7 +26,7 @@ end RSpec.configure do |config| - config.fixture_path = "#{::Rails.root}/spec/fixtures" + config.fixture_path = Rails.root.join('spec/fixtures') config.infer_spec_type_from_file_location! config.filter_rails_from_backtrace! From cc76e5332fbba274aa8d9323ea51e51a10404e42 Mon Sep 17 00:00:00 2001 From: Mattia Roccoberton Date: Wed, 19 Mar 2025 23:13:28 +0100 Subject: [PATCH 5/5] test: Update outdated test suite options --- spec/dummy/app/admin/posts.rb | 2 + spec/dummy/app/models/post.rb | 8 +++- .../db/migrate/20180607053739_create_posts.rb | 1 + spec/dummy/db/schema.rb | 38 +++++++++---------- 4 files changed, 28 insertions(+), 21 deletions(-) diff --git a/spec/dummy/app/admin/posts.rb b/spec/dummy/app/admin/posts.rb index 0c82d31..2d1a2fd 100644 --- a/spec/dummy/app/admin/posts.rb +++ b/spec/dummy/app/admin/posts.rb @@ -3,6 +3,8 @@ ActiveAdmin.register Post do permit_params :author_id, :title, :description, :category, :dt, :position, :published, tag_ids: [] + remove_filter :state + member_action :save, method: [:post] do render ActiveAdmin::DynamicFields.update(resource, params) end diff --git a/spec/dummy/app/models/post.rb b/spec/dummy/app/models/post.rb index c60016f..faa8994 100644 --- a/spec/dummy/app/models/post.rb +++ b/spec/dummy/app/models/post.rb @@ -1,7 +1,11 @@ # frozen_string_literal: true class Post < ApplicationRecord - enum state: %i[available unavailable arriving] + if Gem::Version.new(Rails.version) >= Gem::Version.new('8.0') + enum :state, %i[available unavailable arriving] + else + enum state: %i[available unavailable arriving] + end belongs_to :author, inverse_of: :posts, autosave: true @@ -10,7 +14,7 @@ class Post < ApplicationRecord has_many :post_tags, inverse_of: :post, dependent: :destroy has_many :tags, through: :post_tags - serialize :description, JSON + serialize :description, coder: JSON after_initialize -> { self.description = {} if description.nil? } diff --git a/spec/dummy/db/migrate/20180607053739_create_posts.rb b/spec/dummy/db/migrate/20180607053739_create_posts.rb index 305a66d..eeb2b85 100644 --- a/spec/dummy/db/migrate/20180607053739_create_posts.rb +++ b/spec/dummy/db/migrate/20180607053739_create_posts.rb @@ -4,6 +4,7 @@ class CreatePosts < ActiveRecord::Migration[5.2] def change create_table :posts do |t| t.string :title + t.string :state t.text :description t.belongs_to :author, foreign_key: true t.string :category diff --git a/spec/dummy/db/schema.rb b/spec/dummy/db/schema.rb index 6ce4f97..6b551eb 100644 --- a/spec/dummy/db/schema.rb +++ b/spec/dummy/db/schema.rb @@ -10,17 +10,16 @@ # # It's strongly recommended that you check this file into your version control system. -ActiveRecord::Schema.define(version: 2018_06_07_053739) do - +ActiveRecord::Schema[7.0].define(version: 2018_06_07_053739) do create_table "active_admin_comments", force: :cascade do |t| t.string "namespace" t.text "body" t.string "resource_type" - t.bigint "resource_id" + t.integer "resource_id" t.string "author_type" - t.bigint "author_id" - t.datetime "created_at", precision: 6, null: false - t.datetime "updated_at", precision: 6, null: false + t.integer "author_id" + t.datetime "created_at", null: false + t.datetime "updated_at", null: false t.index ["author_type", "author_id"], name: "index_active_admin_comments_on_author_type_and_author_id" t.index ["namespace"], name: "index_active_admin_comments_on_namespace" t.index ["resource_type", "resource_id"], name: "index_active_admin_comments_on_resource_type_and_resource_id" @@ -31,7 +30,7 @@ t.string "record_type", null: false t.integer "record_id", null: false t.integer "blob_id", null: false - t.datetime "created_at", null: false + t.datetime "created_at", precision: nil, null: false t.index ["blob_id"], name: "index_active_storage_attachments_on_blob_id" t.index ["record_type", "record_id", "name", "blob_id"], name: "index_active_storage_attachments_uniqueness", unique: true end @@ -43,7 +42,7 @@ t.text "metadata" t.bigint "byte_size", null: false t.string "checksum", null: false - t.datetime "created_at", null: false + t.datetime "created_at", precision: nil, null: false t.index ["key"], name: "index_active_storage_blobs_on_key", unique: true end @@ -51,44 +50,45 @@ t.string "name" t.integer "age" t.string "email" - t.datetime "created_at", null: false - t.datetime "updated_at", null: false + t.datetime "created_at", precision: nil, null: false + t.datetime "updated_at", precision: nil, null: false end create_table "post_tags", force: :cascade do |t| t.integer "post_id" t.integer "tag_id" - t.datetime "created_at", null: false - t.datetime "updated_at", null: false + t.datetime "created_at", precision: nil, null: false + t.datetime "updated_at", precision: nil, null: false t.index ["post_id"], name: "index_post_tags_on_post_id" t.index ["tag_id"], name: "index_post_tags_on_tag_id" end create_table "posts", force: :cascade do |t| t.string "title" + t.string "state" t.text "description" t.integer "author_id" t.string "category" - t.datetime "dt" + t.datetime "dt", precision: nil t.float "position" t.boolean "published" - t.datetime "created_at", null: false - t.datetime "updated_at", null: false + t.datetime "created_at", precision: nil, null: false + t.datetime "updated_at", precision: nil, null: false t.index ["author_id"], name: "index_posts_on_author_id" end create_table "profiles", force: :cascade do |t| t.text "description" t.integer "author_id" - t.datetime "created_at", null: false - t.datetime "updated_at", null: false + t.datetime "created_at", precision: nil, null: false + t.datetime "updated_at", precision: nil, null: false t.index ["author_id"], name: "index_profiles_on_author_id" end create_table "tags", force: :cascade do |t| t.string "name" - t.datetime "created_at", null: false - t.datetime "updated_at", null: false + t.datetime "created_at", precision: nil, null: false + t.datetime "updated_at", precision: nil, null: false end add_foreign_key "active_storage_attachments", "active_storage_blobs", column: "blob_id"