From deb92b8483b68c37646b7a3c7f602c87ecba5c4c Mon Sep 17 00:00:00 2001 From: Zach Ahn Date: Sat, 18 Nov 2023 20:46:15 -0500 Subject: [PATCH] Test against Rails 7.1 --- .github/workflows/unit_tests.yml | 10 +- Gemfile.lock | 256 +++++++++-------- dummy_path.rb | 6 +- gemfiles/rails71_sprockets4.gemfile | 8 + gemfiles/rails71_sprockets4.gemfile.lock | 266 ++++++++++++++++++ test/dummy/rails71_sprockets4/Rakefile | 6 + .../app/assets/config/manifest.js | 3 + .../app/assets/images/.keep | 0 .../app/assets/stylesheets/application.css | 15 + .../app/controllers/admin/.keep | 0 .../app/controllers/application_controller.rb | 2 + .../app/controllers/concerns/.keep | 0 .../app/helpers/application_helper.rb | 2 + .../app/jobs/application_job.rb | 7 + .../app/models/application_record.rb | 3 + .../app/models/concerns/.keep | 0 .../app/views/layouts/application.html.erb | 15 + test/dummy/rails71_sprockets4/bin/rails | 4 + test/dummy/rails71_sprockets4/bin/rake | 4 + test/dummy/rails71_sprockets4/bin/setup | 33 +++ test/dummy/rails71_sprockets4/config.ru | 6 + .../rails71_sprockets4/config/application.rb | 46 +++ test/dummy/rails71_sprockets4/config/boot.rb | 5 + .../rails71_sprockets4/config/database.yml | 25 ++ .../rails71_sprockets4/config/environment.rb | 5 + .../config/environments/development.rb | 65 +++++ .../config/environments/production.rb | 83 ++++++ .../config/environments/test.rb | 54 ++++ .../config/initializers/assets.rb | 12 + .../initializers/content_security_policy.rb | 25 ++ .../initializers/filter_parameter_logging.rb | 8 + .../config/initializers/inflections.rb | 16 ++ .../config/initializers/permissions_policy.rb | 13 + .../config/initializers/super.rb | 3 + .../rails71_sprockets4/config/locales/en.yml | 31 ++ test/dummy/rails71_sprockets4/config/puma.rb | 35 +++ .../dummy/rails71_sprockets4/config/routes.rb | 16 ++ .../migrate/20190216224956_create_members.rb | 13 + .../db/migrate/20190803143320_create_ships.rb | 13 + .../20190806014121_add_ship_to_members.rb | 7 + .../20191126050453_create_favorite_things.rb | 12 + .../db/migrate/20210411180249_create_sinks.rb | 22 ++ test/dummy/rails71_sprockets4/db/schema.rb | 59 ++++ test/dummy/rails71_sprockets4/db/seeds.rb | 4 + .../dummy/rails71_sprockets4/lib/assets/.keep | 0 test/dummy/rails71_sprockets4/log/.keep | 0 test/dummy/rails71_sprockets4/public/404.html | 67 +++++ test/dummy/rails71_sprockets4/public/422.html | 67 +++++ test/dummy/rails71_sprockets4/public/500.html | 66 +++++ .../rails71_sprockets4/public/favicon.ico | 0 50 files changed, 1299 insertions(+), 119 deletions(-) create mode 100644 gemfiles/rails71_sprockets4.gemfile create mode 100644 gemfiles/rails71_sprockets4.gemfile.lock create mode 100644 test/dummy/rails71_sprockets4/Rakefile create mode 100644 test/dummy/rails71_sprockets4/app/assets/config/manifest.js create mode 100644 test/dummy/rails71_sprockets4/app/assets/images/.keep create mode 100644 test/dummy/rails71_sprockets4/app/assets/stylesheets/application.css create mode 100644 test/dummy/rails71_sprockets4/app/controllers/admin/.keep create mode 100644 test/dummy/rails71_sprockets4/app/controllers/application_controller.rb create mode 100644 test/dummy/rails71_sprockets4/app/controllers/concerns/.keep create mode 100644 test/dummy/rails71_sprockets4/app/helpers/application_helper.rb create mode 100644 test/dummy/rails71_sprockets4/app/jobs/application_job.rb create mode 100644 test/dummy/rails71_sprockets4/app/models/application_record.rb create mode 100644 test/dummy/rails71_sprockets4/app/models/concerns/.keep create mode 100644 test/dummy/rails71_sprockets4/app/views/layouts/application.html.erb create mode 100755 test/dummy/rails71_sprockets4/bin/rails create mode 100755 test/dummy/rails71_sprockets4/bin/rake create mode 100755 test/dummy/rails71_sprockets4/bin/setup create mode 100644 test/dummy/rails71_sprockets4/config.ru create mode 100644 test/dummy/rails71_sprockets4/config/application.rb create mode 100644 test/dummy/rails71_sprockets4/config/boot.rb create mode 100644 test/dummy/rails71_sprockets4/config/database.yml create mode 100644 test/dummy/rails71_sprockets4/config/environment.rb create mode 100644 test/dummy/rails71_sprockets4/config/environments/development.rb create mode 100644 test/dummy/rails71_sprockets4/config/environments/production.rb create mode 100644 test/dummy/rails71_sprockets4/config/environments/test.rb create mode 100644 test/dummy/rails71_sprockets4/config/initializers/assets.rb create mode 100644 test/dummy/rails71_sprockets4/config/initializers/content_security_policy.rb create mode 100644 test/dummy/rails71_sprockets4/config/initializers/filter_parameter_logging.rb create mode 100644 test/dummy/rails71_sprockets4/config/initializers/inflections.rb create mode 100644 test/dummy/rails71_sprockets4/config/initializers/permissions_policy.rb create mode 100644 test/dummy/rails71_sprockets4/config/initializers/super.rb create mode 100644 test/dummy/rails71_sprockets4/config/locales/en.yml create mode 100644 test/dummy/rails71_sprockets4/config/puma.rb create mode 100644 test/dummy/rails71_sprockets4/config/routes.rb create mode 100644 test/dummy/rails71_sprockets4/db/migrate/20190216224956_create_members.rb create mode 100644 test/dummy/rails71_sprockets4/db/migrate/20190803143320_create_ships.rb create mode 100644 test/dummy/rails71_sprockets4/db/migrate/20190806014121_add_ship_to_members.rb create mode 100644 test/dummy/rails71_sprockets4/db/migrate/20191126050453_create_favorite_things.rb create mode 100644 test/dummy/rails71_sprockets4/db/migrate/20210411180249_create_sinks.rb create mode 100644 test/dummy/rails71_sprockets4/db/schema.rb create mode 100644 test/dummy/rails71_sprockets4/db/seeds.rb create mode 100644 test/dummy/rails71_sprockets4/lib/assets/.keep create mode 100644 test/dummy/rails71_sprockets4/log/.keep create mode 100644 test/dummy/rails71_sprockets4/public/404.html create mode 100644 test/dummy/rails71_sprockets4/public/422.html create mode 100644 test/dummy/rails71_sprockets4/public/500.html create mode 100644 test/dummy/rails71_sprockets4/public/favicon.ico diff --git a/.github/workflows/unit_tests.yml b/.github/workflows/unit_tests.yml index c025af1c..cf37e05a 100644 --- a/.github/workflows/unit_tests.yml +++ b/.github/workflows/unit_tests.yml @@ -15,7 +15,7 @@ jobs: - gemfiles/rails60_sprockets4.gemfile - gemfiles/rails61_sprockets4.gemfile - gemfiles/rails70_sprockets4.gemfile - - gemfiles/rails70_jsbundling4.gemfile + - gemfiles/rails71_sprockets4.gemfile ruby: - "2.3" - "2.4" @@ -55,6 +55,8 @@ jobs: ruby: "3.1" - gemfile: gemfiles/rails70_sprockets4.gemfile ruby: "3.2" + - gemfile: gemfiles/rails71_sprockets4.gemfile + ruby: "3.2" runs-on: ubuntu-latest env: BUNDLE_GEMFILE: ${{ github.workspace }}/${{ matrix.gemfile }} @@ -76,7 +78,7 @@ jobs: bundler-cache: true - uses: actions/setup-node@v3 with: - node-version: "16.x" + node-version: "20" - name: Thoroughly test run: ruby bin/thoroughly_test.rb @@ -91,7 +93,7 @@ jobs: bundler-cache: true - uses: actions/setup-node@v3 with: - node-version: "16.x" + node-version: "20" - run: bin/rails db:migrate - run: bin/rails test @@ -101,7 +103,7 @@ jobs: - uses: actions/checkout@v1 - uses: ruby/setup-ruby@v1 with: - ruby-version: "3.0" + ruby-version: "3.2" bundler-cache: true - run: bin/tapioca gem --verify - run: bin/spoom tc diff --git a/Gemfile.lock b/Gemfile.lock index efdc013f..9afaa65e 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -14,75 +14,85 @@ PATH GEM remote: https://rubygems.org/ specs: - actioncable (7.0.8) - actionpack (= 7.0.8) - activesupport (= 7.0.8) + actioncable (7.1.2) + actionpack (= 7.1.2) + activesupport (= 7.1.2) 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) + zeitwerk (~> 2.6) + actionmailbox (7.1.2) + actionpack (= 7.1.2) + activejob (= 7.1.2) + activerecord (= 7.1.2) + activestorage (= 7.1.2) + activesupport (= 7.1.2) 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.1.2) + actionpack (= 7.1.2) + actionview (= 7.1.2) + activejob (= 7.1.2) + activesupport (= 7.1.2) 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) - rack (~> 2.0, >= 2.2.4) + rails-dom-testing (~> 2.2) + actionpack (7.1.2) + actionview (= 7.1.2) + activesupport (= 7.1.2) + nokogiri (>= 1.8.5) + racc + rack (>= 2.2.4) + rack-session (>= 1.0.1) 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) + rails-dom-testing (~> 2.2) + rails-html-sanitizer (~> 1.6) + actiontext (7.1.2) + actionpack (= 7.1.2) + activerecord (= 7.1.2) + activestorage (= 7.1.2) + activesupport (= 7.1.2) globalid (>= 0.6.0) nokogiri (>= 1.8.5) - actionview (7.0.8) - activesupport (= 7.0.8) + actionview (7.1.2) + activesupport (= 7.1.2) 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) + erubi (~> 1.11) + rails-dom-testing (~> 2.2) + rails-html-sanitizer (~> 1.6) + activejob (7.1.2) + activesupport (= 7.1.2) globalid (>= 0.3.6) - activemodel (7.0.8) - activesupport (= 7.0.8) - 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) + activemodel (7.1.2) + activesupport (= 7.1.2) + activerecord (7.1.2) + activemodel (= 7.1.2) + activesupport (= 7.1.2) + timeout (>= 0.4.0) + activestorage (7.1.2) + actionpack (= 7.1.2) + activejob (= 7.1.2) + activerecord (= 7.1.2) + activesupport (= 7.1.2) marcel (~> 1.0) - mini_mime (>= 1.1.0) - activesupport (7.0.8) + activesupport (7.1.2) + base64 + bigdecimal concurrent-ruby (~> 1.0, >= 1.0.2) + connection_pool (>= 2.2.5) + drb i18n (>= 1.6, < 2) minitest (>= 5.1) + mutex_m tzinfo (~> 2.0) addressable (2.8.5) public_suffix (>= 2.0.2, < 6.0) ast (2.4.2) - base64 (0.1.1) + base64 (0.2.0) + bigdecimal (3.1.4) builder (3.2.4) capybara (3.39.2) addressable @@ -96,9 +106,12 @@ GEM childprocess (3.0.0) coderay (1.1.3) concurrent-ruby (1.2.2) + connection_pool (2.4.1) crass (1.0.6) - date (3.3.3) + date (3.3.4) docile (1.4.0) + drb (2.2.0) + ruby2_keywords erubi (1.12.0) erubis (2.7.0) globalid (1.2.1) @@ -107,10 +120,14 @@ GEM concurrent-ruby (~> 1.0) i18n-debug (1.2.0) i18n (< 2) + io-console (0.6.0) + irb (1.9.0) + rdoc + reline (>= 0.3.8) json (2.6.3) language_server-protocol (3.17.0.3) lint_roller (1.1.0) - loofah (2.21.3) + loofah (2.22.0) crass (~> 1.0.2) nokogiri (>= 1.12.0) mail (2.8.1) @@ -122,7 +139,7 @@ GEM matrix (0.4.2) method_source (1.0.0) mini_mime (1.1.5) - mini_portile2 (2.8.4) + mini_portile2 (2.8.5) minitest (5.20.0) minitest-bisect (1.7.0) minitest-server (~> 1.0) @@ -131,52 +148,61 @@ GEM minitest (~> 5.16) mocha (2.1.0) ruby2_keywords (>= 0.0.5) - net-imap (0.3.7) + mutex_m (0.2.0) + net-imap (0.4.5) date net-protocol net-pop (0.1.2) net-protocol - net-protocol (0.2.1) + net-protocol (0.2.2) timeout - net-smtp (0.3.3) + net-smtp (0.4.0) net-protocol netrc (0.11.0) - nio4r (2.5.9) - nokogiri (1.15.4) + nio4r (2.6.0) + nokogiri (1.15.5) mini_portile2 (~> 2.8.2) racc (~> 1.4) parallel (1.23.0) - parser (3.2.2.3) + parser (3.2.2.4) ast (~> 2.4.1) racc path_expander (1.1.1) prettier_print (1.2.1) + prism (0.17.1) pry (0.14.2) coderay (~> 1.1) method_source (~> 1.0) pry-rails (0.3.9) pry (>= 0.10.4) - public_suffix (5.0.3) - puma (6.3.1) + psych (5.1.1.1) + stringio + public_suffix (5.0.4) + puma (6.4.0) nio4r (~> 2.0) - racc (1.7.1) - rack (2.2.8) + racc (1.7.3) + rack (3.0.8) + rack-session (2.0.0) + rack (>= 3.0.0) 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) + rackup (2.1.0) + rack (>= 3) + webrick (~> 1.8) + rails (7.1.2) + actioncable (= 7.1.2) + actionmailbox (= 7.1.2) + actionmailer (= 7.1.2) + actionpack (= 7.1.2) + actiontext (= 7.1.2) + actionview (= 7.1.2) + activejob (= 7.1.2) + activemodel (= 7.1.2) + activerecord (= 7.1.2) + activestorage (= 7.1.2) + activesupport (= 7.1.2) bundler (>= 1.15.0) - railties (= 7.0.8) + railties (= 7.1.2) rails-dom-testing (2.2.0) activesupport (>= 5.0.0) minitest @@ -186,38 +212,42 @@ GEM nokogiri (~> 1.14) rails_anonymous_controller_testing (0.0.5) actionpack (>= 5.0.0) - railties (7.0.8) - actionpack (= 7.0.8) - activesupport (= 7.0.8) - method_source + railties (7.1.2) + actionpack (= 7.1.2) + activesupport (= 7.1.2) + irb + rackup (>= 1.0.0) rake (>= 12.2) - thor (~> 1.0) - zeitwerk (~> 2.5) + thor (~> 1.0, >= 1.2.2) + zeitwerk (~> 2.6) rainbow (3.1.1) - rake (13.0.6) - rbi (0.1.1) + rake (13.1.0) + rbi (0.1.4) + prism (>= 0.17.1, < 0.18) sorbet-runtime (>= 0.5.9204) - yarp (>= 0.11.0) - regexp_parser (2.8.1) + rdoc (6.6.0) + psych (>= 4.0.0) + regexp_parser (2.8.2) + reline (0.4.0) + io-console (~> 0.5) rexml (3.2.6) - rubocop (1.56.3) - base64 (~> 0.1.1) + rubocop (1.57.2) json (~> 2.3) language_server-protocol (>= 3.17.0) parallel (~> 1.10) - parser (>= 3.2.2.3) + parser (>= 3.2.2.4) 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) ruby-progressbar (~> 1.7) unicode-display_width (>= 2.4.0, < 3.0) - rubocop-ast (1.29.0) + rubocop-ast (1.30.0) parser (>= 3.2.1.0) - rubocop-performance (1.19.0) + rubocop-performance (1.19.1) rubocop (>= 1.7.0, < 2.0) rubocop-ast (>= 0.4.0) - rubocop-sorbet (0.7.3) + rubocop-sorbet (0.7.5) rubocop (>= 0.90.0) ruby-progressbar (1.13.0) ruby2_keywords (0.0.5) @@ -231,20 +261,20 @@ GEM simplecov_json_formatter (~> 0.1) simplecov-html (0.12.3) simplecov_json_formatter (0.1.4) - sorbet (0.5.11024) - sorbet-static (= 0.5.11024) - sorbet-runtime (0.5.11024) - sorbet-static (0.5.11024-universal-darwin) - sorbet-static (0.5.11024-x86_64-linux) - sorbet-static-and-runtime (0.5.11024) - sorbet (= 0.5.11024) - sorbet-runtime (= 0.5.11024) + sorbet (0.5.11139) + sorbet-static (= 0.5.11139) + sorbet-runtime (0.5.11139) + sorbet-static (0.5.11139-universal-darwin) + sorbet-static (0.5.11139-x86_64-linux) + sorbet-static-and-runtime (0.5.11139) + sorbet (= 0.5.11139) + sorbet-runtime (= 0.5.11139) spoom (1.2.4) erubi (>= 1.10.0) sorbet-static-and-runtime (>= 0.5.10187) syntax_tree (>= 6.1.1) thor (>= 0.19.2) - spring (4.1.1) + spring (4.1.2) sprockets (4.2.1) concurrent-ruby (~> 1.0) rack (>= 2.2.4, < 4) @@ -252,39 +282,42 @@ GEM actionpack (>= 5.2) activesupport (>= 5.2) sprockets (>= 3.0.0) - sqlite3 (1.4.4) - standard (1.31.1) + sqlite3 (1.6.8) + mini_portile2 (~> 2.8.0) + standard (1.32.0) language_server-protocol (~> 3.17.0.2) lint_roller (~> 1.0) - rubocop (~> 1.56.2) + rubocop (~> 1.57.2) standard-custom (~> 1.0.0) standard-performance (~> 1.2) standard-custom (1.0.2) lint_roller (~> 1.0) rubocop (~> 1.50) - standard-performance (1.2.0) + standard-performance (1.2.1) lint_roller (~> 1.1) - rubocop-performance (~> 1.19.0) - syntax_tree (6.1.1) + rubocop-performance (~> 1.19.1) + stringio (3.0.9) + syntax_tree (6.2.0) prettier_print (>= 1.2.0) - tapioca (0.11.9) + tapioca (0.11.12) bundler (>= 2.2.25) netrc (>= 0.11.0) parallel (>= 1.21.0) - rbi (~> 0.1.0, >= 0.1.0) + rbi (>= 0.1.4, < 0.2) sorbet-static-and-runtime (>= 0.5.10187) spoom (~> 1.2.0, >= 1.2.0) thor (>= 1.2.0) yard-sorbet - thor (1.2.2) - timeout (0.4.0) + thor (1.3.0) + timeout (0.4.1) tzinfo (2.0.6) concurrent-ruby (~> 1.0) - unicode-display_width (2.4.2) + unicode-display_width (2.5.0) webdrivers (4.7.0) nokogiri (~> 1.6) rubyzip (>= 1.3.0) selenium-webdriver (> 3.141, < 5.0) + webrick (1.8.1) websocket-driver (0.7.6) websocket-extensions (>= 0.1.0) websocket-extensions (0.1.5) @@ -294,8 +327,7 @@ GEM yard-sorbet (0.8.1) sorbet-runtime (>= 0.5) yard (>= 0.9) - yarp (0.12.0) - zeitwerk (2.6.11) + zeitwerk (2.6.12) PLATFORMS ruby @@ -308,7 +340,7 @@ DEPENDENCIES mocha pry-rails puma - rails (~> 7.0.0) + rails (~> 7.1.0) rails_anonymous_controller_testing rexml rubocop-no_sorbet! @@ -320,7 +352,7 @@ DEPENDENCIES spoom spring sprockets-rails (~> 3.4) - sqlite3 (~> 1.4.0) + sqlite3 (~> 1.6) standard super! tapioca diff --git a/dummy_path.rb b/dummy_path.rb index 0db9b325..79f727f4 100644 --- a/dummy_path.rb +++ b/dummy_path.rb @@ -1,7 +1,6 @@ -# typed: false # frozen_string_literal: true -SUPER_DEFAULT_RAILS = "rails70_sprockets4" +SUPER_DEFAULT_RAILS = "rails71_sprockets4" SUPER_RAILS_ROOTS = { "rails50_sprockets3_ruby23" => "test/dummy/rails50_sprockets3", "rails50_sprockets3" => "test/dummy/rails50_sprockets3", @@ -9,7 +8,8 @@ "rails52_sprockets4" => "test/dummy/rails52_sprockets4", "rails60_sprockets4" => "test/dummy/rails60_sprockets4", "rails61_sprockets4" => "test/dummy/rails61_sprockets4", - "rails70_sprockets4" => "test/dummy/rails70_sprockets4" + "rails70_sprockets4" => "test/dummy/rails70_sprockets4", + "rails71_sprockets4" => "test/dummy/rails71_sprockets4" } SUPER_DEVELOPMENT_GEMFILE = diff --git a/gemfiles/rails71_sprockets4.gemfile b/gemfiles/rails71_sprockets4.gemfile new file mode 100644 index 00000000..0e08ac4d --- /dev/null +++ b/gemfiles/rails71_sprockets4.gemfile @@ -0,0 +1,8 @@ +source "https://rubygems.org" + +gem "rails", "~> 7.1.0" +gem "sprockets-rails", "~> 3.4" +gem "sqlite3", "~> 1.6" +gem "rexml" + +gemspec path: "../" diff --git a/gemfiles/rails71_sprockets4.gemfile.lock b/gemfiles/rails71_sprockets4.gemfile.lock new file mode 100644 index 00000000..6f2dba0b --- /dev/null +++ b/gemfiles/rails71_sprockets4.gemfile.lock @@ -0,0 +1,266 @@ +PATH + remote: .. + specs: + super (0.22.0) + railties (>= 5.0) + +GEM + remote: https://rubygems.org/ + specs: + actioncable (7.1.2) + actionpack (= 7.1.2) + activesupport (= 7.1.2) + nio4r (~> 2.0) + websocket-driver (>= 0.6.1) + zeitwerk (~> 2.6) + actionmailbox (7.1.2) + actionpack (= 7.1.2) + activejob (= 7.1.2) + activerecord (= 7.1.2) + activestorage (= 7.1.2) + activesupport (= 7.1.2) + mail (>= 2.7.1) + net-imap + net-pop + net-smtp + actionmailer (7.1.2) + actionpack (= 7.1.2) + actionview (= 7.1.2) + activejob (= 7.1.2) + activesupport (= 7.1.2) + mail (~> 2.5, >= 2.5.4) + net-imap + net-pop + net-smtp + rails-dom-testing (~> 2.2) + actionpack (7.1.2) + actionview (= 7.1.2) + activesupport (= 7.1.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.2) + actionpack (= 7.1.2) + activerecord (= 7.1.2) + activestorage (= 7.1.2) + activesupport (= 7.1.2) + globalid (>= 0.6.0) + nokogiri (>= 1.8.5) + actionview (7.1.2) + activesupport (= 7.1.2) + builder (~> 3.1) + erubi (~> 1.11) + rails-dom-testing (~> 2.2) + rails-html-sanitizer (~> 1.6) + activejob (7.1.2) + activesupport (= 7.1.2) + globalid (>= 0.3.6) + activemodel (7.1.2) + activesupport (= 7.1.2) + activerecord (7.1.2) + activemodel (= 7.1.2) + activesupport (= 7.1.2) + timeout (>= 0.4.0) + activestorage (7.1.2) + actionpack (= 7.1.2) + activejob (= 7.1.2) + activerecord (= 7.1.2) + activesupport (= 7.1.2) + marcel (~> 1.0) + activesupport (7.1.2) + base64 + bigdecimal + concurrent-ruby (~> 1.0, >= 1.0.2) + connection_pool (>= 2.2.5) + drb + i18n (>= 1.6, < 2) + minitest (>= 5.1) + mutex_m + tzinfo (~> 2.0) + addressable (2.8.5) + public_suffix (>= 2.0.2, < 6.0) + base64 (0.2.0) + bigdecimal (3.1.4) + builder (3.2.4) + capybara (3.39.2) + addressable + matrix + mini_mime (>= 0.1.3) + nokogiri (~> 1.8) + rack (>= 1.6.0) + rack-test (>= 0.6.3) + regexp_parser (>= 1.5, < 3.0) + xpath (~> 3.2) + childprocess (3.0.0) + coderay (1.1.3) + concurrent-ruby (1.2.2) + connection_pool (2.4.1) + crass (1.0.6) + date (3.3.4) + docile (1.4.0) + drb (2.2.0) + ruby2_keywords + erubi (1.12.0) + globalid (1.2.1) + activesupport (>= 6.1) + i18n (1.14.1) + concurrent-ruby (~> 1.0) + i18n-debug (1.2.0) + i18n (< 2) + io-console (0.6.0) + irb (1.9.0) + rdoc + reline (>= 0.3.8) + loofah (2.22.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.2) + matrix (0.4.2) + method_source (1.0.0) + mini_mime (1.1.5) + minitest (5.20.0) + minitest-bisect (1.7.0) + minitest-server (~> 1.0) + path_expander (~> 1.1) + minitest-server (1.0.7) + minitest (~> 5.16) + mocha (2.1.0) + ruby2_keywords (>= 0.0.5) + mutex_m (0.2.0) + net-imap (0.4.5) + date + net-protocol + net-pop (0.1.2) + net-protocol + net-protocol (0.2.2) + timeout + net-smtp (0.4.0) + net-protocol + nio4r (2.6.0) + nokogiri (1.15.5-arm64-darwin) + racc (~> 1.4) + path_expander (1.1.1) + pry (0.14.2) + coderay (~> 1.1) + method_source (~> 1.0) + pry-rails (0.3.9) + pry (>= 0.10.4) + psych (5.1.1.1) + stringio + public_suffix (5.0.4) + puma (6.4.0) + nio4r (~> 2.0) + racc (1.7.3) + rack (3.0.8) + rack-session (2.0.0) + rack (>= 3.0.0) + rack-test (2.1.0) + rack (>= 1.3) + rackup (2.1.0) + rack (>= 3) + webrick (~> 1.8) + rails (7.1.2) + actioncable (= 7.1.2) + actionmailbox (= 7.1.2) + actionmailer (= 7.1.2) + actionpack (= 7.1.2) + actiontext (= 7.1.2) + actionview (= 7.1.2) + activejob (= 7.1.2) + activemodel (= 7.1.2) + activerecord (= 7.1.2) + activestorage (= 7.1.2) + activesupport (= 7.1.2) + bundler (>= 1.15.0) + railties (= 7.1.2) + rails-dom-testing (2.2.0) + activesupport (>= 5.0.0) + minitest + nokogiri (>= 1.6) + rails-html-sanitizer (1.6.0) + loofah (~> 2.21) + nokogiri (~> 1.14) + rails_anonymous_controller_testing (0.0.5) + actionpack (>= 5.0.0) + railties (7.1.2) + actionpack (= 7.1.2) + activesupport (= 7.1.2) + irb + rackup (>= 1.0.0) + rake (>= 12.2) + thor (~> 1.0, >= 1.2.2) + zeitwerk (~> 2.6) + rake (13.1.0) + rdoc (6.6.0) + psych (>= 4.0.0) + regexp_parser (2.8.2) + reline (0.4.0) + io-console (~> 0.5) + rexml (3.2.6) + ruby2_keywords (0.0.5) + rubyzip (2.3.2) + selenium-webdriver (3.142.7) + childprocess (>= 0.5, < 4.0) + rubyzip (>= 1.2.2) + simplecov (0.22.0) + docile (~> 1.1) + simplecov-html (~> 0.11) + simplecov_json_formatter (~> 0.1) + simplecov-html (0.12.3) + simplecov_json_formatter (0.1.4) + sprockets (4.2.1) + concurrent-ruby (~> 1.0) + rack (>= 2.2.4, < 4) + sprockets-rails (3.4.2) + actionpack (>= 5.2) + activesupport (>= 5.2) + sprockets (>= 3.0.0) + sqlite3 (1.6.8-arm64-darwin) + stringio (3.0.9) + thor (1.3.0) + timeout (0.4.1) + tzinfo (2.0.6) + concurrent-ruby (~> 1.0) + webdrivers (4.7.0) + nokogiri (~> 1.6) + rubyzip (>= 1.3.0) + selenium-webdriver (> 3.141, < 5.0) + webrick (1.8.1) + websocket-driver (0.7.6) + websocket-extensions (>= 0.1.0) + websocket-extensions (0.1.5) + xpath (3.2.0) + nokogiri (~> 1.8) + zeitwerk (2.6.12) + +PLATFORMS + arm64-darwin-22 + +DEPENDENCIES + capybara (~> 3.18) + i18n-debug + minitest-bisect + mocha + pry-rails + puma + rails (~> 7.1.0) + rails_anonymous_controller_testing + rexml + selenium-webdriver (~> 3.142) + simplecov + sprockets-rails (~> 3.4) + sqlite3 (~> 1.6) + super! + webdrivers (~> 4.3) + +BUNDLED WITH + 2.3.4 diff --git a/test/dummy/rails71_sprockets4/Rakefile b/test/dummy/rails71_sprockets4/Rakefile new file mode 100644 index 00000000..9a5ea738 --- /dev/null +++ b/test/dummy/rails71_sprockets4/Rakefile @@ -0,0 +1,6 @@ +# Add your own tasks in files placed in lib/tasks ending in .rake, +# for example lib/tasks/capistrano.rake, and they will automatically be available to Rake. + +require_relative "config/application" + +Rails.application.load_tasks diff --git a/test/dummy/rails71_sprockets4/app/assets/config/manifest.js b/test/dummy/rails71_sprockets4/app/assets/config/manifest.js new file mode 100644 index 00000000..66e485d4 --- /dev/null +++ b/test/dummy/rails71_sprockets4/app/assets/config/manifest.js @@ -0,0 +1,3 @@ +//= link_tree ../images +//= link_directory ../stylesheets .css +//= link super_manifest.js diff --git a/test/dummy/rails71_sprockets4/app/assets/images/.keep b/test/dummy/rails71_sprockets4/app/assets/images/.keep new file mode 100644 index 00000000..e69de29b diff --git a/test/dummy/rails71_sprockets4/app/assets/stylesheets/application.css b/test/dummy/rails71_sprockets4/app/assets/stylesheets/application.css new file mode 100644 index 00000000..0ebd7fe8 --- /dev/null +++ b/test/dummy/rails71_sprockets4/app/assets/stylesheets/application.css @@ -0,0 +1,15 @@ +/* + * This is a manifest file that'll be compiled into application.css, which will include all the files + * listed below. + * + * Any CSS and SCSS file within this directory, lib/assets/stylesheets, vendor/assets/stylesheets, + * or any plugin's vendor/assets/stylesheets directory can be referenced here using a relative path. + * + * You're free to add application-wide styles to this file and they'll appear at the bottom of the + * compiled file so the styles you add here take precedence over styles defined in any other CSS/SCSS + * files in this directory. Styles in this file should be added after the last require_* statement. + * It is generally better to create a new file per style scope. + * + *= require_tree . + *= require_self + */ diff --git a/test/dummy/rails71_sprockets4/app/controllers/admin/.keep b/test/dummy/rails71_sprockets4/app/controllers/admin/.keep new file mode 100644 index 00000000..e69de29b diff --git a/test/dummy/rails71_sprockets4/app/controllers/application_controller.rb b/test/dummy/rails71_sprockets4/app/controllers/application_controller.rb new file mode 100644 index 00000000..09705d12 --- /dev/null +++ b/test/dummy/rails71_sprockets4/app/controllers/application_controller.rb @@ -0,0 +1,2 @@ +class ApplicationController < ActionController::Base +end diff --git a/test/dummy/rails71_sprockets4/app/controllers/concerns/.keep b/test/dummy/rails71_sprockets4/app/controllers/concerns/.keep new file mode 100644 index 00000000..e69de29b diff --git a/test/dummy/rails71_sprockets4/app/helpers/application_helper.rb b/test/dummy/rails71_sprockets4/app/helpers/application_helper.rb new file mode 100644 index 00000000..de6be794 --- /dev/null +++ b/test/dummy/rails71_sprockets4/app/helpers/application_helper.rb @@ -0,0 +1,2 @@ +module ApplicationHelper +end diff --git a/test/dummy/rails71_sprockets4/app/jobs/application_job.rb b/test/dummy/rails71_sprockets4/app/jobs/application_job.rb new file mode 100644 index 00000000..d394c3d1 --- /dev/null +++ b/test/dummy/rails71_sprockets4/app/jobs/application_job.rb @@ -0,0 +1,7 @@ +class ApplicationJob < ActiveJob::Base + # Automatically retry jobs that encountered a deadlock + # retry_on ActiveRecord::Deadlocked + + # Most jobs are safe to ignore if the underlying records are no longer available + # discard_on ActiveJob::DeserializationError +end diff --git a/test/dummy/rails71_sprockets4/app/models/application_record.rb b/test/dummy/rails71_sprockets4/app/models/application_record.rb new file mode 100644 index 00000000..b63caeb8 --- /dev/null +++ b/test/dummy/rails71_sprockets4/app/models/application_record.rb @@ -0,0 +1,3 @@ +class ApplicationRecord < ActiveRecord::Base + primary_abstract_class +end diff --git a/test/dummy/rails71_sprockets4/app/models/concerns/.keep b/test/dummy/rails71_sprockets4/app/models/concerns/.keep new file mode 100644 index 00000000..e69de29b diff --git a/test/dummy/rails71_sprockets4/app/views/layouts/application.html.erb b/test/dummy/rails71_sprockets4/app/views/layouts/application.html.erb new file mode 100644 index 00000000..f72b4ef0 --- /dev/null +++ b/test/dummy/rails71_sprockets4/app/views/layouts/application.html.erb @@ -0,0 +1,15 @@ + + + + Dummy + + <%= csrf_meta_tags %> + <%= csp_meta_tag %> + + <%= stylesheet_link_tag "application" %> + + + + <%= yield %> + + diff --git a/test/dummy/rails71_sprockets4/bin/rails b/test/dummy/rails71_sprockets4/bin/rails new file mode 100755 index 00000000..efc03774 --- /dev/null +++ b/test/dummy/rails71_sprockets4/bin/rails @@ -0,0 +1,4 @@ +#!/usr/bin/env ruby +APP_PATH = File.expand_path("../config/application", __dir__) +require_relative "../config/boot" +require "rails/commands" diff --git a/test/dummy/rails71_sprockets4/bin/rake b/test/dummy/rails71_sprockets4/bin/rake new file mode 100755 index 00000000..4fbf10b9 --- /dev/null +++ b/test/dummy/rails71_sprockets4/bin/rake @@ -0,0 +1,4 @@ +#!/usr/bin/env ruby +require_relative "../config/boot" +require "rake" +Rake.application.run diff --git a/test/dummy/rails71_sprockets4/bin/setup b/test/dummy/rails71_sprockets4/bin/setup new file mode 100755 index 00000000..3cd5a9d7 --- /dev/null +++ b/test/dummy/rails71_sprockets4/bin/setup @@ -0,0 +1,33 @@ +#!/usr/bin/env ruby +require "fileutils" + +# path to your application root. +APP_ROOT = File.expand_path("..", __dir__) + +def system!(*args) + system(*args, exception: true) +end + +FileUtils.chdir APP_ROOT do + # This script is a way to set up or update your development environment automatically. + # This script is idempotent, so that you can run it at any time and get an expectable outcome. + # Add necessary setup steps to this file. + + puts "== Installing dependencies ==" + system! "gem install bundler --conservative" + system("bundle check") || system!("bundle install") + + # puts "\n== Copying sample files ==" + # unless File.exist?("config/database.yml") + # FileUtils.cp "config/database.yml.sample", "config/database.yml" + # end + + puts "\n== Preparing database ==" + system! "bin/rails db:prepare" + + puts "\n== Removing old logs and tempfiles ==" + system! "bin/rails log:clear tmp:clear" + + puts "\n== Restarting application server ==" + system! "bin/rails restart" +end diff --git a/test/dummy/rails71_sprockets4/config.ru b/test/dummy/rails71_sprockets4/config.ru new file mode 100644 index 00000000..4a3c09a6 --- /dev/null +++ b/test/dummy/rails71_sprockets4/config.ru @@ -0,0 +1,6 @@ +# This file is used by Rack-based servers to start the application. + +require_relative "config/environment" + +run Rails.application +Rails.application.load_server diff --git a/test/dummy/rails71_sprockets4/config/application.rb b/test/dummy/rails71_sprockets4/config/application.rb new file mode 100644 index 00000000..d15b857d --- /dev/null +++ b/test/dummy/rails71_sprockets4/config/application.rb @@ -0,0 +1,46 @@ +require_relative "boot" + +require "rails" +require "sprockets/railtie" +# Pick the frameworks you want: +require "active_model/railtie" +require "active_job/railtie" +require "active_record/railtie" +# require "active_storage/engine" +require "action_controller/railtie" +# require "action_mailer/railtie" +# require "action_mailbox/engine" +# require "action_text/engine" +require "action_view/railtie" +# require "action_cable/engine" +require "rails/test_unit/railtie" + +# Require the gems listed in Gemfile, including any gems +# you've limited to :test, :development, or :production. +Bundler.require(*Rails.groups) + +module Dummy + class Application < Rails::Application + config.load_defaults Rails::VERSION::STRING.to_f + + # For compatibility with applications that use this config + config.action_controller.include_all_helpers = false + + # Please, add to the `ignore` list any other `lib` subdirectories that do + # not contain `.rb` files, or that should not be reloaded or eager loaded. + # Common ones are `templates`, `generators`, or `middleware`, for example. + config.autoload_lib(ignore: %w(assets tasks)) + + # Configuration for the application, engines, and railties goes here. + # + # These settings can be overridden in specific environments using the files + # in config/environments, which are processed later. + # + # config.time_zone = "Central Time (US & Canada)" + # config.eager_load_paths << Rails.root.join("extras") + end +end + +Rails.application.config.paths.add "../share/app/controllers", eager_load: true +Rails.application.config.paths.add "../share/app/models", eager_load: true +Rails.application.config.paths["app/views"] << "../share/app/views" diff --git a/test/dummy/rails71_sprockets4/config/boot.rb b/test/dummy/rails71_sprockets4/config/boot.rb new file mode 100644 index 00000000..116591a4 --- /dev/null +++ b/test/dummy/rails71_sprockets4/config/boot.rb @@ -0,0 +1,5 @@ +# Set up gems listed in the Gemfile. +ENV["BUNDLE_GEMFILE"] ||= File.expand_path("../../../Gemfile", __dir__) + +require "bundler/setup" if File.exist?(ENV["BUNDLE_GEMFILE"]) +$LOAD_PATH.unshift File.expand_path("../../../lib", __dir__) diff --git a/test/dummy/rails71_sprockets4/config/database.yml b/test/dummy/rails71_sprockets4/config/database.yml new file mode 100644 index 00000000..796466ba --- /dev/null +++ b/test/dummy/rails71_sprockets4/config/database.yml @@ -0,0 +1,25 @@ +# SQLite. Versions 3.8.0 and up are supported. +# gem install sqlite3 +# +# Ensure the SQLite 3 gem is defined in your Gemfile +# gem "sqlite3" +# +default: &default + adapter: sqlite3 + pool: <%= ENV.fetch("RAILS_MAX_THREADS") { 5 } %> + timeout: 5000 + +development: + <<: *default + database: storage/development.sqlite3 + +# Warning: The database defined as "test" will be erased and +# re-generated from your development database when you run "rake". +# Do not set this db to the same as development or production. +test: + <<: *default + database: storage/test.sqlite3 + +production: + <<: *default + database: storage/production.sqlite3 diff --git a/test/dummy/rails71_sprockets4/config/environment.rb b/test/dummy/rails71_sprockets4/config/environment.rb new file mode 100644 index 00000000..cac53157 --- /dev/null +++ b/test/dummy/rails71_sprockets4/config/environment.rb @@ -0,0 +1,5 @@ +# Load the Rails application. +require_relative "application" + +# Initialize the Rails application. +Rails.application.initialize! diff --git a/test/dummy/rails71_sprockets4/config/environments/development.rb b/test/dummy/rails71_sprockets4/config/environments/development.rb new file mode 100644 index 00000000..ff757b72 --- /dev/null +++ b/test/dummy/rails71_sprockets4/config/environments/development.rb @@ -0,0 +1,65 @@ +require "active_support/core_ext/integer/time" + +Rails.application.configure do + # Settings specified here will take precedence over those in config/application.rb. + + # In the development environment your application's code is reloaded any time + # it changes. This slows down response time but is perfect for development + # since you don't have to restart the web server when you make code changes. + config.enable_reloading = true + + # Do not eager load code on boot. + config.eager_load = false + + # Show full error reports. + config.consider_all_requests_local = true + + # Enable server timing + config.server_timing = true + + # Enable/disable caching. By default caching is disabled. + # Run rails dev:cache to toggle caching. + if Rails.root.join("tmp/caching-dev.txt").exist? + config.action_controller.perform_caching = true + config.action_controller.enable_fragment_cache_logging = true + + config.cache_store = :memory_store + config.public_file_server.headers = { + "Cache-Control" => "public, max-age=#{2.days.to_i}" + } + else + config.action_controller.perform_caching = false + + config.cache_store = :null_store + end + + # Print deprecation notices to the Rails logger. + config.active_support.deprecation = :log + + # Raise exceptions for disallowed deprecations. + config.active_support.disallowed_deprecation = :raise + + # Tell Active Support which deprecation messages to disallow. + config.active_support.disallowed_deprecation_warnings = [] + + # Raise an error on page load if there are pending migrations. + config.active_record.migration_error = :page_load + + # Highlight code that triggered database queries in logs. + config.active_record.verbose_query_logs = true + + # Highlight code that enqueued background job in logs. + config.active_job.verbose_enqueue_logs = true + + # Suppress logger output for asset requests. + config.assets.quiet = true + + # Raises error for missing translations. + # config.i18n.raise_on_missing_translations = true + + # Annotate rendered view with file names. + # config.action_view.annotate_rendered_view_with_filenames = true + + # Raise error when a before_action's only/except options reference missing actions + config.action_controller.raise_on_missing_callback_actions = true +end diff --git a/test/dummy/rails71_sprockets4/config/environments/production.rb b/test/dummy/rails71_sprockets4/config/environments/production.rb new file mode 100644 index 00000000..1d662796 --- /dev/null +++ b/test/dummy/rails71_sprockets4/config/environments/production.rb @@ -0,0 +1,83 @@ +require "active_support/core_ext/integer/time" + +Rails.application.configure do + # Settings specified here will take precedence over those in config/application.rb. + + # Code is not reloaded between requests. + config.enable_reloading = false + + # Eager load code on boot. This eager loads most of Rails and + # your application in memory, allowing both threaded web servers + # and those relying on copy on write to perform better. + # Rake tasks automatically ignore this option for performance. + config.eager_load = true + + # Full error reports are disabled and caching is turned on. + config.consider_all_requests_local = false + config.action_controller.perform_caching = true + + # Ensures that a master key has been made available in ENV["RAILS_MASTER_KEY"], config/master.key, or an environment + # key such as config/credentials/production.key. This key is used to decrypt credentials (and other encrypted files). + # config.require_master_key = true + + # Disable serving static files from `public/`, relying on NGINX/Apache to do so instead. + # config.public_file_server.enabled = false + + # Compress CSS using a preprocessor. + # config.assets.css_compressor = :sass + + # Do not fallback to assets pipeline if a precompiled asset is missed. + config.assets.compile = false + + # Enable serving of images, stylesheets, and JavaScripts from an asset server. + # config.asset_host = "http://assets.example.com" + + # Specifies the header that your server uses for sending files. + # config.action_dispatch.x_sendfile_header = "X-Sendfile" # for Apache + # config.action_dispatch.x_sendfile_header = "X-Accel-Redirect" # for NGINX + + # Assume all access to the app is happening through a SSL-terminating reverse proxy. + # Can be used together with config.force_ssl for Strict-Transport-Security and secure cookies. + # config.assume_ssl = true + + # Force all access to the app over SSL, use Strict-Transport-Security, and use secure cookies. + config.force_ssl = true + + # Log to STDOUT by default + config.logger = ActiveSupport::Logger.new(STDOUT) + .tap { |logger| logger.formatter = ::Logger::Formatter.new } + .then { |logger| ActiveSupport::TaggedLogging.new(logger) } + + # Prepend all log lines with the following tags. + config.log_tags = [ :request_id ] + + # Info include generic and useful information about system operation, but avoids logging too much + # information to avoid inadvertent exposure of personally identifiable information (PII). If you + # want to log everything, set the level to "debug". + config.log_level = ENV.fetch("RAILS_LOG_LEVEL", "info") + + # Use a different cache store in production. + # config.cache_store = :mem_cache_store + + # Use a real queuing backend for Active Job (and separate queues per environment). + # config.active_job.queue_adapter = :resque + # config.active_job.queue_name_prefix = "dummy_production" + + # Enable locale fallbacks for I18n (makes lookups for any locale fall back to + # the I18n.default_locale when a translation cannot be found). + config.i18n.fallbacks = true + + # Don't log any deprecations. + config.active_support.report_deprecations = false + + # Do not dump schema after migrations. + config.active_record.dump_schema_after_migration = false + + # Enable DNS rebinding protection and other `Host` header attacks. + # config.hosts = [ + # "example.com", # Allow requests from example.com + # /.*\.example\.com/ # Allow requests from subdomains like `www.example.com` + # ] + # Skip DNS rebinding protection for the default health check endpoint. + # config.host_authorization = { exclude: ->(request) { request.path == "/up" } } +end diff --git a/test/dummy/rails71_sprockets4/config/environments/test.rb b/test/dummy/rails71_sprockets4/config/environments/test.rb new file mode 100644 index 00000000..d349c355 --- /dev/null +++ b/test/dummy/rails71_sprockets4/config/environments/test.rb @@ -0,0 +1,54 @@ +require "active_support/core_ext/integer/time" + +# The test environment is used exclusively to run your application's +# test suite. You never need to work with it otherwise. Remember that +# your test database is "scratch space" for the test suite and is wiped +# and recreated between test runs. Don't rely on the data there! + +Rails.application.configure do + # Settings specified here will take precedence over those in config/application.rb. + + # While tests run files are not watched, reloading is not necessary. + config.enable_reloading = false + + # Eager loading loads your entire application. When running a single test locally, + # this is usually not necessary, and can slow down your test suite. However, it's + # recommended that you enable it in continuous integration systems to ensure eager + # loading is working properly before deploying your code. + config.eager_load = ENV["CI"].present? + + # Configure public file server for tests with Cache-Control for performance. + config.public_file_server.enabled = true + config.public_file_server.headers = { + "Cache-Control" => "public, max-age=#{1.hour.to_i}" + } + + # Show full error reports and disable caching. + config.consider_all_requests_local = true + config.action_controller.perform_caching = false + config.cache_store = :null_store + + # Render exception templates for rescuable exceptions and raise for other exceptions. + config.action_dispatch.show_exceptions = :rescuable + + # Disable request forgery protection in test environment. + config.action_controller.allow_forgery_protection = false + + # Print deprecation notices to the stderr. + config.active_support.deprecation = :stderr + + # Raise exceptions for disallowed deprecations. + config.active_support.disallowed_deprecation = :raise + + # Tell Active Support which deprecation messages to disallow. + config.active_support.disallowed_deprecation_warnings = [] + + # Raises error for missing translations. + # config.i18n.raise_on_missing_translations = true + + # Annotate rendered view with file names. + # config.action_view.annotate_rendered_view_with_filenames = true + + # Raise error when a before_action's only/except options reference missing actions + config.action_controller.raise_on_missing_callback_actions = true +end diff --git a/test/dummy/rails71_sprockets4/config/initializers/assets.rb b/test/dummy/rails71_sprockets4/config/initializers/assets.rb new file mode 100644 index 00000000..2eeef966 --- /dev/null +++ b/test/dummy/rails71_sprockets4/config/initializers/assets.rb @@ -0,0 +1,12 @@ +# Be sure to restart your server when you modify this file. + +# Version of your assets, change this if you want to expire all your assets. +Rails.application.config.assets.version = "1.0" + +# Add additional assets to the asset load path. +# Rails.application.config.assets.paths << Emoji.images_path + +# Precompile additional assets. +# application.js, application.css, and all non-JS/CSS in the app/assets +# folder are already added. +# Rails.application.config.assets.precompile += %w( admin.js admin.css ) diff --git a/test/dummy/rails71_sprockets4/config/initializers/content_security_policy.rb b/test/dummy/rails71_sprockets4/config/initializers/content_security_policy.rb new file mode 100644 index 00000000..b3076b38 --- /dev/null +++ b/test/dummy/rails71_sprockets4/config/initializers/content_security_policy.rb @@ -0,0 +1,25 @@ +# Be sure to restart your server when you modify this file. + +# Define an application-wide content security policy. +# See the Securing Rails Applications Guide for more information: +# https://guides.rubyonrails.org/security.html#content-security-policy-header + +# Rails.application.configure do +# config.content_security_policy do |policy| +# policy.default_src :self, :https +# policy.font_src :self, :https, :data +# policy.img_src :self, :https, :data +# policy.object_src :none +# policy.script_src :self, :https +# policy.style_src :self, :https +# # Specify URI for violation reports +# # policy.report_uri "/csp-violation-report-endpoint" +# end +# +# # Generate session nonces for permitted importmap, inline scripts, and inline styles. +# config.content_security_policy_nonce_generator = ->(request) { request.session.id.to_s } +# config.content_security_policy_nonce_directives = %w(script-src style-src) +# +# # Report violations without enforcing the policy. +# # config.content_security_policy_report_only = true +# end diff --git a/test/dummy/rails71_sprockets4/config/initializers/filter_parameter_logging.rb b/test/dummy/rails71_sprockets4/config/initializers/filter_parameter_logging.rb new file mode 100644 index 00000000..c2d89e28 --- /dev/null +++ b/test/dummy/rails71_sprockets4/config/initializers/filter_parameter_logging.rb @@ -0,0 +1,8 @@ +# Be sure to restart your server when you modify this file. + +# Configure parameters to be partially matched (e.g. passw matches password) and filtered from the log file. +# Use this to limit dissemination of sensitive information. +# See the ActiveSupport::ParameterFilter documentation for supported notations and behaviors. +Rails.application.config.filter_parameters += [ + :passw, :secret, :token, :_key, :crypt, :salt, :certificate, :otp, :ssn +] diff --git a/test/dummy/rails71_sprockets4/config/initializers/inflections.rb b/test/dummy/rails71_sprockets4/config/initializers/inflections.rb new file mode 100644 index 00000000..3860f659 --- /dev/null +++ b/test/dummy/rails71_sprockets4/config/initializers/inflections.rb @@ -0,0 +1,16 @@ +# Be sure to restart your server when you modify this file. + +# Add new inflection rules using the following format. Inflections +# are locale specific, and you may define rules for as many different +# locales as you wish. All of these examples are active by default: +# ActiveSupport::Inflector.inflections(:en) do |inflect| +# inflect.plural /^(ox)$/i, "\\1en" +# inflect.singular /^(ox)en/i, "\\1" +# inflect.irregular "person", "people" +# inflect.uncountable %w( fish sheep ) +# end + +# These inflection rules are supported but not enabled by default: +# ActiveSupport::Inflector.inflections(:en) do |inflect| +# inflect.acronym "RESTful" +# end diff --git a/test/dummy/rails71_sprockets4/config/initializers/permissions_policy.rb b/test/dummy/rails71_sprockets4/config/initializers/permissions_policy.rb new file mode 100644 index 00000000..7db3b957 --- /dev/null +++ b/test/dummy/rails71_sprockets4/config/initializers/permissions_policy.rb @@ -0,0 +1,13 @@ +# Be sure to restart your server when you modify this file. + +# Define an application-wide HTTP permissions policy. For further +# information see: https://developers.google.com/web/updates/2018/06/feature-policy + +# Rails.application.config.permissions_policy do |policy| +# policy.camera :none +# policy.gyroscope :none +# policy.microphone :none +# policy.usb :none +# policy.fullscreen :self +# policy.payment :self, "https://secure.example.com" +# end diff --git a/test/dummy/rails71_sprockets4/config/initializers/super.rb b/test/dummy/rails71_sprockets4/config/initializers/super.rb new file mode 100644 index 00000000..3727dab1 --- /dev/null +++ b/test/dummy/rails71_sprockets4/config/initializers/super.rb @@ -0,0 +1,3 @@ +Super.configuration do |c| + c.title = "My Admin Site" +end diff --git a/test/dummy/rails71_sprockets4/config/locales/en.yml b/test/dummy/rails71_sprockets4/config/locales/en.yml new file mode 100644 index 00000000..6c349ae5 --- /dev/null +++ b/test/dummy/rails71_sprockets4/config/locales/en.yml @@ -0,0 +1,31 @@ +# Files in the config/locales directory are used for internationalization and +# are automatically loaded by Rails. If you want to use locales other than +# English, add the necessary files in this directory. +# +# To use the locales, use `I18n.t`: +# +# I18n.t "hello" +# +# In views, this is aliased to just `t`: +# +# <%= t("hello") %> +# +# To use a different locale, set it with `I18n.locale`: +# +# I18n.locale = :es +# +# This would use the information in config/locales/es.yml. +# +# To learn more about the API, please read the Rails Internationalization guide +# at https://guides.rubyonrails.org/i18n.html. +# +# Be aware that YAML interprets the following case-insensitive strings as +# booleans: `true`, `false`, `on`, `off`, `yes`, `no`. Therefore, these strings +# must be quoted to be interpreted as strings. For example: +# +# en: +# "yes": yup +# enabled: "ON" + +en: + hello: "Hello world" diff --git a/test/dummy/rails71_sprockets4/config/puma.rb b/test/dummy/rails71_sprockets4/config/puma.rb new file mode 100644 index 00000000..afa809b4 --- /dev/null +++ b/test/dummy/rails71_sprockets4/config/puma.rb @@ -0,0 +1,35 @@ +# This configuration file will be evaluated by Puma. The top-level methods that +# are invoked here are part of Puma's configuration DSL. For more information +# about methods provided by the DSL, see https://puma.io/puma/Puma/DSL.html. + +# Puma can serve each request in a thread from an internal thread pool. +# The `threads` method setting takes two numbers: a minimum and maximum. +# Any libraries that use thread pools should be configured to match +# the maximum value specified for Puma. Default is set to 5 threads for minimum +# and maximum; this matches the default thread size of Active Record. +max_threads_count = ENV.fetch("RAILS_MAX_THREADS") { 5 } +min_threads_count = ENV.fetch("RAILS_MIN_THREADS") { max_threads_count } +threads min_threads_count, max_threads_count + +# Specifies that the worker count should equal the number of processors in production. +if ENV["RAILS_ENV"] == "production" + require "concurrent-ruby" + worker_count = Integer(ENV.fetch("WEB_CONCURRENCY") { Concurrent.physical_processor_count }) + workers worker_count if worker_count > 1 +end + +# Specifies the `worker_timeout` threshold that Puma will use to wait before +# terminating a worker in development environments. +worker_timeout 3600 if ENV.fetch("RAILS_ENV", "development") == "development" + +# Specifies the `port` that Puma will listen on to receive requests; default is 3000. +port ENV.fetch("PORT") { 3000 } + +# Specifies the `environment` that Puma will run in. +environment ENV.fetch("RAILS_ENV") { "development" } + +# Specifies the `pidfile` that Puma will use. +pidfile ENV.fetch("PIDFILE") { "tmp/pids/server.pid" } + +# Allow puma to be restarted by `bin/rails restart` command. +plugin :tmp_restart diff --git a/test/dummy/rails71_sprockets4/config/routes.rb b/test/dummy/rails71_sprockets4/config/routes.rb new file mode 100644 index 00000000..65980d79 --- /dev/null +++ b/test/dummy/rails71_sprockets4/config/routes.rb @@ -0,0 +1,16 @@ +# frozen_string_literal: true + +Rails.application.routes.draw do + namespace :admin do + resources :members do + post :batch_noop, on: :collection + resources :favorite_things, shallow: true + end + resources :ships + resources :sinks + + root to: redirect("admin/members", status: 302) + end + + root to: redirect("admin/members", status: 302) +end diff --git a/test/dummy/rails71_sprockets4/db/migrate/20190216224956_create_members.rb b/test/dummy/rails71_sprockets4/db/migrate/20190216224956_create_members.rb new file mode 100644 index 00000000..1cef9e02 --- /dev/null +++ b/test/dummy/rails71_sprockets4/db/migrate/20190216224956_create_members.rb @@ -0,0 +1,13 @@ +# frozen_string_literal: true + +class CreateMembers < ActiveRecord::Migration[5.0] + def change + create_table :members do |t| + t.string :name, null: false + t.string :rank, null: false + t.string :position + + t.timestamps + end + end +end diff --git a/test/dummy/rails71_sprockets4/db/migrate/20190803143320_create_ships.rb b/test/dummy/rails71_sprockets4/db/migrate/20190803143320_create_ships.rb new file mode 100644 index 00000000..1e7164f8 --- /dev/null +++ b/test/dummy/rails71_sprockets4/db/migrate/20190803143320_create_ships.rb @@ -0,0 +1,13 @@ +# frozen_string_literal: true + +class CreateShips < ActiveRecord::Migration[5.0] + def change + create_table :ships do |t| + t.string :name + t.string :registry + t.string :class_name + + t.timestamps + end + end +end diff --git a/test/dummy/rails71_sprockets4/db/migrate/20190806014121_add_ship_to_members.rb b/test/dummy/rails71_sprockets4/db/migrate/20190806014121_add_ship_to_members.rb new file mode 100644 index 00000000..cb1dd0ca --- /dev/null +++ b/test/dummy/rails71_sprockets4/db/migrate/20190806014121_add_ship_to_members.rb @@ -0,0 +1,7 @@ +# frozen_string_literal: true + +class AddShipToMembers < ActiveRecord::Migration[5.0] + def change + add_reference :members, :ship, foreign_key: true + end +end diff --git a/test/dummy/rails71_sprockets4/db/migrate/20191126050453_create_favorite_things.rb b/test/dummy/rails71_sprockets4/db/migrate/20191126050453_create_favorite_things.rb new file mode 100644 index 00000000..8986196d --- /dev/null +++ b/test/dummy/rails71_sprockets4/db/migrate/20191126050453_create_favorite_things.rb @@ -0,0 +1,12 @@ +# frozen_string_literal: true + +class CreateFavoriteThings < ActiveRecord::Migration[5.0] + def change + create_table :favorite_things do |t| + t.references :member, null: false, foreign_key: true + t.text :name + + t.timestamps + end + end +end diff --git a/test/dummy/rails71_sprockets4/db/migrate/20210411180249_create_sinks.rb b/test/dummy/rails71_sprockets4/db/migrate/20210411180249_create_sinks.rb new file mode 100644 index 00000000..330b615b --- /dev/null +++ b/test/dummy/rails71_sprockets4/db/migrate/20210411180249_create_sinks.rb @@ -0,0 +1,22 @@ +# frozen_string_literal: true + +class CreateSinks < ActiveRecord::Migration[5.0] + def change + create_table :sinks do |t| + t.string :string_column + t.text :text_column + t.integer :integer_column + t.bigint :bigint_column + t.float :float_column + t.decimal :decimal_column + t.numeric :numeric_column + t.datetime :datetime_column + t.time :time_column + t.date :date_column + t.binary :binary_column + t.boolean :boolean_column + + t.timestamps + end + end +end diff --git a/test/dummy/rails71_sprockets4/db/schema.rb b/test/dummy/rails71_sprockets4/db/schema.rb new file mode 100644 index 00000000..d0761443 --- /dev/null +++ b/test/dummy/rails71_sprockets4/db/schema.rb @@ -0,0 +1,59 @@ +# This file is auto-generated from the current state of the database. Instead +# of editing this file, please use the migrations feature of Active Record to +# incrementally modify your database, and then regenerate this schema definition. +# +# This file is the source Rails uses to define your schema when running `bin/rails +# db:schema:load`. When creating a new database, `bin/rails db:schema:load` tends to +# be faster and is potentially less error prone than running all of your +# migrations from scratch. Old migrations may fail to apply correctly if those +# migrations use external dependencies or application code. +# +# It's strongly recommended that you check this file into your version control system. + +ActiveRecord::Schema[7.1].define(version: 2021_04_11_180249) do + create_table "favorite_things", force: :cascade do |t| + t.integer "member_id", null: false + t.text "name" + t.datetime "created_at", precision: nil, null: false + t.datetime "updated_at", precision: nil, null: false + t.index ["member_id"], name: "index_favorite_things_on_member_id" + end + + create_table "members", force: :cascade do |t| + t.string "name", null: false + t.string "rank", null: false + t.string "position" + t.datetime "created_at", precision: nil, null: false + t.datetime "updated_at", precision: nil, null: false + t.integer "ship_id" + t.index ["ship_id"], name: "index_members_on_ship_id" + end + + create_table "ships", force: :cascade do |t| + t.string "name" + t.string "registry" + t.string "class_name" + t.datetime "created_at", precision: nil, null: false + t.datetime "updated_at", precision: nil, null: false + end + + create_table "sinks", force: :cascade do |t| + t.string "string_column" + t.text "text_column" + t.integer "integer_column" + t.bigint "bigint_column" + t.float "float_column" + t.decimal "decimal_column" + t.decimal "numeric_column" + t.datetime "datetime_column", precision: nil + t.time "time_column" + t.date "date_column" + t.binary "binary_column" + t.boolean "boolean_column" + t.datetime "created_at", precision: nil, null: false + t.datetime "updated_at", precision: nil, null: false + end + + add_foreign_key "favorite_things", "members" + add_foreign_key "members", "ships" +end diff --git a/test/dummy/rails71_sprockets4/db/seeds.rb b/test/dummy/rails71_sprockets4/db/seeds.rb new file mode 100644 index 00000000..c9ef0739 --- /dev/null +++ b/test/dummy/rails71_sprockets4/db/seeds.rb @@ -0,0 +1,4 @@ +# frozen_string_literal: true + +require "super_test_engine/starfleet_seeder" +StarfleetSeeder.seed diff --git a/test/dummy/rails71_sprockets4/lib/assets/.keep b/test/dummy/rails71_sprockets4/lib/assets/.keep new file mode 100644 index 00000000..e69de29b diff --git a/test/dummy/rails71_sprockets4/log/.keep b/test/dummy/rails71_sprockets4/log/.keep new file mode 100644 index 00000000..e69de29b diff --git a/test/dummy/rails71_sprockets4/public/404.html b/test/dummy/rails71_sprockets4/public/404.html new file mode 100644 index 00000000..2be3af26 --- /dev/null +++ b/test/dummy/rails71_sprockets4/public/404.html @@ -0,0 +1,67 @@ + + + + The page you were looking for doesn't exist (404) + + + + + + +
+
+

The page you were looking for doesn't exist.

+

You may have mistyped the address or the page may have moved.

+
+

If you are the application owner check the logs for more information.

+
+ + diff --git a/test/dummy/rails71_sprockets4/public/422.html b/test/dummy/rails71_sprockets4/public/422.html new file mode 100644 index 00000000..c08eac0d --- /dev/null +++ b/test/dummy/rails71_sprockets4/public/422.html @@ -0,0 +1,67 @@ + + + + The change you wanted was rejected (422) + + + + + + +
+
+

The change you wanted was rejected.

+

Maybe you tried to change something you didn't have access to.

+
+

If you are the application owner check the logs for more information.

+
+ + diff --git a/test/dummy/rails71_sprockets4/public/500.html b/test/dummy/rails71_sprockets4/public/500.html new file mode 100644 index 00000000..78a030af --- /dev/null +++ b/test/dummy/rails71_sprockets4/public/500.html @@ -0,0 +1,66 @@ + + + + We're sorry, but something went wrong (500) + + + + + + +
+
+

We're sorry, but something went wrong.

+
+

If you are the application owner check the logs for more information.

+
+ + diff --git a/test/dummy/rails71_sprockets4/public/favicon.ico b/test/dummy/rails71_sprockets4/public/favicon.ico new file mode 100644 index 00000000..e69de29b