diff --git a/Appraisals b/Appraisals index b61b4a4bb..8dd66aa4f 100644 --- a/Appraisals +++ b/Appraisals @@ -45,6 +45,8 @@ appraise "rails-8.1" do end appraise "rails-main" do + ruby "4.0.0.dev" + gem "rack", git: "https://github.com/rack/rack", ref: "8a4475a9f416a72e5b02bd7817e4a8ed684f29b0" gem "rails", github: "rails/rails", branch: "main" diff --git a/Gemfile b/Gemfile index 39889a52a..2fe216231 100644 --- a/Gemfile +++ b/Gemfile @@ -16,7 +16,7 @@ group :development, :test do gem "appraisal-run", "~> 1.1" gem "benchmark-ips", "~> 2" gem "better_html" - gem "bundler", "~> 2" + gem "bundler" gem "capybara", "~> 3" gem "cuprite" gem "dry-initializer", require: true diff --git a/Gemfile.lock b/Gemfile.lock index d849e094a..07c7b6fe8 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -124,7 +124,7 @@ GEM docile (1.4.1) drb (2.2.3) dry-initializer (3.2.0) - erb (5.1.3) + erb (6.0.0) erb_lint (0.9.0) activesupport better_html (>= 2.0.1) @@ -141,7 +141,7 @@ GEM websocket-driver (~> 0.7) globalid (1.3.0) activesupport (>= 6.1) - haml (6.3.0) + haml (6.4.0) temple (>= 0.8.2) thor tilt @@ -175,7 +175,7 @@ GEM matrix (0.4.3) method_source (1.1.0) mini_mime (1.1.5) - minitest (5.26.1) + minitest (5.26.2) net-imap (0.5.12) date net-protocol @@ -185,7 +185,7 @@ GEM timeout net-smtp (0.5.1) net-protocol - nio4r (2.7.4) + nio4r (2.7.5) nokogiri (1.18.10-aarch64-linux-gnu) racc (~> 1.4) nokogiri (1.18.10-aarch64-linux-musl) @@ -267,18 +267,18 @@ GEM tsort redis (5.4.1) redis-client (>= 0.22.0) - redis-client (0.25.1) + redis-client (0.26.1) connection_pool regexp_parser (2.11.3) - reline (0.6.2) + reline (0.6.3) io-console (~> 0.5) rexml (3.4.4) - rspec-core (3.13.5) + rspec-core (3.13.6) rspec-support (~> 3.13.0) rspec-expectations (3.13.5) diff-lcs (>= 1.2.0, < 2.0) rspec-support (~> 3.13.0) - rspec-mocks (3.13.5) + rspec-mocks (3.13.7) diff-lcs (>= 1.2.0, < 2.0) rspec-support (~> 3.13.0) rspec-rails (8.0.2) @@ -289,8 +289,8 @@ GEM rspec-expectations (~> 3.13) rspec-mocks (~> 3.13) rspec-support (~> 3.13) - rspec-support (3.13.5) - rubocop (1.80.2) + rspec-support (3.13.6) + rubocop (1.81.7) json (~> 2.3) language_server-protocol (~> 3.17.0.2) lint_roller (~> 1.1.0) @@ -298,10 +298,10 @@ GEM parser (>= 3.3.0.2) rainbow (>= 2.2.2, < 4.0) regexp_parser (>= 2.9.3, < 3.0) - rubocop-ast (>= 1.46.0, < 2.0) + rubocop-ast (>= 1.47.1, < 2.0) ruby-progressbar (~> 1.7) unicode-display_width (>= 2.4.0, < 4.0) - rubocop-ast (1.47.1) + rubocop-ast (1.48.0) parser (>= 3.3.7.2) prism (~> 1.4) rubocop-md (2.0.3) @@ -342,10 +342,10 @@ GEM actionpack (>= 6.1) activesupport (>= 6.1) sprockets (>= 3.0.0) - standard (1.51.1) + standard (1.52.0) language_server-protocol (~> 3.17.0.2) lint_roller (~> 1.0) - rubocop (~> 1.80.2) + rubocop (~> 1.81.7) standard-custom (~> 1.0.0) standard-performance (~> 1.8) standard-custom (1.0.2) @@ -354,7 +354,7 @@ GEM standard-performance (1.8.0) lint_roller (~> 1.1) rubocop-performance (~> 1.25.0) - stringio (3.1.7) + stringio (3.1.8) tailwindcss-rails (4.4.0) railties (>= 7.0.0) tailwindcss-ruby (~> 4.0) @@ -365,12 +365,12 @@ GEM tailwindcss-ruby (4.1.16-x86_64-darwin) tailwindcss-ruby (4.1.16-x86_64-linux-gnu) tailwindcss-ruby (4.1.16-x86_64-linux-musl) - temple (0.10.3) + temple (0.10.4) terminal-table (4.0.0) unicode-display_width (>= 1.1.1, < 4) thor (1.4.0) tilt (2.6.1) - timeout (0.4.3) + timeout (0.4.4) tsort (0.2.0) turbo-rails (2.0.20) actionpack (>= 7.1.0) @@ -412,7 +412,7 @@ DEPENDENCIES appraisal-run (~> 1.1) benchmark-ips (~> 2) better_html - bundler (~> 2) + bundler capybara (~> 3) cuprite dry-initializer @@ -444,7 +444,7 @@ DEPENDENCIES yard-activesupport-concern (< 1) RUBY VERSION - ruby 3.4.2p28 + ruby 3.4.3p32 BUNDLED WITH 2.6.2 diff --git a/docs/CHANGELOG.md b/docs/CHANGELOG.md index fae393e8c..58fec973c 100644 --- a/docs/CHANGELOG.md +++ b/docs/CHANGELOG.md @@ -10,6 +10,10 @@ nav_order: 6 ## main +* Fix bug where error line numbers were incorrect in Rails 8.1. + + *Joel Hawksley* + * Remove `< 8.2` upper bound for `activesupport` and `actionview` dependencies. *Hans Lemuet* diff --git a/gemfiles/rails_7.1.gemfile b/gemfiles/rails_7.1.gemfile index 0532c2b3a..7ab12e16b 100644 --- a/gemfiles/rails_7.1.gemfile +++ b/gemfiles/rails_7.1.gemfile @@ -9,7 +9,7 @@ gem "rails", "~> 7.1.0" group :development, :test do gem "allocation_stats" gem "appraisal", "~> 2" - gem "appraisal-run", "~> 1.0" + gem "appraisal-run", "~> 1.1" gem "benchmark-ips", "~> 2" gem "better_html" gem "bundler", "~> 2" @@ -23,7 +23,7 @@ group :development, :test do gem "method_source", "~> 1" gem "minitest", "~> 5" gem "propshaft", "~> 1" - gem "puma", "~> 6" + gem "puma", ">= 6" gem "rake", "~> 13" gem "rails-dom-testing", "~> 2.3.0" gem "redis" diff --git a/gemfiles/rails_7.1.gemfile.lock b/gemfiles/rails_7.1.gemfile.lock index 632bff041..2bd43cefb 100644 --- a/gemfiles/rails_7.1.gemfile.lock +++ b/gemfiles/rails_7.1.gemfile.lock @@ -9,35 +9,36 @@ PATH GEM remote: https://rubygems.org/ specs: - actioncable (7.1.5.1) - actionpack (= 7.1.5.1) - activesupport (= 7.1.5.1) + actioncable (7.1.6) + actionpack (= 7.1.6) + activesupport (= 7.1.6) nio4r (~> 2.0) websocket-driver (>= 0.6.1) zeitwerk (~> 2.6) - actionmailbox (7.1.5.1) - actionpack (= 7.1.5.1) - activejob (= 7.1.5.1) - activerecord (= 7.1.5.1) - activestorage (= 7.1.5.1) - activesupport (= 7.1.5.1) + actionmailbox (7.1.6) + actionpack (= 7.1.6) + activejob (= 7.1.6) + activerecord (= 7.1.6) + activestorage (= 7.1.6) + activesupport (= 7.1.6) mail (>= 2.7.1) net-imap net-pop net-smtp - actionmailer (7.1.5.1) - actionpack (= 7.1.5.1) - actionview (= 7.1.5.1) - activejob (= 7.1.5.1) - activesupport (= 7.1.5.1) + actionmailer (7.1.6) + actionpack (= 7.1.6) + actionview (= 7.1.6) + activejob (= 7.1.6) + activesupport (= 7.1.6) mail (~> 2.5, >= 2.5.4) net-imap net-pop net-smtp rails-dom-testing (~> 2.2) - actionpack (7.1.5.1) - actionview (= 7.1.5.1) - activesupport (= 7.1.5.1) + actionpack (7.1.6) + actionview (= 7.1.6) + activesupport (= 7.1.6) + cgi nokogiri (>= 1.8.5) racc rack (>= 2.2.4) @@ -45,35 +46,36 @@ GEM rack-test (>= 0.6.3) rails-dom-testing (~> 2.2) rails-html-sanitizer (~> 1.6) - actiontext (7.1.5.1) - actionpack (= 7.1.5.1) - activerecord (= 7.1.5.1) - activestorage (= 7.1.5.1) - activesupport (= 7.1.5.1) + actiontext (7.1.6) + actionpack (= 7.1.6) + activerecord (= 7.1.6) + activestorage (= 7.1.6) + activesupport (= 7.1.6) globalid (>= 0.6.0) nokogiri (>= 1.8.5) - actionview (7.1.5.1) - activesupport (= 7.1.5.1) + actionview (7.1.6) + activesupport (= 7.1.6) builder (~> 3.1) + cgi erubi (~> 1.11) rails-dom-testing (~> 2.2) rails-html-sanitizer (~> 1.6) - activejob (7.1.5.1) - activesupport (= 7.1.5.1) + activejob (7.1.6) + activesupport (= 7.1.6) globalid (>= 0.3.6) - activemodel (7.1.5.1) - activesupport (= 7.1.5.1) - activerecord (7.1.5.1) - activemodel (= 7.1.5.1) - activesupport (= 7.1.5.1) + activemodel (7.1.6) + activesupport (= 7.1.6) + activerecord (7.1.6) + activemodel (= 7.1.6) + activesupport (= 7.1.6) timeout (>= 0.4.0) - activestorage (7.1.5.1) - actionpack (= 7.1.5.1) - activejob (= 7.1.5.1) - activerecord (= 7.1.5.1) - activesupport (= 7.1.5.1) + activestorage (7.1.6) + actionpack (= 7.1.6) + activejob (= 7.1.6) + activerecord (= 7.1.6) + activesupport (= 7.1.6) marcel (~> 1.0) - activesupport (7.1.5.1) + activesupport (7.1.6) base64 benchmark (>= 0.3) bigdecimal @@ -94,19 +96,19 @@ GEM bundler rake thor (>= 0.14.0) - appraisal-run (1.0.0) + appraisal-run (1.1.0) ast (2.4.3) base64 (0.3.0) - benchmark (0.4.1) + benchmark (0.5.0) benchmark-ips (2.14.0) - better_html (2.1.1) - actionview (>= 6.0) - activesupport (>= 6.0) + better_html (2.2.0) + actionview (>= 7.0) + activesupport (>= 7.0) ast (~> 2.0) erubi (~> 1.4) parser (>= 2.4) smart_properties - bigdecimal (3.2.2) + bigdecimal (3.3.1) builder (3.3.0) capybara (3.40.0) addressable @@ -117,18 +119,19 @@ GEM rack-test (>= 0.6.3) regexp_parser (>= 1.5, < 3.0) xpath (~> 3.2) + cgi (0.5.0) concurrent-ruby (1.3.5) - connection_pool (2.5.3) + connection_pool (2.5.4) crass (1.0.6) cuprite (0.17) capybara (~> 3.0) ferrum (~> 0.17.0) - date (3.4.1) + date (3.5.0) diff-lcs (1.6.2) docile (1.4.1) drb (2.2.3) dry-initializer (3.2.0) - erb (5.0.2) + erb (6.0.0) erb_lint (0.9.0) activesupport better_html (>= 2.0.1) @@ -143,23 +146,23 @@ GEM concurrent-ruby (~> 1.1) webrick (~> 1.7) websocket-driver (~> 0.7) - globalid (1.2.1) + globalid (1.3.0) activesupport (>= 6.1) - haml (6.3.0) + haml (6.4.0) temple (>= 0.8.2) thor tilt i18n (1.14.7) concurrent-ruby (~> 1.0) io-console (0.8.1) - irb (1.15.2) + irb (1.15.3) pp (>= 0.6.0) rdoc (>= 4.0.0) reline (>= 0.4.2) - jbuilder (2.13.0) - actionview (>= 5.0.0) - activesupport (>= 5.0.0) - json (2.13.2) + jbuilder (2.14.1) + actionview (>= 7.0.0) + activesupport (>= 7.0.0) + json (2.16.0) language_server-protocol (3.17.0.5) lint_roller (1.1.0) logger (1.7.0) @@ -169,18 +172,19 @@ GEM m (1.6.2) method_source (>= 0.6.7) rake (>= 0.9.2.2) - mail (2.8.1) + mail (2.9.0) + logger mini_mime (>= 0.1.1) net-imap net-pop net-smtp - marcel (1.0.4) + marcel (1.1.0) matrix (0.4.3) method_source (1.1.0) mini_mime (1.1.5) - minitest (5.25.5) + minitest (5.26.2) mutex_m (0.3.0) - net-imap (0.5.9) + net-imap (0.5.12) date net-protocol net-pop (0.1.2) @@ -189,32 +193,32 @@ GEM timeout net-smtp (0.5.1) net-protocol - nio4r (2.7.4) - nokogiri (1.18.9-aarch64-linux-gnu) + nio4r (2.7.5) + nokogiri (1.18.10-aarch64-linux-gnu) racc (~> 1.4) - nokogiri (1.18.9-aarch64-linux-musl) + nokogiri (1.18.10-aarch64-linux-musl) racc (~> 1.4) - nokogiri (1.18.9-arm-linux-gnu) + nokogiri (1.18.10-arm-linux-gnu) racc (~> 1.4) - nokogiri (1.18.9-arm-linux-musl) + nokogiri (1.18.10-arm-linux-musl) racc (~> 1.4) - nokogiri (1.18.9-arm64-darwin) + nokogiri (1.18.10-arm64-darwin) racc (~> 1.4) - nokogiri (1.18.9-x86_64-darwin) + nokogiri (1.18.10-x86_64-darwin) racc (~> 1.4) - nokogiri (1.18.9-x86_64-linux-gnu) + nokogiri (1.18.10-x86_64-linux-gnu) racc (~> 1.4) - nokogiri (1.18.9-x86_64-linux-musl) + nokogiri (1.18.10-x86_64-linux-musl) racc (~> 1.4) parallel (1.27.0) - parser (3.3.9.0) + parser (3.3.10.0) ast (~> 2.4.1) racc - pp (0.6.2) + pp (0.6.3) prettyprint prettyprint (0.2.0) - prism (1.4.0) - propshaft (1.2.1) + prism (1.6.0) + propshaft (1.3.1) actionpack (>= 7.0.0) activesupport (>= 7.0.0) rack @@ -222,10 +226,10 @@ GEM date stringio public_suffix (6.0.2) - puma (6.6.1) + puma (7.1.0) nio4r (~> 2.0) racc (1.8.1) - rack (3.2.0) + rack (3.2.4) rack-session (2.1.1) base64 (>= 0.1.0) rack (>= 3.0.0) @@ -233,20 +237,20 @@ GEM rack (>= 1.3) rackup (2.2.1) rack (>= 3) - rails (7.1.5.1) - actioncable (= 7.1.5.1) - actionmailbox (= 7.1.5.1) - actionmailer (= 7.1.5.1) - actionpack (= 7.1.5.1) - actiontext (= 7.1.5.1) - actionview (= 7.1.5.1) - activejob (= 7.1.5.1) - activemodel (= 7.1.5.1) - activerecord (= 7.1.5.1) - activestorage (= 7.1.5.1) - activesupport (= 7.1.5.1) + rails (7.1.6) + actioncable (= 7.1.6) + actionmailbox (= 7.1.6) + actionmailer (= 7.1.6) + actionpack (= 7.1.6) + actiontext (= 7.1.6) + actionview (= 7.1.6) + activejob (= 7.1.6) + activemodel (= 7.1.6) + activerecord (= 7.1.6) + activestorage (= 7.1.6) + activesupport (= 7.1.6) bundler (>= 1.15.0) - railties (= 7.1.5.1) + railties (= 7.1.6) rails-dom-testing (2.3.0) activesupport (>= 5.0.0) minitest @@ -254,33 +258,36 @@ GEM rails-html-sanitizer (1.6.2) loofah (~> 2.21) nokogiri (>= 1.15.7, != 1.16.7, != 1.16.6, != 1.16.5, != 1.16.4, != 1.16.3, != 1.16.2, != 1.16.1, != 1.16.0.rc1, != 1.16.0) - railties (7.1.5.1) - actionpack (= 7.1.5.1) - activesupport (= 7.1.5.1) + railties (7.1.6) + actionpack (= 7.1.6) + activesupport (= 7.1.6) + cgi irb rackup (>= 1.0.0) rake (>= 12.2) thor (~> 1.0, >= 1.2.2) + tsort (>= 0.2) zeitwerk (~> 2.6) rainbow (3.1.1) - rake (13.3.0) - rdoc (6.14.2) + rake (13.3.1) + rdoc (6.15.1) erb psych (>= 4.0.0) + tsort redis (5.4.1) redis-client (>= 0.22.0) - redis-client (0.25.1) + redis-client (0.26.1) connection_pool - regexp_parser (2.11.0) - reline (0.6.2) + regexp_parser (2.11.3) + reline (0.6.3) io-console (~> 0.5) - rexml (3.4.1) - rspec-core (3.13.5) + rexml (3.4.4) + rspec-core (3.13.6) rspec-support (~> 3.13.0) rspec-expectations (3.13.5) diff-lcs (>= 1.2.0, < 2.0) rspec-support (~> 3.13.0) - rspec-mocks (3.13.5) + rspec-mocks (3.13.7) diff-lcs (>= 1.2.0, < 2.0) rspec-support (~> 3.13.0) rspec-rails (7.1.1) @@ -291,8 +298,8 @@ GEM rspec-expectations (~> 3.13) rspec-mocks (~> 3.13) rspec-support (~> 3.13) - rspec-support (3.13.4) - rubocop (1.75.8) + rspec-support (3.13.6) + rubocop (1.81.7) json (~> 2.3) language_server-protocol (~> 3.17.0.2) lint_roller (~> 1.1.0) @@ -300,13 +307,13 @@ GEM parser (>= 3.3.0.2) rainbow (>= 2.2.2, < 4.0) regexp_parser (>= 2.9.3, < 3.0) - rubocop-ast (>= 1.44.0, < 2.0) + rubocop-ast (>= 1.47.1, < 2.0) ruby-progressbar (~> 1.7) unicode-display_width (>= 2.4.0, < 4.0) - rubocop-ast (1.46.0) + rubocop-ast (1.48.0) parser (>= 3.3.7.2) prism (~> 1.4) - rubocop-md (2.0.1) + rubocop-md (2.0.3) lint_roller (~> 1.1) rubocop (>= 1.72.1) rubocop-performance (1.25.0) @@ -314,13 +321,13 @@ GEM rubocop (>= 1.75.0, < 2.0) rubocop-ast (>= 1.38.0, < 2.0) ruby-progressbar (1.13.0) - rubyzip (2.4.1) + rubyzip (3.2.2) securerandom (0.4.1) - selenium-webdriver (4.34.0) + selenium-webdriver (4.38.0) base64 (~> 0.2) logger (~> 1.4) rexml (~> 3.2, >= 3.2.5) - rubyzip (>= 1.2.2, < 3.0) + rubyzip (>= 1.2.2, < 4.0) websocket (~> 1.0) simplecov (0.22.0) docile (~> 1.1) @@ -344,10 +351,10 @@ GEM actionpack (>= 6.1) activesupport (>= 6.1) sprockets (>= 3.0.0) - standard (1.50.0) + standard (1.52.0) language_server-protocol (~> 3.17.0.2) lint_roller (~> 1.0) - rubocop (~> 1.75.5) + rubocop (~> 1.81.7) standard-custom (~> 1.0.0) standard-performance (~> 1.8) standard-custom (1.0.2) @@ -356,32 +363,33 @@ GEM standard-performance (1.8.0) lint_roller (~> 1.1) rubocop-performance (~> 1.25.0) - stringio (3.1.7) - tailwindcss-rails (4.3.0) + stringio (3.1.8) + tailwindcss-rails (4.4.0) railties (>= 7.0.0) tailwindcss-ruby (~> 4.0) - tailwindcss-ruby (4.1.13) - tailwindcss-ruby (4.1.13-aarch64-linux-gnu) - tailwindcss-ruby (4.1.13-aarch64-linux-musl) - tailwindcss-ruby (4.1.13-arm64-darwin) - tailwindcss-ruby (4.1.13-x86_64-darwin) - tailwindcss-ruby (4.1.13-x86_64-linux-gnu) - tailwindcss-ruby (4.1.13-x86_64-linux-musl) + tailwindcss-ruby (4.1.16) + tailwindcss-ruby (4.1.16-aarch64-linux-gnu) + tailwindcss-ruby (4.1.16-aarch64-linux-musl) + tailwindcss-ruby (4.1.16-arm64-darwin) + tailwindcss-ruby (4.1.16-x86_64-darwin) + tailwindcss-ruby (4.1.16-x86_64-linux-gnu) + tailwindcss-ruby (4.1.16-x86_64-linux-musl) temple (0.10.4) terminal-table (4.0.0) unicode-display_width (>= 1.1.1, < 4) thor (1.4.0) tilt (2.6.1) - timeout (0.4.3) + timeout (0.4.4) + tsort (0.2.0) turbo-rails (1.5.0) actionpack (>= 6.0.0) activejob (>= 6.0.0) railties (>= 6.0.0) tzinfo (2.0.6) concurrent-ruby (~> 1.0) - unicode-display_width (3.1.4) - unicode-emoji (~> 4.0, >= 4.0.4) - unicode-emoji (4.0.4) + unicode-display_width (3.2.0) + unicode-emoji (~> 4.1) + unicode-emoji (4.1.0) warning (1.5.0) webrick (1.9.1) websocket (1.2.11) @@ -412,7 +420,7 @@ PLATFORMS DEPENDENCIES allocation_stats appraisal (~> 2) - appraisal-run (~> 1.0) + appraisal-run (~> 1.1) benchmark-ips (~> 2) better_html bundler (~> 2) @@ -426,7 +434,7 @@ DEPENDENCIES method_source (~> 1) minitest (~> 5) propshaft (~> 1) - puma (~> 6) + puma (>= 6) rails (~> 7.1.0) rails-dom-testing (~> 2.3.0) rake (~> 13) diff --git a/gemfiles/rails_7.2.gemfile b/gemfiles/rails_7.2.gemfile index 88573b980..36b8ba70a 100644 --- a/gemfiles/rails_7.2.gemfile +++ b/gemfiles/rails_7.2.gemfile @@ -9,7 +9,7 @@ gem "rails", "~> 7.2.0" group :development, :test do gem "allocation_stats" gem "appraisal", "~> 2" - gem "appraisal-run", "~> 1.0" + gem "appraisal-run", "~> 1.1" gem "benchmark-ips", "~> 2" gem "better_html" gem "bundler", "~> 2" @@ -23,7 +23,7 @@ group :development, :test do gem "method_source", "~> 1" gem "minitest", "~> 5" gem "propshaft", "~> 1" - gem "puma", "~> 6" + gem "puma", ">= 6" gem "rake", "~> 13" gem "rails-dom-testing", "~> 2.3.0" gem "redis" diff --git a/gemfiles/rails_7.2.gemfile.lock b/gemfiles/rails_7.2.gemfile.lock index 2a11fb963..bbc6cf10d 100644 --- a/gemfiles/rails_7.2.gemfile.lock +++ b/gemfiles/rails_7.2.gemfile.lock @@ -9,66 +9,68 @@ PATH GEM remote: https://rubygems.org/ specs: - actioncable (7.2.2.1) - actionpack (= 7.2.2.1) - activesupport (= 7.2.2.1) + actioncable (7.2.3) + actionpack (= 7.2.3) + activesupport (= 7.2.3) nio4r (~> 2.0) websocket-driver (>= 0.6.1) zeitwerk (~> 2.6) - actionmailbox (7.2.2.1) - actionpack (= 7.2.2.1) - activejob (= 7.2.2.1) - activerecord (= 7.2.2.1) - activestorage (= 7.2.2.1) - activesupport (= 7.2.2.1) + actionmailbox (7.2.3) + actionpack (= 7.2.3) + activejob (= 7.2.3) + activerecord (= 7.2.3) + activestorage (= 7.2.3) + activesupport (= 7.2.3) mail (>= 2.8.0) - actionmailer (7.2.2.1) - actionpack (= 7.2.2.1) - actionview (= 7.2.2.1) - activejob (= 7.2.2.1) - activesupport (= 7.2.2.1) + actionmailer (7.2.3) + actionpack (= 7.2.3) + actionview (= 7.2.3) + activejob (= 7.2.3) + activesupport (= 7.2.3) mail (>= 2.8.0) rails-dom-testing (~> 2.2) - actionpack (7.2.2.1) - actionview (= 7.2.2.1) - activesupport (= 7.2.2.1) + actionpack (7.2.3) + actionview (= 7.2.3) + activesupport (= 7.2.3) + cgi nokogiri (>= 1.8.5) racc - rack (>= 2.2.4, < 3.2) + rack (>= 2.2.4, < 3.3) rack-session (>= 1.0.1) rack-test (>= 0.6.3) rails-dom-testing (~> 2.2) rails-html-sanitizer (~> 1.6) useragent (~> 0.16) - actiontext (7.2.2.1) - actionpack (= 7.2.2.1) - activerecord (= 7.2.2.1) - activestorage (= 7.2.2.1) - activesupport (= 7.2.2.1) + actiontext (7.2.3) + actionpack (= 7.2.3) + activerecord (= 7.2.3) + activestorage (= 7.2.3) + activesupport (= 7.2.3) globalid (>= 0.6.0) nokogiri (>= 1.8.5) - actionview (7.2.2.1) - activesupport (= 7.2.2.1) + actionview (7.2.3) + activesupport (= 7.2.3) builder (~> 3.1) + cgi erubi (~> 1.11) rails-dom-testing (~> 2.2) rails-html-sanitizer (~> 1.6) - activejob (7.2.2.1) - activesupport (= 7.2.2.1) + activejob (7.2.3) + activesupport (= 7.2.3) globalid (>= 0.3.6) - activemodel (7.2.2.1) - activesupport (= 7.2.2.1) - activerecord (7.2.2.1) - activemodel (= 7.2.2.1) - activesupport (= 7.2.2.1) + activemodel (7.2.3) + activesupport (= 7.2.3) + activerecord (7.2.3) + activemodel (= 7.2.3) + activesupport (= 7.2.3) timeout (>= 0.4.0) - activestorage (7.2.2.1) - actionpack (= 7.2.2.1) - activejob (= 7.2.2.1) - activerecord (= 7.2.2.1) - activesupport (= 7.2.2.1) + activestorage (7.2.3) + actionpack (= 7.2.3) + activejob (= 7.2.3) + activerecord (= 7.2.3) + activesupport (= 7.2.3) marcel (~> 1.0) - activesupport (7.2.2.1) + activesupport (7.2.3) base64 benchmark (>= 0.3) bigdecimal @@ -88,19 +90,19 @@ GEM bundler rake thor (>= 0.14.0) - appraisal-run (1.0.0) + appraisal-run (1.1.0) ast (2.4.3) base64 (0.3.0) - benchmark (0.4.1) + benchmark (0.5.0) benchmark-ips (2.14.0) - better_html (2.1.1) - actionview (>= 6.0) - activesupport (>= 6.0) + better_html (2.2.0) + actionview (>= 7.0) + activesupport (>= 7.0) ast (~> 2.0) erubi (~> 1.4) parser (>= 2.4) smart_properties - bigdecimal (3.2.2) + bigdecimal (3.3.1) builder (3.3.0) capybara (3.40.0) addressable @@ -111,18 +113,19 @@ GEM rack-test (>= 0.6.3) regexp_parser (>= 1.5, < 3.0) xpath (~> 3.2) + cgi (0.5.0) concurrent-ruby (1.3.5) - connection_pool (2.5.3) + connection_pool (2.5.4) crass (1.0.6) cuprite (0.17) capybara (~> 3.0) ferrum (~> 0.17.0) - date (3.4.1) + date (3.5.0) diff-lcs (1.6.2) docile (1.4.1) drb (2.2.3) dry-initializer (3.2.0) - erb (5.0.2) + erb (6.0.0) erb_lint (0.9.0) activesupport better_html (>= 2.0.1) @@ -137,23 +140,23 @@ GEM concurrent-ruby (~> 1.1) webrick (~> 1.7) websocket-driver (~> 0.7) - globalid (1.2.1) + globalid (1.3.0) activesupport (>= 6.1) - haml (6.3.0) + haml (6.4.0) temple (>= 0.8.2) thor tilt i18n (1.14.7) concurrent-ruby (~> 1.0) io-console (0.8.1) - irb (1.15.2) + irb (1.15.3) pp (>= 0.6.0) rdoc (>= 4.0.0) reline (>= 0.4.2) - jbuilder (2.13.0) - actionview (>= 5.0.0) - activesupport (>= 5.0.0) - json (2.13.2) + jbuilder (2.14.1) + actionview (>= 7.0.0) + activesupport (>= 7.0.0) + json (2.16.0) language_server-protocol (3.17.0.5) lint_roller (1.1.0) logger (1.7.0) @@ -163,17 +166,18 @@ GEM m (1.6.2) method_source (>= 0.6.7) rake (>= 0.9.2.2) - mail (2.8.1) + mail (2.9.0) + logger mini_mime (>= 0.1.1) net-imap net-pop net-smtp - marcel (1.0.4) + marcel (1.1.0) matrix (0.4.3) method_source (1.1.0) mini_mime (1.1.5) - minitest (5.25.5) - net-imap (0.5.9) + minitest (5.26.2) + net-imap (0.5.12) date net-protocol net-pop (0.1.2) @@ -182,32 +186,32 @@ GEM timeout net-smtp (0.5.1) net-protocol - nio4r (2.7.4) - nokogiri (1.18.9-aarch64-linux-gnu) + nio4r (2.7.5) + nokogiri (1.18.10-aarch64-linux-gnu) racc (~> 1.4) - nokogiri (1.18.9-aarch64-linux-musl) + nokogiri (1.18.10-aarch64-linux-musl) racc (~> 1.4) - nokogiri (1.18.9-arm-linux-gnu) + nokogiri (1.18.10-arm-linux-gnu) racc (~> 1.4) - nokogiri (1.18.9-arm-linux-musl) + nokogiri (1.18.10-arm-linux-musl) racc (~> 1.4) - nokogiri (1.18.9-arm64-darwin) + nokogiri (1.18.10-arm64-darwin) racc (~> 1.4) - nokogiri (1.18.9-x86_64-darwin) + nokogiri (1.18.10-x86_64-darwin) racc (~> 1.4) - nokogiri (1.18.9-x86_64-linux-gnu) + nokogiri (1.18.10-x86_64-linux-gnu) racc (~> 1.4) - nokogiri (1.18.9-x86_64-linux-musl) + nokogiri (1.18.10-x86_64-linux-musl) racc (~> 1.4) parallel (1.27.0) - parser (3.3.9.0) + parser (3.3.10.0) ast (~> 2.4.1) racc - pp (0.6.2) + pp (0.6.3) prettyprint prettyprint (0.2.0) - prism (1.4.0) - propshaft (1.2.1) + prism (1.6.0) + propshaft (1.3.1) actionpack (>= 7.0.0) activesupport (>= 7.0.0) rack @@ -215,10 +219,10 @@ GEM date stringio public_suffix (6.0.2) - puma (6.6.1) + puma (7.1.0) nio4r (~> 2.0) racc (1.8.1) - rack (3.1.16) + rack (3.2.4) rack-session (2.1.1) base64 (>= 0.1.0) rack (>= 3.0.0) @@ -226,20 +230,20 @@ GEM rack (>= 1.3) rackup (2.2.1) rack (>= 3) - rails (7.2.2.1) - actioncable (= 7.2.2.1) - actionmailbox (= 7.2.2.1) - actionmailer (= 7.2.2.1) - actionpack (= 7.2.2.1) - actiontext (= 7.2.2.1) - actionview (= 7.2.2.1) - activejob (= 7.2.2.1) - activemodel (= 7.2.2.1) - activerecord (= 7.2.2.1) - activestorage (= 7.2.2.1) - activesupport (= 7.2.2.1) + rails (7.2.3) + actioncable (= 7.2.3) + actionmailbox (= 7.2.3) + actionmailer (= 7.2.3) + actionpack (= 7.2.3) + actiontext (= 7.2.3) + actionview (= 7.2.3) + activejob (= 7.2.3) + activemodel (= 7.2.3) + activerecord (= 7.2.3) + activestorage (= 7.2.3) + activesupport (= 7.2.3) bundler (>= 1.15.0) - railties (= 7.2.2.1) + railties (= 7.2.3) rails-dom-testing (2.3.0) activesupport (>= 5.0.0) minitest @@ -247,33 +251,36 @@ GEM rails-html-sanitizer (1.6.2) loofah (~> 2.21) nokogiri (>= 1.15.7, != 1.16.7, != 1.16.6, != 1.16.5, != 1.16.4, != 1.16.3, != 1.16.2, != 1.16.1, != 1.16.0.rc1, != 1.16.0) - railties (7.2.2.1) - actionpack (= 7.2.2.1) - activesupport (= 7.2.2.1) + railties (7.2.3) + actionpack (= 7.2.3) + activesupport (= 7.2.3) + cgi irb (~> 1.13) rackup (>= 1.0.0) rake (>= 12.2) thor (~> 1.0, >= 1.2.2) + tsort (>= 0.2) zeitwerk (~> 2.6) rainbow (3.1.1) - rake (13.3.0) - rdoc (6.14.2) + rake (13.3.1) + rdoc (6.15.1) erb psych (>= 4.0.0) + tsort redis (5.4.1) redis-client (>= 0.22.0) - redis-client (0.25.1) + redis-client (0.26.1) connection_pool - regexp_parser (2.11.0) - reline (0.6.2) + regexp_parser (2.11.3) + reline (0.6.3) io-console (~> 0.5) - rexml (3.4.1) - rspec-core (3.13.5) + rexml (3.4.4) + rspec-core (3.13.6) rspec-support (~> 3.13.0) rspec-expectations (3.13.5) diff-lcs (>= 1.2.0, < 2.0) rspec-support (~> 3.13.0) - rspec-mocks (3.13.5) + rspec-mocks (3.13.7) diff-lcs (>= 1.2.0, < 2.0) rspec-support (~> 3.13.0) rspec-rails (7.1.1) @@ -284,8 +291,8 @@ GEM rspec-expectations (~> 3.13) rspec-mocks (~> 3.13) rspec-support (~> 3.13) - rspec-support (3.13.4) - rubocop (1.75.8) + rspec-support (3.13.6) + rubocop (1.81.7) json (~> 2.3) language_server-protocol (~> 3.17.0.2) lint_roller (~> 1.1.0) @@ -293,13 +300,13 @@ GEM parser (>= 3.3.0.2) rainbow (>= 2.2.2, < 4.0) regexp_parser (>= 2.9.3, < 3.0) - rubocop-ast (>= 1.44.0, < 2.0) + rubocop-ast (>= 1.47.1, < 2.0) ruby-progressbar (~> 1.7) unicode-display_width (>= 2.4.0, < 4.0) - rubocop-ast (1.46.0) + rubocop-ast (1.48.0) parser (>= 3.3.7.2) prism (~> 1.4) - rubocop-md (2.0.1) + rubocop-md (2.0.3) lint_roller (~> 1.1) rubocop (>= 1.72.1) rubocop-performance (1.25.0) @@ -307,13 +314,13 @@ GEM rubocop (>= 1.75.0, < 2.0) rubocop-ast (>= 1.38.0, < 2.0) ruby-progressbar (1.13.0) - rubyzip (2.4.1) + rubyzip (3.2.2) securerandom (0.4.1) - selenium-webdriver (4.34.0) + selenium-webdriver (4.38.0) base64 (~> 0.2) logger (~> 1.4) rexml (~> 3.2, >= 3.2.5) - rubyzip (>= 1.2.2, < 3.0) + rubyzip (>= 1.2.2, < 4.0) websocket (~> 1.0) simplecov (0.22.0) docile (~> 1.1) @@ -337,10 +344,10 @@ GEM actionpack (>= 6.1) activesupport (>= 6.1) sprockets (>= 3.0.0) - standard (1.50.0) + standard (1.52.0) language_server-protocol (~> 3.17.0.2) lint_roller (~> 1.0) - rubocop (~> 1.75.5) + rubocop (~> 1.81.7) standard-custom (~> 1.0.0) standard-performance (~> 1.8) standard-custom (1.0.2) @@ -349,31 +356,32 @@ GEM standard-performance (1.8.0) lint_roller (~> 1.1) rubocop-performance (~> 1.25.0) - stringio (3.1.7) - tailwindcss-rails (4.3.0) + stringio (3.1.8) + tailwindcss-rails (4.4.0) railties (>= 7.0.0) tailwindcss-ruby (~> 4.0) - tailwindcss-ruby (4.1.13) - tailwindcss-ruby (4.1.13-aarch64-linux-gnu) - tailwindcss-ruby (4.1.13-aarch64-linux-musl) - tailwindcss-ruby (4.1.13-arm64-darwin) - tailwindcss-ruby (4.1.13-x86_64-darwin) - tailwindcss-ruby (4.1.13-x86_64-linux-gnu) - tailwindcss-ruby (4.1.13-x86_64-linux-musl) + tailwindcss-ruby (4.1.16) + tailwindcss-ruby (4.1.16-aarch64-linux-gnu) + tailwindcss-ruby (4.1.16-aarch64-linux-musl) + tailwindcss-ruby (4.1.16-arm64-darwin) + tailwindcss-ruby (4.1.16-x86_64-darwin) + tailwindcss-ruby (4.1.16-x86_64-linux-gnu) + tailwindcss-ruby (4.1.16-x86_64-linux-musl) temple (0.10.4) terminal-table (4.0.0) unicode-display_width (>= 1.1.1, < 4) thor (1.4.0) tilt (2.6.1) - timeout (0.4.3) - turbo-rails (2.0.16) + timeout (0.4.4) + tsort (0.2.0) + turbo-rails (2.0.20) actionpack (>= 7.1.0) railties (>= 7.1.0) tzinfo (2.0.6) concurrent-ruby (~> 1.0) - unicode-display_width (3.1.4) - unicode-emoji (~> 4.0, >= 4.0.4) - unicode-emoji (4.0.4) + unicode-display_width (3.2.0) + unicode-emoji (~> 4.1) + unicode-emoji (4.1.0) useragent (0.16.11) warning (1.5.0) webrick (1.9.1) @@ -405,7 +413,7 @@ PLATFORMS DEPENDENCIES allocation_stats appraisal (~> 2) - appraisal-run (~> 1.0) + appraisal-run (~> 1.1) benchmark-ips (~> 2) better_html bundler (~> 2) @@ -419,7 +427,7 @@ DEPENDENCIES method_source (~> 1) minitest (~> 5) propshaft (~> 1) - puma (~> 6) + puma (>= 6) rails (~> 7.2.0) rails-dom-testing (~> 2.3.0) rake (~> 13) @@ -443,4 +451,4 @@ RUBY VERSION ruby 3.3.8p144 BUNDLED WITH - 2.6.9 + 2.6.2 diff --git a/gemfiles/rails_8.0.gemfile b/gemfiles/rails_8.0.gemfile index 630ba6b7e..135a3d65d 100644 --- a/gemfiles/rails_8.0.gemfile +++ b/gemfiles/rails_8.0.gemfile @@ -9,7 +9,7 @@ gem "rails", "~> 8.0.0" group :development, :test do gem "allocation_stats" gem "appraisal", "~> 2" - gem "appraisal-run", "~> 1.0" + gem "appraisal-run", "~> 1.1" gem "benchmark-ips", "~> 2" gem "better_html" gem "bundler", "~> 2" @@ -23,7 +23,7 @@ group :development, :test do gem "method_source", "~> 1" gem "minitest", "~> 5" gem "propshaft", "~> 1" - gem "puma", "~> 6" + gem "puma", ">= 6" gem "rake", "~> 13" gem "rails-dom-testing", "~> 2.3.0" gem "redis" diff --git a/gemfiles/rails_8.0.gemfile.lock b/gemfiles/rails_8.0.gemfile.lock index ef12d1bc5..61b10bbbc 100644 --- a/gemfiles/rails_8.0.gemfile.lock +++ b/gemfiles/rails_8.0.gemfile.lock @@ -9,29 +9,29 @@ PATH GEM remote: https://rubygems.org/ specs: - actioncable (8.0.2) - actionpack (= 8.0.2) - activesupport (= 8.0.2) + actioncable (8.0.4) + actionpack (= 8.0.4) + activesupport (= 8.0.4) nio4r (~> 2.0) websocket-driver (>= 0.6.1) zeitwerk (~> 2.6) - actionmailbox (8.0.2) - actionpack (= 8.0.2) - activejob (= 8.0.2) - activerecord (= 8.0.2) - activestorage (= 8.0.2) - activesupport (= 8.0.2) + actionmailbox (8.0.4) + actionpack (= 8.0.4) + activejob (= 8.0.4) + activerecord (= 8.0.4) + activestorage (= 8.0.4) + activesupport (= 8.0.4) mail (>= 2.8.0) - actionmailer (8.0.2) - actionpack (= 8.0.2) - actionview (= 8.0.2) - activejob (= 8.0.2) - activesupport (= 8.0.2) + actionmailer (8.0.4) + actionpack (= 8.0.4) + actionview (= 8.0.4) + activejob (= 8.0.4) + activesupport (= 8.0.4) mail (>= 2.8.0) rails-dom-testing (~> 2.2) - actionpack (8.0.2) - actionview (= 8.0.2) - activesupport (= 8.0.2) + actionpack (8.0.4) + actionview (= 8.0.4) + activesupport (= 8.0.4) nokogiri (>= 1.8.5) rack (>= 2.2.4) rack-session (>= 1.0.1) @@ -39,35 +39,35 @@ GEM rails-dom-testing (~> 2.2) rails-html-sanitizer (~> 1.6) useragent (~> 0.16) - actiontext (8.0.2) - actionpack (= 8.0.2) - activerecord (= 8.0.2) - activestorage (= 8.0.2) - activesupport (= 8.0.2) + actiontext (8.0.4) + actionpack (= 8.0.4) + activerecord (= 8.0.4) + activestorage (= 8.0.4) + activesupport (= 8.0.4) globalid (>= 0.6.0) nokogiri (>= 1.8.5) - actionview (8.0.2) - activesupport (= 8.0.2) + actionview (8.0.4) + activesupport (= 8.0.4) builder (~> 3.1) erubi (~> 1.11) rails-dom-testing (~> 2.2) rails-html-sanitizer (~> 1.6) - activejob (8.0.2) - activesupport (= 8.0.2) + activejob (8.0.4) + activesupport (= 8.0.4) globalid (>= 0.3.6) - activemodel (8.0.2) - activesupport (= 8.0.2) - activerecord (8.0.2) - activemodel (= 8.0.2) - activesupport (= 8.0.2) + activemodel (8.0.4) + activesupport (= 8.0.4) + activerecord (8.0.4) + activemodel (= 8.0.4) + activesupport (= 8.0.4) timeout (>= 0.4.0) - activestorage (8.0.2) - actionpack (= 8.0.2) - activejob (= 8.0.2) - activerecord (= 8.0.2) - activesupport (= 8.0.2) + activestorage (8.0.4) + actionpack (= 8.0.4) + activejob (= 8.0.4) + activerecord (= 8.0.4) + activesupport (= 8.0.4) marcel (~> 1.0) - activesupport (8.0.2) + activesupport (8.0.4) base64 benchmark (>= 0.3) bigdecimal @@ -88,19 +88,19 @@ GEM bundler rake thor (>= 0.14.0) - appraisal-run (1.0.0) + appraisal-run (1.1.0) ast (2.4.3) base64 (0.3.0) - benchmark (0.4.1) + benchmark (0.5.0) benchmark-ips (2.14.0) - better_html (2.1.1) - actionview (>= 6.0) - activesupport (>= 6.0) + better_html (2.2.0) + actionview (>= 7.0) + activesupport (>= 7.0) ast (~> 2.0) erubi (~> 1.4) parser (>= 2.4) smart_properties - bigdecimal (3.2.2) + bigdecimal (3.3.1) builder (3.3.0) capybara (3.40.0) addressable @@ -112,17 +112,17 @@ GEM regexp_parser (>= 1.5, < 3.0) xpath (~> 3.2) concurrent-ruby (1.3.5) - connection_pool (2.5.3) + connection_pool (2.5.4) crass (1.0.6) cuprite (0.17) capybara (~> 3.0) ferrum (~> 0.17.0) - date (3.4.1) + date (3.5.0) diff-lcs (1.6.2) docile (1.4.1) drb (2.2.3) dry-initializer (3.2.0) - erb (5.0.2) + erb (6.0.0) erb_lint (0.9.0) activesupport better_html (>= 2.0.1) @@ -137,23 +137,23 @@ GEM concurrent-ruby (~> 1.1) webrick (~> 1.7) websocket-driver (~> 0.7) - globalid (1.2.1) + globalid (1.3.0) activesupport (>= 6.1) - haml (6.3.0) + haml (6.4.0) temple (>= 0.8.2) thor tilt i18n (1.14.7) concurrent-ruby (~> 1.0) io-console (0.8.1) - irb (1.15.2) + irb (1.15.3) pp (>= 0.6.0) rdoc (>= 4.0.0) reline (>= 0.4.2) - jbuilder (2.13.0) - actionview (>= 5.0.0) - activesupport (>= 5.0.0) - json (2.13.2) + jbuilder (2.14.1) + actionview (>= 7.0.0) + activesupport (>= 7.0.0) + json (2.16.0) language_server-protocol (3.17.0.5) lint_roller (1.1.0) logger (1.7.0) @@ -163,17 +163,18 @@ GEM m (1.6.2) method_source (>= 0.6.7) rake (>= 0.9.2.2) - mail (2.8.1) + mail (2.9.0) + logger mini_mime (>= 0.1.1) net-imap net-pop net-smtp - marcel (1.0.4) + marcel (1.1.0) matrix (0.4.3) method_source (1.1.0) mini_mime (1.1.5) - minitest (5.25.5) - net-imap (0.5.9) + minitest (5.26.2) + net-imap (0.5.12) date net-protocol net-pop (0.1.2) @@ -182,32 +183,32 @@ GEM timeout net-smtp (0.5.1) net-protocol - nio4r (2.7.4) - nokogiri (1.18.9-aarch64-linux-gnu) + nio4r (2.7.5) + nokogiri (1.18.10-aarch64-linux-gnu) racc (~> 1.4) - nokogiri (1.18.9-aarch64-linux-musl) + nokogiri (1.18.10-aarch64-linux-musl) racc (~> 1.4) - nokogiri (1.18.9-arm-linux-gnu) + nokogiri (1.18.10-arm-linux-gnu) racc (~> 1.4) - nokogiri (1.18.9-arm-linux-musl) + nokogiri (1.18.10-arm-linux-musl) racc (~> 1.4) - nokogiri (1.18.9-arm64-darwin) + nokogiri (1.18.10-arm64-darwin) racc (~> 1.4) - nokogiri (1.18.9-x86_64-darwin) + nokogiri (1.18.10-x86_64-darwin) racc (~> 1.4) - nokogiri (1.18.9-x86_64-linux-gnu) + nokogiri (1.18.10-x86_64-linux-gnu) racc (~> 1.4) - nokogiri (1.18.9-x86_64-linux-musl) + nokogiri (1.18.10-x86_64-linux-musl) racc (~> 1.4) parallel (1.27.0) - parser (3.3.9.0) + parser (3.3.10.0) ast (~> 2.4.1) racc - pp (0.6.2) + pp (0.6.3) prettyprint prettyprint (0.2.0) - prism (1.4.0) - propshaft (1.2.1) + prism (1.6.0) + propshaft (1.3.1) actionpack (>= 7.0.0) activesupport (>= 7.0.0) rack @@ -215,10 +216,10 @@ GEM date stringio public_suffix (6.0.2) - puma (6.6.1) + puma (7.1.0) nio4r (~> 2.0) racc (1.8.1) - rack (3.2.0) + rack (3.2.4) rack-session (2.1.1) base64 (>= 0.1.0) rack (>= 3.0.0) @@ -226,20 +227,20 @@ GEM rack (>= 1.3) rackup (2.2.1) rack (>= 3) - rails (8.0.2) - actioncable (= 8.0.2) - actionmailbox (= 8.0.2) - actionmailer (= 8.0.2) - actionpack (= 8.0.2) - actiontext (= 8.0.2) - actionview (= 8.0.2) - activejob (= 8.0.2) - activemodel (= 8.0.2) - activerecord (= 8.0.2) - activestorage (= 8.0.2) - activesupport (= 8.0.2) + rails (8.0.4) + actioncable (= 8.0.4) + actionmailbox (= 8.0.4) + actionmailer (= 8.0.4) + actionpack (= 8.0.4) + actiontext (= 8.0.4) + actionview (= 8.0.4) + activejob (= 8.0.4) + activemodel (= 8.0.4) + activerecord (= 8.0.4) + activestorage (= 8.0.4) + activesupport (= 8.0.4) bundler (>= 1.15.0) - railties (= 8.0.2) + railties (= 8.0.4) rails-dom-testing (2.3.0) activesupport (>= 5.0.0) minitest @@ -247,36 +248,38 @@ GEM rails-html-sanitizer (1.6.2) loofah (~> 2.21) nokogiri (>= 1.15.7, != 1.16.7, != 1.16.6, != 1.16.5, != 1.16.4, != 1.16.3, != 1.16.2, != 1.16.1, != 1.16.0.rc1, != 1.16.0) - railties (8.0.2) - actionpack (= 8.0.2) - activesupport (= 8.0.2) + railties (8.0.4) + actionpack (= 8.0.4) + activesupport (= 8.0.4) irb (~> 1.13) rackup (>= 1.0.0) rake (>= 12.2) thor (~> 1.0, >= 1.2.2) + tsort (>= 0.2) zeitwerk (~> 2.6) rainbow (3.1.1) - rake (13.3.0) - rdoc (6.14.2) + rake (13.3.1) + rdoc (6.15.1) erb psych (>= 4.0.0) + tsort redis (5.4.1) redis-client (>= 0.22.0) - redis-client (0.25.1) + redis-client (0.26.1) connection_pool - regexp_parser (2.11.0) - reline (0.6.2) + regexp_parser (2.11.3) + reline (0.6.3) io-console (~> 0.5) - rexml (3.4.1) - rspec-core (3.13.5) + rexml (3.4.4) + rspec-core (3.13.6) rspec-support (~> 3.13.0) rspec-expectations (3.13.5) diff-lcs (>= 1.2.0, < 2.0) rspec-support (~> 3.13.0) - rspec-mocks (3.13.5) + rspec-mocks (3.13.7) diff-lcs (>= 1.2.0, < 2.0) rspec-support (~> 3.13.0) - rspec-rails (8.0.1) + rspec-rails (8.0.2) actionpack (>= 7.2) activesupport (>= 7.2) railties (>= 7.2) @@ -284,8 +287,8 @@ GEM rspec-expectations (~> 3.13) rspec-mocks (~> 3.13) rspec-support (~> 3.13) - rspec-support (3.13.4) - rubocop (1.75.8) + rspec-support (3.13.6) + rubocop (1.81.7) json (~> 2.3) language_server-protocol (~> 3.17.0.2) lint_roller (~> 1.1.0) @@ -293,13 +296,13 @@ GEM parser (>= 3.3.0.2) rainbow (>= 2.2.2, < 4.0) regexp_parser (>= 2.9.3, < 3.0) - rubocop-ast (>= 1.44.0, < 2.0) + rubocop-ast (>= 1.47.1, < 2.0) ruby-progressbar (~> 1.7) unicode-display_width (>= 2.4.0, < 4.0) - rubocop-ast (1.46.0) + rubocop-ast (1.48.0) parser (>= 3.3.7.2) prism (~> 1.4) - rubocop-md (2.0.1) + rubocop-md (2.0.3) lint_roller (~> 1.1) rubocop (>= 1.72.1) rubocop-performance (1.25.0) @@ -307,13 +310,13 @@ GEM rubocop (>= 1.75.0, < 2.0) rubocop-ast (>= 1.38.0, < 2.0) ruby-progressbar (1.13.0) - rubyzip (2.4.1) + rubyzip (3.2.2) securerandom (0.4.1) - selenium-webdriver (4.34.0) + selenium-webdriver (4.38.0) base64 (~> 0.2) logger (~> 1.4) rexml (~> 3.2, >= 3.2.5) - rubyzip (>= 1.2.2, < 3.0) + rubyzip (>= 1.2.2, < 4.0) websocket (~> 1.0) simplecov (0.22.0) docile (~> 1.1) @@ -337,10 +340,10 @@ GEM actionpack (>= 6.1) activesupport (>= 6.1) sprockets (>= 3.0.0) - standard (1.50.0) + standard (1.52.0) language_server-protocol (~> 3.17.0.2) lint_roller (~> 1.0) - rubocop (~> 1.75.5) + rubocop (~> 1.81.7) standard-custom (~> 1.0.0) standard-performance (~> 1.8) standard-custom (1.0.2) @@ -349,32 +352,33 @@ GEM standard-performance (1.8.0) lint_roller (~> 1.1) rubocop-performance (~> 1.25.0) - stringio (3.1.7) - tailwindcss-rails (4.3.0) + stringio (3.1.8) + tailwindcss-rails (4.4.0) railties (>= 7.0.0) tailwindcss-ruby (~> 4.0) - tailwindcss-ruby (4.1.13) - tailwindcss-ruby (4.1.13-aarch64-linux-gnu) - tailwindcss-ruby (4.1.13-aarch64-linux-musl) - tailwindcss-ruby (4.1.13-arm64-darwin) - tailwindcss-ruby (4.1.13-x86_64-darwin) - tailwindcss-ruby (4.1.13-x86_64-linux-gnu) - tailwindcss-ruby (4.1.13-x86_64-linux-musl) + tailwindcss-ruby (4.1.16) + tailwindcss-ruby (4.1.16-aarch64-linux-gnu) + tailwindcss-ruby (4.1.16-aarch64-linux-musl) + tailwindcss-ruby (4.1.16-arm64-darwin) + tailwindcss-ruby (4.1.16-x86_64-darwin) + tailwindcss-ruby (4.1.16-x86_64-linux-gnu) + tailwindcss-ruby (4.1.16-x86_64-linux-musl) temple (0.10.4) terminal-table (4.0.0) unicode-display_width (>= 1.1.1, < 4) thor (1.4.0) tilt (2.6.1) - timeout (0.4.3) - turbo-rails (2.0.16) + timeout (0.4.4) + tsort (0.2.0) + turbo-rails (2.0.20) actionpack (>= 7.1.0) railties (>= 7.1.0) tzinfo (2.0.6) concurrent-ruby (~> 1.0) - unicode-display_width (3.1.4) - unicode-emoji (~> 4.0, >= 4.0.4) - unicode-emoji (4.0.4) - uri (1.0.3) + unicode-display_width (3.2.0) + unicode-emoji (~> 4.1) + unicode-emoji (4.1.0) + uri (1.1.1) useragent (0.16.11) warning (1.5.0) webrick (1.9.1) @@ -406,7 +410,7 @@ PLATFORMS DEPENDENCIES allocation_stats appraisal (~> 2) - appraisal-run (~> 1.0) + appraisal-run (~> 1.1) benchmark-ips (~> 2) better_html bundler (~> 2) @@ -420,7 +424,7 @@ DEPENDENCIES method_source (~> 1) minitest (~> 5) propshaft (~> 1) - puma (~> 6) + puma (>= 6) rails (~> 8.0.0) rails-dom-testing (~> 2.3.0) rake (~> 13) diff --git a/gemfiles/rails_8.1.gemfile b/gemfiles/rails_8.1.gemfile index ba0b075ae..a6e4e353e 100644 --- a/gemfiles/rails_8.1.gemfile +++ b/gemfiles/rails_8.1.gemfile @@ -9,7 +9,7 @@ gem "rails", "~> 8.1.0" group :development, :test do gem "allocation_stats" gem "appraisal", "~> 2" - gem "appraisal-run", "~> 1.0" + gem "appraisal-run", "~> 1.1" gem "benchmark-ips", "~> 2" gem "better_html" gem "bundler", "~> 2" @@ -23,7 +23,7 @@ group :development, :test do gem "method_source", "~> 1" gem "minitest", "~> 5" gem "propshaft", "~> 1" - gem "puma", "~> 6" + gem "puma", ">= 6" gem "rake", "~> 13" gem "rails-dom-testing", "~> 2.3.0" gem "redis" diff --git a/gemfiles/rails_8.1.gemfile.lock b/gemfiles/rails_8.1.gemfile.lock index 5152cc27c..6522c54f5 100644 --- a/gemfiles/rails_8.1.gemfile.lock +++ b/gemfiles/rails_8.1.gemfile.lock @@ -11,29 +11,29 @@ GEM specs: action_text-trix (2.1.15) railties - actioncable (8.1.0) - actionpack (= 8.1.0) - activesupport (= 8.1.0) + actioncable (8.1.1) + actionpack (= 8.1.1) + activesupport (= 8.1.1) nio4r (~> 2.0) websocket-driver (>= 0.6.1) zeitwerk (~> 2.6) - actionmailbox (8.1.0) - actionpack (= 8.1.0) - activejob (= 8.1.0) - activerecord (= 8.1.0) - activestorage (= 8.1.0) - activesupport (= 8.1.0) + actionmailbox (8.1.1) + actionpack (= 8.1.1) + activejob (= 8.1.1) + activerecord (= 8.1.1) + activestorage (= 8.1.1) + activesupport (= 8.1.1) mail (>= 2.8.0) - actionmailer (8.1.0) - actionpack (= 8.1.0) - actionview (= 8.1.0) - activejob (= 8.1.0) - activesupport (= 8.1.0) + actionmailer (8.1.1) + actionpack (= 8.1.1) + actionview (= 8.1.1) + activejob (= 8.1.1) + activesupport (= 8.1.1) mail (>= 2.8.0) rails-dom-testing (~> 2.2) - actionpack (8.1.0) - actionview (= 8.1.0) - activesupport (= 8.1.0) + actionpack (8.1.1) + actionview (= 8.1.1) + activesupport (= 8.1.1) nokogiri (>= 1.8.5) rack (>= 2.2.4) rack-session (>= 1.0.1) @@ -41,36 +41,36 @@ GEM rails-dom-testing (~> 2.2) rails-html-sanitizer (~> 1.6) useragent (~> 0.16) - actiontext (8.1.0) + actiontext (8.1.1) action_text-trix (~> 2.1.15) - actionpack (= 8.1.0) - activerecord (= 8.1.0) - activestorage (= 8.1.0) - activesupport (= 8.1.0) + actionpack (= 8.1.1) + activerecord (= 8.1.1) + activestorage (= 8.1.1) + activesupport (= 8.1.1) globalid (>= 0.6.0) nokogiri (>= 1.8.5) - actionview (8.1.0) - activesupport (= 8.1.0) + actionview (8.1.1) + activesupport (= 8.1.1) builder (~> 3.1) erubi (~> 1.11) rails-dom-testing (~> 2.2) rails-html-sanitizer (~> 1.6) - activejob (8.1.0) - activesupport (= 8.1.0) + activejob (8.1.1) + activesupport (= 8.1.1) globalid (>= 0.3.6) - activemodel (8.1.0) - activesupport (= 8.1.0) - activerecord (8.1.0) - activemodel (= 8.1.0) - activesupport (= 8.1.0) + activemodel (8.1.1) + activesupport (= 8.1.1) + activerecord (8.1.1) + activemodel (= 8.1.1) + activesupport (= 8.1.1) timeout (>= 0.4.0) - activestorage (8.1.0) - actionpack (= 8.1.0) - activejob (= 8.1.0) - activerecord (= 8.1.0) - activesupport (= 8.1.0) + activestorage (8.1.1) + actionpack (= 8.1.1) + activejob (= 8.1.1) + activerecord (= 8.1.1) + activesupport (= 8.1.1) marcel (~> 1.0) - activesupport (8.1.0) + activesupport (8.1.1) base64 bigdecimal concurrent-ruby (~> 1.0, >= 1.3.1) @@ -91,7 +91,7 @@ GEM bundler rake thor (>= 0.14.0) - appraisal-run (1.0.0) + appraisal-run (1.1.0) ast (2.4.3) base64 (0.3.0) benchmark-ips (2.14.0) @@ -119,12 +119,12 @@ GEM cuprite (0.17) capybara (~> 3.0) ferrum (~> 0.17.0) - date (3.4.1) + date (3.5.0) diff-lcs (1.6.2) docile (1.4.1) drb (2.2.3) dry-initializer (3.2.0) - erb (5.1.1) + erb (6.0.0) erb_lint (0.9.0) activesupport better_html (>= 2.0.1) @@ -141,21 +141,21 @@ GEM websocket-driver (~> 0.7) globalid (1.3.0) activesupport (>= 6.1) - haml (6.3.0) + haml (6.4.0) temple (>= 0.8.2) thor tilt i18n (1.14.7) concurrent-ruby (~> 1.0) io-console (0.8.1) - irb (1.15.2) + irb (1.15.3) pp (>= 0.6.0) rdoc (>= 4.0.0) reline (>= 0.4.2) jbuilder (2.14.1) actionview (>= 7.0.0) activesupport (>= 7.0.0) - json (2.15.1) + json (2.16.0) language_server-protocol (3.17.0.5) lint_roller (1.1.0) logger (1.7.0) @@ -175,7 +175,7 @@ GEM matrix (0.4.3) method_source (1.1.0) mini_mime (1.1.5) - minitest (5.26.0) + minitest (5.26.2) net-imap (0.5.12) date net-protocol @@ -185,7 +185,7 @@ GEM timeout net-smtp (0.5.1) net-protocol - nio4r (2.7.4) + nio4r (2.7.5) nokogiri (1.18.10-aarch64-linux-gnu) racc (~> 1.4) nokogiri (1.18.10-aarch64-linux-musl) @@ -203,7 +203,7 @@ GEM nokogiri (1.18.10-x86_64-linux-musl) racc (~> 1.4) parallel (1.27.0) - parser (3.3.9.0) + parser (3.3.10.0) ast (~> 2.4.1) racc pp (0.6.3) @@ -218,10 +218,10 @@ GEM date stringio public_suffix (6.0.2) - puma (6.6.1) + puma (7.1.0) nio4r (~> 2.0) racc (1.8.1) - rack (3.2.3) + rack (3.2.4) rack-session (2.1.1) base64 (>= 0.1.0) rack (>= 3.0.0) @@ -229,20 +229,20 @@ GEM rack (>= 1.3) rackup (2.2.1) rack (>= 3) - rails (8.1.0) - actioncable (= 8.1.0) - actionmailbox (= 8.1.0) - actionmailer (= 8.1.0) - actionpack (= 8.1.0) - actiontext (= 8.1.0) - actionview (= 8.1.0) - activejob (= 8.1.0) - activemodel (= 8.1.0) - activerecord (= 8.1.0) - activestorage (= 8.1.0) - activesupport (= 8.1.0) + rails (8.1.1) + actioncable (= 8.1.1) + actionmailbox (= 8.1.1) + actionmailer (= 8.1.1) + actionpack (= 8.1.1) + actiontext (= 8.1.1) + actionview (= 8.1.1) + activejob (= 8.1.1) + activemodel (= 8.1.1) + activerecord (= 8.1.1) + activestorage (= 8.1.1) + activesupport (= 8.1.1) bundler (>= 1.15.0) - railties (= 8.1.0) + railties (= 8.1.1) rails-dom-testing (2.3.0) activesupport (>= 5.0.0) minitest @@ -250,9 +250,9 @@ GEM rails-html-sanitizer (1.6.2) loofah (~> 2.21) nokogiri (>= 1.15.7, != 1.16.7, != 1.16.6, != 1.16.5, != 1.16.4, != 1.16.3, != 1.16.2, != 1.16.1, != 1.16.0.rc1, != 1.16.0) - railties (8.1.0) - actionpack (= 8.1.0) - activesupport (= 8.1.0) + railties (8.1.1) + actionpack (= 8.1.1) + activesupport (= 8.1.1) irb (~> 1.13) rackup (>= 1.0.0) rake (>= 12.2) @@ -260,8 +260,8 @@ GEM tsort (>= 0.2) zeitwerk (~> 2.6) rainbow (3.1.1) - rake (13.3.0) - rdoc (6.15.0) + rake (13.3.1) + rdoc (6.15.1) erb psych (>= 4.0.0) tsort @@ -270,7 +270,7 @@ GEM redis-client (0.26.1) connection_pool regexp_parser (2.11.3) - reline (0.6.2) + reline (0.6.3) io-console (~> 0.5) rexml (3.4.4) rspec-core (3.13.6) @@ -278,7 +278,7 @@ GEM rspec-expectations (3.13.5) diff-lcs (>= 1.2.0, < 2.0) rspec-support (~> 3.13.0) - rspec-mocks (3.13.6) + rspec-mocks (3.13.7) diff-lcs (>= 1.2.0, < 2.0) rspec-support (~> 3.13.0) rspec-rails (8.0.2) @@ -290,7 +290,7 @@ GEM rspec-mocks (~> 3.13) rspec-support (~> 3.13) rspec-support (3.13.6) - rubocop (1.80.2) + rubocop (1.81.7) json (~> 2.3) language_server-protocol (~> 3.17.0.2) lint_roller (~> 1.1.0) @@ -298,10 +298,10 @@ GEM parser (>= 3.3.0.2) rainbow (>= 2.2.2, < 4.0) regexp_parser (>= 2.9.3, < 3.0) - rubocop-ast (>= 1.46.0, < 2.0) + rubocop-ast (>= 1.47.1, < 2.0) ruby-progressbar (~> 1.7) unicode-display_width (>= 2.4.0, < 4.0) - rubocop-ast (1.47.1) + rubocop-ast (1.48.0) parser (>= 3.3.7.2) prism (~> 1.4) rubocop-md (2.0.3) @@ -312,9 +312,9 @@ GEM rubocop (>= 1.75.0, < 2.0) rubocop-ast (>= 1.38.0, < 2.0) ruby-progressbar (1.13.0) - rubyzip (3.2.0) + rubyzip (3.2.2) securerandom (0.4.1) - selenium-webdriver (4.37.0) + selenium-webdriver (4.38.0) base64 (~> 0.2) logger (~> 1.4) rexml (~> 3.2, >= 3.2.5) @@ -342,10 +342,10 @@ GEM actionpack (>= 6.1) activesupport (>= 6.1) sprockets (>= 3.0.0) - standard (1.51.1) + standard (1.52.0) language_server-protocol (~> 3.17.0.2) lint_roller (~> 1.0) - rubocop (~> 1.80.2) + rubocop (~> 1.81.7) standard-custom (~> 1.0.0) standard-performance (~> 1.8) standard-custom (1.0.2) @@ -354,25 +354,25 @@ GEM standard-performance (1.8.0) lint_roller (~> 1.1) rubocop-performance (~> 1.25.0) - stringio (3.1.7) - tailwindcss-rails (4.3.0) + stringio (3.1.8) + tailwindcss-rails (4.4.0) railties (>= 7.0.0) tailwindcss-ruby (~> 4.0) - tailwindcss-ruby (4.1.13) - tailwindcss-ruby (4.1.13-aarch64-linux-gnu) - tailwindcss-ruby (4.1.13-aarch64-linux-musl) - tailwindcss-ruby (4.1.13-arm64-darwin) - tailwindcss-ruby (4.1.13-x86_64-darwin) - tailwindcss-ruby (4.1.13-x86_64-linux-gnu) - tailwindcss-ruby (4.1.13-x86_64-linux-musl) + tailwindcss-ruby (4.1.16) + tailwindcss-ruby (4.1.16-aarch64-linux-gnu) + tailwindcss-ruby (4.1.16-aarch64-linux-musl) + tailwindcss-ruby (4.1.16-arm64-darwin) + tailwindcss-ruby (4.1.16-x86_64-darwin) + tailwindcss-ruby (4.1.16-x86_64-linux-gnu) + tailwindcss-ruby (4.1.16-x86_64-linux-musl) temple (0.10.4) terminal-table (4.0.0) unicode-display_width (>= 1.1.1, < 4) thor (1.4.0) tilt (2.6.1) - timeout (0.4.3) + timeout (0.4.4) tsort (0.2.0) - turbo-rails (2.0.17) + turbo-rails (2.0.20) actionpack (>= 7.1.0) railties (>= 7.1.0) tzinfo (2.0.6) @@ -380,7 +380,7 @@ GEM unicode-display_width (3.2.0) unicode-emoji (~> 4.1) unicode-emoji (4.1.0) - uri (1.0.4) + uri (1.1.1) useragent (0.16.11) warning (1.5.0) webrick (1.9.1) @@ -409,7 +409,7 @@ PLATFORMS DEPENDENCIES allocation_stats appraisal (~> 2) - appraisal-run (~> 1.0) + appraisal-run (~> 1.1) benchmark-ips (~> 2) better_html bundler (~> 2) @@ -423,7 +423,7 @@ DEPENDENCIES method_source (~> 1) minitest (~> 5) propshaft (~> 1) - puma (~> 6) + puma (>= 6) rails (~> 8.1.0) rails-dom-testing (~> 2.3.0) rake (~> 13) diff --git a/gemfiles/rails_main.gemfile b/gemfiles/rails_main.gemfile index 7a301df8c..56bfe222c 100644 --- a/gemfiles/rails_main.gemfile +++ b/gemfiles/rails_main.gemfile @@ -2,7 +2,7 @@ source "https://rubygems.org" -ruby "~> 3.4" +ruby "4.0.0.dev" gem "rails", github: "rails/rails", branch: "main" gem "rack", git: "https://github.com/rack/rack", ref: "8a4475a9f416a72e5b02bd7817e4a8ed684f29b0" @@ -10,10 +10,10 @@ gem "rack", git: "https://github.com/rack/rack", ref: "8a4475a9f416a72e5b02bd781 group :development, :test do gem "allocation_stats" gem "appraisal", "~> 2" - gem "appraisal-run", "~> 1.0" + gem "appraisal-run", "~> 1.1" gem "benchmark-ips", "~> 2" gem "better_html" - gem "bundler", "~> 2" + gem "bundler" gem "capybara", "~> 3" gem "cuprite" gem "dry-initializer", require: true @@ -24,7 +24,7 @@ group :development, :test do gem "method_source", "~> 1" gem "minitest", "~> 5" gem "propshaft", "~> 1" - gem "puma", "~> 6" + gem "puma", ">= 6" gem "rake", "~> 13" gem "rails-dom-testing", "~> 2.3.0" gem "redis" diff --git a/gemfiles/rails_main.gemfile.lock b/gemfiles/rails_main.gemfile.lock index d621c30cb..7061ab684 100644 --- a/gemfiles/rails_main.gemfile.lock +++ b/gemfiles/rails_main.gemfile.lock @@ -7,7 +7,7 @@ GIT GIT remote: https://github.com/rails/rails.git - revision: e66cd375ff553578533a6d2232c3f4ecb154933f + revision: cf4e3c508adf930eb70e4b3e6e16d2ca83b7e9b3 branch: main specs: actioncable (8.2.0.alpha) @@ -127,7 +127,7 @@ GEM bundler rake thor (>= 0.14.0) - appraisal-run (1.0.0) + appraisal-run (1.1.0) ast (2.4.3) base64 (0.3.0) benchmark-ips (2.14.0) @@ -155,12 +155,12 @@ GEM cuprite (0.17) capybara (~> 3.0) ferrum (~> 0.17.0) - date (3.4.1) + date (3.5.0) diff-lcs (1.6.2) docile (1.4.1) drb (2.2.3) dry-initializer (3.2.0) - erb (5.1.1) + erb (6.0.0) erb_lint (0.9.0) activesupport better_html (>= 2.0.1) @@ -177,21 +177,21 @@ GEM websocket-driver (~> 0.7) globalid (1.3.0) activesupport (>= 6.1) - haml (6.3.0) + haml (6.4.0) temple (>= 0.8.2) thor tilt i18n (1.14.7) concurrent-ruby (~> 1.0) io-console (0.8.1) - irb (1.15.2) + irb (1.15.3) pp (>= 0.6.0) rdoc (>= 4.0.0) reline (>= 0.4.2) jbuilder (2.14.1) actionview (>= 7.0.0) activesupport (>= 7.0.0) - json (2.15.1) + json (2.16.0) language_server-protocol (3.17.0.5) lint_roller (1.1.0) logger (1.7.0) @@ -201,7 +201,8 @@ GEM m (1.6.2) method_source (>= 0.6.7) rake (>= 0.9.2.2) - mail (2.8.1) + mail (2.9.0) + logger mini_mime (>= 0.1.1) net-imap net-pop @@ -210,7 +211,8 @@ GEM matrix (0.4.3) method_source (1.1.0) mini_mime (1.1.5) - minitest (5.26.0) + mini_portile2 (2.8.9) + minitest (5.26.2) net-imap (0.5.12) date net-protocol @@ -220,7 +222,10 @@ GEM timeout net-smtp (0.5.1) net-protocol - nio4r (2.7.4) + nio4r (2.7.5) + nokogiri (1.18.10) + mini_portile2 (~> 2.8.2) + racc (~> 1.4) nokogiri (1.18.10-aarch64-linux-gnu) racc (~> 1.4) nokogiri (1.18.10-aarch64-linux-musl) @@ -238,7 +243,7 @@ GEM nokogiri (1.18.10-x86_64-linux-musl) racc (~> 1.4) parallel (1.27.0) - parser (3.3.9.0) + parser (3.3.10.0) ast (~> 2.4.1) racc pp (0.6.3) @@ -253,7 +258,7 @@ GEM date stringio public_suffix (6.0.2) - puma (6.6.1) + puma (7.1.0) nio4r (~> 2.0) racc (1.8.1) rack-session (2.1.1) @@ -271,8 +276,8 @@ GEM loofah (~> 2.21) nokogiri (>= 1.15.7, != 1.16.7, != 1.16.6, != 1.16.5, != 1.16.4, != 1.16.3, != 1.16.2, != 1.16.1, != 1.16.0.rc1, != 1.16.0) rainbow (3.1.1) - rake (13.3.0) - rdoc (6.15.0) + rake (13.3.1) + rdoc (6.15.1) erb psych (>= 4.0.0) tsort @@ -281,7 +286,7 @@ GEM redis-client (0.26.1) connection_pool regexp_parser (2.11.3) - reline (0.6.2) + reline (0.6.3) io-console (~> 0.5) rexml (3.4.4) rspec-core (3.13.6) @@ -289,7 +294,7 @@ GEM rspec-expectations (3.13.5) diff-lcs (>= 1.2.0, < 2.0) rspec-support (~> 3.13.0) - rspec-mocks (3.13.6) + rspec-mocks (3.13.7) diff-lcs (>= 1.2.0, < 2.0) rspec-support (~> 3.13.0) rspec-rails (8.0.2) @@ -301,7 +306,7 @@ GEM rspec-mocks (~> 3.13) rspec-support (~> 3.13) rspec-support (3.13.6) - rubocop (1.80.2) + rubocop (1.81.7) json (~> 2.3) language_server-protocol (~> 3.17.0.2) lint_roller (~> 1.1.0) @@ -309,10 +314,10 @@ GEM parser (>= 3.3.0.2) rainbow (>= 2.2.2, < 4.0) regexp_parser (>= 2.9.3, < 3.0) - rubocop-ast (>= 1.46.0, < 2.0) + rubocop-ast (>= 1.47.1, < 2.0) ruby-progressbar (~> 1.7) unicode-display_width (>= 2.4.0, < 4.0) - rubocop-ast (1.47.1) + rubocop-ast (1.48.0) parser (>= 3.3.7.2) prism (~> 1.4) rubocop-md (2.0.3) @@ -323,9 +328,9 @@ GEM rubocop (>= 1.75.0, < 2.0) rubocop-ast (>= 1.38.0, < 2.0) ruby-progressbar (1.13.0) - rubyzip (3.2.0) + rubyzip (3.2.2) securerandom (0.4.1) - selenium-webdriver (4.37.0) + selenium-webdriver (4.38.0) base64 (~> 0.2) logger (~> 1.4) rexml (~> 3.2, >= 3.2.5) @@ -353,10 +358,10 @@ GEM actionpack (>= 6.1) activesupport (>= 6.1) sprockets (>= 3.0.0) - standard (1.51.1) + standard (1.52.0) language_server-protocol (~> 3.17.0.2) lint_roller (~> 1.0) - rubocop (~> 1.80.2) + rubocop (~> 1.81.7) standard-custom (~> 1.0.0) standard-performance (~> 1.8) standard-custom (1.0.2) @@ -365,25 +370,25 @@ GEM standard-performance (1.8.0) lint_roller (~> 1.1) rubocop-performance (~> 1.25.0) - stringio (3.1.7) - tailwindcss-rails (4.3.0) + stringio (3.1.8) + tailwindcss-rails (4.4.0) railties (>= 7.0.0) tailwindcss-ruby (~> 4.0) - tailwindcss-ruby (4.1.13) - tailwindcss-ruby (4.1.13-aarch64-linux-gnu) - tailwindcss-ruby (4.1.13-aarch64-linux-musl) - tailwindcss-ruby (4.1.13-arm64-darwin) - tailwindcss-ruby (4.1.13-x86_64-darwin) - tailwindcss-ruby (4.1.13-x86_64-linux-gnu) - tailwindcss-ruby (4.1.13-x86_64-linux-musl) + tailwindcss-ruby (4.1.16) + tailwindcss-ruby (4.1.16-aarch64-linux-gnu) + tailwindcss-ruby (4.1.16-aarch64-linux-musl) + tailwindcss-ruby (4.1.16-arm64-darwin) + tailwindcss-ruby (4.1.16-x86_64-darwin) + tailwindcss-ruby (4.1.16-x86_64-linux-gnu) + tailwindcss-ruby (4.1.16-x86_64-linux-musl) temple (0.10.4) terminal-table (4.0.0) unicode-display_width (>= 1.1.1, < 4) thor (1.4.0) tilt (2.6.1) - timeout (0.4.3) + timeout (0.4.4) tsort (0.2.0) - turbo-rails (2.0.17) + turbo-rails (2.0.20) actionpack (>= 7.1.0) railties (>= 7.1.0) tzinfo (2.0.6) @@ -391,7 +396,7 @@ GEM unicode-display_width (3.2.0) unicode-emoji (~> 4.1) unicode-emoji (4.1.0) - uri (1.0.4) + uri (1.1.1) useragent (0.16.11) warning (1.5.0) webrick (1.9.1) @@ -420,10 +425,10 @@ PLATFORMS DEPENDENCIES allocation_stats appraisal (~> 2) - appraisal-run (~> 1.0) + appraisal-run (~> 1.1) benchmark-ips (~> 2) better_html - bundler (~> 2) + bundler capybara (~> 3) cuprite dry-initializer @@ -434,7 +439,7 @@ DEPENDENCIES method_source (~> 1) minitest (~> 5) propshaft (~> 1) - puma (~> 6) + puma (>= 6) rack! rails! rails-dom-testing (~> 2.3.0) @@ -456,7 +461,7 @@ DEPENDENCIES yard-activesupport-concern (< 1) RUBY VERSION - ruby 3.4.7p58 + ruby 4.0.0.dev BUNDLED WITH - 2.6.9 + 4.0.0.dev diff --git a/lib/view_component/template.rb b/lib/view_component/template.rb index d98d6bd3e..206865556 100644 --- a/lib/view_component/template.rb +++ b/lib/view_component/template.rb @@ -21,11 +21,20 @@ def initialize(component:, details:, lineno: nil, path: nil) class File < Template def initialize(component:, details:, path:) + # Rails 8.1 added a newline to the compiled ERB output in + # https://github.com/rails/rails/pull/53731 + lineno = + if Rails::VERSION::MAJOR >= 8 && Rails::VERSION::MINOR > 0 && details.handler == :erb + - 1 + else + 0 + end + super( component: component, details: details, path: path, - lineno: 0 + lineno: lineno ) end @@ -45,11 +54,20 @@ class Inline < Template def initialize(component:, inline_template:) details = ActionView::TemplateDetails.new(nil, inline_template.language.to_sym, nil, nil) + # Rails 8.1 added a newline to the compiled ERB output in + # https://github.com/rails/rails/pull/53731 + lineno = + if Rails::VERSION::MAJOR >= 8 && Rails::VERSION::MINOR > 0 && details.handler == :erb + inline_template.lineno - 1 + else + inline_template.lineno + end + super( component: component, details: details, path: inline_template.path, - lineno: inline_template.lineno, + lineno: lineno, ) @source = inline_template.source.dup diff --git a/test/sandbox/app/components/exception_in_slim_template_component.html.slim b/test/sandbox/app/components/exception_in_slim_template_component.html.slim new file mode 100644 index 000000000..b65695ec2 --- /dev/null +++ b/test/sandbox/app/components/exception_in_slim_template_component.html.slim @@ -0,0 +1,2 @@ +p + = a_method_that_does_not_exist_i_hope diff --git a/test/sandbox/app/components/exception_in_slim_template_component.rb b/test/sandbox/app/components/exception_in_slim_template_component.rb new file mode 100644 index 000000000..bcba09d09 --- /dev/null +++ b/test/sandbox/app/components/exception_in_slim_template_component.rb @@ -0,0 +1,4 @@ +# frozen_string_literal: true + +class ExceptionInSlimTemplateComponent < ViewComponent::Base +end diff --git a/test/sandbox/test/inline_template_test.rb b/test/sandbox/test/inline_template_test.rb index 843b8cf3e..5f380bebf 100644 --- a/test/sandbox/test/inline_template_test.rb +++ b/test/sandbox/test/inline_template_test.rb @@ -27,6 +27,18 @@ def initialize(name) end end + class InlineRaiseSlimComponent < ViewComponent::Base + attr_reader :name + + slim_template <<~SLIM + = raise ArgumentError, "oh no" + SLIM + + def initialize(name) + @name = name + end + end + class InlineErbSubclassComponent < InlineErbComponent erb_template <<~ERB

Hey, <%= name %>!

@@ -107,6 +119,14 @@ class InlineComponentDerivedFromComponentSupportingVariants < Level2Component assert_match %r{test/sandbox/test/inline_template_test.rb:22}, error.backtrace[0] end + test "error backtrace locations work in slim" do + error = assert_raises ArgumentError do + render_inline(InlineRaiseSlimComponent.new("Fox Mulder")) + end + + assert_match %r{test/sandbox/test/inline_template_test.rb:34}, error.backtrace[0] + end + test "renders inline slim templates" do render_inline(InlineSlimComponent.new("Fox Mulder")) diff --git a/test/sandbox/test/rendering_test.rb b/test/sandbox/test/rendering_test.rb index 4bcfe1dfc..ad7a49a10 100644 --- a/test/sandbox/test/rendering_test.rb +++ b/test/sandbox/test/rendering_test.rb @@ -645,6 +645,16 @@ def test_backtrace_returns_correct_file_and_line_number assert_match %r{app/components/exception_in_template_component\.html\.erb:2}, error.backtrace[component_error_index] end + def test_backtrace_returns_correct_file_and_line_number_in_slim + error = + assert_raises NameError do + render_inline(ExceptionInSlimTemplateComponent.new) + end + + component_error_index = (Rails::VERSION::STRING < "8.0") ? 0 : 1 + assert_match %r{app/components/exception_in_slim_template_component\.html\.slim:2}, error.backtrace[component_error_index] + end + def test_render_collection products = [Product.new(name: "Radio clock"), Product.new(name: "Mints")] render_inline(ProductComponent.with_collection(products, notice: "On sale"))