From 65dc8d470494480405dd87bb46fb725c4395fd2e Mon Sep 17 00:00:00 2001 From: moveson Date: Mon, 16 Sep 2024 06:16:31 -0600 Subject: [PATCH 1/9] Full bundle update --- Gemfile.lock | 196 ++++++++++++++++++++++++++------------------------- 1 file changed, 100 insertions(+), 96 deletions(-) diff --git a/Gemfile.lock b/Gemfile.lock index 32e7941c3..6677699d2 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -61,7 +61,7 @@ GEM activerecord (7.0.8.4) activemodel (= 7.0.8.4) activesupport (= 7.0.8.4) - activerecord-import (1.7.0) + activerecord-import (1.8.1) activerecord (>= 4.2) activestorage (7.0.8.4) actionpack (= 7.0.8.4) @@ -81,23 +81,23 @@ GEM public_suffix (>= 2.0.2, < 7.0) allowable (1.1.0) american_date (1.3.0) - api-pagination (5.0.0) + api-pagination (6.0.0) ast (2.4.2) aws-eventstream (1.3.0) - aws-partitions (1.950.0) - aws-record (2.13.0) + aws-partitions (1.975.0) + aws-record (2.13.2) aws-sdk-dynamodb (~> 1, >= 1.85.0) - aws-sdk-core (3.200.0) + aws-sdk-core (3.205.0) aws-eventstream (~> 1, >= 1.3.0) aws-partitions (~> 1, >= 1.651.0) - aws-sigv4 (~> 1.8) + aws-sigv4 (~> 1.9) jmespath (~> 1, >= 1.6.1) - aws-sdk-dynamodb (1.115.0) - aws-sdk-core (~> 3, >= 3.199.0) - aws-sigv4 (~> 1.1) - aws-sdk-kms (1.87.0) - aws-sdk-core (~> 3, >= 3.199.0) - aws-sigv4 (~> 1.1) + aws-sdk-dynamodb (1.122.0) + aws-sdk-core (~> 3, >= 3.205.0) + aws-sigv4 (~> 1.5) + aws-sdk-kms (1.91.0) + aws-sdk-core (~> 3, >= 3.205.0) + aws-sigv4 (~> 1.5) aws-sdk-rails (3.13.0) aws-record (~> 2) aws-sdk-ses (~> 1, >= 1.50.0) @@ -106,45 +106,45 @@ GEM aws-sessionstore-dynamodb (~> 2) concurrent-ruby (>= 1.3.1) railties (>= 5.2.0) - aws-sdk-s3 (1.155.0) - aws-sdk-core (~> 3, >= 3.199.0) + aws-sdk-s3 (1.162.0) + aws-sdk-core (~> 3, >= 3.205.0) aws-sdk-kms (~> 1) - aws-sigv4 (~> 1.8) - aws-sdk-ses (1.66.0) - aws-sdk-core (~> 3, >= 3.199.0) - aws-sigv4 (~> 1.1) - aws-sdk-sesv2 (1.53.0) - aws-sdk-core (~> 3, >= 3.199.0) - aws-sigv4 (~> 1.1) - aws-sdk-sns (1.79.0) - aws-sdk-core (~> 3, >= 3.199.0) - aws-sigv4 (~> 1.1) - aws-sdk-sqs (1.79.0) - aws-sdk-core (~> 3, >= 3.199.0) - aws-sigv4 (~> 1.1) + aws-sigv4 (~> 1.5) + aws-sdk-ses (1.72.0) + aws-sdk-core (~> 3, >= 3.205.0) + aws-sigv4 (~> 1.5) + aws-sdk-sesv2 (1.59.0) + aws-sdk-core (~> 3, >= 3.205.0) + aws-sigv4 (~> 1.5) + aws-sdk-sns (1.85.0) + aws-sdk-core (~> 3, >= 3.205.0) + aws-sigv4 (~> 1.5) + aws-sdk-sqs (1.83.0) + aws-sdk-core (~> 3, >= 3.205.0) + aws-sigv4 (~> 1.5) aws-sessionstore-dynamodb (2.2.0) aws-sdk-dynamodb (~> 1, >= 1.85.0) rack (>= 2, < 4) rack-session (>= 1, < 3) - aws-sigv4 (1.8.0) + aws-sigv4 (1.9.1) aws-eventstream (~> 1, >= 1.0.2) base64 (0.2.0) bcrypt (3.1.20) - benchmark-ips (2.13.0) + benchmark-ips (2.14.0) better_errors (2.10.1) erubi (>= 1.0.0) rack (>= 0.9.0) rouge (>= 1.0.0) bigdecimal (3.1.8) bindex (0.8.1) - bootsnap (1.18.3) + bootsnap (1.18.4) msgpack (~> 1.2) bootstrap-will_paginate (1.0.0) will_paginate - brakeman (6.1.2) + brakeman (6.2.1) racc builder (3.3.0) - bundler-audit (0.9.1) + bundler-audit (0.9.2) bundler (>= 1.2.0, < 3) thor (~> 1.0) capitalize_attributes (0.2) @@ -160,10 +160,10 @@ GEM xpath (~> 3.2) carmen (1.1.3) activesupport (>= 3.0.0) - chartkick (5.0.7) + chartkick (5.1.0) choice (0.2.0) coderay (1.1.3) - concurrent-ruby (1.3.3) + concurrent-ruby (1.3.4) connection_pool (2.4.1) coverband (6.1.2) redis (>= 3.0) @@ -171,10 +171,10 @@ GEM bigdecimal rexml crass (1.0.6) - cssbundling-rails (1.4.0) + cssbundling-rails (1.4.1) railties (>= 6.0.0) dalli (3.2.8) - data_migrate (9.4.0) + data_migrate (9.4.2) activerecord (>= 6.1) railties (>= 6.1) date (3.3.4) @@ -211,9 +211,10 @@ GEM factory_bot_rails (5.2.0) factory_bot (~> 5.2.0) railties (>= 4.2.0) - faraday (2.9.2) - faraday-net_http (>= 2.0, < 3.2) - faraday-net_http (3.1.0) + faraday (2.11.0) + faraday-net_http (>= 2.0, < 3.4) + logger + faraday-net_http (3.3.0) net-http ffaker (2.23.0) ffi (1.17.0-arm64-darwin) @@ -221,7 +222,7 @@ GEM ffi (1.17.0-x86_64-linux-gnu) friendly_id (5.5.1) activerecord (>= 4.0.0) - fugit (1.11.0) + fugit (1.11.1) et-orbi (~> 1, >= 1.2.11) raabro (~> 1.4) fx (0.8.0) @@ -231,32 +232,34 @@ GEM ffi (~> 1.0) globalid (1.2.1) activesupport (>= 6.1) - hashdiff (1.1.0) + hashdiff (1.1.1) hashie (5.0.0) heapy (0.2.0) thor - highline (3.0.1) + highline (3.1.1) + reline http-accept (1.7.0) - http-cookie (1.0.6) + http-cookie (1.0.7) domain_name (~> 0.5) - i18n (1.14.5) + i18n (1.14.6) concurrent-ruby (~> 1.0) - image_processing (1.12.2) + image_processing (1.13.0) mini_magick (>= 4.9.5, < 5) ruby-vips (>= 2.0.17, < 3) + io-console (0.7.2) jmespath (1.6.2) - jsbundling-rails (1.3.0) + jsbundling-rails (1.3.1) railties (>= 6.0.0) json (2.7.2) jsonapi-serializer (2.2.0) activesupport (>= 4.2) - jwt (2.8.2) + jwt (2.9.0) base64 listen (3.9.0) rb-fsevent (~> 0.10, >= 0.10.3) rb-inotify (~> 0.9, >= 0.9.10) local_time (3.0.2) - logger (1.6.0) + logger (1.6.1) loofah (2.22.0) crass (~> 1.0.2) nokogiri (>= 1.12.0) @@ -274,11 +277,11 @@ GEM method_source (1.1.0) mime-types (3.5.2) mime-types-data (~> 3.2015) - mime-types-data (3.2024.0604) + mime-types-data (3.2024.0903) mini_histogram (0.3.1) - mini_magick (4.13.1) + mini_magick (4.13.2) mini_mime (1.1.5) - minitest (5.24.1) + minitest (5.25.1) msgpack (1.7.2) multi_xml (0.7.1) bigdecimal (~> 3.1) @@ -286,7 +289,7 @@ GEM activesupport (>= 5.2.0) net-http (0.4.1) uri - net-imap (0.4.14) + net-imap (0.4.16) date net-protocol net-pop (0.1.2) @@ -297,11 +300,11 @@ GEM net-protocol netrc (0.11.0) nio4r (2.7.3) - nokogiri (1.16.6-arm64-darwin) + nokogiri (1.16.7-arm64-darwin) racc (~> 1.4) - nokogiri (1.16.6-x86_64-darwin) + nokogiri (1.16.7-x86_64-darwin) racc (~> 1.4) - nokogiri (1.16.6-x86_64-linux) + nokogiri (1.16.7-x86_64-linux) racc (~> 1.4) normalize_country (0.3.2) oauth2 (2.0.9) @@ -318,8 +321,8 @@ GEM omniauth-facebook (10.0.0) bigdecimal omniauth-oauth2 (>= 1.2, < 3) - omniauth-google-oauth2 (1.1.2) - jwt (>= 2.0) + omniauth-google-oauth2 (1.2.0) + jwt (>= 2.9) oauth2 (~> 2.0) omniauth (~> 2.0) omniauth-oauth2 (~> 1.8) @@ -331,18 +334,18 @@ GEM omniauth (~> 2.0) options (2.3.2) orm_adapter (0.5.0) - pagy (8.6.3) - paper_trail (15.1.0) + pagy (9.0.9) + paper_trail (15.2.0) activerecord (>= 6.1) request_store (~> 1.4) - parallel (1.25.1) - parser (3.3.3.0) + parallel (1.26.3) + parser (3.3.5.0) ast (~> 2.4.1) racc - pg (1.5.6) - pg_search (2.3.6) - activerecord (>= 5.2) - activesupport (>= 5.2) + pg (1.5.8) + pg_search (2.3.7) + activerecord (>= 6.1) + activesupport (>= 6.1) pretender (0.5.0) actionpack (>= 6.1) progress_bar (1.3.4) @@ -351,13 +354,13 @@ GEM pry (0.14.2) coderay (~> 1.1) method_source (~> 1.0) - public_suffix (6.0.0) + public_suffix (6.0.1) puma (6.4.2) nio4r (~> 2.0) - pundit (2.3.2) + pundit (2.4.0) activesupport (>= 3.0.0) raabro (1.4.0) - racc (1.8.0) + racc (1.8.1) rack (2.2.9) rack-protection (3.2.0) base64 (>= 0.1.0) @@ -412,6 +415,8 @@ GEM redis-client (0.22.2) connection_pool regexp_parser (2.9.2) + reline (0.5.10) + io-console (~> 0.5) request_store (1.7.0) rack (>= 1.4) responders (3.1.1) @@ -422,25 +427,24 @@ GEM http-cookie (>= 1.0.2, < 2.0) mime-types (>= 1.16, < 4.0) netrc (~> 0.8) - rexml (3.3.1) - strscan + rexml (3.3.7) rouge (4.3.0) rspec (3.13.0) rspec-core (~> 3.13.0) rspec-expectations (~> 3.13.0) rspec-mocks (~> 3.13.0) - rspec-core (3.13.0) + rspec-core (3.13.1) rspec-support (~> 3.13.0) - rspec-expectations (3.13.1) + rspec-expectations (3.13.3) diff-lcs (>= 1.2.0, < 2.0) rspec-support (~> 3.13.0) rspec-mocks (3.13.1) diff-lcs (>= 1.2.0, < 2.0) rspec-support (~> 3.13.0) - rspec-rails (6.1.3) - actionpack (>= 6.1) - activesupport (>= 6.1) - railties (>= 6.1) + rspec-rails (7.0.1) + actionpack (>= 7.0) + activesupport (>= 7.0) + railties (>= 7.0) rspec-core (~> 3.13) rspec-expectations (~> 3.13) rspec-mocks (~> 3.13) @@ -455,22 +459,23 @@ GEM rubocop-ast (>= 0.6.0) ruby-progressbar (~> 1.7) unicode-display_width (>= 1.4.0, < 2.0) - rubocop-ast (1.31.3) + rubocop-ast (1.32.3) parser (>= 3.3.1.0) ruby-graphviz (1.2.5) rexml ruby-progressbar (1.13.0) - ruby-statistics (3.0.2) - ruby-vips (2.2.1) + ruby-statistics (4.0.1) + ruby-vips (2.2.2) ffi (~> 1.12) + logger ruby_http_client (3.5.5) rubyzip (2.3.2) scenic (1.8.0) activerecord (>= 4.0.0) railties (>= 4.0.0) - scout_apm (5.3.8) + scout_apm (5.4.0) parser - selenium-webdriver (4.22.0) + selenium-webdriver (4.24.0) base64 (~> 0.2) logger (~> 1.4) rexml (~> 3.2, >= 3.2.5) @@ -478,18 +483,18 @@ GEM websocket (~> 1.0) sendgrid-ruby (6.7.0) ruby_http_client (~> 3.4) - sentry-rails (5.18.0) + sentry-rails (5.19.0) railties (>= 5.0) - sentry-ruby (~> 5.18.0) - sentry-ruby (5.18.0) + sentry-ruby (~> 5.19.0) + sentry-ruby (5.19.0) bigdecimal concurrent-ruby (~> 1.0, >= 1.0.2) - sentry-sidekiq (5.18.0) - sentry-ruby (~> 5.18.0) + sentry-sidekiq (5.19.0) + sentry-ruby (~> 5.19.0) sidekiq (>= 3.0) shortener (1.0.1) voight_kampff (~> 2.0) - sidekiq (7.3.0) + sidekiq (7.3.2) concurrent-ruby (< 2) connection_pool (>= 2.3.0) logger @@ -501,7 +506,7 @@ GEM sidekiq (>= 6) sitemap_generator (6.3.0) builder (~> 3.0) - smarter_csv (1.10.3) + smarter_csv (1.12.1) snaky_hash (2.0.1) hashie version_gem (~> 1.1, >= 1.1.1) @@ -511,29 +516,28 @@ GEM sprockets (4.2.1) concurrent-ruby (~> 1.0) rack (>= 2.2.4, < 4) - sprockets-rails (3.5.1) + sprockets-rails (3.5.2) actionpack (>= 6.1) activesupport (>= 6.1) sprockets (>= 3.0.0) - stimulus-rails (1.3.3) + stimulus-rails (1.3.4) railties (>= 6.0.0) strip_attributes (1.13.0) activemodel (>= 3.0, < 8.0) - strscan (3.1.0) structpluck (0.0.1) activerecord terser (1.2.3) execjs (>= 0.3.0, < 3) - thor (1.3.1) + thor (1.3.2) timeout (0.4.1) - turbo-rails (2.0.5) + turbo-rails (2.0.7) actionpack (>= 6.0.0) activejob (>= 6.0.0) railties (>= 6.0.0) tzinfo (2.0.6) concurrent-ruby (~> 1.0) unicode-display_width (1.8.0) - uri (0.13.0) + uri (0.13.1) vcr (4.0.0) version_gem (1.1.4) voight_kampff (2.0.0) @@ -549,14 +553,14 @@ GEM addressable (>= 2.8.0) crack (>= 0.3.2) hashdiff (>= 0.4.0, < 2.0.0) - websocket (1.2.10) + websocket (1.2.11) websocket-driver (0.7.6) websocket-extensions (>= 0.1.0) websocket-extensions (0.1.5) will_paginate (3.3.1) xpath (3.2.0) nokogiri (~> 1.8) - zeitwerk (2.6.16) + zeitwerk (2.6.18) PLATFORMS arm64-darwin-21 From 3ce9431b6a82f89b053353015ac6a90f6c9620aa Mon Sep 17 00:00:00 2001 From: moveson Date: Mon, 16 Sep 2024 06:21:22 -0600 Subject: [PATCH 2/9] Add statistics gem --- Gemfile | 1 + Gemfile.lock | 2 ++ 2 files changed, 3 insertions(+) diff --git a/Gemfile b/Gemfile index 6e6bbfe36..7160f0eca 100644 --- a/Gemfile +++ b/Gemfile @@ -61,6 +61,7 @@ gem "sidekiq-cron" gem "sitemap_generator" gem "smarter_csv", require: false gem "sprockets-rails" +gem "statistics", "~> 1.0" gem "stimulus-rails" gem "strip_attributes" gem "structpluck" diff --git a/Gemfile.lock b/Gemfile.lock index 6677699d2..ef5d5e308 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -520,6 +520,7 @@ GEM actionpack (>= 6.1) activesupport (>= 6.1) sprockets (>= 3.0.0) + statistics (1.0.0) stimulus-rails (1.3.4) railties (>= 6.0.0) strip_attributes (1.13.0) @@ -644,6 +645,7 @@ DEPENDENCIES spring spring-commands-rspec sprockets-rails + statistics (~> 1.0) stimulus-rails strip_attributes structpluck From 46404a7bfeaa2b2e355363b204a7d913dfb86f45 Mon Sep 17 00:00:00 2001 From: moveson Date: Mon, 16 Sep 2024 06:57:06 -0600 Subject: [PATCH 3/9] Copyright year --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 1dedab9a4..fefb773b4 100644 --- a/README.md +++ b/README.md @@ -180,4 +180,4 @@ License Copyright --------- -Copyright (c) 2015-2023 OpenSplitTime Company. See license for details. +Copyright (c) 2015-2024 OpenSplitTime Company. See license for details. From 6e5fe1ab7d8260d7220f3f476a961f3043a22df1 Mon Sep 17 00:00:00 2001 From: moveson Date: Mon, 16 Sep 2024 07:09:18 -0600 Subject: [PATCH 4/9] Clarify Rails Apps Composer language --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index fefb773b4..8a04db39b 100644 --- a/README.md +++ b/README.md @@ -167,7 +167,7 @@ Be detailed. They only person who knows the bug you are experiencing or feature Credits ------- -This application was generated with the [rails_apps_composer](https://github.com/RailsApps/rails_apps_composer) gem +This application was originally generated back in 2015 with the [rails_apps_composer](https://github.com/RailsApps/rails_apps_composer) gem provided by the [RailsApps Project](http://railsapps.github.io/). Rails Composer is supported by developers who purchase the RailsApps tutorials. From b8c1657566103a63854e952c91e9266adeeceec5 Mon Sep 17 00:00:00 2001 From: moveson Date: Mon, 16 Sep 2024 07:24:24 -0600 Subject: [PATCH 5/9] Use new chrome-for-testing buildpack for Heroku CI --- app.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/app.json b/app.json index f3078fe04..e20688b4b 100644 --- a/app.json +++ b/app.json @@ -6,15 +6,15 @@ "heroku-redis:in-dyno" ], "buildpacks": [ + { + "url": "heroku-community/chrome-for-testing" + }, { "url": "heroku/nodejs" }, { "url": "heroku/ruby" }, - { - "url": "https://github.com/heroku/heroku-buildpack-google-chrome" - } ], "env": { "GOOGLE_CHROME_CHANNEL": "stable", From 7b0138abd948251363a9785fa6676925c1fa68b9 Mon Sep 17 00:00:00 2001 From: moveson Date: Mon, 16 Sep 2024 07:26:57 -0600 Subject: [PATCH 6/9] Lint --- app.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app.json b/app.json index e20688b4b..21477fbf2 100644 --- a/app.json +++ b/app.json @@ -14,7 +14,7 @@ }, { "url": "heroku/ruby" - }, + } ], "env": { "GOOGLE_CHROME_CHANNEL": "stable", From 8d75261acc3b8a534bba22f8eeab71eca4843ba5 Mon Sep 17 00:00:00 2001 From: moveson Date: Mon, 16 Sep 2024 07:40:43 -0600 Subject: [PATCH 7/9] Remove chrome-related environment variables from app.json --- app.json | 4 ---- 1 file changed, 4 deletions(-) diff --git a/app.json b/app.json index 21477fbf2..040674b94 100644 --- a/app.json +++ b/app.json @@ -16,10 +16,6 @@ "url": "heroku/ruby" } ], - "env": { - "GOOGLE_CHROME_CHANNEL": "stable", - "WD_CHROME_PATH": "/app/.apt/usr/bin/google-chrome-stable" - }, "formation": { "test": { "quantity": 1, From 8696fa3cc87b1097876b302d2b165a8061c15bb4 Mon Sep 17 00:00:00 2001 From: moveson Date: Mon, 16 Sep 2024 08:02:19 -0600 Subject: [PATCH 8/9] Restore chrome-related environment variables with new path for chrome --- app.json | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/app.json b/app.json index 040674b94..0a4d8c147 100644 --- a/app.json +++ b/app.json @@ -16,6 +16,10 @@ "url": "heroku/ruby" } ], + "env": { + "GOOGLE_CHROME_CHANNEL": "stable", + "WD_CHROME_PATH": "/app/.chrome-for-testing/chrome-linux64/chrome" + }, "formation": { "test": { "quantity": 1, From e612fac2528eda7057b74decb509044119d20fe3 Mon Sep 17 00:00:00 2001 From: moveson Date: Mon, 16 Sep 2024 17:08:04 -0600 Subject: [PATCH 9/9] Disable dev/shm usage in selenium webdriver chrome options --- spec/support/capybara_config.rb | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/spec/support/capybara_config.rb b/spec/support/capybara_config.rb index c385c1597..d4a779248 100644 --- a/spec/support/capybara_config.rb +++ b/spec/support/capybara_config.rb @@ -5,7 +5,7 @@ # chrome_headless is the default driver for system tests Capybara.register_driver :chrome_headless do |app| options = Selenium::WebDriver::Chrome::Options.new( - args: %w[headless disable-gpu no-sandbox window-size=1536,1152], + args: %w[headless disable-gpu no-sandbox window-size=1536,1152 disable-dev-shm-usage], ) Capybara::Selenium::Driver.new app, browser: :chrome, @@ -19,7 +19,7 @@ # :chrome_headless to :chrome_visible Capybara.register_driver :chrome_visible do |app| options = Selenium::WebDriver::Chrome::Options.new( - args: %w[disable-gpu no-sandbox window-size=1536,1152], + args: %w[disable-gpu no-sandbox window-size=1536,1152 disable-dev-shm-usage], ) Capybara::Selenium::Driver.new app, browser: :chrome,