From 479f2e87451db49a5d89f7c68607bf8c2ef0b6cd Mon Sep 17 00:00:00 2001 From: John Paul Ashenfelter Date: Fri, 29 Aug 2025 16:29:35 -0400 Subject: [PATCH 1/5] WIP: Upgrade to ruby 3.3.8 --- .ruby-version | 2 +- Dockerfile | 2 +- Dockerfile.dev | 2 +- Gemfile | 17 ++- Gemfile.lock | 353 ++++++++++++++++++++++++++++++++++---------- config/database.yml | 25 +--- 6 files changed, 298 insertions(+), 103 deletions(-) diff --git a/.ruby-version b/.ruby-version index b2cf54c69..5f4e56c47 100644 --- a/.ruby-version +++ b/.ruby-version @@ -1,2 +1,2 @@ -2.7.8 +3.3.8 diff --git a/Dockerfile b/Dockerfile index b485668bf..c06883316 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,4 +1,4 @@ -FROM ruby:2.7.8-buster +FROM ruby:3.3.8 # Install basic Linux packages RUN apt-get update -qq && apt-get install -y \ diff --git a/Dockerfile.dev b/Dockerfile.dev index cb9e45413..dfc6e74d9 100644 --- a/Dockerfile.dev +++ b/Dockerfile.dev @@ -1,4 +1,4 @@ -FROM ruby:2.3 +FROM ruby:3.3.8 USER root diff --git a/Gemfile b/Gemfile index 8c25f23f6..f307202dd 100644 --- a/Gemfile +++ b/Gemfile @@ -1,27 +1,29 @@ source 'https://rubygems.org' -ruby "2.7.8" +ruby "3.3.8" gem 'rails', '~> 6.1.0.0' gem 'sprockets-rails', '~> 3.2.2' gem 'mysql2', '~> 0.5.0' gem 'bootstrap-sass' -gem 'sass-rails', '~> 6.0.0' +#gem 'sass-rails', '~> 6.0.0' +gem "sassc-rails", ">= 2.1.2" + gem 'uglifier' gem 'coffee-rails' gem "feature_flipper" gem 'jquery-rails' gem 'jbuilder', '~> 2.0' -gem 'sdoc', '~> 0.4.0', group: :doc +#gem 'sdoc', '~> 0.4.0', group: :doc gem 'devise', '~> 4.7.3' gem 'neat', '1.7.1' gem 'bourbon', '~> 4.2.2' gem 'draper' gem 'paperclip', '~> 6.0.0' -gem 'aws-sdk-s3', '~> 1.98.0' +gem 'aws-sdk-s3' gem 'rails_admin','~> 2.2.1' # gem 'rails_admin', git: 'https://github.com/enmand/rails_admin.git' # rails_admin 1.1.1 has a transitive dependency on haml (~> 4.0). haml 4.0.7 in @@ -41,12 +43,11 @@ gem 'cocoon', '~> 1.2.6' gem 'font-awesome-rails' gem 'wicked' gem 'search_cop', '~> 1.0.6' -gem 'mandrill_mailer', '~> 1.0.1' +gem 'mandrill_mailer'#, '~> 1.0.1' gem 'jwt', '~> 1.2.1' -gem 'httparty', '~> 0.13.7' +gem 'httparty' gem 'will_paginate', '~> 3.1.7' gem 'bootstrap-will_paginate' -gem 'aws-sdk-v1', '~> 1.64.0' gem 'apipie-rails', '~> 0.5.0' gem 'rack-cors', :require => 'rack/cors' gem 'ckeditor', '~> 4.3.0' @@ -58,6 +59,8 @@ gem 'inky-rb', require: 'inky' gem 'premailer-rails' gem "bcrypt", '3.1.16' +gem "json", ">= 2.6", "< 3" # or simply: gem "json", "~> 2.7" + group :development, :test do gem 'better_errors' gem 'capybara', '~> 3.36' diff --git a/Gemfile.lock b/Gemfile.lock index 6fa847df2..35575361b 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -71,33 +71,31 @@ GEM autoprefixer-rails (10.4.21.0) execjs (~> 2) aws-eventstream (1.4.0) - aws-partitions (1.1118.0) - aws-sdk-core (3.226.0) + aws-partitions (1.1153.0) + aws-sdk-core (3.232.0) aws-eventstream (~> 1, >= 1.3.0) aws-partitions (~> 1, >= 1.992.0) aws-sigv4 (~> 1.9) base64 + bigdecimal jmespath (~> 1, >= 1.6.1) logger - aws-sdk-kms (1.105.0) - aws-sdk-core (~> 3, >= 3.225.0) + aws-sdk-kms (1.112.0) + aws-sdk-core (~> 3, >= 3.231.0) aws-sigv4 (~> 1.5) - aws-sdk-s3 (1.98.0) - aws-sdk-core (~> 3, >= 3.119.0) + aws-sdk-s3 (1.198.0) + aws-sdk-core (~> 3, >= 3.231.0) aws-sdk-kms (~> 1) - aws-sigv4 (~> 1.1) - aws-sdk-v1 (1.64.0) - json (~> 1.4) - nokogiri (>= 1.4.4) + aws-sigv4 (~> 1.5) aws-sigv4 (1.12.1) aws-eventstream (~> 1, >= 1.0.2) base64 (0.3.0) bcrypt (3.1.16) - benchmark (0.4.1) better_errors (2.10.1) erubi (>= 1.0.0) rack (>= 0.9.0) rouge (>= 1.0.0) + bigdecimal (3.2.2) binding_of_caller (1.0.1) debug_inspector (>= 1.2.0) bootstrap-sass (3.4.1) @@ -109,11 +107,11 @@ GEM sass (~> 3.4) thor builder (3.3.0) - capybara (3.39.2) + capybara (3.40.0) addressable matrix mini_mime (>= 0.1.3) - nokogiri (~> 1.8) + nokogiri (~> 1.11) rack (>= 1.6.0) rack-test (>= 0.6.3) regexp_parser (>= 1.5, < 3.0) @@ -133,8 +131,9 @@ GEM coffee-script-source (1.12.2) concurrent-ruby (1.3.5) crass (1.0.6) - css_parser (1.17.1) + css_parser (1.21.1) addressable + csv (3.3.5) date (3.4.1) debug_inspector (1.2.0) devise (4.7.3) @@ -144,10 +143,10 @@ GEM responders warden (~> 1.2.3) diff-lcs (1.6.2) - dotenv (2.8.1) - dotenv-rails (2.8.1) - dotenv (= 2.8.1) - railties (>= 3.2) + dotenv (3.1.8) + dotenv-rails (3.1.8) + dotenv (= 3.1.8) + railties (>= 6.1) draper (4.0.4) actionpack (>= 5.0) activemodel (>= 5.0) @@ -163,22 +162,30 @@ GEM factory_bot_rails (6.0.0) factory_bot (~> 6.0.0) railties (>= 5.0.0) - faker (3.4.2) + faker (3.5.2) i18n (>= 1.8.11, < 2) feature_flipper (2.0.0) ffi (1.17.2) + ffi (1.17.2-aarch64-linux-gnu) + ffi (1.17.2-aarch64-linux-musl) + ffi (1.17.2-arm-linux-gnu) + ffi (1.17.2-arm-linux-musl) ffi (1.17.2-arm64-darwin) + ffi (1.17.2-x86_64-darwin) + ffi (1.17.2-x86_64-linux-gnu) + ffi (1.17.2-x86_64-linux-musl) font-awesome-rails (4.7.0.9) railties (>= 3.2, < 9.0) foundation_emails (2.2.1.0) - globalid (1.1.0) - activesupport (>= 5.0) + globalid (1.2.1) + activesupport (>= 6.1) haml (5.2.2) temple (>= 0.8.0) tilt htmlentities (4.3.4) - httparty (0.13.7) - json (~> 1.8) + httparty (0.23.1) + csv + mini_mime (>= 1.0.0) multi_xml (>= 0.5.2) i18n (1.14.7) concurrent-ruby (~> 1.0) @@ -198,7 +205,7 @@ GEM thor (>= 0.14, < 2.0) jquery-ui-rails (6.0.1) railties (>= 3.2.16) - json (1.8.6) + json (2.13.2) jwt (1.2.1) kaminari (1.2.2) activesupport (>= 4.1.0) @@ -224,13 +231,14 @@ GEM net-imap net-pop net-smtp - mandrill-api (1.0.55) - excon (>= 0.16.0, < 1.0) - json (>= 1.7.7, < 2.0) - mandrill_mailer (1.0.4) + mandrill_mailer (1.8.0) actionpack + activejob activesupport - mandrill-api (~> 1.0.9) + mandrillus (~> 2.0.0) + mandrillus (2.0.0) + excon (>= 0.16.0, < 1.0) + json (>= 1.7.7, < 3.0) marcel (0.3.3) mimemagic (~> 0.3.2) matrix (0.4.3) @@ -238,23 +246,23 @@ GEM mime-types (3.7.0) logger mime-types-data (~> 3.2025, >= 3.2025.0507) - mime-types-data (3.2025.0617) + mime-types-data (3.2025.0826) mimemagic (0.3.10) nokogiri (~> 1) rake - mini_magick (5.2.0) - benchmark + mini_magick (5.3.1) logger mini_mime (1.1.5) mini_portile2 (2.8.9) minitest (5.25.5) - multi_xml (0.6.0) + multi_xml (0.7.2) + bigdecimal (~> 3.1) mysql2 (0.5.6) neat (1.7.1) bourbon (>= 4.0) sass (>= 3.3) nested_form (0.3.2) - net-imap (0.4.22) + net-imap (0.5.10) date net-protocol net-pop (0.1.2) @@ -264,10 +272,24 @@ GEM net-smtp (0.5.1) net-protocol nio4r (2.7.4) - nokogiri (1.15.7) + nokogiri (1.18.9) mini_portile2 (~> 2.8.2) racc (~> 1.4) - nokogiri (1.15.7-arm64-darwin) + nokogiri (1.18.9-aarch64-linux-gnu) + racc (~> 1.4) + nokogiri (1.18.9-aarch64-linux-musl) + racc (~> 1.4) + nokogiri (1.18.9-arm-linux-gnu) + racc (~> 1.4) + nokogiri (1.18.9-arm-linux-musl) + racc (~> 1.4) + nokogiri (1.18.9-arm64-darwin) + racc (~> 1.4) + nokogiri (1.18.9-x86_64-darwin) + racc (~> 1.4) + nokogiri (1.18.9-x86_64-linux-gnu) + racc (~> 1.4) + nokogiri (1.18.9-x86_64-linux-musl) racc (~> 1.4) orm_adapter (0.5.0) paperclip (6.0.0) @@ -277,9 +299,9 @@ GEM mimemagic (~> 0.3.0) terrapin (~> 0.6.0) polyglot (0.3.5) - premailer (1.22.0) + premailer (1.27.0) addressable - css_parser (>= 1.12.0) + css_parser (>= 1.19.0) htmlentities (>= 4.0.0) premailer-rails (1.12.0) actionmailer (>= 3) @@ -290,7 +312,7 @@ GEM method_source (~> 1.0) pry-rails (0.3.11) pry (>= 0.13.0) - public_suffix (5.1.1) + public_suffix (6.0.2) puma (5.6.9) nio4r (~> 2.0) racc (1.8.1) @@ -346,17 +368,16 @@ GEM rb-fsevent (0.11.2) rb-inotify (0.11.1) ffi (~> 1.0) - rdoc (4.3.0) - regexp_parser (2.10.0) + regexp_parser (2.11.2) remotipart (1.4.4) request_store (1.7.0) rack (>= 1.4) responders (3.1.1) actionpack (>= 5.2) railties (>= 5.2) - rexml (3.4.1) - rouge (4.5.2) - rspec-core (3.13.4) + rexml (3.4.2) + rouge (4.6.0) + rspec-core (3.13.5) rspec-support (~> 3.13.0) rspec-expectations (3.13.5) diff-lcs (>= 1.2.0, < 2.0) @@ -364,27 +385,25 @@ GEM rspec-mocks (3.13.5) diff-lcs (>= 1.2.0, < 2.0) rspec-support (~> 3.13.0) - rspec-rails (5.1.2) - actionpack (>= 5.2) - activesupport (>= 5.2) - railties (>= 5.2) - rspec-core (~> 3.10) - rspec-expectations (~> 3.10) - rspec-mocks (~> 3.10) - rspec-support (~> 3.10) - rspec-support (3.13.4) - ruby-vips (2.2.4) + rspec-rails (6.1.5) + actionpack (>= 6.1) + activesupport (>= 6.1) + railties (>= 6.1) + rspec-core (~> 3.13) + rspec-expectations (~> 3.13) + rspec-mocks (~> 3.13) + rspec-support (~> 3.13) + rspec-support (3.13.5) + ruby-vips (2.2.5) ffi (~> 1.12) logger ruby2_keywords (0.0.5) - rubyzip (2.4.1) + rubyzip (3.0.2) sass (3.7.4) sass-listen (~> 4.0.0) sass-listen (4.0.0) rb-fsevent (~> 0.9, >= 0.9.4) rb-inotify (~> 0.9, >= 0.9.7) - sass-rails (6.0.0) - sassc-rails (~> 2.1, >= 2.1.1) sassc (2.4.0) ffi (~> 1.9) sassc-rails (2.1.2) @@ -393,16 +412,15 @@ GEM sprockets (> 3.0) sprockets-rails tilt - sdoc (0.4.2) - json (~> 1.7, >= 1.7.7) - rdoc (~> 4.0) search_cop (1.0.9) treetop - selenium-webdriver (4.9.0) + selenium-webdriver (4.35.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) - shoulda-matchers (5.3.0) + shoulda-matchers (6.5.0) activesupport (>= 5.2.0) sprockets (4.2.2) concurrent-ruby (~> 1.0) @@ -412,7 +430,7 @@ GEM actionpack (>= 4.0) activesupport (>= 4.0) sprockets (>= 3.0.0) - temple (0.10.3) + temple (0.10.4) terrapin (0.6.0) climate_control (>= 0.0.3, < 1.0) thor (1.4.0) @@ -436,16 +454,22 @@ GEM will_paginate (3.1.8) xpath (3.2.0) nokogiri (~> 1.8) - zeitwerk (2.6.18) + zeitwerk (2.7.3) PLATFORMS - arm64-darwin-24 + aarch64-linux-gnu + aarch64-linux-musl + arm-linux-gnu + arm-linux-musl + arm64-darwin ruby + x86_64-darwin + x86_64-linux-gnu + x86_64-linux-musl DEPENDENCIES apipie-rails (~> 0.5.0) - aws-sdk-s3 (~> 1.98.0) - aws-sdk-v1 (~> 1.64.0) + aws-sdk-s3 bcrypt (= 3.1.16) better_errors binding_of_caller @@ -464,14 +488,15 @@ DEPENDENCIES feature_flipper font-awesome-rails foundation_emails - httparty (~> 0.13.7) + httparty image_processing inky-rb jbuilder (~> 2.0) jquery-rails + json (>= 2.6, < 3) jwt (~> 1.2.1) listen - mandrill_mailer (~> 1.0.1) + mandrill_mailer mysql2 (~> 0.5.0) neat (= 1.7.1) paperclip (~> 6.0.0) @@ -482,8 +507,7 @@ DEPENDENCIES rails (~> 6.1.0.0) rails_admin (~> 2.2.1) rspec-rails - sass-rails (~> 6.0.0) - sdoc (~> 0.4.0) + sassc-rails (>= 2.1.2) search_cop (~> 1.0.6) selenium-webdriver shoulda-matchers @@ -493,8 +517,189 @@ DEPENDENCIES wicked will_paginate (~> 3.1.7) +CHECKSUMS + actioncable (6.1.0) sha256=89b7af1570e292e91b168e08da960178f6a3f1e8583ac09acc3c6edc66d58e32 + actionmailbox (6.1.0) sha256=8e83134721e9659333d7bbf73baf6e2df772660d68b0f7d5504f7a41838a0c93 + actionmailer (6.1.0) sha256=bc62372b5968363ecf5bcd5519fe047bbcd51b07e4568cb9a174bd12afe0969d + actionpack (6.1.0) sha256=abca49a4b988adeb4eadd241f2d479212d14c7fb7be36fd0f8660aeafb8f75d5 + actiontext (6.1.0) sha256=8de7c11dc6568db467f3f22725233915b7ac72be51ad77f4e5601ecc3ed8afa5 + actionview (6.1.0) sha256=f3ab9bd93e13ace74cb131555782a12d09233cafac108c5e1dcb244e4ebac8b4 + activejob (6.1.0) sha256=802b11140bb8285036bf335c1cee013ae5c0c5619e171e1b814ff6e265f1715e + activemodel (6.1.0) sha256=28b5bcd8b52a40988c15902a2e3b2e9f242ebdc7e71926ecc88ec4b972e72f05 + activemodel-serializers-xml (1.0.3) sha256=fa1b16305e7254cc58a59c68833e3c0a593a59c8ab95d3be5aaea7cd9416c397 + activerecord (6.1.0) sha256=a8fe5e854039c950c896c7ede5bb6ed6a79ad1148a25f792457b7dafdce5e8a9 + activestorage (6.1.0) sha256=32901903bdd62d2eee1f9878b5ff601589ae7d9b67754d77f7d28194c0a5fa4f + activesupport (6.1.0) sha256=9b90aa8ab328692a7b56a94d916811a0bf6a6810f2e11ce67f6b05c89c60d4dd + addressable (2.8.7) sha256=462986537cf3735ab5f3c0f557f14155d778f4b43ea4f485a9deb9c8f7c58232 + apipie-rails (0.5.20) sha256=3d5fba489ae780d61d75423adcc6884865883e8ecd16fe60be7a46f7c5f62197 + autoprefixer-rails (10.4.21.0) sha256=71b48caf850fc25275abd96f0b1fdd51c82e1c9b99cd30085cacb05da9c70235 + aws-eventstream (1.4.0) sha256=116bf85c436200d1060811e6f5d2d40c88f65448f2125bc77ffce5121e6e183b + aws-partitions (1.1153.0) sha256=545fa62d2fc6a893dffb6e47947b8dffb9d829d2767410335197bbaa6d11d722 + aws-sdk-core (3.232.0) sha256=05291ae0da4fb69e9b6494fcc2d839584e8345714a93cd01f0f1bf11475619f2 + aws-sdk-kms (1.112.0) sha256=aa68feb901545a7fc14be327735740b89f90cfee825a46ddea601c7c80c922d4 + aws-sdk-s3 (1.198.0) sha256=ce50466b5ee1daaa5740c455d9bac6ffd1e9ec7edef34733941a39ec12107d86 + aws-sigv4 (1.12.1) sha256=6973ff95cb0fd0dc58ba26e90e9510a2219525d07620c8babeb70ef831826c00 + base64 (0.3.0) sha256=27337aeabad6ffae05c265c450490628ef3ebd4b67be58257393227588f5a97b + bcrypt (3.1.16) sha256=0b8bf031ba81aa76c0f10c5a8dac779b6035d84b09af1dbb2b1a32a7e360210b + better_errors (2.10.1) sha256=f798f1bac93f3e775925b7fcb24cffbcf0bb62ee2210f5350f161a6b75fc0a73 + bigdecimal (3.2.2) sha256=39085f76b495eb39a79ce07af716f3a6829bc35eb44f2195e2753749f2fa5adc + binding_of_caller (1.0.1) sha256=2b2902abff4246ddcfbc4da9b69bc4a019e22aeb300c2ff6289a173d4b90b29a + bootstrap-sass (3.4.1) sha256=ba4673535eb0a8334a39a258ea8d81904832f47607069d0a1735b0937645c7df + bootstrap-will_paginate (1.0.0) sha256=a6bdb4bf303357052f586bbc963ea352c2e30f596de3eb1459b953fb95f8c20c + bourbon (4.2.3) sha256=ee1db8ddf93a8964710046c48354cdd33be57e11fc5fa42cd15bc37614693586 + builder (3.3.0) sha256=497918d2f9dca528fdca4b88d84e4ef4387256d984b8154e9d5d3fe5a9c8835f + capybara (3.40.0) sha256=42dba720578ea1ca65fd7a41d163dd368502c191804558f6e0f71b391054aeef + ckeditor (4.3.0) sha256=7ed7f9f0616b620d6bbb6612d55fc4bb261d962d0fc95c0f5513cd8090c448fc + climate_control (0.2.0) sha256=51f6a7f6a3e7b94f400592c298b32b91467400ec4580065ccc26efa522d82160 + cocoon (1.2.15) sha256=d08f14e69653287d7a060ee43389b8c824e55191dffbca0c5c586f38ef491f0d + coderay (1.1.3) sha256=dc530018a4684512f8f38143cd2a096c9f02a1fc2459edcfe534787a7fc77d4b + coffee-rails (5.0.0) sha256=5daaa1ba51fd4907c98a333b6a9e7c1a99b1fff57fcef999b6c62d813cb91a9c + coffee-script (2.4.1) sha256=82fe281e11b93c8117b98c5ea8063e71741870f1c4fbb27177d7d6333dd38765 + coffee-script-source (1.12.2) sha256=e12b16fd8927fbbf8b87cb2e9a85a6cf457c6881cc7ff8b1af15b31f70da07a4 + concurrent-ruby (1.3.5) sha256=813b3e37aca6df2a21a3b9f1d497f8cbab24a2b94cab325bffe65ee0f6cbebc6 + crass (1.0.6) sha256=dc516022a56e7b3b156099abc81b6d2b08ea1ed12676ac7a5657617f012bd45d + css_parser (1.21.1) sha256=6cfd3ffc0a97333b39d2b1b49c95397b05e0e3b684d68f77ec471ba4ec2ef7c7 + csv (3.3.5) sha256=6e5134ac3383ef728b7f02725d9872934f523cb40b961479f69cf3afa6c8e73f + date (3.4.1) sha256=bf268e14ef7158009bfeaec40b5fa3c7271906e88b196d958a89d4b408abe64f + debug_inspector (1.2.0) sha256=9bdfa02eebc3da163833e6a89b154084232f5766087e59573b70521c77ea68a2 + devise (4.7.3) sha256=2c8e3d731a05d7a6df0cd32bddcd7668f56b6d0c8e898a8c7c8dd584019cd86b + diff-lcs (1.6.2) sha256=9ae0d2cba7d4df3075fe8cd8602a8604993efc0dfa934cff568969efb1909962 + dotenv (3.1.8) sha256=9e1176060ced581f8e6ce4384e91361817763a76e3c625c8bddc18b35bd392c3 + dotenv-rails (3.1.8) sha256=46c9d1226a8b58a83b5f61325aa8cffd25cea1c0fafdfbbbee1e5dfea77980c4 + draper (4.0.4) sha256=acf3d7f4d5b28fd0e3b9fad9a0692f9a990e119362b802b92852362f9535b85e + erubi (1.13.1) sha256=a082103b0885dbc5ecf1172fede897f9ebdb745a4b97a5e8dc63953db1ee4ad9 + excon (0.112.0) sha256=daf9ac3a4c2fc9aa48383a33da77ecb44fa395111e973084d5c52f6f214ae0f0 + execjs (2.10.0) sha256=6bcb8be8f0052ff9d370b65d1c080f2406656e150452a0abdb185a133048450d + factory_bot (6.0.2) sha256=ec803c1d5be6ab95fb7709ab2bff38cf9b264c62e46deffe76cc552e60226bb4 + factory_bot_rails (6.0.0) sha256=b6c7ae09bd3860597065cc9ceb22385e88ca4668ad86ec7532be71323ea4a3ee + faker (3.5.2) sha256=f9a80291b2e3f259801d1dd552f0732fe04dce5d1f74e798365bc0413789c473 + feature_flipper (2.0.0) sha256=abc5d46e5a103da840dfb6898a7fc54d114ab08e2f36d7e1b0701bf9f3dfe545 + ffi (1.17.2) sha256=297235842e5947cc3036ebe64077584bff583cd7a4e94e9a02fdec399ef46da6 + ffi (1.17.2-aarch64-linux-gnu) sha256=c910bd3cae70b76690418cce4572b7f6c208d271f323d692a067d59116211a1a + ffi (1.17.2-aarch64-linux-musl) sha256=69e6556b091d45df83e6c3b19d3c54177c206910965155a6ec98de5e893c7b7c + ffi (1.17.2-arm-linux-gnu) sha256=d4a438f2b40224ae42ec72f293b3ebe0ba2159f7d1bd47f8417e6af2f68dbaa5 + ffi (1.17.2-arm-linux-musl) sha256=977dfb7f3a6381206dbda9bc441d9e1f9366bf189a634559c3b7c182c497aaa3 + ffi (1.17.2-arm64-darwin) sha256=54dd9789be1d30157782b8de42d8f887a3c3c345293b57ffb6b45b4d1165f813 + ffi (1.17.2-x86_64-darwin) sha256=981f2d4e32ea03712beb26e55e972797c2c5a7b0257955d8667ba58f2da6440e + ffi (1.17.2-x86_64-linux-gnu) sha256=05d2026fc9dbb7cfd21a5934559f16293815b7ce0314846fee2ac8efbdb823ea + ffi (1.17.2-x86_64-linux-musl) sha256=97c0eb3981414309285a64dc4d466bd149e981c279a56371ef811395d68cb95c + font-awesome-rails (4.7.0.9) sha256=b45044908fbf3178b8d84fbae415dae4b9bf847612bcb1170d88ed13842c8732 + foundation_emails (2.2.1.0) sha256=34e67b0a9de9511b5a05e6763ed7a2bacef52cb7a87b11fc937a3a25c4b2a10c + globalid (1.2.1) sha256=70bf76711871f843dbba72beb8613229a49429d1866828476f9c9d6ccc327ce9 + haml (5.2.2) sha256=6e759246556145642ef832d670fc06f9bd8539159a0e600847a00291dd7aae0c + htmlentities (4.3.4) sha256=125a73c6c9f2d1b62100b7c3c401e3624441b663762afa7fe428476435a673da + httparty (0.23.1) sha256=3ac1dd62f2010f6ece551716f5ceec2b2012011d89f1751917ab7f724e966b55 + i18n (1.14.7) sha256=ceba573f8138ff2c0915427f1fc5bdf4aa3ab8ae88c8ce255eb3ecf0a11a5d0f + image_processing (1.14.0) sha256=754cc169c9c262980889bec6bfd325ed1dafad34f85242b5a07b60af004742fb + inky-rb (1.4.2.1) sha256=d993c115cf0ed70df63e47e7c401fe8632b38afe3300f32fafb5769252ee1e09 + jbuilder (2.13.0) sha256=7200a38a1c0081aa81b7a9757e7a299db75bc58cf1fd45ca7919a91627d227d6 + jmespath (1.6.2) sha256=238d774a58723d6c090494c8879b5e9918c19485f7e840f2c1c7532cf84ebcb1 + jquery-rails (4.6.0) sha256=3c4e6bf47274340b44d836b8aa1b5472c6d451e2739af5ec094421f39025a7e2 + jquery-ui-rails (6.0.1) sha256=22a01737808f65a621229a7e58785ebcb88a95ad2a08560f3503ddcfd7e27cd5 + json (2.13.2) sha256=02e1f118d434c6b230a64ffa5c8dee07e3ec96244335c392eaed39e1199dbb68 + jwt (1.2.1) sha256=b0cfc9e85b2f851aa49931a4c07156127888fbf003e7ef971d4d6c2e91f98661 + kaminari (1.2.2) sha256=c4076ff9adccc6109408333f87b5c4abbda5e39dc464bd4c66d06d9f73442a3e + kaminari-actionview (1.2.2) sha256=1330f6fc8b59a4a4ef6a549ff8a224797289ebf7a3a503e8c1652535287cc909 + kaminari-activerecord (1.2.2) sha256=0dd3a67bab356a356f36b3b7236bcb81cef313095365befe8e98057dd2472430 + kaminari-core (1.2.2) sha256=3bd26fec7370645af40ca73b9426a448d09b8a8ba7afa9ba3c3e0d39cdbb83ff + listen (3.9.0) sha256=db9e4424e0e5834480385197c139cb6b0ae0ef28cc13310cfd1ca78377d59c67 + logger (1.7.0) sha256=196edec7cc44b66cfb40f9755ce11b392f21f7967696af15d274dde7edff0203 + loofah (2.24.1) sha256=655a30842b70ec476410b347ab1cd2a5b92da46a19044357bbd9f401b009a337 + mail (2.8.1) sha256=ec3b9fadcf2b3755c78785cb17bc9a0ca9ee9857108a64b6f5cfc9c0b5bfc9ad + mandrill_mailer (1.8.0) sha256=a496d80df008b2f20e5252c9d043ec99143e91e5201be7cb0c02e23790059341 + mandrillus (2.0.0) sha256=29d164ce5a6629b011cb9c6e05b342a7ba70b7461de68ff8069de2a42c20f61c + marcel (0.3.3) sha256=5d4febf27075117b97ef25bd59eb539357e1133dc13dc5bfe174a3e75995abdb + matrix (0.4.3) sha256=a0d5ab7ddcc1973ff690ab361b67f359acbb16958d1dc072b8b956a286564c5b + method_source (1.1.0) sha256=181301c9c45b731b4769bc81e8860e72f9161ad7d66dd99103c9ab84f560f5c5 + mime-types (3.7.0) sha256=dcebf61c246f08e15a4de34e386ebe8233791e868564a470c3fe77c00eed5e56 + mime-types-data (3.2025.0826) sha256=66baca9e2f464d084c8ff668f2bbe8afe30bebf12b52bce1f4b87b78eaaead35 + mimemagic (0.3.10) sha256=814063559bfe9523cdf287722a0e84fd673aec03b79a9dac9e170b11924d1533 + mini_magick (5.3.1) sha256=29395dfd76badcabb6403ee5aff6f681e867074f8f28ce08d78661e9e4a351c4 + mini_mime (1.1.5) sha256=8681b7e2e4215f2a159f9400b5816d85e9d8c6c6b491e96a12797e798f8bccef + mini_portile2 (2.8.9) sha256=0cd7c7f824e010c072e33f68bc02d85a00aeb6fce05bb4819c03dfd3c140c289 + minitest (5.25.5) sha256=391b6c6cb43a4802bfb7c93af1ebe2ac66a210293f4a3fb7db36f2fc7dc2c756 + multi_xml (0.7.2) sha256=307a96dc48613badb7b2fc174fd4e62d7c7b619bc36ea33bfd0c49f64f5787ce + mysql2 (0.5.6) sha256=70f447d45d6b3cc16b00f7dd30366f708a81b4093a35d026ff7135d778d8da33 + neat (1.7.1) sha256=1998e500765882d1bf117c7ecdba699e7b7f25ccf249d83d3762a21fedd8eed3 + nested_form (0.3.2) sha256=b1c468d7eac781235861c2f74fc9f675df0c4d915d5724aaf7fd29f7891c0538 + net-imap (0.5.10) sha256=f84d206a296bff48a3a10507567fc38b050d2a40c92ea0d448164f64e60d6205 + net-pop (0.1.2) sha256=848b4e982013c15b2f0382792268763b748cce91c9e91e36b0f27ed26420dff3 + net-protocol (0.2.2) sha256=aa73e0cba6a125369de9837b8d8ef82a61849360eba0521900e2c3713aa162a8 + net-smtp (0.5.1) sha256=ed96a0af63c524fceb4b29b0d352195c30d82dd916a42f03c62a3a70e5b70736 + nio4r (2.7.4) sha256=d95dee68e0bb251b8ff90ac3423a511e3b784124e5db7ff5f4813a220ae73ca9 + nokogiri (1.18.9) sha256=ac5a7d93fd0e3cef388800b037407890882413feccca79eb0272a2715a82fa33 + nokogiri (1.18.9-aarch64-linux-gnu) sha256=5bcfdf7aa8d1056a7ad5e52e1adffc64ef53d12d0724fbc6f458a3af1a4b9e32 + nokogiri (1.18.9-aarch64-linux-musl) sha256=55e9e6ca46c4ad1715e313f407d8481d15be1e3b65d9f8e52ba1c124d01676a7 + nokogiri (1.18.9-arm-linux-gnu) sha256=fe611ae65880e445a9c0f650d52327db239f3488626df4173c05beafd161d46e + nokogiri (1.18.9-arm-linux-musl) sha256=935605e14c0ba17da18d203922440bf6c0676c602659278d855d4622d756a324 + nokogiri (1.18.9-arm64-darwin) sha256=eea3f1f06463ff6309d3ff5b88033c4948d0da1ab3cc0a3a24f63c4d4a763979 + nokogiri (1.18.9-x86_64-darwin) sha256=e0d2deb03d3d7af8016e8c9df5ff4a7d692159cefb135cbb6a4109f265652348 + nokogiri (1.18.9-x86_64-linux-gnu) sha256=b52f5defedc53d14f71eeaaf990da66b077e1918a2e13088b6a96d0230f44360 + nokogiri (1.18.9-x86_64-linux-musl) sha256=e69359d6240c17e64cc9f43970d54f13bfc7b8cc516b819228f687e953425e69 + orm_adapter (0.5.0) sha256=aa5d0be5d540cbb46d3a93e88061f4ece6a25f6e97d6a47122beb84fe595e9b9 + paperclip (6.0.0) sha256=e73d2e18a4b892ff1df7301fe73eebc5c3945eb7fd89e41df0190889d5e1b412 + polyglot (0.3.5) sha256=59d66ef5e3c166431c39cb8b7c1d02af419051352f27912f6a43981b3def16af + premailer (1.27.0) sha256=0fe2348cd82738855c482b31c915a06ecb1d3ad004578c19042905196ddbd1e7 + premailer-rails (1.12.0) sha256=c13815d161b9bc7f7d3d81396b0bb0a61a90fa9bd89931548bf4e537c7710400 + pry (0.15.2) sha256=12d54b8640d3fa29c9211dd4ffb08f3fd8bf7a4fd9b5a73ce5b59c8709385b6b + pry-rails (0.3.11) sha256=a69e28e24a34d75d1f60bcf241192a54253f8f7ef8a62cba1e75750a9653593d + public_suffix (6.0.2) sha256=bfa7cd5108066f8c9602e0d6d4114999a5df5839a63149d3e8b0f9c1d3558394 + puma (5.6.9) sha256=20701b2451080ec8d6d78d2e4b5a2913e6d0b865a51d704a4d60db8fd39a4228 + racc (1.8.1) sha256=4a7f6929691dbec8b5209a0b373bc2614882b55fc5d2e447a21aaa691303d62f + rack (2.2.17) sha256=5fe02a1ca80d6fb2271dba00985ee2962d6f5620b6f46dfed89f5301ac4699dd + rack-cors (2.0.2) sha256=415d4e1599891760c5dc9ef0349c7fecdf94f7c6a03e75b2e7c2b54b82adda1b + rack-pjax (1.1.0) sha256=ef361989c56f2a6c6ed987684abd56380dc4c725a4a7ee80aaf0636e992b1bd6 + rack-test (2.2.0) sha256=005a36692c306ac0b4a9350355ee080fd09ddef1148a5f8b2ac636c720f5c463 + rails (6.1.0) sha256=e66d0b9a1dd8640c5a98da5b4ebd7ef5d1e01be67477f910e0cf514fa89c221b + rails-dom-testing (2.3.0) sha256=8acc7953a7b911ca44588bf08737bc16719f431a1cc3091a292bca7317925c1d + rails-html-sanitizer (1.6.2) sha256=35fce2ca8242da8775c83b6ba9c1bcaad6751d9eb73c1abaa8403475ab89a560 + rails_admin (2.2.1) sha256=873e0b20c19f7269d73ad5ba47816f76e7dd93c752376f54e6c044bad39fac37 + railties (6.1.0) sha256=8af215f83ff513d10e71f8b3e2d77649cdfbc7c67c98d20b8c26c05c3d16399d + rake (13.3.0) sha256=96f5092d786ff412c62fde76f793cc0541bd84d2eb579caa529aa8a059934493 + rb-fsevent (0.11.2) sha256=43900b972e7301d6570f64b850a5aa67833ee7d87b458ee92805d56b7318aefe + rb-inotify (0.11.1) sha256=a0a700441239b0ff18eb65e3866236cd78613d6b9f78fea1f9ac47a85e47be6e + regexp_parser (2.11.2) sha256=5e5e9c1485ffd8de53ab1d2807affd81f617f72967dfc64fc75a69e2cbf0ff98 + remotipart (1.4.4) sha256=11094fbd326a33705539b8664e310ed417b6acc0c6e0209d840ea103963af36c + request_store (1.7.0) sha256=e1b75d5346a315f452242a68c937ef8e48b215b9453a77a6c0acdca2934c88cb + responders (3.1.1) sha256=92f2a87e09028347368639cfb468f5fefa745cb0dc2377ef060db1cdd79a341a + rexml (3.4.2) sha256=1384268554a37af5da5279431ca3f2f37d46f09ffdd6c95e17cc84c83ea7c417 + rouge (4.6.0) sha256=10198622df0ef919796da5686a9cc116a49280805e1ed4b851c97ef677eddd7a + rspec-core (3.13.5) sha256=ab3f682897c6131c67f9a17cfee5022a597f283aebe654d329a565f9937a4fa3 + rspec-expectations (3.13.5) sha256=33a4d3a1d95060aea4c94e9f237030a8f9eae5615e9bd85718fe3a09e4b58836 + rspec-mocks (3.13.5) sha256=e4338a6f285ada9fe56f5893f5457783af8194f5d08884d17a87321d5195ea81 + rspec-rails (6.1.5) sha256=d11afce893ceb6e2c3c11db280f83dee6d0120d150228cef6b989d37c7394c4b + rspec-support (3.13.5) sha256=add745af535dd14b18f1209ab41ef987fdfad12786176b6a3b3619b9a7279fbf + ruby-vips (2.2.5) sha256=f3c547a172c36ba26b8614c809f5823bc6199623ec6204ec7c3bce29037f7758 + ruby2_keywords (0.0.5) sha256=ffd13740c573b7301cf7a2e61fc857b2a8e3d3aff32545d6f8300d8bae10e3ef + rubyzip (3.0.2) sha256=30f75c0b631e23c0891453acbcc019bc1496cd44f4a3ade4ff76bc09a595cfa6 + sass (3.7.4) sha256=808b0d39053aa69068df939e24671fe84fd5a9d3314486e1a1457d0934a4255d + sass-listen (4.0.0) sha256=ae9dcb76dd3e234329e5ba6e213f48e532c5a3e7b0b4d8a87f13aaca0cc18377 + sassc (2.4.0) sha256=4c60a2b0a3b36685c83b80d5789401c2f678c1652e3288315a1551d811d9f83e + sassc-rails (2.1.2) sha256=5f4fdf3881fc9bdc8e856ffbd9850d70a2878866feae8114aa45996179952db5 + search_cop (1.0.9) sha256=ff9061c26cfc2228dcf9ec92a0751e677e120c1e54197a5edb54caaeb3fdb291 + selenium-webdriver (4.35.0) sha256=6fc920cec4b9e6263afeb4941289d8deb0853acbc49e0d6f7de91c86986d359b + shoulda-matchers (6.5.0) sha256=ef6b572b2bed1ac4aba6ab2c5ff345a24b6d055a93a3d1c3bfc86d9d499e3f44 + sprockets (4.2.2) sha256=761e5a49f1c288704763f73139763564c845a8f856d52fba013458f8af1b59b1 + sprockets-rails (3.2.2) sha256=62862bce136e31d7497eededde5f7730d4096bc8ef33ef7037c41423ccf89557 + temple (0.10.4) sha256=b7a1e94b6f09038ab0b6e4fe0126996055da2c38bec53a8a336f075748fff72c + terrapin (0.6.0) sha256=c9fea9f13a40dc7c75212d1b9d4ee7e4542ffe7811bf700a38ba30900b70285c + thor (1.4.0) sha256=8763e822ccb0f1d7bee88cde131b19a65606657b847cc7b7b4b82e772bcd8a3d + tilt (2.4.0) sha256=df74f29a451daed26591a85e8e0cebb198892cb75b6573394303acda273fba4d + timeout (0.4.3) sha256=9509f079b2b55fe4236d79633bd75e34c1c1e7e3fb4b56cb5fda61f80a0fe30e + treetop (1.6.14) sha256=ba31d1911ce53dbc68208b9e6b421d48d16bfc99551e5efb5bc71bbc8fc7aed4 + tzinfo (2.0.6) sha256=8daf828cc77bcf7d63b0e3bdb6caa47e2272dcfaf4fbfe46f8c3a9df087a829b + uglifier (4.2.1) sha256=75d42b81b10bfd21e7a427fabb1d49ff5ea7bda3c4a5039ddb2a78d194c6f5aa + warden (1.2.9) sha256=46684f885d35a69dbb883deabf85a222c8e427a957804719e143005df7a1efd0 + websocket (1.2.11) sha256=b7e7a74e2410b5e85c25858b26b3322f29161e300935f70a0e0d3c35e0462737 + websocket-driver (0.8.0) sha256=ed0dba4b943c22f17f9a734817e808bc84cdce6a7e22045f5315aa57676d4962 + websocket-extensions (0.1.5) sha256=1c6ba63092cda343eb53fc657110c71c754c56484aad42578495227d717a8241 + wicked (2.0.0) sha256=7caf256cb0b8526d9f3af589df78299994c3cfd9aa01c1c9f582bdd9c617931d + will_paginate (3.1.8) sha256=681ed5670a39ee8a5e0752f217416dbcd437633910b0696399755adad4e89d0e + xpath (3.2.0) sha256=6dfda79d91bb3b949b947ecc5919f042ef2f399b904013eb3ef6d20dd3a4082e + zeitwerk (2.7.3) sha256=b2e86b4a9b57d26ba68a15230dcc7fe6f040f06831ce64417b0621ad96ba3e85 + RUBY VERSION - ruby 2.7.8p225 + ruby 3.3.8p144 BUNDLED WITH - 2.4.22 + 2.7.1 diff --git a/config/database.yml b/config/database.yml index 78c287d60..26b0116c0 100644 --- a/config/database.yml +++ b/config/database.yml @@ -1,31 +1,18 @@ -# SQLite version 3.x -# gem install sqlite3 -# -# Ensure the SQLite 3 gem is defined in your Gemfile -# gem 'sqlite3' -# -default: &default +development: host: 127.0.0.1 username: root adapter: mysql2 encoding: utf8 pool: 5 - -development: - <<: *default database: awbw_development # 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 + host: 127.0.0.1 + username: root + adapter: mysql2 + encoding: utf8 + pool: 5 database: awbw_test - -production: - <<: *default - database: awbw_production - -staging: - <<: *default - database: awbw_staging From 9154bb7fda0f4539ad2e220af2f84b7662bccda5 Mon Sep 17 00:00:00 2001 From: John Paul Ashenfelter Date: Fri, 29 Aug 2025 16:35:10 -0400 Subject: [PATCH 2/5] Tests pass --- Gemfile | 2 +- Gemfile.lock | 16 ++++++++-------- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/Gemfile b/Gemfile index f307202dd..2bc839813 100644 --- a/Gemfile +++ b/Gemfile @@ -22,7 +22,7 @@ gem 'devise', '~> 4.7.3' gem 'neat', '1.7.1' gem 'bourbon', '~> 4.2.2' gem 'draper' -gem 'paperclip', '~> 6.0.0' +gem "kt-paperclip", "~> 6.4", ">= 6.4.1" gem 'aws-sdk-s3' gem 'rails_admin','~> 2.2.1' # gem 'rails_admin', git: 'https://github.com/enmand/rails_admin.git' diff --git a/Gemfile.lock b/Gemfile.lock index 35575361b..a8270b39b 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -219,6 +219,12 @@ GEM activerecord kaminari-core (= 1.2.2) kaminari-core (1.2.2) + kt-paperclip (6.4.2) + activemodel (>= 4.2.0) + activesupport (>= 4.2.0) + mime-types + mimemagic (~> 0.3.0) + terrapin (~> 0.6.0) listen (3.9.0) rb-fsevent (~> 0.10, >= 0.10.3) rb-inotify (~> 0.9, >= 0.9.10) @@ -292,12 +298,6 @@ GEM nokogiri (1.18.9-x86_64-linux-musl) racc (~> 1.4) orm_adapter (0.5.0) - paperclip (6.0.0) - activemodel (>= 4.2.0) - activesupport (>= 4.2.0) - mime-types - mimemagic (~> 0.3.0) - terrapin (~> 0.6.0) polyglot (0.3.5) premailer (1.27.0) addressable @@ -495,11 +495,11 @@ DEPENDENCIES jquery-rails json (>= 2.6, < 3) jwt (~> 1.2.1) + kt-paperclip (~> 6.4, >= 6.4.1) listen mandrill_mailer mysql2 (~> 0.5.0) neat (= 1.7.1) - paperclip (~> 6.0.0) premailer-rails pry-rails puma (~> 5.6) @@ -602,6 +602,7 @@ CHECKSUMS kaminari-actionview (1.2.2) sha256=1330f6fc8b59a4a4ef6a549ff8a224797289ebf7a3a503e8c1652535287cc909 kaminari-activerecord (1.2.2) sha256=0dd3a67bab356a356f36b3b7236bcb81cef313095365befe8e98057dd2472430 kaminari-core (1.2.2) sha256=3bd26fec7370645af40ca73b9426a448d09b8a8ba7afa9ba3c3e0d39cdbb83ff + kt-paperclip (6.4.2) sha256=259179920538adb88cbf6783b85a343a8896fbdc76863df17cd2649a146189ed listen (3.9.0) sha256=db9e4424e0e5834480385197c139cb6b0ae0ef28cc13310cfd1ca78377d59c67 logger (1.7.0) sha256=196edec7cc44b66cfb40f9755ce11b392f21f7967696af15d274dde7edff0203 loofah (2.24.1) sha256=655a30842b70ec476410b347ab1cd2a5b92da46a19044357bbd9f401b009a337 @@ -637,7 +638,6 @@ CHECKSUMS nokogiri (1.18.9-x86_64-linux-gnu) sha256=b52f5defedc53d14f71eeaaf990da66b077e1918a2e13088b6a96d0230f44360 nokogiri (1.18.9-x86_64-linux-musl) sha256=e69359d6240c17e64cc9f43970d54f13bfc7b8cc516b819228f687e953425e69 orm_adapter (0.5.0) sha256=aa5d0be5d540cbb46d3a93e88061f4ece6a25f6e97d6a47122beb84fe595e9b9 - paperclip (6.0.0) sha256=e73d2e18a4b892ff1df7301fe73eebc5c3945eb7fd89e41df0190889d5e1b412 polyglot (0.3.5) sha256=59d66ef5e3c166431c39cb8b7c1d02af419051352f27912f6a43981b3def16af premailer (1.27.0) sha256=0fe2348cd82738855c482b31c915a06ecb1d3ad004578c19042905196ddbd1e7 premailer-rails (1.12.0) sha256=c13815d161b9bc7f7d3d81396b0bb0a61a90fa9bd89931548bf4e537c7710400 From af5f58ef671f7c83e8703ebe7b2f51a22ecf84ab Mon Sep 17 00:00:00 2001 From: John Paul Ashenfelter Date: Fri, 29 Aug 2025 16:56:05 -0400 Subject: [PATCH 3/5] Fix inheritance for API --- app/controllers/api/v1/api_controller.rb | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/app/controllers/api/v1/api_controller.rb b/app/controllers/api/v1/api_controller.rb index 0f4d6da5b..c756d6da0 100644 --- a/app/controllers/api/v1/api_controller.rb +++ b/app/controllers/api/v1/api_controller.rb @@ -1,4 +1,5 @@ -class Api::V1::ApiController < ActionController::Base +class Api::V1::ApiController < ActionController::API + protect_from_forgery with: :null_session, :if => Proc.new { |c| c.request.format.json? } rescue_from AuthenticationFailed, with: :authentication_failed From 058caeafe6a9175467b4efb179cb6bce419db912 Mon Sep 17 00:00:00 2001 From: John Paul Ashenfelter Date: Fri, 29 Aug 2025 16:57:51 -0400 Subject: [PATCH 4/5] Upgrade to latest Rails 6.1.x --- Gemfile | 2 +- Gemfile.lock | 145 +++++++++++++++++++++++++-------------------------- 2 files changed, 73 insertions(+), 74 deletions(-) diff --git a/Gemfile b/Gemfile index 2bc839813..c9f57b3e8 100644 --- a/Gemfile +++ b/Gemfile @@ -2,7 +2,7 @@ source 'https://rubygems.org' ruby "3.3.8" -gem 'rails', '~> 6.1.0.0' +gem "rails", "~> 6.1.7" gem 'sprockets-rails', '~> 3.2.2' gem 'mysql2', '~> 0.5.0' diff --git a/Gemfile.lock b/Gemfile.lock index a8270b39b..fd4ce3bf0 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -1,64 +1,64 @@ GEM remote: https://rubygems.org/ specs: - actioncable (6.1.0) - actionpack (= 6.1.0) - activesupport (= 6.1.0) + actioncable (6.1.7.10) + actionpack (= 6.1.7.10) + activesupport (= 6.1.7.10) nio4r (~> 2.0) websocket-driver (>= 0.6.1) - actionmailbox (6.1.0) - actionpack (= 6.1.0) - activejob (= 6.1.0) - activerecord (= 6.1.0) - activestorage (= 6.1.0) - activesupport (= 6.1.0) + actionmailbox (6.1.7.10) + actionpack (= 6.1.7.10) + activejob (= 6.1.7.10) + activerecord (= 6.1.7.10) + activestorage (= 6.1.7.10) + activesupport (= 6.1.7.10) mail (>= 2.7.1) - actionmailer (6.1.0) - actionpack (= 6.1.0) - actionview (= 6.1.0) - activejob (= 6.1.0) - activesupport (= 6.1.0) + actionmailer (6.1.7.10) + actionpack (= 6.1.7.10) + actionview (= 6.1.7.10) + activejob (= 6.1.7.10) + activesupport (= 6.1.7.10) mail (~> 2.5, >= 2.5.4) rails-dom-testing (~> 2.0) - actionpack (6.1.0) - actionview (= 6.1.0) - activesupport (= 6.1.0) + actionpack (6.1.7.10) + actionview (= 6.1.7.10) + activesupport (= 6.1.7.10) rack (~> 2.0, >= 2.0.9) rack-test (>= 0.6.3) rails-dom-testing (~> 2.0) rails-html-sanitizer (~> 1.0, >= 1.2.0) - actiontext (6.1.0) - actionpack (= 6.1.0) - activerecord (= 6.1.0) - activestorage (= 6.1.0) - activesupport (= 6.1.0) + actiontext (6.1.7.10) + actionpack (= 6.1.7.10) + activerecord (= 6.1.7.10) + activestorage (= 6.1.7.10) + activesupport (= 6.1.7.10) nokogiri (>= 1.8.5) - actionview (6.1.0) - activesupport (= 6.1.0) + actionview (6.1.7.10) + activesupport (= 6.1.7.10) builder (~> 3.1) erubi (~> 1.4) rails-dom-testing (~> 2.0) rails-html-sanitizer (~> 1.1, >= 1.2.0) - activejob (6.1.0) - activesupport (= 6.1.0) + activejob (6.1.7.10) + activesupport (= 6.1.7.10) globalid (>= 0.3.6) - activemodel (6.1.0) - activesupport (= 6.1.0) + activemodel (6.1.7.10) + activesupport (= 6.1.7.10) activemodel-serializers-xml (1.0.3) activemodel (>= 5.0.0.a) activesupport (>= 5.0.0.a) builder (~> 3.1) - activerecord (6.1.0) - activemodel (= 6.1.0) - activesupport (= 6.1.0) - activestorage (6.1.0) - actionpack (= 6.1.0) - activejob (= 6.1.0) - activerecord (= 6.1.0) - activesupport (= 6.1.0) - marcel (~> 0.3.1) - mimemagic (~> 0.3.2) - activesupport (6.1.0) + activerecord (6.1.7.10) + activemodel (= 6.1.7.10) + activesupport (= 6.1.7.10) + activestorage (6.1.7.10) + actionpack (= 6.1.7.10) + activejob (= 6.1.7.10) + activerecord (= 6.1.7.10) + activesupport (= 6.1.7.10) + marcel (~> 1.0) + mini_mime (>= 1.1.0) + activesupport (6.1.7.10) concurrent-ruby (~> 1.0, >= 1.0.2) i18n (>= 1.6, < 2) minitest (>= 5.1) @@ -245,8 +245,7 @@ GEM mandrillus (2.0.0) excon (>= 0.16.0, < 1.0) json (>= 1.7.7, < 3.0) - marcel (0.3.3) - mimemagic (~> 0.3.2) + marcel (1.0.4) matrix (0.4.3) method_source (1.1.0) mime-types (3.7.0) @@ -324,20 +323,20 @@ GEM rack (>= 1.1) rack-test (2.2.0) rack (>= 1.3) - rails (6.1.0) - actioncable (= 6.1.0) - actionmailbox (= 6.1.0) - actionmailer (= 6.1.0) - actionpack (= 6.1.0) - actiontext (= 6.1.0) - actionview (= 6.1.0) - activejob (= 6.1.0) - activemodel (= 6.1.0) - activerecord (= 6.1.0) - activestorage (= 6.1.0) - activesupport (= 6.1.0) + rails (6.1.7.10) + actioncable (= 6.1.7.10) + actionmailbox (= 6.1.7.10) + actionmailer (= 6.1.7.10) + actionpack (= 6.1.7.10) + actiontext (= 6.1.7.10) + actionview (= 6.1.7.10) + activejob (= 6.1.7.10) + activemodel (= 6.1.7.10) + activerecord (= 6.1.7.10) + activestorage (= 6.1.7.10) + activesupport (= 6.1.7.10) bundler (>= 1.15.0) - railties (= 6.1.0) + railties (= 6.1.7.10) sprockets-rails (>= 2.0.0) rails-dom-testing (2.3.0) activesupport (>= 5.0.0) @@ -358,11 +357,11 @@ GEM rails (>= 5.0, < 7) remotipart (~> 1.3) sassc-rails (>= 1.3, < 3) - railties (6.1.0) - actionpack (= 6.1.0) - activesupport (= 6.1.0) + railties (6.1.7.10) + actionpack (= 6.1.7.10) + activesupport (= 6.1.7.10) method_source - rake (>= 0.8.7) + rake (>= 12.2) thor (~> 1.0) rake (13.3.0) rb-fsevent (0.11.2) @@ -504,7 +503,7 @@ DEPENDENCIES pry-rails puma (~> 5.6) rack-cors - rails (~> 6.1.0.0) + rails (~> 6.1.7) rails_admin (~> 2.2.1) rspec-rails sassc-rails (>= 2.1.2) @@ -518,18 +517,18 @@ DEPENDENCIES will_paginate (~> 3.1.7) CHECKSUMS - actioncable (6.1.0) sha256=89b7af1570e292e91b168e08da960178f6a3f1e8583ac09acc3c6edc66d58e32 - actionmailbox (6.1.0) sha256=8e83134721e9659333d7bbf73baf6e2df772660d68b0f7d5504f7a41838a0c93 - actionmailer (6.1.0) sha256=bc62372b5968363ecf5bcd5519fe047bbcd51b07e4568cb9a174bd12afe0969d - actionpack (6.1.0) sha256=abca49a4b988adeb4eadd241f2d479212d14c7fb7be36fd0f8660aeafb8f75d5 - actiontext (6.1.0) sha256=8de7c11dc6568db467f3f22725233915b7ac72be51ad77f4e5601ecc3ed8afa5 - actionview (6.1.0) sha256=f3ab9bd93e13ace74cb131555782a12d09233cafac108c5e1dcb244e4ebac8b4 - activejob (6.1.0) sha256=802b11140bb8285036bf335c1cee013ae5c0c5619e171e1b814ff6e265f1715e - activemodel (6.1.0) sha256=28b5bcd8b52a40988c15902a2e3b2e9f242ebdc7e71926ecc88ec4b972e72f05 + actioncable (6.1.7.10) sha256=d00c50a2a778b8fee40c6e0a2b1871f360d098f3a0ed9fc43d0d14f8fcb05928 + actionmailbox (6.1.7.10) sha256=e95397559b95314e30334f10824be0de30c467e3020c76b3ad1c2a70089bc6a5 + actionmailer (6.1.7.10) sha256=2dd345e41786856e6efea24cc77589d054a9e83e2a73beaceff87c6ea8c5dfdb + actionpack (6.1.7.10) sha256=7dd526e14b21db61c8b46d45261cf859cb86d430dd4ea4feff1c873099f5d56e + actiontext (6.1.7.10) sha256=c0dedd58640533bba02a4f75988c6a043a4606be1aab99bc2b887e53976e4be4 + actionview (6.1.7.10) sha256=23b7a38c696eecea244d2fe1c74317e703ab24f32bf3b0ba271d3862ab07bcc2 + activejob (6.1.7.10) sha256=f1100c58aed04566cdff937cf36d7cacd414534fe4947e8399b072d90aae16cc + activemodel (6.1.7.10) sha256=562d9b1d0597f450437ec7cd6540b13f3e074cce5c7b237ac76e7435a15d4b8c activemodel-serializers-xml (1.0.3) sha256=fa1b16305e7254cc58a59c68833e3c0a593a59c8ab95d3be5aaea7cd9416c397 - activerecord (6.1.0) sha256=a8fe5e854039c950c896c7ede5bb6ed6a79ad1148a25f792457b7dafdce5e8a9 - activestorage (6.1.0) sha256=32901903bdd62d2eee1f9878b5ff601589ae7d9b67754d77f7d28194c0a5fa4f - activesupport (6.1.0) sha256=9b90aa8ab328692a7b56a94d916811a0bf6a6810f2e11ce67f6b05c89c60d4dd + activerecord (6.1.7.10) sha256=db1719ef443a5437badcaa1d0fb5da7db985988fb69cc37085ca6bcc569fb31a + activestorage (6.1.7.10) sha256=5b3ae2ffd02565413b1a36705ddc56a9855307076497f0dfb1dbe679a635d4dc + activesupport (6.1.7.10) sha256=3f8e1f787a7bfbf765959ba509ef70af8293b35cb864078919365a12bf33d470 addressable (2.8.7) sha256=462986537cf3735ab5f3c0f557f14155d778f4b43ea4f485a9deb9c8f7c58232 apipie-rails (0.5.20) sha256=3d5fba489ae780d61d75423adcc6884865883e8ecd16fe60be7a46f7c5f62197 autoprefixer-rails (10.4.21.0) sha256=71b48caf850fc25275abd96f0b1fdd51c82e1c9b99cd30085cacb05da9c70235 @@ -609,7 +608,7 @@ CHECKSUMS mail (2.8.1) sha256=ec3b9fadcf2b3755c78785cb17bc9a0ca9ee9857108a64b6f5cfc9c0b5bfc9ad mandrill_mailer (1.8.0) sha256=a496d80df008b2f20e5252c9d043ec99143e91e5201be7cb0c02e23790059341 mandrillus (2.0.0) sha256=29d164ce5a6629b011cb9c6e05b342a7ba70b7461de68ff8069de2a42c20f61c - marcel (0.3.3) sha256=5d4febf27075117b97ef25bd59eb539357e1133dc13dc5bfe174a3e75995abdb + marcel (1.0.4) sha256=0d5649feb64b8f19f3d3468b96c680bae9746335d02194270287868a661516a4 matrix (0.4.3) sha256=a0d5ab7ddcc1973ff690ab361b67f359acbb16958d1dc072b8b956a286564c5b method_source (1.1.0) sha256=181301c9c45b731b4769bc81e8860e72f9161ad7d66dd99103c9ab84f560f5c5 mime-types (3.7.0) sha256=dcebf61c246f08e15a4de34e386ebe8233791e868564a470c3fe77c00eed5e56 @@ -650,11 +649,11 @@ CHECKSUMS rack-cors (2.0.2) sha256=415d4e1599891760c5dc9ef0349c7fecdf94f7c6a03e75b2e7c2b54b82adda1b rack-pjax (1.1.0) sha256=ef361989c56f2a6c6ed987684abd56380dc4c725a4a7ee80aaf0636e992b1bd6 rack-test (2.2.0) sha256=005a36692c306ac0b4a9350355ee080fd09ddef1148a5f8b2ac636c720f5c463 - rails (6.1.0) sha256=e66d0b9a1dd8640c5a98da5b4ebd7ef5d1e01be67477f910e0cf514fa89c221b + rails (6.1.7.10) sha256=809692b3ec91fe1407b160e65203ef41c0b19b27bc5b836a515d6f4b969188d1 rails-dom-testing (2.3.0) sha256=8acc7953a7b911ca44588bf08737bc16719f431a1cc3091a292bca7317925c1d rails-html-sanitizer (1.6.2) sha256=35fce2ca8242da8775c83b6ba9c1bcaad6751d9eb73c1abaa8403475ab89a560 rails_admin (2.2.1) sha256=873e0b20c19f7269d73ad5ba47816f76e7dd93c752376f54e6c044bad39fac37 - railties (6.1.0) sha256=8af215f83ff513d10e71f8b3e2d77649cdfbc7c67c98d20b8c26c05c3d16399d + railties (6.1.7.10) sha256=de6e7a18a16a172c741020dac2e06c068a6a40bd493a4ec5244303171d6e5f0b rake (13.3.0) sha256=96f5092d786ff412c62fde76f793cc0541bd84d2eb579caa529aa8a059934493 rb-fsevent (0.11.2) sha256=43900b972e7301d6570f64b850a5aa67833ee7d87b458ee92805d56b7318aefe rb-inotify (0.11.1) sha256=a0a700441239b0ff18eb65e3866236cd78613d6b9f78fea1f9ac47a85e47be6e From 22c7054b0dccbbcc69f7a4ea1e911ff3f8a24147 Mon Sep 17 00:00:00 2001 From: John Paul Ashenfelter Date: Fri, 29 Aug 2025 16:59:14 -0400 Subject: [PATCH 5/5] Unlock and upgrade factory_bot gems --- Gemfile | 2 +- Gemfile.lock | 16 ++++++++-------- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/Gemfile b/Gemfile index c9f57b3e8..6725f065e 100644 --- a/Gemfile +++ b/Gemfile @@ -66,7 +66,7 @@ group :development, :test do gem 'capybara', '~> 3.36' gem 'dotenv-rails' gem 'faker' - gem 'factory_bot_rails', '~> 6.0.0' + gem 'factory_bot_rails' gem 'listen' gem 'pry-rails' gem 'rspec-rails' diff --git a/Gemfile.lock b/Gemfile.lock index fd4ce3bf0..5d256f7f7 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -157,11 +157,11 @@ GEM erubi (1.13.1) excon (0.112.0) execjs (2.10.0) - factory_bot (6.0.2) - activesupport (>= 5.0.0) - factory_bot_rails (6.0.0) - factory_bot (~> 6.0.0) - railties (>= 5.0.0) + factory_bot (6.5.5) + activesupport (>= 6.1.0) + factory_bot_rails (6.5.0) + factory_bot (~> 6.5) + railties (>= 6.1.0) faker (3.5.2) i18n (>= 1.8.11, < 2) feature_flipper (2.0.0) @@ -482,7 +482,7 @@ DEPENDENCIES devise (~> 4.7.3) dotenv-rails draper - factory_bot_rails (~> 6.0.0) + factory_bot_rails faker feature_flipper font-awesome-rails @@ -569,8 +569,8 @@ CHECKSUMS erubi (1.13.1) sha256=a082103b0885dbc5ecf1172fede897f9ebdb745a4b97a5e8dc63953db1ee4ad9 excon (0.112.0) sha256=daf9ac3a4c2fc9aa48383a33da77ecb44fa395111e973084d5c52f6f214ae0f0 execjs (2.10.0) sha256=6bcb8be8f0052ff9d370b65d1c080f2406656e150452a0abdb185a133048450d - factory_bot (6.0.2) sha256=ec803c1d5be6ab95fb7709ab2bff38cf9b264c62e46deffe76cc552e60226bb4 - factory_bot_rails (6.0.0) sha256=b6c7ae09bd3860597065cc9ceb22385e88ca4668ad86ec7532be71323ea4a3ee + factory_bot (6.5.5) sha256=ce59295daee1b4704dab8a2fee6816f513d467c6aa3bc587860767d74a66efbe + factory_bot_rails (6.5.0) sha256=4a7b61635424a57cc60412a18b72b9dcfb02fabfce2c930447a01dce8b37c0a2 faker (3.5.2) sha256=f9a80291b2e3f259801d1dd552f0732fe04dce5d1f74e798365bc0413789c473 feature_flipper (2.0.0) sha256=abc5d46e5a103da840dfb6898a7fc54d114ab08e2f36d7e1b0701bf9f3dfe545 ffi (1.17.2) sha256=297235842e5947cc3036ebe64077584bff583cd7a4e94e9a02fdec399ef46da6