From 477430828bf133ac04da2839aeb914004417c4b6 Mon Sep 17 00:00:00 2001 From: Matias Grunberg Date: Tue, 30 Apr 2024 18:03:25 -0300 Subject: [PATCH 01/47] Backport Suppress ruby 3.3 warning (#8310) Backport to 3-0 stable branch suppress ruby 3.3 warning (#8303) ``` /myapp/vendor/bundle/gems/zeitwerk-2.6.13/lib/zeitwerk/kernel.rb:34: warning: csv was loaded from the standard library, but will no longer be part of the default gems since Ruby 3.4.0. Add csv to your Gemfile or gemspec. Also contact author of activeadmin-3.2.0 to add csv into its gemspec. ``` Co-authored-by: wonda-tea-coffee --- Gemfile.lock | 2 ++ activeadmin.gemspec | 1 + gemfiles/rails_61/Gemfile.lock | 2 ++ gemfiles/rails_70/Gemfile.lock | 2 ++ 4 files changed, 7 insertions(+) diff --git a/Gemfile.lock b/Gemfile.lock index 29e0d86d4aa..231896609fd 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -13,6 +13,7 @@ PATH specs: activeadmin (3.2.0) arbre (~> 1.2, >= 1.2.1) + csv formtastic (>= 3.1) formtastic_i18n (>= 0.4) inherited_resources (~> 1.7) @@ -134,6 +135,7 @@ GEM concurrent-ruby (1.2.2) connection_pool (2.4.1) crass (1.0.6) + csv (3.3.0) cucumber (8.0.0) builder (~> 3.2, >= 3.2.4) cucumber-ci-environment (~> 9.0, >= 9.0.4) diff --git a/activeadmin.gemspec b/activeadmin.gemspec index b3a9eea42b0..d61e8d9393c 100644 --- a/activeadmin.gemspec +++ b/activeadmin.gemspec @@ -32,6 +32,7 @@ Gem::Specification.new do |s| s.required_ruby_version = ">= 2.6" s.add_dependency "arbre", "~> 1.2", ">= 1.2.1" + s.add_dependency "csv" s.add_dependency "formtastic", ">= 3.1" s.add_dependency "formtastic_i18n", ">= 0.4" s.add_dependency "inherited_resources", "~> 1.7" diff --git a/gemfiles/rails_61/Gemfile.lock b/gemfiles/rails_61/Gemfile.lock index a824c2b6c44..dd916a911c3 100644 --- a/gemfiles/rails_61/Gemfile.lock +++ b/gemfiles/rails_61/Gemfile.lock @@ -3,6 +3,7 @@ PATH specs: activeadmin (3.2.0) arbre (~> 1.2, >= 1.2.1) + csv formtastic (>= 3.1) formtastic_i18n (>= 0.4) inherited_resources (~> 1.7) @@ -110,6 +111,7 @@ GEM xpath (~> 3.2) concurrent-ruby (1.2.2) crass (1.0.6) + csv (3.3.0) cucumber (8.0.0) builder (~> 3.2, >= 3.2.4) cucumber-ci-environment (~> 9.0, >= 9.0.4) diff --git a/gemfiles/rails_70/Gemfile.lock b/gemfiles/rails_70/Gemfile.lock index 1c9c4a7258d..637328a6922 100644 --- a/gemfiles/rails_70/Gemfile.lock +++ b/gemfiles/rails_70/Gemfile.lock @@ -3,6 +3,7 @@ PATH specs: activeadmin (3.2.0) arbre (~> 1.2, >= 1.2.1) + csv formtastic (>= 3.1) formtastic_i18n (>= 0.4) inherited_resources (~> 1.7) @@ -110,6 +111,7 @@ GEM xpath (~> 3.2) concurrent-ruby (1.2.2) crass (1.0.6) + csv (3.3.0) cucumber (8.0.0) builder (~> 3.2, >= 3.2.4) cucumber-ci-environment (~> 9.0, >= 9.0.4) From 42e52abcfce3f85cef5f632a33d5dedee9105885 Mon Sep 17 00:00:00 2001 From: Matias Grunberg Date: Tue, 30 Apr 2024 18:07:12 -0300 Subject: [PATCH 02/47] Backport Recommend using target="_blank" instead of target="blank" (incorrect) (#8311) Backport to 3.0 stable branch Recommend using target="_blank" instead of target="blank" (incorrect) (#8278) Use target="_blank" instead of target="blank" (incorrect) Co-authored-by: Nathan Broadbent --- docs/1-general-configuration.md | 2 +- docs/2-resource-customization.md | 2 +- .../active_admin/install/templates/active_admin.rb.erb | 2 +- spec/unit/menu_item_spec.rb | 4 ++-- 4 files changed, 5 insertions(+), 5 deletions(-) diff --git a/docs/1-general-configuration.md b/docs/1-general-configuration.md index a6a04c7bc11..51ab580085e 100644 --- a/docs/1-general-configuration.md +++ b/docs/1-general-configuration.md @@ -206,7 +206,7 @@ ActiveAdmin.setup do |config| config.namespace :admin do |admin| admin.build_menu :utility_navigation do |menu| menu.add label: "ActiveAdmin.info", url: "http://www.activeadmin.info", - html_options: { target: :blank } + html_options: { target: "_blank" } admin.add_current_user_to_menu menu admin.add_logout_button_to_menu menu end diff --git a/docs/2-resource-customization.md b/docs/2-resource-customization.md index a6f84204027..1f656bb21b7 100644 --- a/docs/2-resource-customization.md +++ b/docs/2-resource-customization.md @@ -289,7 +289,7 @@ config.namespace :admin do |admin| menu.add label: "Sites" do |sites| sites.add label: "Google", url: "http://google.com", - html_options: { target: :blank } + html_options: { target: "_blank" } sites.add label: "Facebook", url: "http://facebook.com" diff --git a/lib/generators/active_admin/install/templates/active_admin.rb.erb b/lib/generators/active_admin/install/templates/active_admin.rb.erb index 3c3748ac7f0..c45219193a9 100644 --- a/lib/generators/active_admin/install/templates/active_admin.rb.erb +++ b/lib/generators/active_admin/install/templates/active_admin.rb.erb @@ -258,7 +258,7 @@ ActiveAdmin.setup do |config| # # config.namespace :admin do |admin| # admin.build_menu :default do |menu| - # menu.add label: "My Great Website", url: "http://www.mygreatwebsite.com", html_options: { target: :blank } + # menu.add label: "My Great Website", url: "http://www.mygreatwebsite.com", html_options: { target: "_blank" } # end # end diff --git a/spec/unit/menu_item_spec.rb b/spec/unit/menu_item_spec.rb index 7ff3117af5a..06c9f62ebf6 100644 --- a/spec/unit/menu_item_spec.rb +++ b/spec/unit/menu_item_spec.rb @@ -26,8 +26,8 @@ module ActiveAdmin end it "should accept an options hash for link_to" do - item = MenuItem.new html_options: { target: :blank } - expect(item.html_options).to include(target: :blank) + item = MenuItem.new html_options: { target: "_blank" } + expect(item.html_options).to include(target: "_blank") end context "with no items" do From 24e613d537d46940b18da3ab995373e01141eca6 Mon Sep 17 00:00:00 2001 From: Geremia Taglialatela Date: Wed, 1 May 2024 14:41:38 +0200 Subject: [PATCH 03/47] Update actions in 3-0-stable branch (#8317) To avoid deprecations related to Node 16 actions. Also test against Ruby 3.3 and update all dependencies --- .github/workflows/ci.yaml | 32 +-- .github/workflows/lint.yml | 4 +- Gemfile | 4 +- Gemfile.lock | 366 ++++++++++++++++----------------- gemfiles/rails_61/Gemfile | 2 +- gemfiles/rails_61/Gemfile.lock | 324 +++++++++++++++-------------- gemfiles/rails_70/Gemfile | 2 +- gemfiles/rails_70/Gemfile.lock | 301 ++++++++++++++------------- 8 files changed, 519 insertions(+), 516 deletions(-) diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml index 8418b777dc2..34024b862b4 100644 --- a/.github/workflows/ci.yaml +++ b/.github/workflows/ci.yaml @@ -19,17 +19,21 @@ jobs: fail-fast: false matrix: ruby: + - 3.3 - 3.2 - 3.1 - - '3.0' os: - ubuntu-latest deps: - - rails_61 - - rails_70 - rails_71 + - rails_70 + - rails_61 + include: + - ruby: '3.0' + os: ubuntu-latest + deps: rails_71 steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - name: Configure bundler (default) run: | echo "BUNDLE_GEMFILE=Gemfile" >> "$GITHUB_ENV" @@ -49,7 +53,7 @@ jobs: - name: Create test app run: bin/rake setup - name: Restore cached RSpec runtimes - uses: actions/cache@v3 + uses: actions/cache@v4 with: path: tmp/parallel_runtime_rspec.log key: runtimes-rspec-${{ matrix.ruby }}-${{ matrix.deps }}-${{ hashFiles('tmp/parallel_runtime_rspec.log') }} @@ -60,7 +64,7 @@ jobs: bin/parallel_rspec RSPEC_FILESYSTEM_CHANGES=true bin/rspec - name: Restore cached cucumber runtimes - uses: actions/cache@v3 + uses: actions/cache@v4 with: path: tmp/parallel_runtime_cucumber.log key: runtimes-cucumber-${{ matrix.ruby }}-${{ matrix.deps }}-${{ hashFiles('tmp/parallel_runtime_cucumber.log') }} @@ -71,9 +75,11 @@ jobs: bin/parallel_cucumber --fail-fast bin/cucumber --profile filesystem-changes bin/cucumber --profile class-reloading - - uses: actions/upload-artifact@v3 + - name: Rename coverage file by matrix run + run: mv coverage/coverage.xml coverage/coverage-ruby-${{ matrix.ruby }}-${{ matrix.deps }}.xml + - uses: actions/upload-artifact@v4 with: - name: coverage + name: coverage-ruby-${{ matrix.ruby }}-${{ matrix.deps }} path: coverage if-no-files-found: error @@ -82,12 +88,14 @@ jobs: runs-on: ubuntu-latest needs: [test] steps: - - uses: actions/checkout@v3 - - uses: actions/download-artifact@v3 + - uses: actions/checkout@v4 + - uses: actions/download-artifact@v4 with: - name: coverage path: coverage - - uses: codecov/codecov-action@v3 + pattern: coverage-ruby-* + merge-multiple: true + - uses: codecov/codecov-action@v4 with: + token: ${{ secrets.CODECOV_TOKEN }} directory: coverage fail_ci_if_error: true diff --git a/.github/workflows/lint.yml b/.github/workflows/lint.yml index 35ab097867a..ce3d0cefa1a 100644 --- a/.github/workflows/lint.yml +++ b/.github/workflows/lint.yml @@ -4,14 +4,14 @@ on: pull_request: env: - RUBY_VERSION: 3.2 + RUBY_VERSION: 3.3 jobs: lint: name: lint runs-on: ubuntu-latest steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - uses: ruby/setup-ruby@v1 with: ruby-version: ${{ env.RUBY_VERSION }} diff --git a/Gemfile b/Gemfile index af671244c3e..70a3d85210d 100644 --- a/Gemfile +++ b/Gemfile @@ -25,13 +25,13 @@ group :test do gem "simplecov", require: false # Test coverage generator. Go to /coverage/ after running tests gem "simplecov-cobertura", require: false - gem "cucumber-rails", require: false, github: "cucumber/cucumber-rails", branch: "main" + gem "cucumber-rails", require: false gem "cucumber" gem "database_cleaner" gem "launchy" gem "parallel_tests" gem "rspec-rails" - gem "sqlite3", platform: :mri + gem "sqlite3", "~> 1.7", platform: :mri # Translations gem "i18n-tasks" diff --git a/Gemfile.lock b/Gemfile.lock index 231896609fd..a0ef70e08c7 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -1,13 +1,3 @@ -GIT - remote: https://github.com/cucumber/cucumber-rails.git - revision: 9879b81609b0871a0dc3bf675ace7bd0cd88c3cc - branch: main - specs: - cucumber-rails (3.0.0.rc.1) - capybara (>= 3.11, < 4) - cucumber (>= 5, < 10) - railties (>= 5.2, < 8) - PATH remote: . specs: @@ -25,74 +15,75 @@ PATH GEM remote: https://rubygems.org/ specs: - actioncable (7.1.0) - actionpack (= 7.1.0) - activesupport (= 7.1.0) + actioncable (7.1.3.2) + actionpack (= 7.1.3.2) + activesupport (= 7.1.3.2) nio4r (~> 2.0) websocket-driver (>= 0.6.1) zeitwerk (~> 2.6) - actionmailbox (7.1.0) - actionpack (= 7.1.0) - activejob (= 7.1.0) - activerecord (= 7.1.0) - activestorage (= 7.1.0) - activesupport (= 7.1.0) + actionmailbox (7.1.3.2) + actionpack (= 7.1.3.2) + activejob (= 7.1.3.2) + activerecord (= 7.1.3.2) + activestorage (= 7.1.3.2) + activesupport (= 7.1.3.2) mail (>= 2.7.1) net-imap net-pop net-smtp - actionmailer (7.1.0) - actionpack (= 7.1.0) - actionview (= 7.1.0) - activejob (= 7.1.0) - activesupport (= 7.1.0) + actionmailer (7.1.3.2) + actionpack (= 7.1.3.2) + actionview (= 7.1.3.2) + activejob (= 7.1.3.2) + activesupport (= 7.1.3.2) mail (~> 2.5, >= 2.5.4) net-imap net-pop net-smtp rails-dom-testing (~> 2.2) - actionpack (7.1.0) - actionview (= 7.1.0) - activesupport (= 7.1.0) + actionpack (7.1.3.2) + actionview (= 7.1.3.2) + activesupport (= 7.1.3.2) 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.0) - actionpack (= 7.1.0) - activerecord (= 7.1.0) - activestorage (= 7.1.0) - activesupport (= 7.1.0) + actiontext (7.1.3.2) + actionpack (= 7.1.3.2) + activerecord (= 7.1.3.2) + activestorage (= 7.1.3.2) + activesupport (= 7.1.3.2) globalid (>= 0.6.0) nokogiri (>= 1.8.5) - actionview (7.1.0) - activesupport (= 7.1.0) + actionview (7.1.3.2) + activesupport (= 7.1.3.2) builder (~> 3.1) erubi (~> 1.11) rails-dom-testing (~> 2.2) rails-html-sanitizer (~> 1.6) - activejob (7.1.0) - activesupport (= 7.1.0) + activejob (7.1.3.2) + activesupport (= 7.1.3.2) globalid (>= 0.3.6) - activemodel (7.1.0) - activesupport (= 7.1.0) + activemodel (7.1.3.2) + activesupport (= 7.1.3.2) activemodel-serializers-xml (1.0.2) activemodel (> 5.x) activesupport (> 5.x) builder (~> 3.1) - activerecord (7.1.0) - activemodel (= 7.1.0) - activesupport (= 7.1.0) + activerecord (7.1.3.2) + activemodel (= 7.1.3.2) + activesupport (= 7.1.3.2) timeout (>= 0.4.0) - activestorage (7.1.0) - actionpack (= 7.1.0) - activejob (= 7.1.0) - activerecord (= 7.1.0) - activesupport (= 7.1.0) + activestorage (7.1.3.2) + actionpack (= 7.1.3.2) + activejob (= 7.1.3.2) + activerecord (= 7.1.3.2) + activesupport (= 7.1.3.2) marcel (~> 1.0) - activesupport (7.1.0) + activesupport (7.1.3.2) base64 bigdecimal concurrent-ruby (~> 1.0, >= 1.0.2) @@ -102,29 +93,29 @@ GEM minitest (>= 5.1) mutex_m tzinfo (~> 2.0) - addressable (2.8.5) + addressable (2.8.6) public_suffix (>= 2.0.2, < 6.0) arbre (1.7.0) activesupport (>= 3.0.0) ruby2_keywords (>= 0.0.2) ast (2.4.2) - base64 (0.1.1) - bcrypt (3.1.19) - better_html (2.0.2) + base64 (0.2.0) + bcrypt (3.1.20) + better_html (2.1.1) actionview (>= 6.0) activesupport (>= 6.0) ast (~> 2.0) erubi (~> 1.4) parser (>= 2.4) smart_properties - bigdecimal (3.1.4) + bigdecimal (3.1.7) builder (3.2.4) cancancan (3.5.0) - capybara (3.39.2) + capybara (3.40.0) addressable matrix mini_mime (>= 0.1.3) - nokogiri (~> 1.8) + nokogiri (~> 1.11) rack (>= 1.6.0) rack-test (>= 0.6.3) regexp_parser (>= 1.5, < 3.0) @@ -132,51 +123,57 @@ GEM chandler (0.9.0) netrc octokit (>= 2.2.0) - concurrent-ruby (1.2.2) + childprocess (5.0.0) + concurrent-ruby (1.2.3) connection_pool (2.4.1) crass (1.0.6) csv (3.3.0) - cucumber (8.0.0) - builder (~> 3.2, >= 3.2.4) - cucumber-ci-environment (~> 9.0, >= 9.0.4) - cucumber-core (~> 11.0, >= 11.0.0) - cucumber-cucumber-expressions (~> 15.1, >= 15.1.1) - cucumber-gherkin (~> 23.0, >= 23.0.1) - cucumber-html-formatter (~> 19.1, >= 19.1.0) - cucumber-messages (~> 18.0, >= 18.0.0) - diff-lcs (~> 1.5, >= 1.5.0) - mime-types (~> 3.4, >= 3.4.1) - multi_test (~> 1.1, >= 1.1.0) - sys-uname (~> 1.2, >= 1.2.2) - cucumber-ci-environment (9.2.0) - cucumber-core (11.0.0) - cucumber-gherkin (~> 23.0, >= 23.0.1) - cucumber-messages (~> 18.0, >= 18.0.0) - cucumber-tag-expressions (~> 4.1, >= 4.1.0) - cucumber-cucumber-expressions (15.2.0) - cucumber-gherkin (23.0.1) - cucumber-messages (~> 18.0, >= 18.0.0) - cucumber-html-formatter (19.2.0) - cucumber-messages (~> 18.0, >= 18.0.0) - cucumber-messages (18.0.0) - cucumber-tag-expressions (4.1.0) - cuprite (0.14.3) + cucumber (9.2.0) + 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.2) + 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.3.1) + cucumber-messages (> 19, < 25) + cucumber-messages (22.0.0) + cucumber-rails (3.0.0) + capybara (>= 3.11, < 4) + cucumber (>= 5, < 10) + railties (>= 5.2, < 8) + cucumber-tag-expressions (6.1.0) + cuprite (0.15) capybara (~> 3.0) - ferrum (~> 0.13.0) + ferrum (~> 0.14.0) database_cleaner (2.0.2) database_cleaner-active_record (>= 2, < 3) database_cleaner-active_record (2.1.0) activerecord (>= 5.a) database_cleaner-core (~> 2.0.0) database_cleaner-core (2.0.1) - date (3.3.3) - devise (4.9.3) + date (3.3.4) + devise (4.9.4) bcrypt (~> 3.0) orm_adapter (~> 0.1) railties (>= 4.1.0) responders warden (~> 1.2.3) - diff-lcs (1.5.0) + diff-lcs (1.5.1) docile (1.4.0) draper (4.0.2) actionpack (>= 5.0) @@ -185,15 +182,13 @@ GEM activesupport (>= 5.0) request_store (>= 1.0) ruby2_keywords - drb (2.1.1) - ruby2_keywords + drb (2.2.1) erubi (1.12.0) - faraday (2.7.11) - base64 - faraday-net_http (>= 2.0, < 3.1) - ruby2_keywords (>= 0.0.4) - faraday-net_http (3.0.2) - ferrum (0.13) + faraday (2.9.0) + faraday-net_http (>= 2.0, < 3.2) + faraday-net_http (3.1.0) + net-http + ferrum (0.14) addressable (~> 2.5) concurrent-ruby (~> 1.1) webrick (~> 1.7) @@ -204,22 +199,22 @@ GEM formtastic_i18n (0.7.0) globalid (1.2.1) activesupport (>= 6.1) - has_scope (0.8.1) + has_scope (0.8.2) actionpack (>= 5.2) activesupport (>= 5.2) - highline (2.1.0) - i18n (1.14.1) + highline (3.0.1) + i18n (1.14.4) concurrent-ruby (~> 1.0) i18n-spec (0.6.0) iso - i18n-tasks (1.0.12) + i18n-tasks (1.0.13) activesupport (>= 4.0.2) ast (>= 2.1.0) better_html (>= 1.0, < 3.0) erubi highline (>= 2.0.0) i18n - parser (>= 2.2.3.0) + parser (>= 3.2.2.1) rails-i18n rainbow (>= 2.2.2, < 4.0) terminal-table (>= 1.5.1) @@ -228,17 +223,17 @@ GEM has_scope (>= 0.6) railties (>= 6.0) responders (>= 2) - io-console (0.6.0) - irb (1.8.1) + io-console (0.7.2) + irb (1.12.0) rdoc - reline (>= 0.3.8) + 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.6.3) + json (2.7.2) kaminari (1.2.2) activesupport (>= 4.1.0) kaminari-actionview (= 1.2.2) @@ -254,9 +249,10 @@ GEM kramdown (2.4.0) rexml language_server-protocol (3.17.0.3) - launchy (2.5.2) + launchy (3.0.0) addressable (~> 2.8) - loofah (2.21.4) + childprocess (~> 5.0) + loofah (2.22.0) crass (~> 1.0.2) nokogiri (>= 1.12.0) mail (2.8.1) @@ -264,51 +260,51 @@ GEM net-imap net-pop net-smtp - marcel (1.0.2) + marcel (1.0.4) matrix (0.4.2) - mime-types (3.5.1) - mime-types-data (~> 3.2015) - mime-types-data (3.2023.1003) mini_mime (1.1.5) - mini_portile2 (2.8.5) - minitest (5.20.0) + mini_portile2 (2.8.6) + minitest (5.22.3) multi_test (1.1.0) - mutex_m (0.1.2) - net-imap (0.4.1) + mutex_m (0.2.0) + net-http (0.4.1) + uri + net-imap (0.4.10) date net-protocol net-pop (0.1.2) net-protocol - net-protocol (0.2.1) + net-protocol (0.2.2) timeout - net-smtp (0.4.0) + net-smtp (0.5.0) net-protocol netrc (0.11.0) - nio4r (2.5.9) - nokogiri (1.15.4) + nio4r (2.7.1) + nokogiri (1.16.4) mini_portile2 (~> 2.8.2) racc (~> 1.4) - nokogiri (1.15.4-arm64-darwin) + nokogiri (1.16.4-arm64-darwin) racc (~> 1.4) - nokogiri (1.15.4-x86_64-linux) + nokogiri (1.16.4-x86_64-linux) racc (~> 1.4) - octokit (7.2.0) + octokit (8.1.0) + base64 faraday (>= 1, < 3) sawyer (~> 0.9) orm_adapter (0.5.0) - parallel (1.23.0) - parallel_tests (4.3.0) + parallel (1.24.0) + parallel_tests (4.7.1) parallel - parser (3.2.2.4) + parser (3.3.1.0) ast (~> 2.4.1) racc - psych (5.1.1) + psych (5.1.2) stringio - public_suffix (5.0.3) + public_suffix (5.0.5) pundit (2.3.1) activesupport (>= 3.0.0) - racc (1.7.1) - rack (3.0.8) + racc (1.7.3) + rack (3.0.10) rack-session (2.0.0) rack (>= 3.0.0) rack-test (2.1.0) @@ -316,20 +312,20 @@ GEM rackup (2.1.0) rack (>= 3) webrick (~> 1.8) - rails (7.1.0) - actioncable (= 7.1.0) - actionmailbox (= 7.1.0) - actionmailer (= 7.1.0) - actionpack (= 7.1.0) - actiontext (= 7.1.0) - actionview (= 7.1.0) - activejob (= 7.1.0) - activemodel (= 7.1.0) - activerecord (= 7.1.0) - activestorage (= 7.1.0) - activesupport (= 7.1.0) + rails (7.1.3.2) + actioncable (= 7.1.3.2) + actionmailbox (= 7.1.3.2) + actionmailer (= 7.1.3.2) + actionpack (= 7.1.3.2) + actiontext (= 7.1.3.2) + actionview (= 7.1.3.2) + activejob (= 7.1.3.2) + activemodel (= 7.1.3.2) + activerecord (= 7.1.3.2) + activestorage (= 7.1.3.2) + activesupport (= 7.1.3.2) bundler (>= 1.15.0) - railties (= 7.1.0) + railties (= 7.1.3.2) rails-dom-testing (2.2.0) activesupport (>= 5.0.0) minitest @@ -337,79 +333,82 @@ GEM rails-html-sanitizer (1.6.0) loofah (~> 2.21) nokogiri (~> 1.14) - rails-i18n (7.0.8) + rails-i18n (7.0.9) i18n (>= 0.7, < 2) railties (>= 6.0.0, < 8) - railties (7.1.0) - actionpack (= 7.1.0) - activesupport (= 7.1.0) + railties (7.1.3.2) + actionpack (= 7.1.3.2) + activesupport (= 7.1.3.2) irb rackup (>= 1.0.0) rake (>= 12.2) thor (~> 1.0, >= 1.2.2) zeitwerk (~> 2.6) rainbow (3.1.1) - rake (13.0.6) - ransack (4.1.0) + rake (13.2.1) + ransack (4.1.1) activerecord (>= 6.1.5) activesupport (>= 6.1.5) i18n - rdoc (6.5.0) + rdoc (6.6.3.1) psych (>= 4.0.0) - regexp_parser (2.8.1) - reline (0.3.9) + regexp_parser (2.9.0) + reline (0.5.4) io-console (~> 0.5) - request_store (1.5.1) + request_store (1.6.0) rack (>= 1.4) responders (3.1.1) actionpack (>= 5.2) railties (>= 5.2) rexml (3.2.6) - rspec-core (3.12.2) - rspec-support (~> 3.12.0) - rspec-expectations (3.12.3) + rspec-core (3.13.0) + rspec-support (~> 3.13.0) + rspec-expectations (3.13.0) diff-lcs (>= 1.2.0, < 2.0) - rspec-support (~> 3.12.0) - rspec-mocks (3.12.6) + rspec-support (~> 3.13.0) + rspec-mocks (3.13.0) diff-lcs (>= 1.2.0, < 2.0) - rspec-support (~> 3.12.0) - rspec-rails (6.0.3) + rspec-support (~> 3.13.0) + rspec-rails (6.1.2) actionpack (>= 6.1) activesupport (>= 6.1) railties (>= 6.1) - rspec-core (~> 3.12) - rspec-expectations (~> 3.12) - rspec-mocks (~> 3.12) - rspec-support (~> 3.12) - rspec-support (3.12.1) - rubocop (1.56.4) - base64 (~> 0.1.1) + rspec-core (~> 3.13) + rspec-expectations (~> 3.13) + rspec-mocks (~> 3.13) + rspec-support (~> 3.13) + rspec-support (3.13.1) + rubocop (1.63.4) json (~> 2.3) language_server-protocol (>= 3.17.0) parallel (~> 1.10) - parser (>= 3.2.2.3) + parser (>= 3.3.0.2) rainbow (>= 2.2.2, < 4.0) regexp_parser (>= 1.8, < 3.0) rexml (>= 3.2.5, < 4.0) - rubocop-ast (>= 1.28.1, < 2.0) + rubocop-ast (>= 1.31.1, < 2.0) ruby-progressbar (~> 1.7) unicode-display_width (>= 2.4.0, < 3.0) - rubocop-ast (1.29.0) - parser (>= 3.2.1.0) - rubocop-capybara (2.19.0) + rubocop-ast (1.31.3) + parser (>= 3.3.1.0) + rubocop-capybara (2.20.0) + rubocop (~> 1.41) + rubocop-factory_bot (2.25.1) rubocop (~> 1.41) - rubocop-factory_bot (2.24.0) - rubocop (~> 1.33) rubocop-packaging (0.5.2) rubocop (>= 1.33, < 2.0) - rubocop-rails (2.21.2) + rubocop-rails (2.24.1) activesupport (>= 4.2.0) rack (>= 1.1) rubocop (>= 1.33.0, < 2.0) - rubocop-rspec (2.24.1) - rubocop (~> 1.33) + rubocop-ast (>= 1.31.1, < 2.0) + rubocop-rspec (2.29.1) + rubocop (~> 1.40) rubocop-capybara (~> 2.17) rubocop-factory_bot (~> 2.22) + rubocop-rspec_rails (~> 2.28) + rubocop-rspec_rails (2.28.3) + rubocop (~> 1.40) ruby-progressbar (1.13.0) ruby2_keywords (0.0.5) sassc (2.4.0) @@ -440,21 +439,22 @@ GEM actionpack (>= 5.2) activesupport (>= 5.2) sprockets (>= 3.0.0) - sqlite3 (1.6.6) + sqlite3 (1.7.3) mini_portile2 (~> 2.8.0) - sqlite3 (1.6.6-arm64-darwin) - sqlite3 (1.6.6-x86_64-linux) - stringio (3.0.8) + sqlite3 (1.7.3-arm64-darwin) + sqlite3 (1.7.3-x86_64-linux) + stringio (3.1.0) sys-uname (1.2.3) ffi (~> 1.1) terminal-table (3.0.2) unicode-display_width (>= 1.1.1, < 3) - thor (1.2.2) + thor (1.3.1) tilt (2.3.0) - timeout (0.4.0) + timeout (0.4.1) tzinfo (2.0.6) concurrent-ruby (~> 1.0) unicode-display_width (2.5.0) + uri (0.13.0) warden (1.2.9) rack (>= 2.0.9) webrick (1.8.1) @@ -463,8 +463,8 @@ GEM websocket-extensions (0.1.5) xpath (3.2.0) nokogiri (~> 1.8) - yard (0.9.34) - zeitwerk (2.6.12) + yard (0.9.36) + zeitwerk (2.6.13) PLATFORMS arm64-darwin-21 @@ -477,7 +477,7 @@ DEPENDENCIES capybara chandler cucumber - cucumber-rails! + cucumber-rails cuprite database_cleaner devise @@ -503,9 +503,9 @@ DEPENDENCIES simplecov simplecov-cobertura sprockets-rails - sqlite3 + sqlite3 (~> 1.7) webrick yard BUNDLED WITH - 2.4.8 + 2.5.9 diff --git a/gemfiles/rails_61/Gemfile b/gemfiles/rails_61/Gemfile index bea83ec4258..fccfe15d9fc 100644 --- a/gemfiles/rails_61/Gemfile +++ b/gemfiles/rails_61/Gemfile @@ -31,7 +31,7 @@ group :test do gem "launchy" gem "parallel_tests" gem "rspec-rails" - gem "sqlite3", platform: :mri + gem "sqlite3", "~> 1.7", platform: :mri # Translations gem "i18n-tasks" diff --git a/gemfiles/rails_61/Gemfile.lock b/gemfiles/rails_61/Gemfile.lock index dd916a911c3..7401e511d81 100644 --- a/gemfiles/rails_61/Gemfile.lock +++ b/gemfiles/rails_61/Gemfile.lock @@ -15,153 +15,153 @@ PATH GEM remote: https://rubygems.org/ specs: - actioncable (6.1.7.6) - actionpack (= 6.1.7.6) - activesupport (= 6.1.7.6) + actioncable (6.1.7.7) + actionpack (= 6.1.7.7) + activesupport (= 6.1.7.7) nio4r (~> 2.0) websocket-driver (>= 0.6.1) - actionmailbox (6.1.7.6) - actionpack (= 6.1.7.6) - activejob (= 6.1.7.6) - activerecord (= 6.1.7.6) - activestorage (= 6.1.7.6) - activesupport (= 6.1.7.6) + actionmailbox (6.1.7.7) + actionpack (= 6.1.7.7) + activejob (= 6.1.7.7) + activerecord (= 6.1.7.7) + activestorage (= 6.1.7.7) + activesupport (= 6.1.7.7) mail (>= 2.7.1) - actionmailer (6.1.7.6) - actionpack (= 6.1.7.6) - actionview (= 6.1.7.6) - activejob (= 6.1.7.6) - activesupport (= 6.1.7.6) + actionmailer (6.1.7.7) + actionpack (= 6.1.7.7) + actionview (= 6.1.7.7) + activejob (= 6.1.7.7) + activesupport (= 6.1.7.7) mail (~> 2.5, >= 2.5.4) rails-dom-testing (~> 2.0) - actionpack (6.1.7.6) - actionview (= 6.1.7.6) - activesupport (= 6.1.7.6) + actionpack (6.1.7.7) + actionview (= 6.1.7.7) + activesupport (= 6.1.7.7) 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.6) - actionpack (= 6.1.7.6) - activerecord (= 6.1.7.6) - activestorage (= 6.1.7.6) - activesupport (= 6.1.7.6) + actiontext (6.1.7.7) + actionpack (= 6.1.7.7) + activerecord (= 6.1.7.7) + activestorage (= 6.1.7.7) + activesupport (= 6.1.7.7) nokogiri (>= 1.8.5) - actionview (6.1.7.6) - activesupport (= 6.1.7.6) + actionview (6.1.7.7) + activesupport (= 6.1.7.7) builder (~> 3.1) erubi (~> 1.4) rails-dom-testing (~> 2.0) rails-html-sanitizer (~> 1.1, >= 1.2.0) - activejob (6.1.7.6) - activesupport (= 6.1.7.6) + activejob (6.1.7.7) + activesupport (= 6.1.7.7) globalid (>= 0.3.6) - activemodel (6.1.7.6) - activesupport (= 6.1.7.6) + activemodel (6.1.7.7) + activesupport (= 6.1.7.7) activemodel-serializers-xml (1.0.2) activemodel (> 5.x) activesupport (> 5.x) builder (~> 3.1) - activerecord (6.1.7.6) - activemodel (= 6.1.7.6) - activesupport (= 6.1.7.6) - activerecord-jdbc-adapter (61.2-java) + activerecord (6.1.7.7) + activemodel (= 6.1.7.7) + activesupport (= 6.1.7.7) + activerecord-jdbc-adapter (61.3-java) activerecord (~> 6.1.0) - activerecord-jdbcsqlite3-adapter (61.2-java) - activerecord-jdbc-adapter (= 61.2) - jdbc-sqlite3 (~> 3.8, < 3.30) - activestorage (6.1.7.6) - actionpack (= 6.1.7.6) - activejob (= 6.1.7.6) - activerecord (= 6.1.7.6) - activesupport (= 6.1.7.6) + activerecord-jdbcsqlite3-adapter (61.3-java) + activerecord-jdbc-adapter (= 61.3) + jdbc-sqlite3 (~> 3.8) + activestorage (6.1.7.7) + actionpack (= 6.1.7.7) + activejob (= 6.1.7.7) + activerecord (= 6.1.7.7) + activesupport (= 6.1.7.7) marcel (~> 1.0) mini_mime (>= 1.1.0) - activesupport (6.1.7.6) + activesupport (6.1.7.7) concurrent-ruby (~> 1.0, >= 1.0.2) i18n (>= 1.6, < 2) minitest (>= 5.1) tzinfo (~> 2.0) zeitwerk (~> 2.3) - addressable (2.8.5) + addressable (2.8.6) public_suffix (>= 2.0.2, < 6.0) arbre (1.7.0) activesupport (>= 3.0.0) ruby2_keywords (>= 0.0.2) ast (2.4.2) - bcrypt (3.1.19) - bcrypt (3.1.19-java) - better_html (2.0.2) + bcrypt (3.1.20) + bcrypt (3.1.20-java) + better_html (2.1.1) actionview (>= 6.0) activesupport (>= 6.0) ast (~> 2.0) erubi (~> 1.4) parser (>= 2.4) smart_properties + bigdecimal (3.1.7) + bigdecimal (3.1.7-java) builder (3.2.4) cancancan (3.5.0) - capybara (3.39.2) + capybara (3.40.0) addressable matrix mini_mime (>= 0.1.3) - nokogiri (~> 1.8) + nokogiri (~> 1.11) rack (>= 1.6.0) rack-test (>= 0.6.3) regexp_parser (>= 1.5, < 3.0) xpath (~> 3.2) - concurrent-ruby (1.2.2) + childprocess (5.0.0) + concurrent-ruby (1.2.3) crass (1.0.6) csv (3.3.0) - cucumber (8.0.0) - builder (~> 3.2, >= 3.2.4) - cucumber-ci-environment (~> 9.0, >= 9.0.4) - cucumber-core (~> 11.0, >= 11.0.0) - cucumber-cucumber-expressions (~> 15.1, >= 15.1.1) - cucumber-gherkin (~> 23.0, >= 23.0.1) - cucumber-html-formatter (~> 19.1, >= 19.1.0) - cucumber-messages (~> 18.0, >= 18.0.0) - diff-lcs (~> 1.5, >= 1.5.0) - mime-types (~> 3.4, >= 3.4.1) - multi_test (~> 1.1, >= 1.1.0) - sys-uname (~> 1.2, >= 1.2.2) - cucumber-ci-environment (9.2.0) - cucumber-core (11.0.0) - cucumber-gherkin (~> 23.0, >= 23.0.1) - cucumber-messages (~> 18.0, >= 18.0.0) - cucumber-tag-expressions (~> 4.1, >= 4.1.0) - cucumber-cucumber-expressions (15.2.0) - cucumber-gherkin (23.0.1) - cucumber-messages (~> 18.0, >= 18.0.0) - cucumber-html-formatter (19.2.0) - cucumber-messages (~> 18.0, >= 18.0.0) - cucumber-messages (18.0.0) - cucumber-rails (2.6.1) - capybara (>= 2.18, < 4) - cucumber (>= 3.2, < 9) - mime-types (~> 3.3) - nokogiri (~> 1.10) - railties (>= 5.0, < 8) - rexml (~> 3.0) - webrick (~> 1.7) - cucumber-tag-expressions (4.1.0) - cuprite (0.14.3) + cucumber (9.2.0) + 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.2) + 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.3.1) + cucumber-messages (> 19, < 25) + cucumber-messages (22.0.0) + cucumber-rails (3.0.0) + capybara (>= 3.11, < 4) + cucumber (>= 5, < 10) + railties (>= 5.2, < 8) + cucumber-tag-expressions (6.1.0) + cuprite (0.15) capybara (~> 3.0) - ferrum (~> 0.13.0) + ferrum (~> 0.14.0) database_cleaner (2.0.2) database_cleaner-active_record (>= 2, < 3) database_cleaner-active_record (2.1.0) activerecord (>= 5.a) database_cleaner-core (~> 2.0.0) database_cleaner-core (2.0.1) - date (3.3.3) - date (3.3.3-java) - devise (4.9.2) + date (3.3.4) + date (3.3.4-java) + devise (4.9.4) bcrypt (~> 3.0) orm_adapter (~> 0.1) railties (>= 4.1.0) responders warden (~> 1.2.3) - diff-lcs (1.5.0) + diff-lcs (1.5.1) docile (1.4.0) draper (4.0.2) actionpack (>= 5.0) @@ -171,34 +171,34 @@ GEM request_store (>= 1.0) ruby2_keywords erubi (1.12.0) - ferrum (0.13) + ferrum (0.14) addressable (~> 2.5) concurrent-ruby (~> 1.1) webrick (~> 1.7) websocket-driver (>= 0.6, < 0.8) ffi (1.16.3) ffi (1.16.3-java) - formtastic (4.0.0) - actionpack (>= 5.2.0) + formtastic (5.0.0) + actionpack (>= 6.0.0) formtastic_i18n (0.7.0) globalid (1.2.1) activesupport (>= 6.1) - has_scope (0.8.1) + has_scope (0.8.2) actionpack (>= 5.2) activesupport (>= 5.2) - highline (2.1.0) - i18n (1.14.1) + highline (3.0.1) + i18n (1.14.4) concurrent-ruby (~> 1.0) i18n-spec (0.6.0) iso - i18n-tasks (1.0.12) + i18n-tasks (1.0.13) activesupport (>= 4.0.2) ast (>= 2.1.0) better_html (>= 1.0, < 3.0) erubi highline (>= 2.0.0) i18n - parser (>= 2.2.3.0) + parser (>= 3.2.2.1) rails-i18n rainbow (>= 2.2.2, < 4.0) terminal-table (>= 1.5.1) @@ -209,12 +209,12 @@ GEM responders (>= 2) iso (0.4.0) i18n - jdbc-sqlite3 (3.28.0) + jdbc-sqlite3 (3.42.0.0) jquery-rails (4.6.0) rails-dom-testing (>= 1, < 3) railties (>= 4.2.0) thor (>= 0.14, < 2.0) - jruby-openssl (0.14.2-java) + jruby-openssl (0.14.5-java) kaminari (1.2.2) activesupport (>= 4.1.0) kaminari-actionview (= 1.2.2) @@ -227,9 +227,10 @@ GEM activerecord kaminari-core (= 1.2.2) kaminari-core (1.2.2) - launchy (2.5.2) + launchy (3.0.0) addressable (~> 2.8) - loofah (2.21.3) + childprocess (~> 5.0) + loofah (2.22.0) crass (~> 1.0.2) nokogiri (>= 1.12.0) mail (2.8.1) @@ -237,65 +238,62 @@ GEM net-imap net-pop net-smtp - marcel (1.0.2) + marcel (1.0.4) matrix (0.4.2) - method_source (1.0.0) - mime-types (3.5.1) - mime-types-data (~> 3.2015) - mime-types-data (3.2023.1003) + method_source (1.1.0) mini_mime (1.1.5) - mini_portile2 (2.8.4) - minitest (5.20.0) + mini_portile2 (2.8.6) + minitest (5.22.3) multi_test (1.1.0) - net-imap (0.4.1) + net-imap (0.4.10) date net-protocol net-pop (0.1.2) net-protocol - net-protocol (0.2.1) + net-protocol (0.2.2) timeout - net-smtp (0.4.0) + net-smtp (0.5.0) net-protocol - nio4r (2.5.9) - nio4r (2.5.9-java) - nokogiri (1.15.4) + nio4r (2.7.1) + nio4r (2.7.1-java) + nokogiri (1.16.4) mini_portile2 (~> 2.8.2) racc (~> 1.4) - nokogiri (1.15.4-arm64-darwin) + nokogiri (1.16.4-arm64-darwin) racc (~> 1.4) - nokogiri (1.15.4-java) + nokogiri (1.16.4-java) racc (~> 1.4) - nokogiri (1.15.4-x86_64-linux) + nokogiri (1.16.4-x86_64-linux) racc (~> 1.4) orm_adapter (0.5.0) - parallel (1.23.0) - parallel_tests (4.3.0) + parallel (1.24.0) + parallel_tests (4.7.1) parallel - parser (3.2.2.4) + parser (3.3.1.0) ast (~> 2.4.1) racc - public_suffix (5.0.3) + public_suffix (5.0.5) pundit (2.3.1) activesupport (>= 3.0.0) - racc (1.7.1) - racc (1.7.1-java) - rack (2.2.8) + racc (1.7.3) + racc (1.7.3-java) + rack (2.2.9) rack-test (2.1.0) rack (>= 1.3) - rails (6.1.7.6) - actioncable (= 6.1.7.6) - actionmailbox (= 6.1.7.6) - actionmailer (= 6.1.7.6) - actionpack (= 6.1.7.6) - actiontext (= 6.1.7.6) - actionview (= 6.1.7.6) - activejob (= 6.1.7.6) - activemodel (= 6.1.7.6) - activerecord (= 6.1.7.6) - activestorage (= 6.1.7.6) - activesupport (= 6.1.7.6) + rails (6.1.7.7) + actioncable (= 6.1.7.7) + actionmailbox (= 6.1.7.7) + actionmailer (= 6.1.7.7) + actionpack (= 6.1.7.7) + actiontext (= 6.1.7.7) + actionview (= 6.1.7.7) + activejob (= 6.1.7.7) + activemodel (= 6.1.7.7) + activerecord (= 6.1.7.7) + activestorage (= 6.1.7.7) + activesupport (= 6.1.7.7) bundler (>= 1.15.0) - railties (= 6.1.7.6) + railties (= 6.1.7.7) sprockets-rails (>= 2.0.0) rails-dom-testing (2.2.0) activesupport (>= 5.0.0) @@ -304,45 +302,45 @@ GEM rails-html-sanitizer (1.6.0) loofah (~> 2.21) nokogiri (~> 1.14) - rails-i18n (7.0.8) + rails-i18n (7.0.9) i18n (>= 0.7, < 2) railties (>= 6.0.0, < 8) - railties (6.1.7.6) - actionpack (= 6.1.7.6) - activesupport (= 6.1.7.6) + railties (6.1.7.7) + actionpack (= 6.1.7.7) + activesupport (= 6.1.7.7) method_source rake (>= 12.2) thor (~> 1.0) rainbow (3.1.1) - rake (13.0.6) - ransack (4.0.0) + rake (13.2.1) + ransack (4.1.1) activerecord (>= 6.1.5) activesupport (>= 6.1.5) i18n - regexp_parser (2.8.1) - request_store (1.5.1) + regexp_parser (2.9.0) + request_store (1.6.0) rack (>= 1.4) - responders (3.1.0) + responders (3.1.1) actionpack (>= 5.2) railties (>= 5.2) rexml (3.2.6) - rspec-core (3.12.2) - rspec-support (~> 3.12.0) - rspec-expectations (3.12.3) + rspec-core (3.13.0) + rspec-support (~> 3.13.0) + rspec-expectations (3.13.0) diff-lcs (>= 1.2.0, < 2.0) - rspec-support (~> 3.12.0) - rspec-mocks (3.12.6) + rspec-support (~> 3.13.0) + rspec-mocks (3.13.0) diff-lcs (>= 1.2.0, < 2.0) - rspec-support (~> 3.12.0) - rspec-rails (6.0.3) + rspec-support (~> 3.13.0) + rspec-rails (6.1.2) actionpack (>= 6.1) activesupport (>= 6.1) railties (>= 6.1) - rspec-core (~> 3.12) - rspec-expectations (~> 3.12) - rspec-mocks (~> 3.12) - rspec-support (~> 3.12) - rspec-support (3.12.1) + rspec-core (~> 3.13) + rspec-expectations (~> 3.13) + rspec-mocks (~> 3.13) + rspec-support (~> 3.13) + rspec-support (3.13.1) ruby2_keywords (0.0.5) sassc (2.4.0) ffi (~> 1.9) @@ -369,17 +367,17 @@ GEM actionpack (>= 5.2) activesupport (>= 5.2) sprockets (>= 3.0.0) - sqlite3 (1.6.6) + sqlite3 (1.7.3) mini_portile2 (~> 2.8.0) - sqlite3 (1.6.6-arm64-darwin) - sqlite3 (1.6.6-x86_64-linux) + sqlite3 (1.7.3-arm64-darwin) + sqlite3 (1.7.3-x86_64-linux) sys-uname (1.2.3) ffi (~> 1.1) terminal-table (3.0.2) unicode-display_width (>= 1.1.1, < 3) - thor (1.2.2) + thor (1.3.1) tilt (2.3.0) - timeout (0.4.0) + timeout (0.4.1) tzinfo (2.0.6) concurrent-ruby (~> 1.0) unicode-display_width (2.5.0) @@ -393,7 +391,7 @@ GEM websocket-extensions (0.1.5) xpath (3.2.0) nokogiri (~> 1.8) - zeitwerk (2.6.12) + zeitwerk (2.6.13) PLATFORMS arm64-darwin-21 @@ -426,8 +424,8 @@ DEPENDENCIES simplecov simplecov-cobertura sprockets-rails - sqlite3 + sqlite3 (~> 1.7) webrick BUNDLED WITH - 2.4.8 + 2.5.9 diff --git a/gemfiles/rails_70/Gemfile b/gemfiles/rails_70/Gemfile index 0b9b464ea1f..990bdf26222 100644 --- a/gemfiles/rails_70/Gemfile +++ b/gemfiles/rails_70/Gemfile @@ -29,7 +29,7 @@ group :test do gem "launchy" gem "parallel_tests" gem "rspec-rails" - gem "sqlite3", platform: :mri + gem "sqlite3", "~> 1.7", platform: :mri # Translations gem "i18n-tasks" diff --git a/gemfiles/rails_70/Gemfile.lock b/gemfiles/rails_70/Gemfile.lock index 637328a6922..1c7c594dfc3 100644 --- a/gemfiles/rails_70/Gemfile.lock +++ b/gemfiles/rails_70/Gemfile.lock @@ -15,152 +15,151 @@ PATH GEM remote: https://rubygems.org/ specs: - actioncable (7.0.8) - actionpack (= 7.0.8) - activesupport (= 7.0.8) + actioncable (7.0.8.1) + actionpack (= 7.0.8.1) + activesupport (= 7.0.8.1) nio4r (~> 2.0) websocket-driver (>= 0.6.1) - actionmailbox (7.0.8) - actionpack (= 7.0.8) - activejob (= 7.0.8) - activerecord (= 7.0.8) - activestorage (= 7.0.8) - activesupport (= 7.0.8) + actionmailbox (7.0.8.1) + actionpack (= 7.0.8.1) + activejob (= 7.0.8.1) + activerecord (= 7.0.8.1) + activestorage (= 7.0.8.1) + activesupport (= 7.0.8.1) mail (>= 2.7.1) net-imap net-pop net-smtp - actionmailer (7.0.8) - actionpack (= 7.0.8) - actionview (= 7.0.8) - activejob (= 7.0.8) - activesupport (= 7.0.8) + actionmailer (7.0.8.1) + actionpack (= 7.0.8.1) + actionview (= 7.0.8.1) + activejob (= 7.0.8.1) + activesupport (= 7.0.8.1) mail (~> 2.5, >= 2.5.4) net-imap net-pop net-smtp rails-dom-testing (~> 2.0) - actionpack (7.0.8) - actionview (= 7.0.8) - activesupport (= 7.0.8) + actionpack (7.0.8.1) + actionview (= 7.0.8.1) + activesupport (= 7.0.8.1) 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) - actionpack (= 7.0.8) - activerecord (= 7.0.8) - activestorage (= 7.0.8) - activesupport (= 7.0.8) + actiontext (7.0.8.1) + actionpack (= 7.0.8.1) + activerecord (= 7.0.8.1) + activestorage (= 7.0.8.1) + activesupport (= 7.0.8.1) globalid (>= 0.6.0) nokogiri (>= 1.8.5) - actionview (7.0.8) - activesupport (= 7.0.8) + actionview (7.0.8.1) + activesupport (= 7.0.8.1) builder (~> 3.1) erubi (~> 1.4) rails-dom-testing (~> 2.0) rails-html-sanitizer (~> 1.1, >= 1.2.0) - activejob (7.0.8) - activesupport (= 7.0.8) + activejob (7.0.8.1) + activesupport (= 7.0.8.1) globalid (>= 0.3.6) - activemodel (7.0.8) - activesupport (= 7.0.8) + activemodel (7.0.8.1) + activesupport (= 7.0.8.1) activemodel-serializers-xml (1.0.2) activemodel (> 5.x) activesupport (> 5.x) builder (~> 3.1) - activerecord (7.0.8) - activemodel (= 7.0.8) - activesupport (= 7.0.8) - activestorage (7.0.8) - actionpack (= 7.0.8) - activejob (= 7.0.8) - activerecord (= 7.0.8) - activesupport (= 7.0.8) + activerecord (7.0.8.1) + activemodel (= 7.0.8.1) + activesupport (= 7.0.8.1) + activestorage (7.0.8.1) + actionpack (= 7.0.8.1) + activejob (= 7.0.8.1) + activerecord (= 7.0.8.1) + activesupport (= 7.0.8.1) marcel (~> 1.0) mini_mime (>= 1.1.0) - activesupport (7.0.8) + activesupport (7.0.8.1) concurrent-ruby (~> 1.0, >= 1.0.2) i18n (>= 1.6, < 2) minitest (>= 5.1) tzinfo (~> 2.0) - addressable (2.8.5) + addressable (2.8.6) public_suffix (>= 2.0.2, < 6.0) arbre (1.7.0) activesupport (>= 3.0.0) ruby2_keywords (>= 0.0.2) ast (2.4.2) - bcrypt (3.1.19) - better_html (2.0.2) + bcrypt (3.1.20) + better_html (2.1.1) actionview (>= 6.0) activesupport (>= 6.0) ast (~> 2.0) erubi (~> 1.4) parser (>= 2.4) smart_properties + bigdecimal (3.1.7) builder (3.2.4) cancancan (3.5.0) - capybara (3.39.2) + capybara (3.40.0) addressable matrix mini_mime (>= 0.1.3) - nokogiri (~> 1.8) + nokogiri (~> 1.11) rack (>= 1.6.0) rack-test (>= 0.6.3) regexp_parser (>= 1.5, < 3.0) xpath (~> 3.2) - concurrent-ruby (1.2.2) + childprocess (5.0.0) + concurrent-ruby (1.2.3) crass (1.0.6) csv (3.3.0) - cucumber (8.0.0) - builder (~> 3.2, >= 3.2.4) - cucumber-ci-environment (~> 9.0, >= 9.0.4) - cucumber-core (~> 11.0, >= 11.0.0) - cucumber-cucumber-expressions (~> 15.1, >= 15.1.1) - cucumber-gherkin (~> 23.0, >= 23.0.1) - cucumber-html-formatter (~> 19.1, >= 19.1.0) - cucumber-messages (~> 18.0, >= 18.0.0) - diff-lcs (~> 1.5, >= 1.5.0) - mime-types (~> 3.4, >= 3.4.1) - multi_test (~> 1.1, >= 1.1.0) - sys-uname (~> 1.2, >= 1.2.2) - cucumber-ci-environment (9.2.0) - cucumber-core (11.0.0) - cucumber-gherkin (~> 23.0, >= 23.0.1) - cucumber-messages (~> 18.0, >= 18.0.0) - cucumber-tag-expressions (~> 4.1, >= 4.1.0) - cucumber-cucumber-expressions (15.2.0) - cucumber-gherkin (23.0.1) - cucumber-messages (~> 18.0, >= 18.0.0) - cucumber-html-formatter (19.2.0) - cucumber-messages (~> 18.0, >= 18.0.0) - cucumber-messages (18.0.0) - cucumber-rails (2.6.1) - capybara (>= 2.18, < 4) - cucumber (>= 3.2, < 9) - mime-types (~> 3.3) - nokogiri (~> 1.10) - railties (>= 5.0, < 8) - rexml (~> 3.0) - webrick (~> 1.7) - cucumber-tag-expressions (4.1.0) - cuprite (0.14.3) + cucumber (9.2.0) + 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.2) + 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.3.1) + cucumber-messages (> 19, < 25) + cucumber-messages (22.0.0) + cucumber-rails (3.0.0) + capybara (>= 3.11, < 4) + cucumber (>= 5, < 10) + railties (>= 5.2, < 8) + cucumber-tag-expressions (6.1.0) + cuprite (0.15) capybara (~> 3.0) - ferrum (~> 0.13.0) + ferrum (~> 0.14.0) database_cleaner (2.0.2) database_cleaner-active_record (>= 2, < 3) database_cleaner-active_record (2.1.0) activerecord (>= 5.a) database_cleaner-core (~> 2.0.0) database_cleaner-core (2.0.1) - date (3.3.3) - devise (4.9.2) + date (3.3.4) + devise (4.9.4) bcrypt (~> 3.0) orm_adapter (~> 0.1) railties (>= 4.1.0) responders warden (~> 1.2.3) - diff-lcs (1.5.0) + diff-lcs (1.5.1) docile (1.4.0) draper (4.0.2) actionpack (>= 5.0) @@ -170,33 +169,33 @@ GEM request_store (>= 1.0) ruby2_keywords erubi (1.12.0) - ferrum (0.13) + ferrum (0.14) addressable (~> 2.5) concurrent-ruby (~> 1.1) webrick (~> 1.7) websocket-driver (>= 0.6, < 0.8) ffi (1.16.3) - formtastic (4.0.0) - actionpack (>= 5.2.0) + formtastic (5.0.0) + actionpack (>= 6.0.0) formtastic_i18n (0.7.0) globalid (1.2.1) activesupport (>= 6.1) - has_scope (0.8.1) + has_scope (0.8.2) actionpack (>= 5.2) activesupport (>= 5.2) - highline (2.1.0) - i18n (1.14.1) + highline (3.0.1) + i18n (1.14.4) concurrent-ruby (~> 1.0) i18n-spec (0.6.0) iso - i18n-tasks (1.0.12) + i18n-tasks (1.0.13) activesupport (>= 4.0.2) ast (>= 2.1.0) better_html (>= 1.0, < 3.0) erubi highline (>= 2.0.0) i18n - parser (>= 2.2.3.0) + parser (>= 3.2.2.1) rails-i18n rainbow (>= 2.2.2, < 4.0) terminal-table (>= 1.5.1) @@ -223,9 +222,10 @@ GEM activerecord kaminari-core (= 1.2.2) kaminari-core (1.2.2) - launchy (2.5.2) + launchy (3.0.0) addressable (~> 2.8) - loofah (2.21.3) + childprocess (~> 5.0) + loofah (2.22.0) crass (~> 1.0.2) nokogiri (>= 1.12.0) mail (2.8.1) @@ -233,61 +233,58 @@ GEM net-imap net-pop net-smtp - marcel (1.0.2) + marcel (1.0.4) matrix (0.4.2) - method_source (1.0.0) - mime-types (3.5.1) - mime-types-data (~> 3.2015) - mime-types-data (3.2023.1003) + method_source (1.1.0) mini_mime (1.1.5) - mini_portile2 (2.8.4) - minitest (5.20.0) + mini_portile2 (2.8.6) + minitest (5.22.3) multi_test (1.1.0) - net-imap (0.4.1) + net-imap (0.4.10) date net-protocol net-pop (0.1.2) net-protocol - net-protocol (0.2.1) + net-protocol (0.2.2) timeout - net-smtp (0.4.0) + net-smtp (0.5.0) net-protocol - nio4r (2.5.9) - nokogiri (1.15.4) + nio4r (2.7.1) + nokogiri (1.16.4) mini_portile2 (~> 2.8.2) racc (~> 1.4) - nokogiri (1.15.4-arm64-darwin) + nokogiri (1.16.4-arm64-darwin) racc (~> 1.4) - nokogiri (1.15.4-x86_64-linux) + nokogiri (1.16.4-x86_64-linux) racc (~> 1.4) orm_adapter (0.5.0) - parallel (1.23.0) - parallel_tests (4.3.0) + parallel (1.24.0) + parallel_tests (4.7.1) parallel - parser (3.2.2.4) + parser (3.3.1.0) ast (~> 2.4.1) racc - public_suffix (5.0.3) + public_suffix (5.0.5) pundit (2.3.1) activesupport (>= 3.0.0) - racc (1.7.1) - rack (2.2.8) + racc (1.7.3) + rack (2.2.9) rack-test (2.1.0) rack (>= 1.3) - rails (7.0.8) - actioncable (= 7.0.8) - actionmailbox (= 7.0.8) - actionmailer (= 7.0.8) - actionpack (= 7.0.8) - actiontext (= 7.0.8) - actionview (= 7.0.8) - activejob (= 7.0.8) - activemodel (= 7.0.8) - activerecord (= 7.0.8) - activestorage (= 7.0.8) - activesupport (= 7.0.8) + rails (7.0.8.1) + actioncable (= 7.0.8.1) + actionmailbox (= 7.0.8.1) + actionmailer (= 7.0.8.1) + actionpack (= 7.0.8.1) + actiontext (= 7.0.8.1) + actionview (= 7.0.8.1) + activejob (= 7.0.8.1) + activemodel (= 7.0.8.1) + activerecord (= 7.0.8.1) + activestorage (= 7.0.8.1) + activesupport (= 7.0.8.1) bundler (>= 1.15.0) - railties (= 7.0.8) + railties (= 7.0.8.1) rails-dom-testing (2.2.0) activesupport (>= 5.0.0) minitest @@ -295,46 +292,46 @@ GEM rails-html-sanitizer (1.6.0) loofah (~> 2.21) nokogiri (~> 1.14) - rails-i18n (7.0.8) + rails-i18n (7.0.9) i18n (>= 0.7, < 2) railties (>= 6.0.0, < 8) - railties (7.0.8) - actionpack (= 7.0.8) - activesupport (= 7.0.8) + railties (7.0.8.1) + actionpack (= 7.0.8.1) + activesupport (= 7.0.8.1) method_source rake (>= 12.2) thor (~> 1.0) zeitwerk (~> 2.5) rainbow (3.1.1) - rake (13.0.6) - ransack (4.0.0) + rake (13.2.1) + ransack (4.1.1) activerecord (>= 6.1.5) activesupport (>= 6.1.5) i18n - regexp_parser (2.8.1) - request_store (1.5.1) + regexp_parser (2.9.0) + request_store (1.6.0) rack (>= 1.4) - responders (3.1.0) + responders (3.1.1) actionpack (>= 5.2) railties (>= 5.2) rexml (3.2.6) - rspec-core (3.12.2) - rspec-support (~> 3.12.0) - rspec-expectations (3.12.3) + rspec-core (3.13.0) + rspec-support (~> 3.13.0) + rspec-expectations (3.13.0) diff-lcs (>= 1.2.0, < 2.0) - rspec-support (~> 3.12.0) - rspec-mocks (3.12.6) + rspec-support (~> 3.13.0) + rspec-mocks (3.13.0) diff-lcs (>= 1.2.0, < 2.0) - rspec-support (~> 3.12.0) - rspec-rails (6.0.3) + rspec-support (~> 3.13.0) + rspec-rails (6.1.2) actionpack (>= 6.1) activesupport (>= 6.1) railties (>= 6.1) - rspec-core (~> 3.12) - rspec-expectations (~> 3.12) - rspec-mocks (~> 3.12) - rspec-support (~> 3.12) - rspec-support (3.12.1) + rspec-core (~> 3.13) + rspec-expectations (~> 3.13) + rspec-mocks (~> 3.13) + rspec-support (~> 3.13) + rspec-support (3.13.1) ruby2_keywords (0.0.5) sassc (2.4.0) ffi (~> 1.9) @@ -361,17 +358,17 @@ GEM actionpack (>= 5.2) activesupport (>= 5.2) sprockets (>= 3.0.0) - sqlite3 (1.6.6) + sqlite3 (1.7.3) mini_portile2 (~> 2.8.0) - sqlite3 (1.6.6-arm64-darwin) - sqlite3 (1.6.6-x86_64-linux) + sqlite3 (1.7.3-arm64-darwin) + sqlite3 (1.7.3-x86_64-linux) sys-uname (1.2.3) ffi (~> 1.1) terminal-table (3.0.2) unicode-display_width (>= 1.1.1, < 3) - thor (1.2.2) + thor (1.3.1) tilt (2.3.0) - timeout (0.4.0) + timeout (0.4.1) tzinfo (2.0.6) concurrent-ruby (~> 1.0) unicode-display_width (2.5.0) @@ -383,7 +380,7 @@ GEM websocket-extensions (0.1.5) xpath (3.2.0) nokogiri (~> 1.8) - zeitwerk (2.6.12) + zeitwerk (2.6.13) PLATFORMS arm64-darwin-21 @@ -413,8 +410,8 @@ DEPENDENCIES simplecov simplecov-cobertura sprockets-rails - sqlite3 + sqlite3 (~> 1.7) webrick BUNDLED WITH - 2.4.8 + 2.5.9 From 67ee3b4f233c63b719d592fefe8402e53d845e58 Mon Sep 17 00:00:00 2001 From: Matias Grunberg Date: Wed, 1 May 2024 21:32:05 -0300 Subject: [PATCH 04/47] Get ready for 3.2.1 release (#8312) --- CHANGELOG.md | 9 +++++++++ Gemfile.lock | 2 +- gemfiles/rails_61/Gemfile.lock | 2 +- gemfiles/rails_70/Gemfile.lock | 2 +- lib/active_admin/version.rb | 2 +- package.json | 2 +- 6 files changed, 14 insertions(+), 5 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 0dced96e956..545433b6028 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,13 @@ ## Unreleased +## 3.2.1 [☰](https://github.com/activeadmin/activeadmin/compare/v3.2.0..v3.2.1) + +### Enhancements + +* Backport Suppress ruby 3.3 warning [#8310] by [@mgrunberg] +* Backport Recommend using target="_blank" instead of target="blank" [#8311] by [@mgrunberg] + ## 3.2.0 [☰](https://github.com/activeadmin/activeadmin/compare/v3.1.0..v3.2.0) ### Security Fixes @@ -898,6 +905,8 @@ Please check [0-6-stable] for previous changes. [#8165]: https://github.com/activeadmin/activeadmin/pull/8165 [#8166]: https://github.com/activeadmin/activeadmin/pull/8166 [#8167]: https://github.com/activeadmin/activeadmin/pull/8167 +[#8310]: https://github.com/activeadmin/activeadmin/pull/8310 +[#8311]: https://github.com/activeadmin/activeadmin/pull/8311 [@1000ship]: https://github.com/1000ship [@5t111111]: https://github.com/5t111111 diff --git a/Gemfile.lock b/Gemfile.lock index a0ef70e08c7..492e5802ebe 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -1,7 +1,7 @@ PATH remote: . specs: - activeadmin (3.2.0) + activeadmin (3.2.1) arbre (~> 1.2, >= 1.2.1) csv formtastic (>= 3.1) diff --git a/gemfiles/rails_61/Gemfile.lock b/gemfiles/rails_61/Gemfile.lock index 7401e511d81..785c8f5fcd4 100644 --- a/gemfiles/rails_61/Gemfile.lock +++ b/gemfiles/rails_61/Gemfile.lock @@ -1,7 +1,7 @@ PATH remote: ../.. specs: - activeadmin (3.2.0) + activeadmin (3.2.1) arbre (~> 1.2, >= 1.2.1) csv formtastic (>= 3.1) diff --git a/gemfiles/rails_70/Gemfile.lock b/gemfiles/rails_70/Gemfile.lock index 1c7c594dfc3..430f6db3e61 100644 --- a/gemfiles/rails_70/Gemfile.lock +++ b/gemfiles/rails_70/Gemfile.lock @@ -1,7 +1,7 @@ PATH remote: ../.. specs: - activeadmin (3.2.0) + activeadmin (3.2.1) arbre (~> 1.2, >= 1.2.1) csv formtastic (>= 3.1) diff --git a/lib/active_admin/version.rb b/lib/active_admin/version.rb index b9565b51db7..b200f23b35b 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.0" + VERSION = "3.2.1" end diff --git a/package.json b/package.json index 8c2a7482372..3c1c7b8fdbc 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@activeadmin/activeadmin", - "version": "3.2.0", + "version": "3.2.1", "description": "The administration framework for Ruby on Rails.", "main": "app/assets/javascripts/active_admin/base.js", "type": "module", From 9dd364c2edf341c943f0c4c9adf9fd75ff637e16 Mon Sep 17 00:00:00 2001 From: Geremia Taglialatela Date: Thu, 2 May 2024 09:24:03 +0200 Subject: [PATCH 05/47] 3.2 stable: update gherkin lint actions (#8321) Update actions Prevent a deprecation message related to Node 16 actions --- .github/workflows/gherkin-lint.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/gherkin-lint.yml b/.github/workflows/gherkin-lint.yml index cef7bb6b4e3..342a8449670 100644 --- a/.github/workflows/gherkin-lint.yml +++ b/.github/workflows/gherkin-lint.yml @@ -18,8 +18,8 @@ jobs: name: Run gherkin-lint runs-on: ubuntu-latest steps: - - uses: actions/checkout@v3 - - uses: actions/setup-node@v3 + - uses: actions/checkout@v4 + - uses: actions/setup-node@v4 with: node-version: ${{ env.NODE_VERSION }} cache: 'yarn' From cce08cb60c5641fc7d63ef3cbb21d30933e463e8 Mon Sep 17 00:00:00 2001 From: Geremia Taglialatela Date: Wed, 15 May 2024 16:18:16 +0200 Subject: [PATCH 06/47] Update vendored jquery-ui from 1.12.1 to 1.13.3 (#8329) Update vendored jquery-ui JavaScript files have been manually updated because: - `jquery-ui-rails` is unmaintained and it is bundling 1.13.0 - An active fork of `jquery-ui-rails` is bundling 1.13.2, but there is a more recent version (1.13.3) `escape-selector` has been removed because jQuery UI is using jQuery's built-in escape selector. This selector is available from version 3.0, which is required by Active Admin, so it should not be a problem Ref #8327 Ref: - https://bugs.jqueryui.com/ticket/14991/ - jquery/jquery-ui#1957 --- CHANGELOG.md | 3 + package.json | 2 +- vendor/assets/javascripts/jquery-ui/data.js | 20 +- .../jquery-ui/disable-selection.js | 17 +- .../javascripts/jquery-ui/escape-selector.js | 23 - .../assets/javascripts/jquery-ui/focusable.js | 21 +- .../javascripts/jquery-ui/form-reset-mixin.js | 117 ++-- vendor/assets/javascripts/jquery-ui/form.js | 27 +- vendor/assets/javascripts/jquery-ui/ie.js | 7 +- .../assets/javascripts/jquery-ui/keycode.js | 18 +- vendor/assets/javascripts/jquery-ui/labels.js | 86 +-- vendor/assets/javascripts/jquery-ui/plugin.js | 7 +- .../assets/javascripts/jquery-ui/position.js | 47 +- .../jquery-ui/safe-active-element.js | 8 +- .../assets/javascripts/jquery-ui/safe-blur.js | 8 +- .../javascripts/jquery-ui/scroll-parent.js | 17 +- .../assets/javascripts/jquery-ui/tabbable.js | 19 +- .../assets/javascripts/jquery-ui/unique-id.js | 17 +- .../assets/javascripts/jquery-ui/version.js | 9 +- vendor/assets/javascripts/jquery-ui/widget.js | 83 ++- .../javascripts/jquery-ui/widgets/button.js | 111 +++- .../jquery-ui/widgets/checkboxradio.js | 549 +++++++++--------- .../jquery-ui/widgets/controlgroup.js | 26 +- .../jquery-ui/widgets/datepicker.js | 244 ++++++-- .../javascripts/jquery-ui/widgets/dialog.js | 89 +-- .../jquery-ui/widgets/draggable.js | 47 +- .../javascripts/jquery-ui/widgets/mouse.js | 33 +- .../jquery-ui/widgets/resizable.js | 73 ++- .../javascripts/jquery-ui/widgets/sortable.js | 311 ++++++---- .../javascripts/jquery-ui/widgets/tabs.js | 40 +- yarn.lock | 8 +- 31 files changed, 1232 insertions(+), 855 deletions(-) delete mode 100644 vendor/assets/javascripts/jquery-ui/escape-selector.js diff --git a/CHANGELOG.md b/CHANGELOG.md index 545433b6028..efefa27d286 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +* Update vendored jQuery UI to 1.13.3 [#8329] by [@tagliala] + ## 3.2.1 [☰](https://github.com/activeadmin/activeadmin/compare/v3.2.0..v3.2.1) ### Enhancements @@ -907,6 +909,7 @@ Please check [0-6-stable] for previous changes. [#8167]: https://github.com/activeadmin/activeadmin/pull/8167 [#8310]: https://github.com/activeadmin/activeadmin/pull/8310 [#8311]: https://github.com/activeadmin/activeadmin/pull/8311 +[#8329]: https://github.com/activeadmin/activeadmin/pull/8329 [@1000ship]: https://github.com/1000ship [@5t111111]: https://github.com/5t111111 diff --git a/package.json b/package.json index 3c1c7b8fdbc..6b49d957f7e 100644 --- a/package.json +++ b/package.json @@ -44,7 +44,7 @@ }, "dependencies": { "jquery": "^3.4.1", - "jquery-ui": "^1.12.1", + "jquery-ui": "^1.13.3", "jquery-ujs": "^1.2.2" } } diff --git a/vendor/assets/javascripts/jquery-ui/data.js b/vendor/assets/javascripts/jquery-ui/data.js index 4bb2f97f9ab..c4e871ab6aa 100644 --- a/vendor/assets/javascripts/jquery-ui/data.js +++ b/vendor/assets/javascripts/jquery-ui/data.js @@ -1,20 +1,22 @@ //= require jquery-ui/version /*! - * jQuery UI :data 1.12.1 - * http://jqueryui.com + * jQuery UI :data 1.13.3 + * https://jqueryui.com * - * Copyright jQuery Foundation and other contributors + * Copyright OpenJS Foundation and other contributors * Released under the MIT license. - * http://jquery.org/license + * https://jquery.org/license */ //>>label: :data Selector //>>group: Core //>>description: Selects elements which have data stored under the specified key. -//>>docs: http://api.jqueryui.com/data-selector/ +//>>docs: https://api.jqueryui.com/data-selector/ ( function( factory ) { + "use strict"; + if ( typeof define === "function" && define.amd ) { // AMD. Register as an anonymous module. @@ -24,8 +26,10 @@ // Browser globals factory( jQuery ); } -} ( function( $ ) { -return $.extend( $.expr[ ":" ], { +} )( function( $ ) { +"use strict"; + +return $.extend( $.expr.pseudos, { data: $.expr.createPseudo ? $.expr.createPseudo( function( dataName ) { return function( elem ) { @@ -38,4 +42,4 @@ return $.extend( $.expr[ ":" ], { return !!$.data( elem, match[ 3 ] ); } } ); -} ) ); +} ); diff --git a/vendor/assets/javascripts/jquery-ui/disable-selection.js b/vendor/assets/javascripts/jquery-ui/disable-selection.js index ca89e9aab85..8536fb23611 100644 --- a/vendor/assets/javascripts/jquery-ui/disable-selection.js +++ b/vendor/assets/javascripts/jquery-ui/disable-selection.js @@ -1,21 +1,23 @@ //= require jquery-ui/version /*! - * jQuery UI Disable Selection 1.12.1 - * http://jqueryui.com + * jQuery UI Disable Selection 1.13.3 + * https://jqueryui.com * - * Copyright jQuery Foundation and other contributors + * Copyright OpenJS Foundation and other contributors * Released under the MIT license. - * http://jquery.org/license + * https://jquery.org/license */ //>>label: disableSelection //>>group: Core //>>description: Disable selection of text content within the set of matched elements. -//>>docs: http://api.jqueryui.com/disableSelection/ +//>>docs: https://api.jqueryui.com/disableSelection/ // This file is deprecated ( function( factory ) { + "use strict"; + if ( typeof define === "function" && define.amd ) { // AMD. Register as an anonymous module. @@ -25,7 +27,8 @@ // Browser globals factory( jQuery ); } -} ( function( $ ) { +} )( function( $ ) { +"use strict"; return $.fn.extend( { disableSelection: ( function() { @@ -45,4 +48,4 @@ return $.fn.extend( { } } ); -} ) ); +} ); diff --git a/vendor/assets/javascripts/jquery-ui/escape-selector.js b/vendor/assets/javascripts/jquery-ui/escape-selector.js deleted file mode 100644 index 48d7e629417..00000000000 --- a/vendor/assets/javascripts/jquery-ui/escape-selector.js +++ /dev/null @@ -1,23 +0,0 @@ -//= require jquery-ui/version - -( function( factory ) { - if ( typeof define === "function" && define.amd ) { - - // AMD. Register as an anonymous module. - define( [ "jquery", "./version" ], factory ); - } else { - - // Browser globals - factory( jQuery ); - } -} ( function( $ ) { - -// Internal use only -return $.ui.escapeSelector = ( function() { - var selectorEscape = /([!"#$%&'()*+,./:;<=>?@[\]^`{|}~])/g; - return function( selector ) { - return selector.replace( selectorEscape, "\\$1" ); - }; -} )(); - -} ) ); diff --git a/vendor/assets/javascripts/jquery-ui/focusable.js b/vendor/assets/javascripts/jquery-ui/focusable.js index 2300ba9efeb..e33c9bfaa8e 100644 --- a/vendor/assets/javascripts/jquery-ui/focusable.js +++ b/vendor/assets/javascripts/jquery-ui/focusable.js @@ -1,20 +1,22 @@ //= require jquery-ui/version /*! - * jQuery UI Focusable 1.12.1 - * http://jqueryui.com + * jQuery UI Focusable 1.13.3 + * https://jqueryui.com * - * Copyright jQuery Foundation and other contributors + * Copyright OpenJS Foundation and other contributors * Released under the MIT license. - * http://jquery.org/license + * https://jquery.org/license */ //>>label: :focusable Selector //>>group: Core //>>description: Selects elements which can be focused. -//>>docs: http://api.jqueryui.com/focusable-selector/ +//>>docs: https://api.jqueryui.com/focusable-selector/ ( function( factory ) { + "use strict"; + if ( typeof define === "function" && define.amd ) { // AMD. Register as an anonymous module. @@ -24,7 +26,8 @@ // Browser globals factory( jQuery ); } -} ( function( $ ) { +} )( function( $ ) { +"use strict"; // Selectors $.ui.focusable = function( element, hasTabindex ) { @@ -72,10 +75,10 @@ function visible( element ) { element = element.parent(); visibility = element.css( "visibility" ); } - return visibility !== "hidden"; + return visibility === "visible"; } -$.extend( $.expr[ ":" ], { +$.extend( $.expr.pseudos, { focusable: function( element ) { return $.ui.focusable( element, $.attr( element, "tabindex" ) != null ); } @@ -83,4 +86,4 @@ $.extend( $.expr[ ":" ], { return $.ui.focusable; -} ) ); +} ); diff --git a/vendor/assets/javascripts/jquery-ui/form-reset-mixin.js b/vendor/assets/javascripts/jquery-ui/form-reset-mixin.js index af55719393c..acd392d0750 100644 --- a/vendor/assets/javascripts/jquery-ui/form-reset-mixin.js +++ b/vendor/assets/javascripts/jquery-ui/form-reset-mixin.js @@ -2,79 +2,82 @@ //= require jquery-ui/version /*! - * jQuery UI Form Reset Mixin 1.12.1 - * http://jqueryui.com + * jQuery UI Form Reset Mixin 1.13.3 + * https://jqueryui.com * - * Copyright jQuery Foundation and other contributors + * Copyright OpenJS Foundation and other contributors * Released under the MIT license. - * http://jquery.org/license + * https://jquery.org/license */ //>>label: Form Reset Mixin //>>group: Core //>>description: Refresh input widgets when their form is reset -//>>docs: http://api.jqueryui.com/form-reset-mixin/ +//>>docs: https://api.jqueryui.com/form-reset-mixin/ ( function( factory ) { - if ( typeof define === "function" && define.amd ) { + "use strict"; - // AMD. Register as an anonymous module. - define( [ - "jquery", - "./form", - "./version" - ], factory ); - } else { + if ( typeof define === "function" && define.amd ) { - // Browser globals - factory( jQuery ); - } -}( function( $ ) { + // AMD. Register as an anonymous module. + define( [ + "jquery", + "./form", + "./version" + ], factory ); + } else { - return $.ui.formResetMixin = { - _formResetHandler: function() { - var form = $( this ); + // Browser globals + factory( jQuery ); + } +} )( function( $ ) { +"use strict"; - // Wait for the form reset to actually happen before refreshing - setTimeout( function() { - var instances = form.data( "ui-form-reset-instances" ); - $.each( instances, function() { - this.refresh(); - } ); - } ); - }, +return $.ui.formResetMixin = { + _formResetHandler: function() { + var form = $( this ); - _bindFormResetHandler: function() { - this.form = this.element.form(); - if ( !this.form.length ) { - return; - } + // Wait for the form reset to actually happen before refreshing + setTimeout( function() { + var instances = form.data( "ui-form-reset-instances" ); + $.each( instances, function() { + this.refresh(); + } ); + } ); + }, - var instances = this.form.data( "ui-form-reset-instances" ) || []; - if ( !instances.length ) { + _bindFormResetHandler: function() { + this.form = this.element._form(); + if ( !this.form.length ) { + return; + } - // We don't use _on() here because we use a single event handler per form - this.form.on( "reset.ui-form-reset", this._formResetHandler ); - } - instances.push( this ); - this.form.data( "ui-form-reset-instances", instances ); - }, + var instances = this.form.data( "ui-form-reset-instances" ) || []; + if ( !instances.length ) { - _unbindFormResetHandler: function() { - if ( !this.form.length ) { - return; - } + // We don't use _on() here because we use a single event handler per form + this.form.on( "reset.ui-form-reset", this._formResetHandler ); + } + instances.push( this ); + this.form.data( "ui-form-reset-instances", instances ); + }, - var instances = this.form.data( "ui-form-reset-instances" ); - instances.splice( $.inArray( this, instances ), 1 ); - if ( instances.length ) { - this.form.data( "ui-form-reset-instances", instances ); - } else { - this.form - .removeData( "ui-form-reset-instances" ) - .off( "reset.ui-form-reset" ); - } - } - }; + _unbindFormResetHandler: function() { + if ( !this.form.length ) { + return; + } -} ) ); + var instances = this.form.data( "ui-form-reset-instances" ); + instances.splice( $.inArray( this, instances ), 1 ); + if ( instances.length ) { + this.form.data( "ui-form-reset-instances", instances ); + } else { + this.form + .removeData( "ui-form-reset-instances" ) + .off( "reset.ui-form-reset" ); + } + } +}; + +} ); diff --git a/vendor/assets/javascripts/jquery-ui/form.js b/vendor/assets/javascripts/jquery-ui/form.js index 0aa8f065381..95b47836982 100644 --- a/vendor/assets/javascripts/jquery-ui/form.js +++ b/vendor/assets/javascripts/jquery-ui/form.js @@ -1,22 +1,25 @@ //= require jquery-ui/version ( function( factory ) { - if ( typeof define === "function" && define.amd ) { + "use strict"; - // AMD. Register as an anonymous module. - define( [ "jquery", "./version" ], factory ); - } else { + if ( typeof define === "function" && define.amd ) { - // Browser globals - factory( jQuery ); - } -} ( function( $ ) { + // AMD. Register as an anonymous module. + define( [ "jquery", "./version" ], factory ); + } else { + + // Browser globals + factory( jQuery ); + } +} )( function( $ ) { +"use strict"; // Support: IE8 Only // IE8 does not support the form attribute and when it is supplied. It overwrites the form prop // with a string, so we need to find the proper form. - return $.fn.form = function() { - return typeof this[ 0 ].form === "string" ? this.closest( "form" ) : $( this[ 0 ].form ); - }; +return $.fn._form = function() { + return typeof this[ 0 ].form === "string" ? this.closest( "form" ) : $( this[ 0 ].form ); +}; -} ) ); +} ); diff --git a/vendor/assets/javascripts/jquery-ui/ie.js b/vendor/assets/javascripts/jquery-ui/ie.js index c339bab19c2..a758a1b97e1 100644 --- a/vendor/assets/javascripts/jquery-ui/ie.js +++ b/vendor/assets/javascripts/jquery-ui/ie.js @@ -1,6 +1,8 @@ //= require jquery-ui/version ( function( factory ) { + "use strict"; + if ( typeof define === "function" && define.amd ) { // AMD. Register as an anonymous module. @@ -10,8 +12,9 @@ // Browser globals factory( jQuery ); } -} ( function( $ ) { +} )( function( $ ) { +"use strict"; // This file is deprecated return $.ui.ie = !!/msie [\w.]+/.exec( navigator.userAgent.toLowerCase() ); -} ) ); +} ); diff --git a/vendor/assets/javascripts/jquery-ui/keycode.js b/vendor/assets/javascripts/jquery-ui/keycode.js index 7480dfc80c7..7769b96d571 100644 --- a/vendor/assets/javascripts/jquery-ui/keycode.js +++ b/vendor/assets/javascripts/jquery-ui/keycode.js @@ -1,20 +1,22 @@ //= require jquery-ui/version /*! - * jQuery UI Keycode 1.12.1 - * http://jqueryui.com + * jQuery UI Keycode 1.13.3 + * https://jqueryui.com * - * Copyright jQuery Foundation and other contributors + * Copyright OpenJS Foundation and other contributors * Released under the MIT license. - * http://jquery.org/license + * https://jquery.org/license */ //>>label: Keycode //>>group: Core //>>description: Provide keycodes as keynames -//>>docs: http://api.jqueryui.com/jQuery.ui.keyCode/ +//>>docs: https://api.jqueryui.com/jQuery.ui.keyCode/ ( function( factory ) { + "use strict"; + if ( typeof define === "function" && define.amd ) { // AMD. Register as an anonymous module. @@ -24,7 +26,9 @@ // Browser globals factory( jQuery ); } -} ( function( $ ) { +} )( function( $ ) { +"use strict"; + return $.ui.keyCode = { BACKSPACE: 8, COMMA: 188, @@ -44,4 +48,4 @@ return $.ui.keyCode = { UP: 38 }; -} ) ); +} ); diff --git a/vendor/assets/javascripts/jquery-ui/labels.js b/vendor/assets/javascripts/jquery-ui/labels.js index 2b52fb6dae4..b2fbe87dc80 100644 --- a/vendor/assets/javascripts/jquery-ui/labels.js +++ b/vendor/assets/javascripts/jquery-ui/labels.js @@ -1,65 +1,71 @@ //= require jquery-ui/version -//= require jquery-ui/escape-selector /*! - * jQuery UI Labels 1.12.1 - * http://jqueryui.com + * jQuery UI Labels 1.13.3 + * https://jqueryui.com * - * Copyright jQuery Foundation and other contributors + * Copyright OpenJS Foundation and other contributors * Released under the MIT license. - * http://jquery.org/license + * https://jquery.org/license */ //>>label: labels //>>group: Core //>>description: Find all the labels associated with a given input -//>>docs: http://api.jqueryui.com/labels/ +//>>docs: https://api.jqueryui.com/labels/ ( function( factory ) { - if ( typeof define === "function" && define.amd ) { + "use strict"; - // AMD. Register as an anonymous module. - define( [ "jquery", "./version", "./escape-selector" ], factory ); - } else { + if ( typeof define === "function" && define.amd ) { - // Browser globals - factory( jQuery ); - } -} ( function( $ ) { + // AMD. Register as an anonymous module. + define( [ "jquery", "./version" ], factory ); + } else { - return $.fn.labels = function() { - var ancestor, selector, id, labels, ancestors; + // Browser globals + factory( jQuery ); + } +} )( function( $ ) { +"use strict"; - // Check control.labels first - if ( this[ 0 ].labels && this[ 0 ].labels.length ) { - return this.pushStack( this[ 0 ].labels ); - } +return $.fn.labels = function() { + var ancestor, selector, id, labels, ancestors; - // Support: IE <= 11, FF <= 37, Android <= 2.3 only - // Above browsers do not support control.labels. Everything below is to support them - // as well as document fragments. control.labels does not work on document fragments - labels = this.eq( 0 ).parents( "label" ); + if ( !this.length ) { + return this.pushStack( [] ); + } - // Look for the label based on the id - id = this.attr( "id" ); - if ( id ) { + // Check control.labels first + if ( this[ 0 ].labels && this[ 0 ].labels.length ) { + return this.pushStack( this[ 0 ].labels ); + } - // We don't search against the document in case the element - // is disconnected from the DOM - ancestor = this.eq( 0 ).parents().last(); + // Support: IE <= 11, FF <= 37, Android <= 2.3 only + // Above browsers do not support control.labels. Everything below is to support them + // as well as document fragments. control.labels does not work on document fragments + labels = this.eq( 0 ).parents( "label" ); - // Get a full set of top level ancestors - ancestors = ancestor.add( ancestor.length ? ancestor.siblings() : this.siblings() ); + // Look for the label based on the id + id = this.attr( "id" ); + if ( id ) { - // Create a selector for the label based on the id - selector = "label[for='" + $.ui.escapeSelector( id ) + "']"; + // We don't search against the document in case the element + // is disconnected from the DOM + ancestor = this.eq( 0 ).parents().last(); - labels = labels.add( ancestors.find( selector ).addBack( selector ) ); + // Get a full set of top level ancestors + ancestors = ancestor.add( ancestor.length ? ancestor.siblings() : this.siblings() ); - } + // Create a selector for the label based on the id + selector = "label[for='" + $.escapeSelector( id ) + "']"; - // Return whatever we have found for labels - return this.pushStack( labels ); - }; + labels = labels.add( ancestors.find( selector ).addBack( selector ) ); -} ) ); + } + + // Return whatever we have found for labels + return this.pushStack( labels ); +}; + +} ); diff --git a/vendor/assets/javascripts/jquery-ui/plugin.js b/vendor/assets/javascripts/jquery-ui/plugin.js index ce60e7b5eaf..261c547ea29 100644 --- a/vendor/assets/javascripts/jquery-ui/plugin.js +++ b/vendor/assets/javascripts/jquery-ui/plugin.js @@ -1,6 +1,8 @@ //= require jquery-ui/version ( function( factory ) { + "use strict"; + if ( typeof define === "function" && define.amd ) { // AMD. Register as an anonymous module. @@ -10,7 +12,8 @@ // Browser globals factory( jQuery ); } -} ( function( $ ) { +} )( function( $ ) { +"use strict"; // $.ui.plugin is deprecated. Use $.widget() extensions instead. return $.ui.plugin = { @@ -43,4 +46,4 @@ return $.ui.plugin = { } }; -} ) ); +} ); diff --git a/vendor/assets/javascripts/jquery-ui/position.js b/vendor/assets/javascripts/jquery-ui/position.js index 7f6bc91d789..062e2011987 100644 --- a/vendor/assets/javascripts/jquery-ui/position.js +++ b/vendor/assets/javascripts/jquery-ui/position.js @@ -1,23 +1,25 @@ //= require jquery-ui/version /*! - * jQuery UI Position 1.12.1 - * http://jqueryui.com + * jQuery UI Position 1.13.3 + * https://jqueryui.com * - * Copyright jQuery Foundation and other contributors + * Copyright OpenJS Foundation and other contributors * Released under the MIT license. - * http://jquery.org/license + * https://jquery.org/license * - * http://api.jqueryui.com/position/ + * https://api.jqueryui.com/position/ */ //>>label: Position //>>group: Core //>>description: Positions elements relative to other elements. -//>>docs: http://api.jqueryui.com/position/ -//>>demos: http://jqueryui.com/position/ +//>>docs: https://api.jqueryui.com/position/ +//>>demos: https://jqueryui.com/position/ ( function( factory ) { + "use strict"; + if ( typeof define === "function" && define.amd ) { // AMD. Register as an anonymous module. @@ -27,7 +29,9 @@ // Browser globals factory( jQuery ); } -}( function( $ ) { +} )( function( $ ) { +"use strict"; + ( function() { var cachedScrollbarWidth, max = Math.max, @@ -50,6 +54,10 @@ function parseCss( element, property ) { return parseInt( $.css( element, property ), 10 ) || 0; } +function isWindow( obj ) { + return obj != null && obj === obj.window; +} + function getDimensions( elem ) { var raw = elem[ 0 ]; if ( raw.nodeType === 9 ) { @@ -59,7 +67,7 @@ function getDimensions( elem ) { offset: { top: 0, left: 0 } }; } - if ( $.isWindow( raw ) ) { + if ( isWindow( raw ) ) { return { width: elem.width(), height: elem.height(), @@ -86,9 +94,9 @@ $.position = { return cachedScrollbarWidth; } var w1, w2, - div = $( "
" + - "
" ), + div = $( "
" + + "
" ), innerDiv = div.children()[ 0 ]; $( "body" ).append( div ); @@ -121,12 +129,12 @@ $.position = { }, getWithinInfo: function( element ) { var withinElement = $( element || window ), - isWindow = $.isWindow( withinElement[ 0 ] ), + isElemWindow = isWindow( withinElement[ 0 ] ), isDocument = !!withinElement[ 0 ] && withinElement[ 0 ].nodeType === 9, - hasOffset = !isWindow && !isDocument; + hasOffset = !isElemWindow && !isDocument; return { element: withinElement, - isWindow: isWindow, + isWindow: isElemWindow, isDocument: isDocument, offset: hasOffset ? $( element ).offset() : { left: 0, top: 0 }, scrollLeft: withinElement.scrollLeft(), @@ -146,7 +154,12 @@ $.fn.position = function( options ) { options = $.extend( {}, options ); var atOffset, targetWidth, targetHeight, targetOffset, basePosition, dimensions, - target = $( options.of ), + + // Make sure string options are treated as CSS selectors + target = typeof options.of === "string" ? + $( document ).find( options.of ) : + $( options.of ), + within = $.position.getWithinInfo( options.within ), scrollInfo = $.position.getScrollInfo( within ), collision = ( options.collision || "flip" ).split( " " ), @@ -497,4 +510,4 @@ $.ui.position = { return $.ui.position; -} ) ); +} ); diff --git a/vendor/assets/javascripts/jquery-ui/safe-active-element.js b/vendor/assets/javascripts/jquery-ui/safe-active-element.js index 69061ea709c..101fe1fcc56 100644 --- a/vendor/assets/javascripts/jquery-ui/safe-active-element.js +++ b/vendor/assets/javascripts/jquery-ui/safe-active-element.js @@ -1,6 +1,8 @@ //= require jquery-ui/version ( function( factory ) { + "use strict"; + if ( typeof define === "function" && define.amd ) { // AMD. Register as an anonymous module. @@ -10,7 +12,9 @@ // Browser globals factory( jQuery ); } -} ( function( $ ) { +} )( function( $ ) { +"use strict"; + return $.ui.safeActiveElement = function( document ) { var activeElement; @@ -39,4 +43,4 @@ return $.ui.safeActiveElement = function( document ) { return activeElement; }; -} ) ); +} ); diff --git a/vendor/assets/javascripts/jquery-ui/safe-blur.js b/vendor/assets/javascripts/jquery-ui/safe-blur.js index 26186071567..65609f5be93 100644 --- a/vendor/assets/javascripts/jquery-ui/safe-blur.js +++ b/vendor/assets/javascripts/jquery-ui/safe-blur.js @@ -1,6 +1,8 @@ //= require jquery-ui/version ( function( factory ) { + "use strict"; + if ( typeof define === "function" && define.amd ) { // AMD. Register as an anonymous module. @@ -10,7 +12,9 @@ // Browser globals factory( jQuery ); } -} ( function( $ ) { +} )( function( $ ) { +"use strict"; + return $.ui.safeBlur = function( element ) { // Support: IE9 - 10 only @@ -20,4 +24,4 @@ return $.ui.safeBlur = function( element ) { } }; -} ) ); +} ); diff --git a/vendor/assets/javascripts/jquery-ui/scroll-parent.js b/vendor/assets/javascripts/jquery-ui/scroll-parent.js index 5422fcfb78e..33c3afffe29 100644 --- a/vendor/assets/javascripts/jquery-ui/scroll-parent.js +++ b/vendor/assets/javascripts/jquery-ui/scroll-parent.js @@ -1,20 +1,22 @@ //= require jquery-ui/version /*! - * jQuery UI Scroll Parent 1.12.1 - * http://jqueryui.com + * jQuery UI Scroll Parent 1.13.3 + * https://jqueryui.com * - * Copyright jQuery Foundation and other contributors + * Copyright OpenJS Foundation and other contributors * Released under the MIT license. - * http://jquery.org/license + * https://jquery.org/license */ //>>label: scrollParent //>>group: Core //>>description: Get the closest ancestor element that is scrollable. -//>>docs: http://api.jqueryui.com/scrollParent/ +//>>docs: https://api.jqueryui.com/scrollParent/ ( function( factory ) { + "use strict"; + if ( typeof define === "function" && define.amd ) { // AMD. Register as an anonymous module. @@ -24,7 +26,8 @@ // Browser globals factory( jQuery ); } -} ( function( $ ) { +} )( function( $ ) { +"use strict"; return $.fn.scrollParent = function( includeHidden ) { var position = this.css( "position" ), @@ -44,4 +47,4 @@ return $.fn.scrollParent = function( includeHidden ) { scrollParent; }; -} ) ); +} ); diff --git a/vendor/assets/javascripts/jquery-ui/tabbable.js b/vendor/assets/javascripts/jquery-ui/tabbable.js index c44f89b3e37..3a6a5eac2e2 100644 --- a/vendor/assets/javascripts/jquery-ui/tabbable.js +++ b/vendor/assets/javascripts/jquery-ui/tabbable.js @@ -2,20 +2,22 @@ //= require jquery-ui/focusable /*! - * jQuery UI Tabbable 1.12.1 - * http://jqueryui.com + * jQuery UI Tabbable 1.13.3 + * https://jqueryui.com * - * Copyright jQuery Foundation and other contributors + * Copyright OpenJS Foundation and other contributors * Released under the MIT license. - * http://jquery.org/license + * https://jquery.org/license */ //>>label: :tabbable Selector //>>group: Core //>>description: Selects elements which can be tabbed to. -//>>docs: http://api.jqueryui.com/tabbable-selector/ +//>>docs: https://api.jqueryui.com/tabbable-selector/ ( function( factory ) { + "use strict"; + if ( typeof define === "function" && define.amd ) { // AMD. Register as an anonymous module. @@ -25,9 +27,10 @@ // Browser globals factory( jQuery ); } -} ( function( $ ) { +} )( function( $ ) { +"use strict"; -return $.extend( $.expr[ ":" ], { +return $.extend( $.expr.pseudos, { tabbable: function( element ) { var tabIndex = $.attr( element, "tabindex" ), hasTabindex = tabIndex != null; @@ -35,4 +38,4 @@ return $.extend( $.expr[ ":" ], { } } ); -} ) ); +} ); diff --git a/vendor/assets/javascripts/jquery-ui/unique-id.js b/vendor/assets/javascripts/jquery-ui/unique-id.js index 0db3b1eed2c..b17fb19768b 100644 --- a/vendor/assets/javascripts/jquery-ui/unique-id.js +++ b/vendor/assets/javascripts/jquery-ui/unique-id.js @@ -1,20 +1,22 @@ //= require jquery-ui/version /*! - * jQuery UI Unique ID 1.12.1 - * http://jqueryui.com + * jQuery UI Unique ID 1.13.3 + * https://jqueryui.com * - * Copyright jQuery Foundation and other contributors + * Copyright OpenJS Foundation and other contributors * Released under the MIT license. - * http://jquery.org/license + * https://jquery.org/license */ //>>label: uniqueId //>>group: Core //>>description: Functions to generate and remove uniqueId's -//>>docs: http://api.jqueryui.com/uniqueId/ +//>>docs: https://api.jqueryui.com/uniqueId/ ( function( factory ) { + "use strict"; + if ( typeof define === "function" && define.amd ) { // AMD. Register as an anonymous module. @@ -24,7 +26,8 @@ // Browser globals factory( jQuery ); } -} ( function( $ ) { +} )( function( $ ) { +"use strict"; return $.fn.extend( { uniqueId: ( function() { @@ -48,4 +51,4 @@ return $.fn.extend( { } } ); -} ) ); +} ); diff --git a/vendor/assets/javascripts/jquery-ui/version.js b/vendor/assets/javascripts/jquery-ui/version.js index e7505f5a3d2..d0deabdb446 100644 --- a/vendor/assets/javascripts/jquery-ui/version.js +++ b/vendor/assets/javascripts/jquery-ui/version.js @@ -1,4 +1,6 @@ ( function( factory ) { + "use strict"; + if ( typeof define === "function" && define.amd ) { // AMD. Register as an anonymous module. @@ -8,10 +10,11 @@ // Browser globals factory( jQuery ); } -} ( function( $ ) { +} )( function( $ ) { +"use strict"; $.ui = $.ui || {}; -return $.ui.version = "1.12.1"; +return $.ui.version = "1.13.3"; -} ) ); +} ); diff --git a/vendor/assets/javascripts/jquery-ui/widget.js b/vendor/assets/javascripts/jquery-ui/widget.js index 51c76d45f93..4e97f89cfdb 100644 --- a/vendor/assets/javascripts/jquery-ui/widget.js +++ b/vendor/assets/javascripts/jquery-ui/widget.js @@ -1,21 +1,23 @@ //= require jquery-ui/version /*! - * jQuery UI Widget 1.12.1 - * http://jqueryui.com + * jQuery UI Widget 1.13.3 + * https://jqueryui.com * - * Copyright jQuery Foundation and other contributors + * Copyright OpenJS Foundation and other contributors * Released under the MIT license. - * http://jquery.org/license + * https://jquery.org/license */ //>>label: Widget //>>group: Core //>>description: Provides a factory for creating stateful widgets with a common API. -//>>docs: http://api.jqueryui.com/jQuery.widget/ -//>>demos: http://jqueryui.com/widget/ +//>>docs: https://api.jqueryui.com/jQuery.widget/ +//>>demos: https://jqueryui.com/widget/ ( function( factory ) { + "use strict"; + if ( typeof define === "function" && define.amd ) { // AMD. Register as an anonymous module. @@ -25,25 +27,23 @@ // Browser globals factory( jQuery ); } -}( function( $ ) { +} )( function( $ ) { +"use strict"; var widgetUuid = 0; +var widgetHasOwnProperty = Array.prototype.hasOwnProperty; var widgetSlice = Array.prototype.slice; $.cleanData = ( function( orig ) { return function( elems ) { var events, elem, i; for ( i = 0; ( elem = elems[ i ] ) != null; i++ ) { - try { - - // Only trigger remove when necessary to save time - events = $._data( elem, "events" ); - if ( events && events.remove ) { - $( elem ).triggerHandler( "remove" ); - } - // Http://bugs.jquery.com/ticket/8235 - } catch ( e ) {} + // Only trigger remove when necessary to save time + events = $._data( elem, "events" ); + if ( events && events.remove ) { + $( elem ).triggerHandler( "remove" ); + } } orig( elems ); }; @@ -65,12 +65,12 @@ $.widget = function( name, base, prototype ) { base = $.Widget; } - if ( $.isArray( prototype ) ) { + if ( Array.isArray( prototype ) ) { prototype = $.extend.apply( null, [ {} ].concat( prototype ) ); } // Create selector for plugin - $.expr[ ":" ][ fullName.toLowerCase() ] = function( elem ) { + $.expr.pseudos[ fullName.toLowerCase() ] = function( elem ) { return !!$.data( elem, fullName ); }; @@ -79,7 +79,7 @@ $.widget = function( name, base, prototype ) { constructor = $[ namespace ][ name ] = function( options, element ) { // Allow instantiation without "new" keyword - if ( !this._createWidget ) { + if ( !this || !this._createWidget ) { return new constructor( options, element ); } @@ -110,7 +110,7 @@ $.widget = function( name, base, prototype ) { // inheriting from basePrototype.options = $.widget.extend( {}, basePrototype.options ); $.each( prototype, function( prop, value ) { - if ( !$.isFunction( value ) ) { + if ( typeof value !== "function" ) { proxiedPrototype[ prop ] = value; return; } @@ -189,7 +189,7 @@ $.widget.extend = function( target ) { for ( ; inputIndex < inputLength; inputIndex++ ) { for ( key in input[ inputIndex ] ) { value = input[ inputIndex ][ key ]; - if ( input[ inputIndex ].hasOwnProperty( key ) && value !== undefined ) { + if ( widgetHasOwnProperty.call( input[ inputIndex ], key ) && value !== undefined ) { // Clone objects if ( $.isPlainObject( value ) ) { @@ -238,7 +238,8 @@ $.widget.bridge = function( name, object ) { "attempted to call method '" + options + "'" ); } - if ( !$.isFunction( instance[ options ] ) || options.charAt( 0 ) === "_" ) { + if ( typeof instance[ options ] !== "function" || + options.charAt( 0 ) === "_" ) { return $.error( "no such method '" + options + "' for " + name + " widget instance" ); } @@ -499,12 +500,34 @@ $.Widget.prototype = { classes: this.options.classes || {} }, options ); + function bindRemoveEvent() { + var nodesToBind = []; + + options.element.each( function( _, element ) { + var isTracked = $.map( that.classesElementLookup, function( elements ) { + return elements; + } ) + .some( function( elements ) { + return elements.is( element ); + } ); + + if ( !isTracked ) { + nodesToBind.push( element ); + } + } ); + + that._on( $( nodesToBind ), { + remove: "_untrackClassesElement" + } ); + } + function processClassString( classes, checkOption ) { var current, i; for ( i = 0; i < classes.length; i++ ) { current = that.classesElementLookup[ classes[ i ] ] || $(); if ( options.add ) { - current = $( $.unique( current.get().concat( options.element.get() ) ) ); + bindRemoveEvent(); + current = $( $.uniqueSort( current.get().concat( options.element.get() ) ) ); } else { current = $( current.not( options.element ).get() ); } @@ -516,10 +539,6 @@ $.Widget.prototype = { } } - this._on( options.element, { - "remove": "_untrackClassesElement" - } ); - if ( options.keys ) { processClassString( options.keys.match( /\S+/g ) || [], true ); } @@ -537,6 +556,8 @@ $.Widget.prototype = { that.classesElementLookup[ key ] = $( value.not( event.target ).get() ); } } ); + + this._off( $( event.target ) ); }, _removeClass: function( element, keys, extra ) { @@ -617,7 +638,7 @@ $.Widget.prototype = { _off: function( element, eventName ) { eventName = ( eventName || "" ).split( " " ).join( this.eventNamespace + " " ) + this.eventNamespace; - element.off( eventName ).off( eventName ); + element.off( eventName ); // Clear the stack to avoid memory leaks (#10056) this.bindings = $( this.bindings.not( element ).get() ); @@ -683,7 +704,7 @@ $.Widget.prototype = { } this.element.trigger( event, data ); - return !( $.isFunction( callback ) && + return !( typeof callback === "function" && callback.apply( this.element[ 0 ], [ event ].concat( data ) ) === false || event.isDefaultPrevented() ); } @@ -705,6 +726,8 @@ $.each( { show: "fadeIn", hide: "fadeOut" }, function( method, defaultEffect ) { options = options || {}; if ( typeof options === "number" ) { options = { duration: options }; + } else if ( options === true ) { + options = {}; } hasOptions = !$.isEmptyObject( options ); @@ -732,4 +755,4 @@ $.each( { show: "fadeIn", hide: "fadeOut" }, function( method, defaultEffect ) { return $.widget; -} ) ); +} ); diff --git a/vendor/assets/javascripts/jquery-ui/widgets/button.js b/vendor/assets/javascripts/jquery-ui/widgets/button.js index 83e6ed1d4ac..d7e6b063135 100644 --- a/vendor/assets/javascripts/jquery-ui/widgets/button.js +++ b/vendor/assets/javascripts/jquery-ui/widgets/button.js @@ -4,24 +4,26 @@ //= require jquery-ui/widget /*! - * jQuery UI Button 1.12.1 - * http://jqueryui.com + * jQuery UI Button 1.13.3 + * https://jqueryui.com * - * Copyright jQuery Foundation and other contributors + * Copyright OpenJS Foundation and other contributors * Released under the MIT license. - * http://jquery.org/license + * https://jquery.org/license */ //>>label: Button //>>group: Widgets //>>description: Enhances a form with themeable buttons. -//>>docs: http://api.jqueryui.com/button/ -//>>demos: http://jqueryui.com/button/ +//>>docs: https://api.jqueryui.com/button/ +//>>demos: https://jqueryui.com/button/ //>>css.structure: ../../themes/base/core.css //>>css.structure: ../../themes/base/button.css //>>css.theme: ../../themes/base/theme.css ( function( factory ) { + "use strict"; + if ( typeof define === "function" && define.amd ) { // AMD. Register as an anonymous module. @@ -41,10 +43,11 @@ // Browser globals factory( jQuery ); } -}( function( $ ) { +} )( function( $ ) { +"use strict"; $.widget( "ui.button", { - version: "1.12.1", + version: "1.13.3", defaultElement: "" ).addClass( this._triggerClass ). - html( !buttonImage ? buttonText : $( "" ).attr( - { src:buttonImage, alt:buttonText, title:buttonText } ) ) ); + + if ( this._get( inst, "buttonImageOnly" ) ) { + inst.trigger = $( "" ) + .addClass( this._triggerClass ) + .attr( { + src: buttonImage, + alt: buttonText, + title: buttonText + } ); + } else { + inst.trigger = $( "" : "" ); - - buttonPanel = ( showButtonPanel ) ? "
" + ( isRTL ? controls : "" ) + - ( this._isInRange( inst, gotoDate ) ? "" : "" ) + ( isRTL ? "" : controls ) + "
" : ""; + controls = ""; + if ( !inst.inline ) { + controls = $( "