diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml index 5dbddfd3208..0504ff85033 100644 --- a/.github/workflows/ci.yaml +++ b/.github/workflows/ci.yaml @@ -19,12 +19,14 @@ jobs: fail-fast: false matrix: ruby: + - 3.4 - 3.3 - 3.2 - 3.1 os: - ubuntu-latest deps: + - rails_80 - rails_72 - rails_71 - rails_70 @@ -32,17 +34,27 @@ jobs: include: - ruby: '3.0' os: ubuntu-latest - deps: rails_71 + deps: rails_61 + exclude: + - ruby: '3.1' + os: ubuntu-latest + deps: rails_80 + - ruby: '3.4' + os: ubuntu-latest + deps: rails_61 + - ruby: '3.4' + os: ubuntu-latest + deps: rails_70 steps: - uses: actions/checkout@v4 - name: Configure bundler (default) run: | echo "BUNDLE_GEMFILE=Gemfile" >> "$GITHUB_ENV" - if: matrix.deps == 'rails_72' + if: matrix.deps == 'rails_80' - name: Configure bundler (alternative) run: | echo "BUNDLE_GEMFILE=gemfiles/${{ matrix.deps }}/Gemfile" >> "$GITHUB_ENV" - if: matrix.deps != 'rails_72' + if: matrix.deps != 'rails_80' - uses: ruby/setup-ruby@v1 with: ruby-version: ${{ matrix.ruby }} diff --git a/CHANGELOG.md b/CHANGELOG.md index d7c3c94246b..ab0147402aa 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,22 @@ ## Unreleased +## 3.3.0 [☰](https://github.com/activeadmin/activeadmin/compare/v3.2.5..v3.3.0) + +### Enhancements + +* Improve v3 docs regarding compatibility with vite_rails [#8548] by [@mattbrictson] +* Backport test against Rails 8.0 [#8556] by [@mgrunberg] and [@tagliala] +* Test against Ruby 3.4 [#8614] by [@tagliala] +* Backport Support sortable argument in id_column [#8650] by [@jaynetics] +* Backport Support title for id_column [#8652] by [@mgrunberg] + +### Bug Fixes + +* Backport Fix attributes passed to form has_many not being set on new record form items [#8551] by [@Fs00] +* Backport Fix deprecation warning in Ruby 3.4 [#8596] by [@tagliala] +* Backport Fix circular require warning in belongs_to.rb [#8601] by [@tagliala] + ## 3.2.5 [☰](https://github.com/activeadmin/activeadmin/compare/v3.2.4..v3.2.5) ### Enhancements @@ -960,6 +976,14 @@ Please check [0-6-stable] for previous changes. [#8468]: https://github.com/activeadmin/activeadmin/pull/8468 [#8469]: https://github.com/activeadmin/activeadmin/pull/8469 [#8470]: https://github.com/activeadmin/activeadmin/pull/8470 +[#8548]: https://github.com/activeadmin/activeadmin/pull/8548 +[#8551]: https://github.com/activeadmin/activeadmin/pull/8551 +[#8556]: https://github.com/activeadmin/activeadmin/pull/8556 +[#8596]: https://github.com/activeadmin/activeadmin/pull/8596 +[#8601]: https://github.com/activeadmin/activeadmin/pull/8601 +[#8614]: https://github.com/activeadmin/activeadmin/pull/8614 +[#8650]: https://github.com/activeadmin/activeadmin/pull/8650 +[#8652]: https://github.com/activeadmin/activeadmin/pull/8652 [@1000ship]: https://github.com/1000ship [@5t111111]: https://github.com/5t111111 @@ -1040,6 +1064,7 @@ Please check [0-6-stable] for previous changes. [@Looooong]: https://github.com/Looooong [@lubosch]: https://github.com/lubosch [@markstory]: https://github.com/markstory +[@mattbrictson]: https://github.com/mattbrictson [@mauriciopasquier]: https://github.com/mauriciopasquier [@mconiglio]: https://github.com/mconiglio [@mgrunberg]: https://github.com/mgrunberg diff --git a/Gemfile b/Gemfile index fd6ffbceb4c..61e080d8314 100644 --- a/Gemfile +++ b/Gemfile @@ -10,7 +10,7 @@ group :development, :test do gem "draper" gem "devise" - gem "rails", "~> 7.2.0" + gem "rails", "~> 8.0.0" gem "sprockets-rails" gem "sassc-rails" diff --git a/Gemfile.lock b/Gemfile.lock index 0031de9fa10..79aaa35d31b 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -1,7 +1,7 @@ PATH remote: . specs: - activeadmin (3.2.5) + activeadmin (3.3.0) arbre (~> 1.2, >= 1.2.1) csv formtastic (>= 3.1) @@ -15,71 +15,71 @@ PATH GEM remote: https://rubygems.org/ specs: - actioncable (7.2.1) - actionpack (= 7.2.1) - activesupport (= 7.2.1) + actioncable (8.0.1) + actionpack (= 8.0.1) + activesupport (= 8.0.1) nio4r (~> 2.0) websocket-driver (>= 0.6.1) zeitwerk (~> 2.6) - actionmailbox (7.2.1) - actionpack (= 7.2.1) - activejob (= 7.2.1) - activerecord (= 7.2.1) - activestorage (= 7.2.1) - activesupport (= 7.2.1) + actionmailbox (8.0.1) + actionpack (= 8.0.1) + activejob (= 8.0.1) + activerecord (= 8.0.1) + activestorage (= 8.0.1) + activesupport (= 8.0.1) mail (>= 2.8.0) - actionmailer (7.2.1) - actionpack (= 7.2.1) - actionview (= 7.2.1) - activejob (= 7.2.1) - activesupport (= 7.2.1) + actionmailer (8.0.1) + actionpack (= 8.0.1) + actionview (= 8.0.1) + activejob (= 8.0.1) + activesupport (= 8.0.1) mail (>= 2.8.0) rails-dom-testing (~> 2.2) - actionpack (7.2.1) - actionview (= 7.2.1) - activesupport (= 7.2.1) + actionpack (8.0.1) + actionview (= 8.0.1) + activesupport (= 8.0.1) nokogiri (>= 1.8.5) - racc - rack (>= 2.2.4, < 3.2) + 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 (7.2.1) - actionpack (= 7.2.1) - activerecord (= 7.2.1) - activestorage (= 7.2.1) - activesupport (= 7.2.1) + actiontext (8.0.1) + actionpack (= 8.0.1) + activerecord (= 8.0.1) + activestorage (= 8.0.1) + activesupport (= 8.0.1) globalid (>= 0.6.0) nokogiri (>= 1.8.5) - actionview (7.2.1) - activesupport (= 7.2.1) + actionview (8.0.1) + activesupport (= 8.0.1) builder (~> 3.1) erubi (~> 1.11) rails-dom-testing (~> 2.2) rails-html-sanitizer (~> 1.6) - activejob (7.2.1) - activesupport (= 7.2.1) + activejob (8.0.1) + activesupport (= 8.0.1) globalid (>= 0.3.6) - activemodel (7.2.1) - activesupport (= 7.2.1) - activemodel-serializers-xml (1.0.2) - activemodel (> 5.x) - activesupport (> 5.x) + activemodel (8.0.1) + activesupport (= 8.0.1) + activemodel-serializers-xml (1.0.3) + activemodel (>= 5.0.0.a) + activesupport (>= 5.0.0.a) builder (~> 3.1) - activerecord (7.2.1) - activemodel (= 7.2.1) - activesupport (= 7.2.1) + activerecord (8.0.1) + activemodel (= 8.0.1) + activesupport (= 8.0.1) timeout (>= 0.4.0) - activestorage (7.2.1) - actionpack (= 7.2.1) - activejob (= 7.2.1) - activerecord (= 7.2.1) - activesupport (= 7.2.1) + activestorage (8.0.1) + actionpack (= 8.0.1) + activejob (= 8.0.1) + activerecord (= 8.0.1) + activesupport (= 8.0.1) marcel (~> 1.0) - activesupport (7.2.1) + activesupport (8.0.1) base64 + benchmark (>= 0.3) bigdecimal concurrent-ruby (~> 1.0, >= 1.3.1) connection_pool (>= 2.2.5) @@ -89,6 +89,7 @@ GEM 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) arbre (1.7.0) @@ -97,7 +98,8 @@ GEM ast (2.4.2) base64 (0.2.0) bcrypt (3.1.20) - bigdecimal (3.1.8) + benchmark (0.4.0) + bigdecimal (3.1.9) builder (3.3.0) cancancan (3.6.1) capybara (3.40.0) @@ -114,11 +116,11 @@ GEM octokit (>= 2.2.0) childprocess (5.1.0) logger (~> 1.5) - concurrent-ruby (1.3.4) - connection_pool (2.4.1) + concurrent-ruby (1.3.5) + connection_pool (2.5.0) crass (1.0.6) - csv (3.3.0) - cucumber (9.2.0) + csv (3.3.2) + cucumber (9.2.1) builder (~> 3.2) cucumber-ci-environment (> 9, < 11) cucumber-core (> 13, < 14) @@ -139,14 +141,14 @@ GEM bigdecimal cucumber-gherkin (27.0.0) cucumber-messages (>= 19.1.4, < 23) - cucumber-html-formatter (21.7.0) + cucumber-html-formatter (21.8.0) cucumber-messages (> 19, < 27) cucumber-messages (22.0.0) - cucumber-rails (3.0.0) + cucumber-rails (3.1.0) capybara (>= 3.11, < 4) cucumber (>= 5, < 10) - railties (>= 5.2, < 8) - cucumber-tag-expressions (6.1.0) + railties (>= 5.2, < 9) + cucumber-tag-expressions (6.1.1) cuprite (0.15.1) capybara (~> 3.0) ferrum (~> 0.15.0) @@ -154,7 +156,7 @@ GEM activerecord (>= 5.a) database_cleaner-core (~> 2.0.0) database_cleaner-core (2.0.1) - date (3.3.4) + date (3.4.1) devise (4.9.4) bcrypt (~> 3.0) orm_adapter (~> 0.1) @@ -171,20 +173,21 @@ GEM request_store (>= 1.0) ruby2_keywords drb (2.2.1) - erubi (1.13.0) - faraday (2.10.1) - faraday-net_http (>= 2.0, < 3.2) + erubi (1.13.1) + faraday (2.12.2) + faraday-net_http (>= 2.0, < 3.5) + json logger - faraday-net_http (3.1.1) - net-http + faraday-net_http (3.4.0) + net-http (>= 0.5.0) ferrum (0.15) addressable (~> 2.5) concurrent-ruby (~> 1.1) webrick (~> 1.7) websocket-driver (~> 0.7) - ffi (1.17.0) - ffi (1.17.0-arm64-darwin) - ffi (1.17.0-x86_64-linux-gnu) + ffi (1.17.1) + ffi (1.17.1-arm64-darwin) + ffi (1.17.1-x86_64-linux-gnu) formtastic (5.0.0) actionpack (>= 6.0.0) formtastic_i18n (0.7.0) @@ -193,9 +196,9 @@ GEM has_scope (0.8.2) actionpack (>= 5.2) activesupport (>= 5.2) - highline (3.1.0) + highline (3.1.2) reline - i18n (1.14.5) + i18n (1.14.7) concurrent-ruby (~> 1.0) i18n-spec (0.6.0) iso @@ -214,8 +217,9 @@ GEM has_scope (>= 0.6) railties (>= 6.0) responders (>= 2) - io-console (0.7.2) - irb (1.14.0) + io-console (0.8.0) + irb (1.15.1) + pp (>= 0.6.0) rdoc (>= 4.0.0) reline (>= 0.4.2) iso (0.4.0) @@ -224,7 +228,7 @@ GEM rails-dom-testing (>= 1, < 3) railties (>= 4.2.0) thor (>= 0.14, < 2.0) - json (2.7.2) + json (2.9.1) kaminari (1.2.2) activesupport (>= 4.1.0) kaminari-actionview (= 1.2.2) @@ -237,14 +241,15 @@ GEM activerecord kaminari-core (= 1.2.2) kaminari-core (1.2.2) - kramdown (2.4.0) - rexml - language_server-protocol (3.17.0.3) - launchy (3.0.1) + kramdown (2.5.1) + rexml (>= 3.3.9) + language_server-protocol (3.17.0.4) + launchy (3.1.0) addressable (~> 2.8) childprocess (~> 5.0) - logger (1.6.0) - loofah (2.22.0) + logger (~> 1.6) + logger (1.6.5) + loofah (2.24.0) crass (~> 1.0.2) nokogiri (>= 1.12.0) mail (2.8.1) @@ -255,80 +260,84 @@ GEM marcel (1.0.4) matrix (0.4.2) mini_mime (1.1.5) - mini_portile2 (2.8.7) - minitest (5.25.1) + mini_portile2 (2.8.8) + minitest (5.25.4) multi_test (1.1.0) - net-http (0.4.1) + net-http (0.6.0) uri - net-imap (0.4.14) + net-imap (0.5.5) date net-protocol net-pop (0.1.2) net-protocol net-protocol (0.2.2) timeout - net-smtp (0.5.0) + net-smtp (0.5.1) net-protocol netrc (0.11.0) - nio4r (2.7.3) - nokogiri (1.16.7) + nio4r (2.7.4) + nokogiri (1.18.2) mini_portile2 (~> 2.8.2) racc (~> 1.4) - nokogiri (1.16.7-arm64-darwin) + nokogiri (1.18.2-arm64-darwin) racc (~> 1.4) - nokogiri (1.16.7-x86_64-linux) + nokogiri (1.18.2-x86_64-linux-gnu) racc (~> 1.4) - octokit (9.1.0) + octokit (9.2.0) faraday (>= 1, < 3) sawyer (~> 0.9) orm_adapter (0.5.0) parallel (1.26.3) - parallel_tests (4.7.1) + parallel_tests (4.9.0) parallel - parser (3.3.4.2) + parser (3.3.7.0) ast (~> 2.4.1) racc - psych (5.1.2) + pp (0.6.2) + prettyprint + prettyprint (0.2.0) + psych (5.2.3) + date stringio public_suffix (6.0.1) - pundit (2.3.2) + pundit (2.4.0) activesupport (>= 3.0.0) racc (1.8.1) - rack (3.1.7) - rack-session (2.0.0) + rack (3.1.8) + rack-session (2.1.0) + base64 (>= 0.1.0) rack (>= 3.0.0) - rack-test (2.1.0) + rack-test (2.2.0) rack (>= 1.3) - rackup (2.1.0) + rackup (2.2.1) rack (>= 3) - webrick (~> 1.8) - rails (7.2.1) - actioncable (= 7.2.1) - actionmailbox (= 7.2.1) - actionmailer (= 7.2.1) - actionpack (= 7.2.1) - actiontext (= 7.2.1) - actionview (= 7.2.1) - activejob (= 7.2.1) - activemodel (= 7.2.1) - activerecord (= 7.2.1) - activestorage (= 7.2.1) - activesupport (= 7.2.1) + rails (8.0.1) + actioncable (= 8.0.1) + actionmailbox (= 8.0.1) + actionmailer (= 8.0.1) + actionpack (= 8.0.1) + actiontext (= 8.0.1) + actionview (= 8.0.1) + activejob (= 8.0.1) + activemodel (= 8.0.1) + activerecord (= 8.0.1) + activestorage (= 8.0.1) + activesupport (= 8.0.1) bundler (>= 1.15.0) - railties (= 7.2.1) + railties (= 8.0.1) rails-dom-testing (2.2.0) activesupport (>= 5.0.0) minitest nokogiri (>= 1.6) - rails-html-sanitizer (1.6.0) + rails-html-sanitizer (1.6.2) loofah (~> 2.21) - nokogiri (~> 1.14) - rails-i18n (7.0.9) + 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) + rails-i18n (8.0.1) i18n (>= 0.7, < 2) - railties (>= 6.0.0, < 8) - railties (7.2.1) - actionpack (= 7.2.1) - activesupport (= 7.2.1) + railties (>= 8.0.0, < 9) + railties (8.0.1) + actionpack (= 8.0.1) + activesupport (= 8.0.1) irb (~> 1.13) rackup (>= 1.0.0) rake (>= 12.2) @@ -340,56 +349,54 @@ GEM activerecord (>= 6.1.5) activesupport (>= 6.1.5) i18n - rdoc (6.7.0) + rdoc (6.11.0) psych (>= 4.0.0) - regexp_parser (2.9.2) - reline (0.5.9) + regexp_parser (2.10.0) + reline (0.6.0) io-console (~> 0.5) request_store (1.7.0) rack (>= 1.4) responders (3.1.1) actionpack (>= 5.2) railties (>= 5.2) - rexml (3.3.6) - strscan - rspec-core (3.13.0) + rexml (3.4.0) + rspec-core (3.13.2) rspec-support (~> 3.13.0) - rspec-expectations (3.13.2) + rspec-expectations (3.13.3) diff-lcs (>= 1.2.0, < 2.0) rspec-support (~> 3.13.0) - rspec-mocks (3.13.1) + rspec-mocks (3.13.2) diff-lcs (>= 1.2.0, < 2.0) rspec-support (~> 3.13.0) - rspec-rails (6.1.4) - actionpack (>= 6.1) - activesupport (>= 6.1) - railties (>= 6.1) + rspec-rails (7.1.0) + 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-support (3.13.1) - rubocop (1.65.1) + rspec-support (3.13.2) + rubocop (1.71.0) json (~> 2.3) language_server-protocol (>= 3.17.0) parallel (~> 1.10) parser (>= 3.3.0.2) rainbow (>= 2.2.2, < 4.0) - regexp_parser (>= 2.4, < 3.0) - rexml (>= 3.2.5, < 4.0) - rubocop-ast (>= 1.31.1, < 2.0) + regexp_parser (>= 2.9.3, < 3.0) + rubocop-ast (>= 1.36.2, < 2.0) ruby-progressbar (~> 1.7) - unicode-display_width (>= 2.4.0, < 3.0) - rubocop-ast (1.32.1) + unicode-display_width (>= 2.4.0, < 4.0) + rubocop-ast (1.37.0) parser (>= 3.3.1.0) rubocop-packaging (0.5.2) rubocop (>= 1.33, < 2.0) - rubocop-rails (2.25.1) + rubocop-rails (2.29.1) activesupport (>= 4.2.0) rack (>= 1.1) - rubocop (>= 1.33.0, < 2.0) + rubocop (>= 1.52.0, < 2.0) rubocop-ast (>= 1.31.1, < 2.0) - rubocop-rspec (3.0.4) + rubocop-rspec (3.4.0) rubocop (~> 1.61) ruby-progressbar (1.13.0) ruby2_keywords (0.0.5) @@ -404,7 +411,7 @@ GEM sawyer (0.9.2) addressable (>= 2.3.5) faraday (>= 0.17.3, < 3) - securerandom (0.3.1) + securerandom (0.4.1) simplecov (0.22.0) docile (~> 1.1) simplecov-html (~> 0.11) @@ -412,7 +419,7 @@ GEM simplecov-cobertura (2.1.0) rexml simplecov (~> 0.19) - simplecov-html (0.12.3) + simplecov-html (0.13.1) simplecov_json_formatter (0.1.4) sprockets (4.2.1) concurrent-ruby (~> 1.0) @@ -421,34 +428,34 @@ GEM actionpack (>= 6.1) activesupport (>= 6.1) sprockets (>= 3.0.0) - sqlite3 (2.0.4) + sqlite3 (2.5.0) mini_portile2 (~> 2.8.0) - sqlite3 (2.0.4-arm64-darwin) - sqlite3 (2.0.4-x86_64-linux-gnu) - stringio (3.1.1) - strscan (3.1.0) - sys-uname (1.3.0) + sqlite3 (2.5.0-arm64-darwin) + sqlite3 (2.5.0-x86_64-linux-gnu) + stringio (3.1.2) + sys-uname (1.3.1) ffi (~> 1.1) terminal-table (3.0.2) unicode-display_width (>= 1.1.1, < 3) - thor (1.3.1) - tilt (2.4.0) - timeout (0.4.1) + thor (1.3.2) + tilt (2.6.0) + timeout (0.4.3) tzinfo (2.0.6) concurrent-ruby (~> 1.0) - unicode-display_width (2.5.0) - uri (0.13.0) - useragent (0.16.10) + unicode-display_width (2.6.0) + uri (1.0.2) + useragent (0.16.11) warden (1.2.9) rack (>= 2.0.9) - webrick (1.8.1) - websocket-driver (0.7.6) + 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) - yard (0.9.36) - zeitwerk (2.6.17) + yard (0.9.37) + zeitwerk (2.7.1) PLATFORMS arm64-darwin @@ -474,7 +481,7 @@ DEPENDENCIES octokit parallel_tests pundit - rails (~> 7.2.0) + rails (~> 8.0.0) rails-i18n rake ransack (>= 4.2.0) @@ -492,4 +499,4 @@ DEPENDENCIES yard BUNDLED WITH - 2.5.17 + 2.6.3 diff --git a/docs/0-installation.md b/docs/0-installation.md index 3140a72fadb..5df046f8f6a 100644 --- a/docs/0-installation.md +++ b/docs/0-installation.md @@ -136,6 +136,17 @@ You can **opt-in to using Webpacker for ActiveAdmin assets** as well by updating rails g active_admin:webpacker ``` +## vite_rails + +To use Active Admin with Vite, make sure the `@activeadmin/activeadmin` dependency is added to your `package.json` using e.g. Yarn: + +```sh +yarn add @activeadmin/activeadmin@^3 +``` + +Then follow the steps outlined in this discussion comment: https://github.com/activeadmin/activeadmin/discussions/7947#discussioncomment-5867902 + + [CHANGELOG]: https://github.com/activeadmin/activeadmin/blob/master/CHANGELOG.md [dashboard.rb]: https://github.com/activeadmin/activeadmin/blob/master/lib/generators/active_admin/install/templates/dashboard.rb [active_admin.rb]: https://github.com/activeadmin/activeadmin/blob/master/lib/generators/active_admin/install/templates/active_admin.rb.erb diff --git a/docs/14-gotchas.md b/docs/14-gotchas.md index 071880f87c3..dc989714edd 100644 --- a/docs/14-gotchas.md +++ b/docs/14-gotchas.md @@ -76,6 +76,14 @@ one, you can do one of these things: * You can remove all `require_tree` commands from your root level css files, where the `active_admin.scss` is in the tree. +## Deprecation warnings with modern sass build tools + +Active Admin v3's SCSS is written for [sassc](https://rubygems.org/gems/sassc), which follows an older version of the SCSS specification. If you use a Node-based build system like esbuild, webpacker, or vite, you may encounter deprecation warnings for color functions like this when compiling assets: + +> DEPRECATION WARNING: lighten() is deprecated + +As a quick workaround, you may be able to silence these warnings by passing the `quietDeps` scss compilation option in your build system. With vite, follow these instructions: (note this requires installing the `sass-embedded` dependency). + ## Conflicts ### With gems that provides a `search` class method on a model diff --git a/docs/Gemfile.lock b/docs/Gemfile.lock index 511371fc8c6..6cf18c8a552 100644 --- a/docs/Gemfile.lock +++ b/docs/Gemfile.lock @@ -1,57 +1,63 @@ GEM remote: https://rubygems.org/ specs: - activesupport (7.1.0) + activesupport (8.0.1) base64 + benchmark (>= 0.3) bigdecimal - concurrent-ruby (~> 1.0, >= 1.0.2) + concurrent-ruby (~> 1.0, >= 1.3.1) connection_pool (>= 2.2.5) drb i18n (>= 1.6, < 2) + logger (>= 1.4.2) minitest (>= 5.1) - mutex_m - tzinfo (~> 2.0) - addressable (2.8.5) - public_suffix (>= 2.0.2, < 6.0) - base64 (0.1.1) - bigdecimal (3.1.4) + securerandom (>= 0.3) + tzinfo (~> 2.0, >= 2.0.5) + uri (>= 0.13.1) + addressable (2.8.7) + public_suffix (>= 2.0.2, < 7.0) + base64 (0.2.0) + benchmark (0.4.0) + bigdecimal (3.1.9) coffee-script (2.4.1) coffee-script-source execjs - coffee-script-source (1.11.1) + coffee-script-source (1.12.2) colorator (1.1.0) - commonmarker (0.23.10) - concurrent-ruby (1.2.2) - connection_pool (2.4.1) - dnsruby (1.70.0) + commonmarker (0.23.11) + concurrent-ruby (1.3.5) + connection_pool (2.5.0) + csv (3.3.2) + dnsruby (1.72.3) + base64 (~> 0.2.0) simpleidn (~> 0.2.1) - drb (2.1.1) - ruby2_keywords + drb (2.2.1) em-websocket (0.5.3) eventmachine (>= 0.12.9) http_parser.rb (~> 0) ethon (0.16.0) ffi (>= 1.15.0) eventmachine (1.2.7) - execjs (2.9.1) - faraday (2.7.11) - base64 - faraday-net_http (>= 2.0, < 3.1) - ruby2_keywords (>= 0.0.4) - faraday-net_http (3.0.2) - ffi (1.16.3) + execjs (2.10.0) + faraday (2.12.2) + faraday-net_http (>= 2.0, < 3.5) + json + logger + faraday-net_http (3.4.0) + net-http (>= 0.5.0) + ffi (1.17.1) forwardable-extended (2.6.0) - gemoji (3.0.1) - github-pages (228) - github-pages-health-check (= 1.17.9) - jekyll (= 3.9.3) - jekyll-avatar (= 0.7.0) - jekyll-coffeescript (= 1.1.1) - jekyll-commonmark-ghpages (= 0.4.0) - jekyll-default-layout (= 0.1.4) - jekyll-feed (= 0.15.1) + gemoji (4.1.0) + github-pages (232) + github-pages-health-check (= 1.18.2) + jekyll (= 3.10.0) + jekyll-avatar (= 0.8.0) + jekyll-coffeescript (= 1.2.2) + jekyll-commonmark-ghpages (= 0.5.1) + jekyll-default-layout (= 0.1.5) + jekyll-feed (= 0.17.0) jekyll-gist (= 1.5.0) - jekyll-github-metadata (= 2.13.0) + jekyll-github-metadata (= 2.16.1) jekyll-include-cache (= 0.2.1) jekyll-mentions (= 1.6.0) jekyll-optional-front-matter (= 0.3.2) @@ -78,30 +84,32 @@ GEM jekyll-theme-tactile (= 0.2.0) jekyll-theme-time-machine (= 0.2.0) jekyll-titles-from-headings (= 0.5.3) - jemoji (= 0.12.0) - kramdown (= 2.3.2) + jemoji (= 0.13.0) + kramdown (= 2.4.0) kramdown-parser-gfm (= 1.1.0) liquid (= 4.0.4) mercenary (~> 0.3) minima (= 2.5.1) - nokogiri (>= 1.13.6, < 2.0) - rouge (= 3.26.0) + nokogiri (>= 1.16.2, < 2.0) + rouge (= 3.30.0) terminal-table (~> 1.4) - github-pages-health-check (1.17.9) + webrick (~> 1.8) + github-pages-health-check (1.18.2) addressable (~> 2.3) dnsruby (~> 1.60) - octokit (~> 4.0) - public_suffix (>= 3.0, < 5.0) + octokit (>= 4, < 8) + public_suffix (>= 3.0, < 6.0) typhoeus (~> 1.3) html-pipeline (2.14.3) activesupport (>= 2) nokogiri (>= 1.4) http_parser.rb (0.8.0) - i18n (1.14.1) + i18n (1.14.7) concurrent-ruby (~> 1.0) - jekyll (3.9.3) + jekyll (3.10.0) addressable (~> 2.4) colorator (~> 1.0) + csv (~> 3.0) em-websocket (~> 0.5) i18n (>= 0.7, < 2) jekyll-sass-converter (~> 1.0) @@ -112,27 +120,28 @@ GEM pathutil (~> 0.9) rouge (>= 1.7, < 4) safe_yaml (~> 1.0) - jekyll-avatar (0.7.0) + webrick (>= 1.0) + jekyll-avatar (0.8.0) jekyll (>= 3.0, < 5.0) - jekyll-coffeescript (1.1.1) + jekyll-coffeescript (1.2.2) coffee-script (~> 2.2) - coffee-script-source (~> 1.11.1) + coffee-script-source (~> 1.12) jekyll-commonmark (1.4.0) commonmarker (~> 0.22) - jekyll-commonmark-ghpages (0.4.0) - commonmarker (~> 0.23.7) - jekyll (~> 3.9.0) + jekyll-commonmark-ghpages (0.5.1) + commonmarker (>= 0.23.7, < 1.1.0) + jekyll (>= 3.9, < 4.0) jekyll-commonmark (~> 1.4.0) rouge (>= 2.0, < 5.0) - jekyll-default-layout (0.1.4) - jekyll (~> 3.0) - jekyll-feed (0.15.1) + jekyll-default-layout (0.1.5) + jekyll (>= 3.0, < 5.0) + jekyll-feed (0.17.0) jekyll (>= 3.7, < 5.0) jekyll-gist (1.5.0) octokit (~> 4.2) - jekyll-github-metadata (2.13.0) + jekyll-github-metadata (2.16.1) jekyll (>= 3.4, < 5.0) - octokit (~> 4.0, != 4.4.0) + octokit (>= 4, < 7, != 4.4.0) jekyll-include-cache (0.2.1) jekyll (>= 3.7, < 5.0) jekyll-mentions (1.6.0) @@ -203,27 +212,30 @@ GEM jekyll (>= 3.3, < 5.0) jekyll-watch (2.2.1) listen (~> 3.0) - jemoji (0.12.0) - gemoji (~> 3.0) + jemoji (0.13.0) + gemoji (>= 3, < 5) html-pipeline (~> 2.2) jekyll (>= 3.0, < 5.0) - kramdown (2.3.2) + json (2.9.1) + kramdown (2.4.0) rexml kramdown-parser-gfm (1.1.0) kramdown (~> 2.0) liquid (4.0.4) - listen (3.8.0) + listen (3.9.0) rb-fsevent (~> 0.10, >= 0.10.3) rb-inotify (~> 0.9, >= 0.9.10) + logger (1.6.5) mercenary (0.3.6) - mini_portile2 (2.8.4) + mini_portile2 (2.8.8) minima (2.5.1) jekyll (>= 3.5, < 5.0) jekyll-feed (~> 0.9) jekyll-seo-tag (~> 2.1) - minitest (5.20.0) - mutex_m (0.1.2) - nokogiri (1.15.4) + minitest (5.25.4) + net-http (0.6.0) + uri + nokogiri (1.18.2) mini_portile2 (~> 2.8.2) racc (~> 1.4) octokit (4.25.1) @@ -231,15 +243,14 @@ GEM sawyer (~> 0.9) pathutil (0.16.2) forwardable-extended (~> 2.6) - public_suffix (4.0.7) - racc (1.7.1) + public_suffix (5.1.1) + racc (1.8.1) rb-fsevent (0.11.2) - rb-inotify (0.10.1) + rb-inotify (0.11.1) ffi (~> 1.0) - rexml (3.2.6) - rouge (3.26.0) - ruby2_keywords (0.0.5) - rubyzip (2.3.2) + rexml (3.4.0) + rouge (3.30.0) + rubyzip (2.4.1) safe_yaml (1.0.5) sass (3.7.4) sass-listen (~> 4.0.0) @@ -249,18 +260,17 @@ GEM sawyer (0.9.2) addressable (>= 2.3.5) faraday (>= 0.17.3, < 3) - simpleidn (0.2.1) - unf (~> 0.1.4) + securerandom (0.4.1) + simpleidn (0.2.3) terminal-table (1.8.0) unicode-display_width (~> 1.1, >= 1.1.1) - typhoeus (1.4.0) + typhoeus (1.4.1) ethon (>= 0.9.0) tzinfo (2.0.6) concurrent-ruby (~> 1.0) - unf (0.1.4) - unf_ext - unf_ext (0.0.8.2) unicode-display_width (1.8.0) + uri (1.0.2) + webrick (1.9.1) PLATFORMS ruby @@ -269,4 +279,4 @@ DEPENDENCIES github-pages BUNDLED WITH - 2.4.13 + 2.6.3 diff --git a/gemfiles/rails_61/Gemfile b/gemfiles/rails_61/Gemfile index b2231ba20f9..4e7f5b35248 100644 --- a/gemfiles/rails_61/Gemfile +++ b/gemfiles/rails_61/Gemfile @@ -16,6 +16,16 @@ group :development, :test do gem "sprockets-rails" gem "sassc-rails" + + gem "concurrent-ruby", "1.3.4" # Ref: rails/rails#54260 + + # FIXME: relax these dependencies when Ruby 3.0 support will be dropped + gem "net-imap", "~> 0.4.18" + gem "nokogiri", "~> 1.17.2" + gem "securerandom", "~> 0.3.2" + + # FIXME: relax this dependency when Ruby 3.1 support will be dropped + gem "zeitwerk", "~> 2.6.18" end group :test do diff --git a/gemfiles/rails_61/Gemfile.lock b/gemfiles/rails_61/Gemfile.lock index 43e663103e9..34233ea7002 100644 --- a/gemfiles/rails_61/Gemfile.lock +++ b/gemfiles/rails_61/Gemfile.lock @@ -1,7 +1,7 @@ PATH remote: ../.. specs: - activeadmin (3.2.5) + activeadmin (3.3.0) arbre (~> 1.2, >= 1.2.1) csv formtastic (>= 3.1) @@ -15,69 +15,69 @@ PATH GEM remote: https://rubygems.org/ specs: - actioncable (6.1.7.8) - actionpack (= 6.1.7.8) - activesupport (= 6.1.7.8) + actioncable (6.1.7.10) + actionpack (= 6.1.7.10) + activesupport (= 6.1.7.10) nio4r (~> 2.0) websocket-driver (>= 0.6.1) - actionmailbox (6.1.7.8) - actionpack (= 6.1.7.8) - activejob (= 6.1.7.8) - activerecord (= 6.1.7.8) - activestorage (= 6.1.7.8) - activesupport (= 6.1.7.8) + actionmailbox (6.1.7.10) + actionpack (= 6.1.7.10) + activejob (= 6.1.7.10) + activerecord (= 6.1.7.10) + activestorage (= 6.1.7.10) + activesupport (= 6.1.7.10) mail (>= 2.7.1) - actionmailer (6.1.7.8) - actionpack (= 6.1.7.8) - actionview (= 6.1.7.8) - activejob (= 6.1.7.8) - activesupport (= 6.1.7.8) + actionmailer (6.1.7.10) + actionpack (= 6.1.7.10) + actionview (= 6.1.7.10) + activejob (= 6.1.7.10) + activesupport (= 6.1.7.10) mail (~> 2.5, >= 2.5.4) rails-dom-testing (~> 2.0) - actionpack (6.1.7.8) - actionview (= 6.1.7.8) - activesupport (= 6.1.7.8) + actionpack (6.1.7.10) + actionview (= 6.1.7.10) + activesupport (= 6.1.7.10) rack (~> 2.0, >= 2.0.9) rack-test (>= 0.6.3) rails-dom-testing (~> 2.0) rails-html-sanitizer (~> 1.0, >= 1.2.0) - actiontext (6.1.7.8) - actionpack (= 6.1.7.8) - activerecord (= 6.1.7.8) - activestorage (= 6.1.7.8) - activesupport (= 6.1.7.8) + actiontext (6.1.7.10) + actionpack (= 6.1.7.10) + activerecord (= 6.1.7.10) + activestorage (= 6.1.7.10) + activesupport (= 6.1.7.10) nokogiri (>= 1.8.5) - actionview (6.1.7.8) - activesupport (= 6.1.7.8) + actionview (6.1.7.10) + activesupport (= 6.1.7.10) builder (~> 3.1) erubi (~> 1.4) rails-dom-testing (~> 2.0) rails-html-sanitizer (~> 1.1, >= 1.2.0) - activejob (6.1.7.8) - activesupport (= 6.1.7.8) + activejob (6.1.7.10) + activesupport (= 6.1.7.10) globalid (>= 0.3.6) - activemodel (6.1.7.8) - activesupport (= 6.1.7.8) - activemodel-serializers-xml (1.0.2) - activemodel (> 5.x) - activesupport (> 5.x) + activemodel (6.1.7.10) + activesupport (= 6.1.7.10) + activemodel-serializers-xml (1.0.3) + activemodel (>= 5.0.0.a) + activesupport (>= 5.0.0.a) builder (~> 3.1) - activerecord (6.1.7.8) - activemodel (= 6.1.7.8) - activesupport (= 6.1.7.8) + activerecord (6.1.7.10) + activemodel (= 6.1.7.10) + activesupport (= 6.1.7.10) activerecord-jdbc-adapter (61.3-java) activerecord (~> 6.1.0) activerecord-jdbcsqlite3-adapter (61.3-java) activerecord-jdbc-adapter (= 61.3) jdbc-sqlite3 (~> 3.8) - activestorage (6.1.7.8) - actionpack (= 6.1.7.8) - activejob (= 6.1.7.8) - activerecord (= 6.1.7.8) - activesupport (= 6.1.7.8) + activestorage (6.1.7.10) + actionpack (= 6.1.7.10) + activejob (= 6.1.7.10) + activerecord (= 6.1.7.10) + activesupport (= 6.1.7.10) marcel (~> 1.0) mini_mime (>= 1.1.0) - activesupport (6.1.7.8) + activesupport (6.1.7.10) concurrent-ruby (~> 1.0, >= 1.0.2) i18n (>= 1.6, < 2) minitest (>= 5.1) @@ -89,10 +89,11 @@ GEM activesupport (>= 3.0.0) ruby2_keywords (>= 0.0.2) ast (2.4.2) + base64 (0.2.0) bcrypt (3.1.20) bcrypt (3.1.20-java) - bigdecimal (3.1.8) - bigdecimal (3.1.8-java) + bigdecimal (3.1.9) + bigdecimal (3.1.9-java) builder (3.3.0) cancancan (3.6.1) capybara (3.40.0) @@ -108,8 +109,8 @@ GEM logger (~> 1.5) concurrent-ruby (1.3.4) crass (1.0.6) - csv (3.3.0) - cucumber (9.2.0) + csv (3.3.2) + cucumber (9.2.1) builder (~> 3.2) cucumber-ci-environment (> 9, < 11) cucumber-core (> 13, < 14) @@ -130,14 +131,14 @@ GEM bigdecimal cucumber-gherkin (27.0.0) cucumber-messages (>= 19.1.4, < 23) - cucumber-html-formatter (21.7.0) + cucumber-html-formatter (21.8.0) cucumber-messages (> 19, < 27) cucumber-messages (22.0.0) - cucumber-rails (3.0.0) + cucumber-rails (3.1.0) capybara (>= 3.11, < 4) cucumber (>= 5, < 10) - railties (>= 5.2, < 8) - cucumber-tag-expressions (6.1.0) + railties (>= 5.2, < 9) + cucumber-tag-expressions (6.1.1) cuprite (0.15.1) capybara (~> 3.0) ferrum (~> 0.15.0) @@ -145,8 +146,8 @@ GEM activerecord (>= 5.a) database_cleaner-core (~> 2.0.0) database_cleaner-core (2.0.1) - date (3.3.4) - date (3.3.4-java) + date (3.4.1) + date (3.4.1-java) devise (4.9.4) bcrypt (~> 3.0) orm_adapter (~> 0.1) @@ -162,16 +163,16 @@ GEM activesupport (>= 5.0) request_store (>= 1.0) ruby2_keywords - erubi (1.13.0) + erubi (1.13.1) ferrum (0.15) addressable (~> 2.5) concurrent-ruby (~> 1.1) webrick (~> 1.7) websocket-driver (~> 0.7) - ffi (1.17.0) - ffi (1.17.0-arm64-darwin) - ffi (1.17.0-java) - ffi (1.17.0-x86_64-linux-gnu) + ffi (1.17.1) + ffi (1.17.1-arm64-darwin) + ffi (1.17.1-java) + ffi (1.17.1-x86_64-linux-gnu) formtastic (5.0.0) actionpack (>= 6.0.0) formtastic_i18n (0.7.0) @@ -180,9 +181,9 @@ GEM has_scope (0.8.2) actionpack (>= 5.2) activesupport (>= 5.2) - highline (3.1.0) + highline (3.1.2) reline - i18n (1.14.5) + i18n (1.14.7) concurrent-ruby (~> 1.0) i18n-spec (0.6.0) iso @@ -201,16 +202,16 @@ GEM has_scope (>= 0.6) railties (>= 6.0) responders (>= 2) - io-console (0.7.2) - io-console (0.7.2-java) + io-console (0.8.0) + io-console (0.8.0-java) iso (0.4.0) i18n - jdbc-sqlite3 (3.42.0.0) + jdbc-sqlite3 (3.46.1.1) jquery-rails (4.6.0) rails-dom-testing (>= 1, < 3) railties (>= 4.2.0) thor (>= 0.14, < 2.0) - jruby-openssl (0.15.0-java) + jruby-openssl (0.15.3-java) kaminari (1.2.2) activesupport (>= 4.1.0) kaminari-actionview (= 1.2.2) @@ -223,11 +224,12 @@ GEM activerecord kaminari-core (= 1.2.2) kaminari-core (1.2.2) - launchy (3.0.1) + launchy (3.1.0) addressable (~> 2.8) childprocess (~> 5.0) - logger (1.6.0) - loofah (2.22.0) + logger (~> 1.6) + logger (1.6.5) + loofah (2.24.0) crass (~> 1.0.2) nokogiri (>= 1.12.0) mail (2.8.1) @@ -239,72 +241,72 @@ GEM matrix (0.4.2) method_source (1.1.0) mini_mime (1.1.5) - mini_portile2 (2.8.7) - minitest (5.25.1) + mini_portile2 (2.8.8) + minitest (5.25.4) multi_test (1.1.0) - net-imap (0.4.14) + net-imap (0.4.18) date net-protocol net-pop (0.1.2) net-protocol net-protocol (0.2.2) timeout - net-smtp (0.5.0) + net-smtp (0.5.1) net-protocol - nio4r (2.7.3) - nio4r (2.7.3-java) - nokogiri (1.16.7) + nio4r (2.7.4) + nio4r (2.7.4-java) + nokogiri (1.17.2) mini_portile2 (~> 2.8.2) racc (~> 1.4) - nokogiri (1.16.7-arm64-darwin) + nokogiri (1.17.2-arm64-darwin) racc (~> 1.4) - nokogiri (1.16.7-java) + nokogiri (1.17.2-java) racc (~> 1.4) - nokogiri (1.16.7-x86_64-linux) + nokogiri (1.17.2-x86_64-linux) racc (~> 1.4) orm_adapter (0.5.0) parallel (1.26.3) - parallel_tests (4.7.1) + parallel_tests (4.9.0) parallel - parser (3.3.4.2) + parser (3.3.7.0) ast (~> 2.4.1) racc public_suffix (6.0.1) - pundit (2.3.2) + pundit (2.4.0) activesupport (>= 3.0.0) racc (1.8.1) racc (1.8.1-java) - rack (2.2.9) - rack-test (2.1.0) + rack (2.2.10) + rack-test (2.2.0) rack (>= 1.3) - rails (6.1.7.8) - actioncable (= 6.1.7.8) - actionmailbox (= 6.1.7.8) - actionmailer (= 6.1.7.8) - actionpack (= 6.1.7.8) - actiontext (= 6.1.7.8) - actionview (= 6.1.7.8) - activejob (= 6.1.7.8) - activemodel (= 6.1.7.8) - activerecord (= 6.1.7.8) - activestorage (= 6.1.7.8) - activesupport (= 6.1.7.8) + rails (6.1.7.10) + actioncable (= 6.1.7.10) + actionmailbox (= 6.1.7.10) + actionmailer (= 6.1.7.10) + actionpack (= 6.1.7.10) + actiontext (= 6.1.7.10) + actionview (= 6.1.7.10) + activejob (= 6.1.7.10) + activemodel (= 6.1.7.10) + activerecord (= 6.1.7.10) + activestorage (= 6.1.7.10) + activesupport (= 6.1.7.10) bundler (>= 1.15.0) - railties (= 6.1.7.8) + railties (= 6.1.7.10) sprockets-rails (>= 2.0.0) rails-dom-testing (2.2.0) activesupport (>= 5.0.0) minitest nokogiri (>= 1.6) - rails-html-sanitizer (1.6.0) + rails-html-sanitizer (1.6.2) loofah (~> 2.21) - nokogiri (~> 1.14) - rails-i18n (7.0.9) + 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) + rails-i18n (7.0.10) i18n (>= 0.7, < 2) railties (>= 6.0.0, < 8) - railties (6.1.7.8) - actionpack (= 6.1.7.8) - activesupport (= 6.1.7.8) + railties (6.1.7.10) + actionpack (= 6.1.7.10) + activesupport (= 6.1.7.10) method_source rake (>= 12.2) thor (~> 1.0) @@ -314,25 +316,24 @@ GEM activerecord (>= 6.1.5) activesupport (>= 6.1.5) i18n - regexp_parser (2.9.2) - reline (0.5.9) + regexp_parser (2.10.0) + reline (0.6.0) io-console (~> 0.5) request_store (1.7.0) rack (>= 1.4) responders (3.1.1) actionpack (>= 5.2) railties (>= 5.2) - rexml (3.3.6) - strscan - rspec-core (3.13.0) + rexml (3.4.0) + rspec-core (3.13.2) rspec-support (~> 3.13.0) - rspec-expectations (3.13.2) + rspec-expectations (3.13.3) diff-lcs (>= 1.2.0, < 2.0) rspec-support (~> 3.13.0) - rspec-mocks (3.13.1) + rspec-mocks (3.13.2) diff-lcs (>= 1.2.0, < 2.0) rspec-support (~> 3.13.0) - rspec-rails (6.1.4) + rspec-rails (6.1.5) actionpack (>= 6.1) activesupport (>= 6.1) railties (>= 6.1) @@ -340,7 +341,7 @@ GEM rspec-expectations (~> 3.13) rspec-mocks (~> 3.13) rspec-support (~> 3.13) - rspec-support (3.13.1) + rspec-support (3.13.2) ruby2_keywords (0.0.5) sassc (2.4.0) ffi (~> 1.9) @@ -350,6 +351,7 @@ GEM sprockets (> 3.0) sprockets-rails tilt + securerandom (0.3.2) simplecov (0.22.0) docile (~> 1.1) simplecov-html (~> 0.11) @@ -357,7 +359,7 @@ GEM simplecov-cobertura (2.1.0) rexml simplecov (~> 0.19) - simplecov-html (0.12.3) + simplecov-html (0.13.1) simplecov_json_formatter (0.1.4) sprockets (4.2.1) concurrent-ruby (~> 1.0) @@ -370,29 +372,29 @@ GEM mini_portile2 (~> 2.8.0) sqlite3 (1.7.3-arm64-darwin) sqlite3 (1.7.3-x86_64-linux) - strscan (3.1.0) - strscan (3.1.0-java) - sys-uname (1.3.0) + sys-uname (1.3.1) ffi (~> 1.1) terminal-table (3.0.2) unicode-display_width (>= 1.1.1, < 3) - thor (1.3.1) - tilt (2.4.0) - timeout (0.4.1) + thor (1.3.2) + tilt (2.6.0) + timeout (0.4.3) tzinfo (2.0.6) concurrent-ruby (~> 1.0) - unicode-display_width (2.5.0) + unicode-display_width (2.6.0) warden (1.2.9) rack (>= 2.0.9) - webrick (1.8.1) - websocket-driver (0.7.6) + webrick (1.9.1) + websocket-driver (0.7.7) + base64 websocket-extensions (>= 0.1.0) - websocket-driver (0.7.6-java) + websocket-driver (0.7.7-java) + base64 websocket-extensions (>= 0.1.0) websocket-extensions (0.1.5) xpath (3.2.0) nokogiri (~> 1.8) - zeitwerk (2.6.17) + zeitwerk (2.6.18) PLATFORMS arm64-darwin @@ -405,6 +407,7 @@ DEPENDENCIES activerecord-jdbcsqlite3-adapter cancancan capybara + concurrent-ruby (= 1.3.4) cucumber cucumber-rails cuprite @@ -415,6 +418,8 @@ DEPENDENCIES i18n-tasks jruby-openssl launchy + net-imap (~> 0.4.18) + nokogiri (~> 1.17.2) parallel_tests pundit rails (~> 6.1.0) @@ -422,11 +427,13 @@ DEPENDENCIES rake rspec-rails sassc-rails + securerandom (~> 0.3.2) simplecov simplecov-cobertura sprockets-rails sqlite3 (~> 1.7) webrick + zeitwerk (~> 2.6.18) BUNDLED WITH - 2.5.17 + 2.5.23 diff --git a/gemfiles/rails_70/Gemfile b/gemfiles/rails_70/Gemfile index 44397ee639e..faa5d0fdfc9 100644 --- a/gemfiles/rails_70/Gemfile +++ b/gemfiles/rails_70/Gemfile @@ -14,6 +14,15 @@ group :development, :test do gem "sprockets-rails" gem "sassc-rails" + + gem "concurrent-ruby", "1.3.4" # Ref: rails/rails#54260 + + # FIXME: relax these dependencies when Ruby 3.0 support will be dropped + gem "nokogiri", "~> 1.17.2" + gem "securerandom", "~> 0.3.2" + + # FIXME: relax this dependency when Ruby 3.1 support will be dropped + gem "zeitwerk", "~> 2.6.18" end group :test do diff --git a/gemfiles/rails_70/Gemfile.lock b/gemfiles/rails_70/Gemfile.lock index 22a2821458e..14997e4fcb6 100644 --- a/gemfiles/rails_70/Gemfile.lock +++ b/gemfiles/rails_70/Gemfile.lock @@ -1,7 +1,7 @@ PATH remote: ../.. specs: - activeadmin (3.2.5) + activeadmin (3.3.0) arbre (~> 1.2, >= 1.2.1) csv formtastic (>= 3.1) @@ -15,71 +15,71 @@ PATH GEM remote: https://rubygems.org/ specs: - actioncable (7.0.8.4) - actionpack (= 7.0.8.4) - activesupport (= 7.0.8.4) + actioncable (7.0.8.7) + actionpack (= 7.0.8.7) + activesupport (= 7.0.8.7) nio4r (~> 2.0) websocket-driver (>= 0.6.1) - actionmailbox (7.0.8.4) - actionpack (= 7.0.8.4) - activejob (= 7.0.8.4) - activerecord (= 7.0.8.4) - activestorage (= 7.0.8.4) - activesupport (= 7.0.8.4) + actionmailbox (7.0.8.7) + actionpack (= 7.0.8.7) + activejob (= 7.0.8.7) + activerecord (= 7.0.8.7) + activestorage (= 7.0.8.7) + activesupport (= 7.0.8.7) mail (>= 2.7.1) net-imap net-pop net-smtp - actionmailer (7.0.8.4) - actionpack (= 7.0.8.4) - actionview (= 7.0.8.4) - activejob (= 7.0.8.4) - activesupport (= 7.0.8.4) + actionmailer (7.0.8.7) + actionpack (= 7.0.8.7) + actionview (= 7.0.8.7) + activejob (= 7.0.8.7) + activesupport (= 7.0.8.7) mail (~> 2.5, >= 2.5.4) net-imap net-pop net-smtp rails-dom-testing (~> 2.0) - actionpack (7.0.8.4) - actionview (= 7.0.8.4) - activesupport (= 7.0.8.4) + actionpack (7.0.8.7) + actionview (= 7.0.8.7) + activesupport (= 7.0.8.7) rack (~> 2.0, >= 2.2.4) rack-test (>= 0.6.3) rails-dom-testing (~> 2.0) rails-html-sanitizer (~> 1.0, >= 1.2.0) - actiontext (7.0.8.4) - actionpack (= 7.0.8.4) - activerecord (= 7.0.8.4) - activestorage (= 7.0.8.4) - activesupport (= 7.0.8.4) + actiontext (7.0.8.7) + actionpack (= 7.0.8.7) + activerecord (= 7.0.8.7) + activestorage (= 7.0.8.7) + activesupport (= 7.0.8.7) globalid (>= 0.6.0) nokogiri (>= 1.8.5) - actionview (7.0.8.4) - activesupport (= 7.0.8.4) + actionview (7.0.8.7) + activesupport (= 7.0.8.7) builder (~> 3.1) erubi (~> 1.4) rails-dom-testing (~> 2.0) rails-html-sanitizer (~> 1.1, >= 1.2.0) - activejob (7.0.8.4) - activesupport (= 7.0.8.4) + activejob (7.0.8.7) + activesupport (= 7.0.8.7) globalid (>= 0.3.6) - activemodel (7.0.8.4) - activesupport (= 7.0.8.4) - activemodel-serializers-xml (1.0.2) - activemodel (> 5.x) - activesupport (> 5.x) + activemodel (7.0.8.7) + activesupport (= 7.0.8.7) + activemodel-serializers-xml (1.0.3) + activemodel (>= 5.0.0.a) + activesupport (>= 5.0.0.a) builder (~> 3.1) - activerecord (7.0.8.4) - activemodel (= 7.0.8.4) - activesupport (= 7.0.8.4) - activestorage (7.0.8.4) - actionpack (= 7.0.8.4) - activejob (= 7.0.8.4) - activerecord (= 7.0.8.4) - activesupport (= 7.0.8.4) + activerecord (7.0.8.7) + activemodel (= 7.0.8.7) + activesupport (= 7.0.8.7) + activestorage (7.0.8.7) + actionpack (= 7.0.8.7) + activejob (= 7.0.8.7) + activerecord (= 7.0.8.7) + activesupport (= 7.0.8.7) marcel (~> 1.0) mini_mime (>= 1.1.0) - activesupport (7.0.8.4) + activesupport (7.0.8.7) concurrent-ruby (~> 1.0, >= 1.0.2) i18n (>= 1.6, < 2) minitest (>= 5.1) @@ -90,8 +90,9 @@ GEM activesupport (>= 3.0.0) ruby2_keywords (>= 0.0.2) ast (2.4.2) + base64 (0.2.0) bcrypt (3.1.20) - bigdecimal (3.1.8) + bigdecimal (3.1.9) builder (3.3.0) cancancan (3.6.1) capybara (3.40.0) @@ -107,8 +108,8 @@ GEM logger (~> 1.5) concurrent-ruby (1.3.4) crass (1.0.6) - csv (3.3.0) - cucumber (9.2.0) + csv (3.3.2) + cucumber (9.2.1) builder (~> 3.2) cucumber-ci-environment (> 9, < 11) cucumber-core (> 13, < 14) @@ -129,14 +130,14 @@ GEM bigdecimal cucumber-gherkin (27.0.0) cucumber-messages (>= 19.1.4, < 23) - cucumber-html-formatter (21.7.0) + cucumber-html-formatter (21.8.0) cucumber-messages (> 19, < 27) cucumber-messages (22.0.0) - cucumber-rails (3.0.0) + cucumber-rails (3.1.0) capybara (>= 3.11, < 4) cucumber (>= 5, < 10) - railties (>= 5.2, < 8) - cucumber-tag-expressions (6.1.0) + railties (>= 5.2, < 9) + cucumber-tag-expressions (6.1.1) cuprite (0.15.1) capybara (~> 3.0) ferrum (~> 0.15.0) @@ -144,7 +145,7 @@ GEM activerecord (>= 5.a) database_cleaner-core (~> 2.0.0) database_cleaner-core (2.0.1) - date (3.3.4) + date (3.4.1) devise (4.9.4) bcrypt (~> 3.0) orm_adapter (~> 0.1) @@ -160,15 +161,15 @@ GEM activesupport (>= 5.0) request_store (>= 1.0) ruby2_keywords - erubi (1.13.0) + erubi (1.13.1) ferrum (0.15) addressable (~> 2.5) concurrent-ruby (~> 1.1) webrick (~> 1.7) websocket-driver (~> 0.7) - ffi (1.17.0) - ffi (1.17.0-arm64-darwin) - ffi (1.17.0-x86_64-linux-gnu) + ffi (1.17.1) + ffi (1.17.1-arm64-darwin) + ffi (1.17.1-x86_64-linux-gnu) formtastic (5.0.0) actionpack (>= 6.0.0) formtastic_i18n (0.7.0) @@ -177,9 +178,9 @@ GEM has_scope (0.8.2) actionpack (>= 5.2) activesupport (>= 5.2) - highline (3.1.0) + highline (3.1.2) reline - i18n (1.14.5) + i18n (1.14.7) concurrent-ruby (~> 1.0) i18n-spec (0.6.0) iso @@ -198,7 +199,7 @@ GEM has_scope (>= 0.6) railties (>= 6.0) responders (>= 2) - io-console (0.7.2) + io-console (0.8.0) iso (0.4.0) i18n jquery-rails (4.6.0) @@ -217,11 +218,12 @@ GEM activerecord kaminari-core (= 1.2.2) kaminari-core (1.2.2) - launchy (3.0.1) + launchy (3.1.0) addressable (~> 2.8) childprocess (~> 5.0) - logger (1.6.0) - loofah (2.22.0) + logger (~> 1.6) + logger (1.6.5) + loofah (2.24.0) crass (~> 1.0.2) nokogiri (>= 1.12.0) mail (2.8.1) @@ -233,10 +235,10 @@ GEM matrix (0.4.2) method_source (1.1.0) mini_mime (1.1.5) - mini_portile2 (2.8.7) - minitest (5.25.1) + mini_portile2 (2.8.8) + minitest (5.25.4) multi_test (1.1.0) - net-imap (0.4.14) + net-imap (0.5.5) date net-protocol net-pop (0.1.2) @@ -245,55 +247,55 @@ GEM timeout net-smtp (0.5.0) net-protocol - nio4r (2.7.3) - nokogiri (1.16.7) + nio4r (2.7.4) + nokogiri (1.17.2) mini_portile2 (~> 2.8.2) racc (~> 1.4) - nokogiri (1.16.7-arm64-darwin) + nokogiri (1.17.2-arm64-darwin) racc (~> 1.4) - nokogiri (1.16.7-x86_64-linux) + nokogiri (1.17.2-x86_64-linux) racc (~> 1.4) orm_adapter (0.5.0) parallel (1.26.3) - parallel_tests (4.7.1) + parallel_tests (4.9.0) parallel - parser (3.3.4.2) + parser (3.3.7.0) ast (~> 2.4.1) racc public_suffix (6.0.1) - pundit (2.3.2) + pundit (2.4.0) activesupport (>= 3.0.0) racc (1.8.1) - rack (2.2.9) - rack-test (2.1.0) + rack (2.2.10) + rack-test (2.2.0) rack (>= 1.3) - rails (7.0.8.4) - actioncable (= 7.0.8.4) - actionmailbox (= 7.0.8.4) - actionmailer (= 7.0.8.4) - actionpack (= 7.0.8.4) - actiontext (= 7.0.8.4) - actionview (= 7.0.8.4) - activejob (= 7.0.8.4) - activemodel (= 7.0.8.4) - activerecord (= 7.0.8.4) - activestorage (= 7.0.8.4) - activesupport (= 7.0.8.4) + rails (7.0.8.7) + actioncable (= 7.0.8.7) + actionmailbox (= 7.0.8.7) + actionmailer (= 7.0.8.7) + actionpack (= 7.0.8.7) + actiontext (= 7.0.8.7) + actionview (= 7.0.8.7) + activejob (= 7.0.8.7) + activemodel (= 7.0.8.7) + activerecord (= 7.0.8.7) + activestorage (= 7.0.8.7) + activesupport (= 7.0.8.7) bundler (>= 1.15.0) - railties (= 7.0.8.4) + railties (= 7.0.8.7) rails-dom-testing (2.2.0) activesupport (>= 5.0.0) minitest nokogiri (>= 1.6) - rails-html-sanitizer (1.6.0) + rails-html-sanitizer (1.6.2) loofah (~> 2.21) - nokogiri (~> 1.14) - rails-i18n (7.0.9) + 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) + rails-i18n (7.0.10) i18n (>= 0.7, < 2) railties (>= 6.0.0, < 8) - railties (7.0.8.4) - actionpack (= 7.0.8.4) - activesupport (= 7.0.8.4) + railties (7.0.8.7) + actionpack (= 7.0.8.7) + activesupport (= 7.0.8.7) method_source rake (>= 12.2) thor (~> 1.0) @@ -304,33 +306,32 @@ GEM activerecord (>= 6.1.5) activesupport (>= 6.1.5) i18n - regexp_parser (2.9.2) - reline (0.5.9) + regexp_parser (2.10.0) + reline (0.6.0) io-console (~> 0.5) request_store (1.7.0) rack (>= 1.4) responders (3.1.1) actionpack (>= 5.2) railties (>= 5.2) - rexml (3.3.6) - strscan - rspec-core (3.13.0) + rexml (3.4.0) + rspec-core (3.13.2) rspec-support (~> 3.13.0) - rspec-expectations (3.13.2) + rspec-expectations (3.13.3) diff-lcs (>= 1.2.0, < 2.0) rspec-support (~> 3.13.0) - rspec-mocks (3.13.1) + rspec-mocks (3.13.2) diff-lcs (>= 1.2.0, < 2.0) rspec-support (~> 3.13.0) - rspec-rails (6.1.4) - actionpack (>= 6.1) - activesupport (>= 6.1) - railties (>= 6.1) + rspec-rails (7.1.0) + 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-support (3.13.1) + rspec-support (3.13.2) ruby2_keywords (0.0.5) sassc (2.4.0) ffi (~> 1.9) @@ -340,6 +341,7 @@ GEM sprockets (> 3.0) sprockets-rails tilt + securerandom (0.3.2) simplecov (0.22.0) docile (~> 1.1) simplecov-html (~> 0.11) @@ -347,7 +349,7 @@ GEM simplecov-cobertura (2.1.0) rexml simplecov (~> 0.19) - simplecov-html (0.12.3) + simplecov-html (0.13.1) simplecov_json_formatter (0.1.4) sprockets (4.2.1) concurrent-ruby (~> 1.0) @@ -360,26 +362,26 @@ GEM mini_portile2 (~> 2.8.0) sqlite3 (1.7.3-arm64-darwin) sqlite3 (1.7.3-x86_64-linux) - strscan (3.1.0) - sys-uname (1.3.0) + sys-uname (1.3.1) ffi (~> 1.1) terminal-table (3.0.2) unicode-display_width (>= 1.1.1, < 3) - thor (1.3.1) - tilt (2.4.0) - timeout (0.4.1) + thor (1.3.2) + tilt (2.6.0) + timeout (0.4.3) tzinfo (2.0.6) concurrent-ruby (~> 1.0) - unicode-display_width (2.5.0) + unicode-display_width (2.6.0) warden (1.2.9) rack (>= 2.0.9) - webrick (1.8.1) - websocket-driver (0.7.6) + 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.6.17) + zeitwerk (2.6.18) PLATFORMS arm64-darwin @@ -390,6 +392,7 @@ DEPENDENCIES activeadmin! cancancan capybara + concurrent-ruby (= 1.3.4) cucumber cucumber-rails cuprite @@ -399,6 +402,7 @@ DEPENDENCIES i18n-spec i18n-tasks launchy + nokogiri (~> 1.17.2) parallel_tests pundit rails (~> 7.0.0) @@ -406,11 +410,13 @@ DEPENDENCIES rake rspec-rails sassc-rails + securerandom (~> 0.3.2) simplecov simplecov-cobertura sprockets-rails sqlite3 (~> 1.7) webrick + zeitwerk (~> 2.6.18) BUNDLED WITH - 2.5.17 + 2.6.3 diff --git a/gemfiles/rails_71/Gemfile b/gemfiles/rails_71/Gemfile index f25f1fe769d..13c769e330e 100644 --- a/gemfiles/rails_71/Gemfile +++ b/gemfiles/rails_71/Gemfile @@ -16,6 +16,9 @@ group :development, :test do gem "sassc-rails" gem "ransack", ">= 4.1.0" gem "formtastic", ">= 5.0.0" + + # FIXME: relax this dependency when Ruby 3.1 support will be dropped + gem "zeitwerk", "~> 2.6.18" end group :test do diff --git a/gemfiles/rails_71/Gemfile.lock b/gemfiles/rails_71/Gemfile.lock index 491378f7872..d45859e9044 100644 --- a/gemfiles/rails_71/Gemfile.lock +++ b/gemfiles/rails_71/Gemfile.lock @@ -1,7 +1,7 @@ PATH remote: ../.. specs: - activeadmin (3.2.5) + activeadmin (3.3.0) arbre (~> 1.2, >= 1.2.1) csv formtastic (>= 3.1) @@ -15,35 +15,35 @@ PATH GEM remote: https://rubygems.org/ specs: - actioncable (7.1.4) - actionpack (= 7.1.4) - activesupport (= 7.1.4) + 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.4) - actionpack (= 7.1.4) - activejob (= 7.1.4) - activerecord (= 7.1.4) - activestorage (= 7.1.4) - activesupport (= 7.1.4) + 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.4) - actionpack (= 7.1.4) - actionview (= 7.1.4) - activejob (= 7.1.4) - activesupport (= 7.1.4) + 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.4) - actionview (= 7.1.4) - activesupport (= 7.1.4) + actionpack (7.1.5.1) + actionview (= 7.1.5.1) + activesupport (= 7.1.5.1) nokogiri (>= 1.8.5) racc rack (>= 2.2.4) @@ -51,47 +51,50 @@ GEM rack-test (>= 0.6.3) rails-dom-testing (~> 2.2) rails-html-sanitizer (~> 1.6) - actiontext (7.1.4) - actionpack (= 7.1.4) - activerecord (= 7.1.4) - activestorage (= 7.1.4) - activesupport (= 7.1.4) + 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.4) - activesupport (= 7.1.4) + 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) - activejob (7.1.4) - activesupport (= 7.1.4) + activejob (7.1.5.1) + activesupport (= 7.1.5.1) globalid (>= 0.3.6) - activemodel (7.1.4) - activesupport (= 7.1.4) - activemodel-serializers-xml (1.0.2) - activemodel (> 5.x) - activesupport (> 5.x) + activemodel (7.1.5.1) + activesupport (= 7.1.5.1) + activemodel-serializers-xml (1.0.3) + activemodel (>= 5.0.0.a) + activesupport (>= 5.0.0.a) builder (~> 3.1) - activerecord (7.1.4) - activemodel (= 7.1.4) - activesupport (= 7.1.4) + activerecord (7.1.5.1) + activemodel (= 7.1.5.1) + activesupport (= 7.1.5.1) timeout (>= 0.4.0) - activestorage (7.1.4) - actionpack (= 7.1.4) - activejob (= 7.1.4) - activerecord (= 7.1.4) - activesupport (= 7.1.4) + 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.4) + 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) @@ -101,7 +104,8 @@ GEM ast (2.4.2) base64 (0.2.0) bcrypt (3.1.20) - bigdecimal (3.1.8) + benchmark (0.4.0) + bigdecimal (3.1.9) builder (3.3.0) cancancan (3.6.1) capybara (3.40.0) @@ -118,11 +122,11 @@ GEM octokit (>= 2.2.0) childprocess (5.1.0) logger (~> 1.5) - concurrent-ruby (1.3.4) - connection_pool (2.4.1) + concurrent-ruby (1.3.5) + connection_pool (2.5.0) crass (1.0.6) - csv (3.3.0) - cucumber (9.2.0) + csv (3.3.2) + cucumber (9.2.1) builder (~> 3.2) cucumber-ci-environment (> 9, < 11) cucumber-core (> 13, < 14) @@ -143,14 +147,14 @@ GEM bigdecimal cucumber-gherkin (27.0.0) cucumber-messages (>= 19.1.4, < 23) - cucumber-html-formatter (21.7.0) + cucumber-html-formatter (21.8.0) cucumber-messages (> 19, < 27) cucumber-messages (22.0.0) - cucumber-rails (3.0.0) + cucumber-rails (3.1.0) capybara (>= 3.11, < 4) cucumber (>= 5, < 10) - railties (>= 5.2, < 8) - cucumber-tag-expressions (6.1.0) + railties (>= 5.2, < 9) + cucumber-tag-expressions (6.1.1) cuprite (0.15.1) capybara (~> 3.0) ferrum (~> 0.15.0) @@ -158,7 +162,7 @@ GEM activerecord (>= 5.a) database_cleaner-core (~> 2.0.0) database_cleaner-core (2.0.1) - date (3.3.4) + date (3.4.1) devise (4.9.4) bcrypt (~> 3.0) orm_adapter (~> 0.1) @@ -175,20 +179,21 @@ GEM request_store (>= 1.0) ruby2_keywords drb (2.2.1) - erubi (1.13.0) - faraday (2.10.1) - faraday-net_http (>= 2.0, < 3.2) + erubi (1.13.1) + faraday (2.12.2) + faraday-net_http (>= 2.0, < 3.5) + json logger - faraday-net_http (3.1.1) - net-http + faraday-net_http (3.4.0) + net-http (>= 0.5.0) ferrum (0.15) addressable (~> 2.5) concurrent-ruby (~> 1.1) webrick (~> 1.7) websocket-driver (~> 0.7) - ffi (1.17.0) - ffi (1.17.0-arm64-darwin) - ffi (1.17.0-x86_64-linux-gnu) + ffi (1.17.1) + ffi (1.17.1-arm64-darwin) + ffi (1.17.1-x86_64-linux-gnu) formtastic (5.0.0) actionpack (>= 6.0.0) formtastic_i18n (0.7.0) @@ -197,9 +202,9 @@ GEM has_scope (0.8.2) actionpack (>= 5.2) activesupport (>= 5.2) - highline (3.1.0) + highline (3.1.2) reline - i18n (1.14.5) + i18n (1.14.7) concurrent-ruby (~> 1.0) i18n-spec (0.6.0) iso @@ -218,8 +223,9 @@ GEM has_scope (>= 0.6) railties (>= 6.0) responders (>= 2) - io-console (0.7.2) - irb (1.14.0) + io-console (0.8.0) + irb (1.15.1) + pp (>= 0.6.0) rdoc (>= 4.0.0) reline (>= 0.4.2) iso (0.4.0) @@ -228,7 +234,7 @@ GEM rails-dom-testing (>= 1, < 3) railties (>= 4.2.0) thor (>= 0.14, < 2.0) - json (2.7.2) + json (2.9.1) kaminari (1.2.2) activesupport (>= 4.1.0) kaminari-actionview (= 1.2.2) @@ -241,14 +247,15 @@ GEM activerecord kaminari-core (= 1.2.2) kaminari-core (1.2.2) - kramdown (2.4.0) - rexml - language_server-protocol (3.17.0.3) - launchy (3.0.1) + kramdown (2.5.1) + rexml (>= 3.3.9) + language_server-protocol (3.17.0.4) + launchy (3.1.0) addressable (~> 2.8) childprocess (~> 5.0) - logger (1.6.0) - loofah (2.22.0) + logger (~> 1.6) + logger (1.6.5) + loofah (2.24.0) crass (~> 1.0.2) nokogiri (>= 1.12.0) mail (2.8.1) @@ -259,81 +266,85 @@ GEM marcel (1.0.4) matrix (0.4.2) mini_mime (1.1.5) - mini_portile2 (2.8.7) - minitest (5.25.1) + mini_portile2 (2.8.8) + minitest (5.25.4) multi_test (1.1.0) - mutex_m (0.2.0) - net-http (0.4.1) + mutex_m (0.3.0) + net-http (0.6.0) uri - net-imap (0.4.14) + net-imap (0.5.5) date net-protocol net-pop (0.1.2) net-protocol net-protocol (0.2.2) timeout - net-smtp (0.5.0) + net-smtp (0.5.1) net-protocol netrc (0.11.0) - nio4r (2.7.3) - nokogiri (1.16.7) + nio4r (2.7.4) + nokogiri (1.18.2) mini_portile2 (~> 2.8.2) racc (~> 1.4) - nokogiri (1.16.7-arm64-darwin) + nokogiri (1.18.2-arm64-darwin) racc (~> 1.4) - nokogiri (1.16.7-x86_64-linux) + nokogiri (1.18.2-x86_64-linux-gnu) racc (~> 1.4) - octokit (9.1.0) + octokit (9.2.0) faraday (>= 1, < 3) sawyer (~> 0.9) orm_adapter (0.5.0) parallel (1.26.3) - parallel_tests (4.7.1) + parallel_tests (4.9.0) parallel - parser (3.3.4.2) + parser (3.3.7.0) ast (~> 2.4.1) racc - psych (5.1.2) + pp (0.6.2) + prettyprint + prettyprint (0.2.0) + psych (5.2.3) + date stringio public_suffix (6.0.1) - pundit (2.3.2) + pundit (2.4.0) activesupport (>= 3.0.0) racc (1.8.1) - rack (3.1.7) - rack-session (2.0.0) + rack (3.1.8) + rack-session (2.1.0) + base64 (>= 0.1.0) rack (>= 3.0.0) - rack-test (2.1.0) + rack-test (2.2.0) rack (>= 1.3) - rackup (2.1.0) + rackup (2.2.1) rack (>= 3) - webrick (~> 1.8) - rails (7.1.4) - actioncable (= 7.1.4) - actionmailbox (= 7.1.4) - actionmailer (= 7.1.4) - actionpack (= 7.1.4) - actiontext (= 7.1.4) - actionview (= 7.1.4) - activejob (= 7.1.4) - activemodel (= 7.1.4) - activerecord (= 7.1.4) - activestorage (= 7.1.4) - activesupport (= 7.1.4) + 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.4) + railties (= 7.1.5.1) rails-dom-testing (2.2.0) activesupport (>= 5.0.0) minitest nokogiri (>= 1.6) - rails-html-sanitizer (1.6.0) + rails-html-sanitizer (1.6.2) loofah (~> 2.21) - nokogiri (~> 1.14) - rails-i18n (7.0.9) + 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) + rails-i18n (7.0.10) i18n (>= 0.7, < 2) railties (>= 6.0.0, < 8) - railties (7.1.4) - actionpack (= 7.1.4) - activesupport (= 7.1.4) + railties (7.1.5.1) + actionpack (= 7.1.5.1) + activesupport (= 7.1.5.1) irb rackup (>= 1.0.0) rake (>= 12.2) @@ -345,56 +356,54 @@ GEM activerecord (>= 6.1.5) activesupport (>= 6.1.5) i18n - rdoc (6.7.0) + rdoc (6.11.0) psych (>= 4.0.0) - regexp_parser (2.9.2) - reline (0.5.9) + regexp_parser (2.10.0) + reline (0.6.0) io-console (~> 0.5) request_store (1.7.0) rack (>= 1.4) responders (3.1.1) actionpack (>= 5.2) railties (>= 5.2) - rexml (3.3.6) - strscan - rspec-core (3.13.0) + rexml (3.4.0) + rspec-core (3.13.2) rspec-support (~> 3.13.0) - rspec-expectations (3.13.2) + rspec-expectations (3.13.3) diff-lcs (>= 1.2.0, < 2.0) rspec-support (~> 3.13.0) - rspec-mocks (3.13.1) + rspec-mocks (3.13.2) diff-lcs (>= 1.2.0, < 2.0) rspec-support (~> 3.13.0) - rspec-rails (6.1.4) - actionpack (>= 6.1) - activesupport (>= 6.1) - railties (>= 6.1) + rspec-rails (7.1.0) + 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-support (3.13.1) - rubocop (1.65.1) + rspec-support (3.13.2) + rubocop (1.71.0) json (~> 2.3) language_server-protocol (>= 3.17.0) parallel (~> 1.10) parser (>= 3.3.0.2) rainbow (>= 2.2.2, < 4.0) - regexp_parser (>= 2.4, < 3.0) - rexml (>= 3.2.5, < 4.0) - rubocop-ast (>= 1.31.1, < 2.0) + regexp_parser (>= 2.9.3, < 3.0) + rubocop-ast (>= 1.36.2, < 2.0) ruby-progressbar (~> 1.7) - unicode-display_width (>= 2.4.0, < 3.0) - rubocop-ast (1.32.1) + unicode-display_width (>= 2.4.0, < 4.0) + rubocop-ast (1.37.0) parser (>= 3.3.1.0) rubocop-packaging (0.5.2) rubocop (>= 1.33, < 2.0) - rubocop-rails (2.25.1) + rubocop-rails (2.29.1) activesupport (>= 4.2.0) rack (>= 1.1) - rubocop (>= 1.33.0, < 2.0) + rubocop (>= 1.52.0, < 2.0) rubocop-ast (>= 1.31.1, < 2.0) - rubocop-rspec (3.0.4) + rubocop-rspec (3.4.0) rubocop (~> 1.61) ruby-progressbar (1.13.0) ruby2_keywords (0.0.5) @@ -409,6 +418,7 @@ GEM sawyer (0.9.2) addressable (>= 2.3.5) faraday (>= 0.17.3, < 3) + securerandom (0.4.1) simplecov (0.22.0) docile (~> 1.1) simplecov-html (~> 0.11) @@ -416,7 +426,7 @@ GEM simplecov-cobertura (2.1.0) rexml simplecov (~> 0.19) - simplecov-html (0.12.3) + simplecov-html (0.13.1) simplecov_json_formatter (0.1.4) sprockets (4.2.1) concurrent-ruby (~> 1.0) @@ -425,33 +435,33 @@ GEM actionpack (>= 6.1) activesupport (>= 6.1) sprockets (>= 3.0.0) - sqlite3 (2.0.4) + sqlite3 (2.5.0) mini_portile2 (~> 2.8.0) - sqlite3 (2.0.4-arm64-darwin) - sqlite3 (2.0.4-x86_64-linux-gnu) - stringio (3.1.1) - strscan (3.1.0) - sys-uname (1.3.0) + sqlite3 (2.5.0-arm64-darwin) + sqlite3 (2.5.0-x86_64-linux-gnu) + stringio (3.1.2) + sys-uname (1.3.1) ffi (~> 1.1) terminal-table (3.0.2) unicode-display_width (>= 1.1.1, < 3) - thor (1.3.1) - tilt (2.4.0) - timeout (0.4.1) + thor (1.3.2) + tilt (2.6.0) + timeout (0.4.3) tzinfo (2.0.6) concurrent-ruby (~> 1.0) - unicode-display_width (2.5.0) - uri (0.13.0) + unicode-display_width (2.6.0) + uri (1.0.2) warden (1.2.9) rack (>= 2.0.9) - webrick (1.8.1) - websocket-driver (0.7.6) + 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) - yard (0.9.36) - zeitwerk (2.6.17) + yard (0.9.37) + zeitwerk (2.6.18) PLATFORMS arm64-darwin @@ -493,6 +503,7 @@ DEPENDENCIES sqlite3 webrick yard + zeitwerk (~> 2.6.18) BUNDLED WITH - 2.5.17 + 2.6.3 diff --git a/gemfiles/rails_72/Gemfile b/gemfiles/rails_72/Gemfile new file mode 100644 index 00000000000..b22fd94c918 --- /dev/null +++ b/gemfiles/rails_72/Gemfile @@ -0,0 +1,62 @@ +# frozen_string_literal: true +source "https://rubygems.org" + +group :development, :test do + gem "rake" + + gem "cancancan" + gem "pundit" + + gem "draper" + gem "devise" + + gem "rails", "~> 7.2.0" + + gem "sprockets-rails" + gem "sassc-rails" + gem "ransack", ">= 4.2.0" + gem "formtastic", ">= 5.0.0" + + # FIXME: relax this dependency when Ruby 3.1 support will be dropped + gem "zeitwerk", "~> 2.6.18" +end + +group :test do + gem "cuprite" + gem "capybara" + gem "webrick" + + gem "simplecov", require: false # Test coverage generator. Go to /coverage/ after running tests + gem "simplecov-cobertura", require: false + gem "cucumber-rails", require: false + gem "cucumber" + gem "database_cleaner-active_record" + gem "launchy" + gem "parallel_tests" + gem "rspec-rails" + gem "sqlite3", platform: :mri + + # Translations + gem "i18n-tasks" + gem "i18n-spec" + gem "rails-i18n" # Provides default i18n for many languages +end + +group :release do + gem "chandler" # Github releases from changelog + gem "octokit" +end + +group :rubocop do + gem "rubocop" + gem "rubocop-packaging" + gem "rubocop-rspec" + gem "rubocop-rails" +end + +group :docs do + gem "yard" # Documentation generator + gem "kramdown" # Markdown implementation (for yard) +end + +gemspec path: "../.." diff --git a/gemfiles/rails_72/Gemfile.lock b/gemfiles/rails_72/Gemfile.lock new file mode 100644 index 00000000000..a6d33b2bb8c --- /dev/null +++ b/gemfiles/rails_72/Gemfile.lock @@ -0,0 +1,503 @@ +PATH + remote: ../.. + specs: + 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) + +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) + activejob (7.2.2.1) + activesupport (= 7.2.2.1) + globalid (>= 0.3.6) + activemodel (7.2.2.1) + activesupport (= 7.2.2.1) + activemodel-serializers-xml (1.0.3) + activemodel (>= 5.0.0.a) + activesupport (>= 5.0.0.a) + builder (~> 3.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) + arbre (1.7.0) + activesupport (>= 3.0.0) + ruby2_keywords (>= 0.0.2) + ast (2.4.2) + base64 (0.2.0) + bcrypt (3.1.20) + benchmark (0.4.0) + bigdecimal (3.1.9) + builder (3.3.0) + cancancan (3.6.1) + 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) + chandler (0.9.0) + netrc + octokit (>= 2.2.0) + childprocess (5.1.0) + logger (~> 1.5) + concurrent-ruby (1.3.5) + connection_pool (2.5.0) + crass (1.0.6) + csv (3.3.2) + cucumber (9.2.1) + builder (~> 3.2) + cucumber-ci-environment (> 9, < 11) + cucumber-core (> 13, < 14) + cucumber-cucumber-expressions (~> 17.0) + cucumber-gherkin (> 24, < 28) + cucumber-html-formatter (> 20.3, < 22) + cucumber-messages (> 19, < 25) + diff-lcs (~> 1.5) + mini_mime (~> 1.1) + multi_test (~> 1.1) + sys-uname (~> 1.2) + cucumber-ci-environment (10.0.1) + cucumber-core (13.0.3) + cucumber-gherkin (>= 27, < 28) + cucumber-messages (>= 20, < 23) + cucumber-tag-expressions (> 5, < 7) + cucumber-cucumber-expressions (17.1.0) + bigdecimal + cucumber-gherkin (27.0.0) + cucumber-messages (>= 19.1.4, < 23) + cucumber-html-formatter (21.8.0) + cucumber-messages (> 19, < 27) + cucumber-messages (22.0.0) + cucumber-rails (3.1.0) + capybara (>= 3.11, < 4) + cucumber (>= 5, < 10) + railties (>= 5.2, < 9) + cucumber-tag-expressions (6.1.1) + cuprite (0.15.1) + capybara (~> 3.0) + ferrum (~> 0.15.0) + database_cleaner-active_record (2.2.0) + activerecord (>= 5.a) + database_cleaner-core (~> 2.0.0) + database_cleaner-core (2.0.1) + date (3.4.1) + devise (4.9.4) + bcrypt (~> 3.0) + orm_adapter (~> 0.1) + railties (>= 4.1.0) + responders + warden (~> 1.2.3) + diff-lcs (1.5.1) + docile (1.4.1) + draper (4.0.2) + actionpack (>= 5.0) + activemodel (>= 5.0) + activemodel-serializers-xml (>= 1.0) + activesupport (>= 5.0) + request_store (>= 1.0) + ruby2_keywords + drb (2.2.1) + erubi (1.13.1) + faraday (2.12.2) + faraday-net_http (>= 2.0, < 3.5) + json + logger + faraday-net_http (3.4.0) + net-http (>= 0.5.0) + ferrum (0.15) + addressable (~> 2.5) + concurrent-ruby (~> 1.1) + webrick (~> 1.7) + websocket-driver (~> 0.7) + ffi (1.17.1) + ffi (1.17.1-arm64-darwin) + 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) + highline (3.1.2) + reline + i18n (1.14.7) + concurrent-ruby (~> 1.0) + i18n-spec (0.6.0) + iso + i18n-tasks (1.0.14) + activesupport (>= 4.0.2) + ast (>= 2.1.0) + erubi + highline (>= 2.0.0) + i18n + parser (>= 3.2.2.1) + rails-i18n + rainbow (>= 2.2.2, < 4.0) + terminal-table (>= 1.5.1) + 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) + iso (0.4.0) + i18n + jquery-rails (4.6.0) + rails-dom-testing (>= 1, < 3) + railties (>= 4.2.0) + thor (>= 0.14, < 2.0) + json (2.9.1) + 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) + kramdown (2.5.1) + rexml (>= 3.3.9) + language_server-protocol (3.17.0.4) + launchy (3.1.0) + addressable (~> 2.8) + childprocess (~> 5.0) + logger (~> 1.6) + logger (1.6.5) + 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) + mini_mime (1.1.5) + mini_portile2 (2.8.8) + minitest (5.25.4) + multi_test (1.1.0) + net-http (0.6.0) + uri + net-imap (0.5.5) + date + net-protocol + net-pop (0.1.2) + net-protocol + net-protocol (0.2.2) + timeout + net-smtp (0.5.1) + net-protocol + netrc (0.11.0) + nio4r (2.7.4) + nokogiri (1.18.2) + mini_portile2 (~> 2.8.2) + racc (~> 1.4) + nokogiri (1.18.2-arm64-darwin) + racc (~> 1.4) + nokogiri (1.18.2-x86_64-linux-gnu) + racc (~> 1.4) + octokit (9.2.0) + faraday (>= 1, < 3) + sawyer (~> 0.9) + orm_adapter (0.5.0) + parallel (1.26.3) + parallel_tests (4.9.0) + parallel + parser (3.3.7.0) + ast (~> 2.4.1) + racc + pp (0.6.2) + prettyprint + prettyprint (0.2.0) + psych (5.2.3) + date + stringio + public_suffix (6.0.1) + pundit (2.4.0) + activesupport (>= 3.0.0) + racc (1.8.1) + rack (3.1.8) + 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) + rails-i18n (7.0.10) + i18n (>= 0.7, < 2) + railties (>= 6.0.0, < 8) + 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.2.1) + activerecord (>= 6.1.5) + activesupport (>= 6.1.5) + i18n + rdoc (6.11.0) + psych (>= 4.0.0) + regexp_parser (2.10.0) + reline (0.6.0) + io-console (~> 0.5) + request_store (1.7.0) + rack (>= 1.4) + responders (3.1.1) + actionpack (>= 5.2) + railties (>= 5.2) + rexml (3.4.0) + rspec-core (3.13.2) + 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.0) + 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-support (3.13.2) + rubocop (1.71.0) + json (~> 2.3) + language_server-protocol (>= 3.17.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.36.2, < 2.0) + ruby-progressbar (~> 1.7) + unicode-display_width (>= 2.4.0, < 4.0) + rubocop-ast (1.37.0) + parser (>= 3.3.1.0) + rubocop-packaging (0.5.2) + rubocop (>= 1.33, < 2.0) + rubocop-rails (2.29.1) + activesupport (>= 4.2.0) + rack (>= 1.1) + rubocop (>= 1.52.0, < 2.0) + rubocop-ast (>= 1.31.1, < 2.0) + rubocop-rspec (3.4.0) + rubocop (~> 1.61) + ruby-progressbar (1.13.0) + ruby2_keywords (0.0.5) + sassc (2.4.0) + ffi (~> 1.9) + sassc-rails (2.1.2) + railties (>= 4.0.0) + sassc (>= 2.0) + sprockets (> 3.0) + sprockets-rails + tilt + sawyer (0.9.2) + addressable (>= 2.3.5) + faraday (>= 0.17.3, < 3) + securerandom (0.4.1) + simplecov (0.22.0) + docile (~> 1.1) + simplecov-html (~> 0.11) + simplecov_json_formatter (~> 0.1) + simplecov-cobertura (2.1.0) + rexml + simplecov (~> 0.19) + simplecov-html (0.13.1) + simplecov_json_formatter (0.1.4) + 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.5.0) + mini_portile2 (~> 2.8.0) + sqlite3 (2.5.0-arm64-darwin) + sqlite3 (2.5.0-x86_64-linux-gnu) + stringio (3.1.2) + sys-uname (1.3.1) + ffi (~> 1.1) + terminal-table (3.0.2) + unicode-display_width (>= 1.1.1, < 3) + thor (1.3.2) + tilt (2.6.0) + timeout (0.4.3) + tzinfo (2.0.6) + concurrent-ruby (~> 1.0) + unicode-display_width (2.6.0) + uri (1.0.2) + useragent (0.16.11) + warden (1.2.9) + rack (>= 2.0.9) + 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) + yard (0.9.37) + zeitwerk (2.6.18) + +PLATFORMS + arm64-darwin + ruby + x86_64-linux + +DEPENDENCIES + activeadmin! + cancancan + capybara + chandler + cucumber + cucumber-rails + cuprite + database_cleaner-active_record + devise + draper + formtastic (>= 5.0.0) + i18n-spec + i18n-tasks + kramdown + launchy + octokit + parallel_tests + pundit + rails (~> 7.2.0) + rails-i18n + rake + ransack (>= 4.2.0) + rspec-rails + rubocop + rubocop-packaging + rubocop-rails + rubocop-rspec + sassc-rails + simplecov + simplecov-cobertura + sprockets-rails + sqlite3 + webrick + yard + zeitwerk (~> 2.6.18) + +BUNDLED WITH + 2.6.3 diff --git a/lib/active_admin/form_builder.rb b/lib/active_admin/form_builder.rb index 009e9d8e110..48c4676073b 100644 --- a/lib/active_admin/form_builder.rb +++ b/lib/active_admin/form_builder.rb @@ -95,7 +95,7 @@ def content_has_many(&block) contents = without_wrapper { inputs(options, &form_block) } contents ||= "".html_safe - js = new_record ? js_for_has_many(options[:class], &form_block) : "" + js = new_record ? js_for_has_many(&form_block) : "" contents << js end @@ -159,14 +159,13 @@ def without_wrapper end # Capture the ADD JS - def js_for_has_many(class_string, &form_block) + def js_for_has_many(&form_block) assoc_name = assoc_klass.model_name - placeholder = "NEW_#{assoc_name.to_s.underscore.upcase.gsub(/\//, '_')}_RECORD" - opts = { + placeholder = "NEW_#{assoc_name.to_s.underscore.upcase.tr('/', '_')}_RECORD" + opts = options.merge( for: [assoc, assoc_klass.new], - class: class_string, for_options: { child_index: placeholder } - } + ) html = template.capture { __getobj__.send(:inputs_for_nested_attributes, opts, &form_block) } text = new_record.is_a?(String) ? new_record : I18n.t("active_admin.has_many_new", model: assoc_name.human) diff --git a/lib/active_admin/inputs/filters/select_input.rb b/lib/active_admin/inputs/filters/select_input.rb index c950f78afa9..23c9a041022 100644 --- a/lib/active_admin/inputs/filters/select_input.rb +++ b/lib/active_admin/inputs/filters/select_input.rb @@ -15,9 +15,7 @@ def searchable_method_name if searchable_has_many_through? "#{reflection.through_reflection.name}_#{reflection.foreign_key}" else - name = method.to_s - name.concat "_#{reflection.association_primary_key}" if reflection_searchable? - name + reflection_searchable? ? "#{method}_#{reflection.association_primary_key}" : method.to_s end end diff --git a/lib/active_admin/resource/belongs_to.rb b/lib/active_admin/resource/belongs_to.rb index 45d771c763f..b65503f6ba9 100644 --- a/lib/active_admin/resource/belongs_to.rb +++ b/lib/active_admin/resource/belongs_to.rb @@ -1,5 +1,4 @@ # frozen_string_literal: true -require "active_admin/resource" module ActiveAdmin class Resource diff --git a/lib/active_admin/version.rb b/lib/active_admin/version.rb index 9055a218fb9..29da4baecd9 100644 --- a/lib/active_admin/version.rb +++ b/lib/active_admin/version.rb @@ -1,4 +1,4 @@ # frozen_string_literal: true module ActiveAdmin - VERSION = "3.2.5" + VERSION = "3.3.0" end diff --git a/lib/active_admin/views/index_as_table.rb b/lib/active_admin/views/index_as_table.rb index 4394b7fedcd..bcfbf737f10 100644 --- a/lib/active_admin/views/index_as_table.rb +++ b/lib/active_admin/views/index_as_table.rb @@ -291,9 +291,14 @@ def index_column(start_value = 1) end # Display a column for the id - def id_column + def id_column(*args) raise "#{resource_class.name} has no primary_key!" unless resource_class.primary_key - column(resource_class.human_attribute_name(resource_class.primary_key), sortable: resource_class.primary_key) do |resource| + + options = args.extract_options! + title = args[0].presence || resource_class.human_attribute_name(resource_class.primary_key) + sortable = options.fetch(:sortable, resource_class.primary_key) + + column(title, sortable: sortable) do |resource| if controller.action_methods.include?("show") link_to resource.id, resource_path(resource), class: "resource_id_link" elsif controller.action_methods.include?("edit") diff --git a/package.json b/package.json index f91bd4af0dc..597d99916f8 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@activeadmin/activeadmin", - "version": "3.2.5", + "version": "3.3.0", "description": "The administration framework for Ruby on Rails.", "main": "app/assets/javascripts/active_admin/base.js", "type": "module", diff --git a/spec/support/rails_template.rb b/spec/support/rails_template.rb index 85f7df8b490..1544635c280 100644 --- a/spec/support/rails_template.rb +++ b/spec/support/rails_template.rb @@ -4,6 +4,7 @@ create_file "app/assets/stylesheets/some-random-css.css" create_file "app/assets/javascripts/some-random-js.js" create_file "app/assets/images/a/favicon.ico" +create_file "app/assets/config/manifest.js" initial_timestamp = Time.now.strftime("%Y%m%d%H%M%S").to_i diff --git a/spec/unit/form_builder_spec.rb b/spec/unit/form_builder_spec.rb index eba404e7685..4260af49ea2 100644 --- a/spec/unit/form_builder_spec.rb +++ b/spec/unit/form_builder_spec.rb @@ -648,6 +648,48 @@ def user end end + describe "with custom class" do + let :body do + build_form({ url: "/categories" }, Category.new) do |f| + f.object.posts.build + f.has_many :posts, class: 'myclass' do |p| + p.input :title + end + end + end + + it "should generate a fieldset with the given class" do + expect(body).to have_css(".has_many_container > fieldset.myclass") + end + + it "should add the custom class on the fieldset generated by the new record link" do + link = body.find(".has_many_container > a.has_many_add") + new_record_html = Capybara.string(link[:'data-html']) + expect(new_record_html).to have_css("fieldset.myclass") + end + end + + describe "with custom attributes" do + let :body do + build_form({ url: "/categories" }, Category.new) do |f| + f.object.posts.build + f.has_many :posts, attr: "value", data: { 'custom-attribute': "custom-value" } do |p| + p.input :title + end + end + end + + it "should generate a fieldset with the given custom attributes" do + expect(body).to have_css(".has_many_container > fieldset[attr='value'][data-custom-attribute='custom-value']") + end + + it "should add custom attributes on the fieldset generated by the new record link" do + link = body.find(".has_many_container > a.has_many_add") + new_record_html = Capybara.string(link[:'data-html']) + expect(new_record_html).to have_css("fieldset[attr='value'][data-custom-attribute='custom-value']") + end + end + describe "with allow destroy" do shared_examples_for "has many with allow_destroy = true" do |child_num| it "should render the nested form" do diff --git a/spec/unit/views/components/index_table_for_spec.rb b/spec/unit/views/components/index_table_for_spec.rb index c26f39ce29c..90497ccaf63 100644 --- a/spec/unit/views/components/index_table_for_spec.rb +++ b/spec/unit/views/components/index_table_for_spec.rb @@ -15,7 +15,8 @@ let(:assigns) do { collection: collection, - active_admin_config: active_admin_config + active_admin_config: active_admin_config, + resource_class: User, } end let(:helpers) { mock_action_view } @@ -44,6 +45,55 @@ end end + context "when creating an id column" do + before { allow(helpers).to receive(:url_for).and_return("routing_stub") } + + def build_index_table(&block) + render_arbre_component assigns, helpers do + insert_tag(ActiveAdmin::Views::IndexAsTable::IndexTableFor, collection, { sortable: true }) do + instance_exec(&block) + end + end + end + + it "use primary key as title by default" do + table = build_index_table { id_column } + header = table.find_by_tag("th").first + expect(header.content).to include("Id") + end + + it "supports title customization" do + table = build_index_table { id_column "Res. Id" } + header = table.find_by_tag("th").first + expect(header.content).to include("Res. Id") + end + + it "is sortable by default" do + table = build_index_table { id_column } + header = table.find_by_tag("th").first + expect(header.attributes[:class]).to include("sortable") + end + + it "supports sortable: false" do + table = build_index_table { id_column sortable: false } + header = table.find_by_tag("th").first + expect(header.attributes[:class]).not_to include("sortable") + end + + it "supports sortable column names" do + table = build_index_table { id_column sortable: :created_at } + header = table.find_by_tag("th").first + expect(header.attributes[:class]).to include("sortable") + end + + it "supports title customization and options" do + table = build_index_table { id_column "Res. Id", sortable: :created_at } + header = table.find_by_tag("th").first + expect(header.content).to include("Res. Id") + expect(header.attributes[:class]).to include("sortable") + end + end + context "when creating an index column" do let(:base_collection) do posts = [ diff --git a/spec/unit/views/pages/form_spec.rb b/spec/unit/views/pages/form_spec.rb index 436480fd06e..e26e1bc5d87 100644 --- a/spec/unit/views/pages/form_spec.rb +++ b/spec/unit/views/pages/form_spec.rb @@ -16,7 +16,7 @@ end let(:arbre_context) do - OpenStruct.new(params: params, helpers: helpers, assigns: {}) + Struct.new(:params, :helpers, :assigns).new(params, helpers, {}) end context "when :title is set" do diff --git a/spec/unit/views/pages/index_spec.rb b/spec/unit/views/pages/index_spec.rb index 0f61e9eeffb..bd8c3058969 100644 --- a/spec/unit/views/pages/index_spec.rb +++ b/spec/unit/views/pages/index_spec.rb @@ -14,7 +14,7 @@ end let(:arbre_context) do - OpenStruct.new(params: params, helpers: helpers, assigns: {}) + Struct.new(:params, :helpers, :assigns).new(params, helpers, {}) end context "when config[:title] is assigned" do diff --git a/tasks/bug_report_template.rb b/tasks/bug_report_template.rb index 414f72cc182..1853a1fa38e 100644 --- a/tasks/bug_report_template.rb +++ b/tasks/bug_report_template.rb @@ -13,7 +13,7 @@ end # Change Rails version if necessary. - gem "rails", "~> 7.2.0" + gem "rails", "~> 8.0.0" gem "sprockets", "~> 3.7" gem "sassc-rails" diff --git a/tasks/test_application.rb b/tasks/test_application.rb index 7014d6bde5d..485adc0abbe 100644 --- a/tasks/test_application.rb +++ b/tasks/test_application.rb @@ -31,6 +31,9 @@ def generate --skip-test-unit --skip-coffee --skip-webpack-install + --skip-kamal + --skip-solid + --skip-thruster ) command = ["bundle", "exec", "rails", "new", app_dir, *args].join(" ") @@ -61,7 +64,7 @@ def base_dir end def app_name - return "rails_72" if main_app? + return "rails_80" if main_app? File.basename(File.dirname(gemfile)) end