From 954c101afa8421abfdb8a3795baaddedf99751c5 Mon Sep 17 00:00:00 2001 From: Ben Purinton Date: Mon, 23 Jun 2025 14:56:46 +0200 Subject: [PATCH 01/12] Fix SSO issue --- app/models/user.rb | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/app/models/user.rb b/app/models/user.rb index 5670ae8..f92953b 100644 --- a/app/models/user.rb +++ b/app/models/user.rb @@ -51,18 +51,18 @@ def to_s :omniauthable, omniauth_providers: %i[github] def self.from_omniauth(auth) - user = find_by(email: auth.info.email) + user = find_by(provider: auth.provider, uid: auth.uid) if user - user.update( - provider: auth.provider, - uid: auth.uid, - github_access_token: auth.credentials.token - ) + user.email = auth.info.email.downcase if user.email != auth.info.email.downcase + user.provider = auth.provider + user.uid = auth.uid + user.github_access_token = auth.credentials.token + user.save else user = create do |new_user| new_user.provider = auth.provider new_user.uid = auth.uid - new_user.email = auth.info.email + new_user.email = auth.info.email.downcase new_user.password = Devise.friendly_token[0, 20] new_user.github_access_token = auth.credentials.token end From 9bcd1b607c306a01e2bca32ff9b503ff8ed64331 Mon Sep 17 00:00:00 2001 From: Ben Purinton Date: Mon, 23 Jun 2025 15:03:06 +0200 Subject: [PATCH 02/12] fix div --- app/views/shared/_navbar.html.erb | 1 + 1 file changed, 1 insertion(+) diff --git a/app/views/shared/_navbar.html.erb b/app/views/shared/_navbar.html.erb index 9bfeaed..c30a197 100644 --- a/app/views/shared/_navbar.html.erb +++ b/app/views/shared/_navbar.html.erb @@ -29,4 +29,5 @@ <% end %> + From f9a2590ad0622883fe2cefdf7315b098c046e797 Mon Sep 17 00:00:00 2001 From: Ben Purinton Date: Mon, 23 Jun 2025 15:05:56 +0200 Subject: [PATCH 03/12] update bundler --- Gemfile.lock | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Gemfile.lock b/Gemfile.lock index a2969c2..6008bca 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -473,4 +473,4 @@ RUBY VERSION ruby 2.7.5p203 BUNDLED WITH - 1.17.3 + 2.3.25 From 922bccea4e0ecf611f2eff5b70f4ebb4f787139f Mon Sep 17 00:00:00 2001 From: Ben Purinton Date: Mon, 23 Jun 2025 15:13:15 +0200 Subject: [PATCH 04/12] rever bundler change --- Gemfile.lock | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Gemfile.lock b/Gemfile.lock index 6008bca..a2969c2 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -473,4 +473,4 @@ RUBY VERSION ruby 2.7.5p203 BUNDLED WITH - 2.3.25 + 1.17.3 From 87d45a3c8b4e089b2670fdcb6f0b1ebf2aeac439 Mon Sep 17 00:00:00 2001 From: Ben Purinton Date: Mon, 23 Jun 2025 15:14:48 +0200 Subject: [PATCH 05/12] Update app/models/user.rb Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com> --- app/models/user.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/models/user.rb b/app/models/user.rb index f92953b..88a98d7 100644 --- a/app/models/user.rb +++ b/app/models/user.rb @@ -57,7 +57,7 @@ def self.from_omniauth(auth) user.provider = auth.provider user.uid = auth.uid user.github_access_token = auth.credentials.token - user.save + user.save! else user = create do |new_user| new_user.provider = auth.provider From 361e9fa12bfb34f1fc08e88e8a1fa23c6988eff1 Mon Sep 17 00:00:00 2001 From: Ben Purinton Date: Mon, 23 Jun 2025 15:18:24 +0200 Subject: [PATCH 06/12] add render stuff --- bin/render-build.sh | 7 +++++++ render.yaml | 24 ++++++++++++++++++++++++ 2 files changed, 31 insertions(+) create mode 100755 bin/render-build.sh create mode 100644 render.yaml diff --git a/bin/render-build.sh b/bin/render-build.sh new file mode 100755 index 0000000..b5b5b18 --- /dev/null +++ b/bin/render-build.sh @@ -0,0 +1,7 @@ +#!/usr/bin/env bash +# exit on error +set -o errexit + +bundle install +./bin/rails assets:precompile +./bin/rails assets:clean diff --git a/render.yaml b/render.yaml new file mode 100644 index 0000000..ad71309 --- /dev/null +++ b/render.yaml @@ -0,0 +1,24 @@ +databases: + - name: association-accessors + databaseName: association-accessors + user: association-accessors + region: ohio + plan: starter + +services: + - type: web + name: association-accessors + region: ohio + plan: starter + runtime: ruby + healthCheckPath: /up + buildCommand: "./bin/render-build.sh" + preDeployCommand: "./bin/rails db:migrate" + startCommand: "bundle exec puma -C config/puma.rb" + envVars: + - key: DATABASE_URL + fromDatabase: + name: envoy + property: connectionString + - key: WEB_CONCURRENCY + value: 2 From 75afb99bdc349b35f5dd17b50f087d7682b017cc Mon Sep 17 00:00:00 2001 From: Ben Purinton Date: Mon, 23 Jun 2025 15:19:51 +0200 Subject: [PATCH 07/12] fix render.yaml --- render.yaml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/render.yaml b/render.yaml index ad71309..5fe713e 100644 --- a/render.yaml +++ b/render.yaml @@ -1,7 +1,7 @@ databases: - name: association-accessors - databaseName: association-accessors - user: association-accessors + databaseName: association_accessors + user: association_accessors region: ohio plan: starter @@ -18,7 +18,7 @@ services: envVars: - key: DATABASE_URL fromDatabase: - name: envoy + name: association-accessors property: connectionString - key: WEB_CONCURRENCY value: 2 From df191ba6c3d28be87b184b1cc64514a17e3abca6 Mon Sep 17 00:00:00 2001 From: Ben Purinton Date: Mon, 23 Jun 2025 15:21:12 +0200 Subject: [PATCH 08/12] update plan name --- render.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/render.yaml b/render.yaml index 5fe713e..7351e6b 100644 --- a/render.yaml +++ b/render.yaml @@ -3,13 +3,13 @@ databases: databaseName: association_accessors user: association_accessors region: ohio - plan: starter + plan: basic services: - type: web name: association-accessors region: ohio - plan: starter + plan: basic runtime: ruby healthCheckPath: /up buildCommand: "./bin/render-build.sh" From 626b03154e1b5ace5aee9a4bec140f6b4bdd00c7 Mon Sep 17 00:00:00 2001 From: Ben Purinton Date: Mon, 23 Jun 2025 15:22:15 +0200 Subject: [PATCH 09/12] fix render.yaml --- render.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/render.yaml b/render.yaml index 7351e6b..ece6039 100644 --- a/render.yaml +++ b/render.yaml @@ -3,13 +3,13 @@ databases: databaseName: association_accessors user: association_accessors region: ohio - plan: basic + plan: basic-256mb services: - type: web name: association-accessors region: ohio - plan: basic + plan: starter runtime: ruby healthCheckPath: /up buildCommand: "./bin/render-build.sh" From d9a1e74b390fa73812c414ae5b63a3c280f5f6ee Mon Sep 17 00:00:00 2001 From: Ben Purinton Date: Mon, 23 Jun 2025 15:37:55 +0200 Subject: [PATCH 10/12] update ruby --- .ruby-version | 2 +- Gemfile | 11 +- Gemfile.lock | 564 +++++++++++++++--------------- config/boot.rb | 3 +- config/initializers/fix_logger.rb | 1 + 5 files changed, 297 insertions(+), 284 deletions(-) create mode 100644 config/initializers/fix_logger.rb diff --git a/.ruby-version b/.ruby-version index 849c0c4..75a22a2 100644 --- a/.ruby-version +++ b/.ruby-version @@ -1 +1 @@ -ruby-2.7.5 +3.0.3 diff --git a/Gemfile b/Gemfile index f568140..97accce 100644 --- a/Gemfile +++ b/Gemfile @@ -1,11 +1,12 @@ source 'https://rubygems.org' git_source(:github) { |repo| "https://github.com/#{repo}.git" } -ruby '2.7.5' +ruby '3.0.3' -gem 'activeadmin', '2.2.0' +gem 'activeadmin', '~> 2.10' gem 'activerecord-import' -gem 'bootsnap', '>= 1.4.2', require: false +# gem 'bootsnap', '>= 1.4.2', require: false +gem 'logger' gem 'bootstrap3-datetimepicker-rails', '~> 4.17.43' gem 'bootstrap4-kaminari-views' gem 'coffee-rails' @@ -20,7 +21,7 @@ gem 'kaminari' gem 'momentjs-rails', '>= 2.9.0' gem 'pg', '>= 0.18', '< 2.0' gem 'puma', '~> 5.0' -gem 'rails', '~> 6.0.2', '>= 6.0.2.2' +gem 'rails', '~> 6.1.0' gem 'ransack' gem 'rollbar' gem 'rouge' @@ -47,6 +48,6 @@ group :development do gem 'annotate' gem 'better_errors' gem 'binding_of_caller' - gem 'listen', '>= 3.0.5', '< 3.2' + gem 'listen', '~> 3.8' gem 'web-console', '>= 3.3.0' end diff --git a/Gemfile.lock b/Gemfile.lock index a2969c2..48c8d7b 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -10,7 +10,7 @@ GIT GIT remote: https://github.com/firstdraft/ideas_generators.git - revision: 9d6dbd9b2603a800cf76ec25fec78d53e5c95d3b + revision: c1c214d95ffe14ce49d97d9947c9fb268096f4d8 specs: ideas_generators (0.1.0) railties @@ -18,103 +18,99 @@ GIT GEM remote: https://rubygems.org/ specs: - actioncable (6.0.3.2) - actionpack (= 6.0.3.2) + 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.0.3.2) - actionpack (= 6.0.3.2) - activejob (= 6.0.3.2) - activerecord (= 6.0.3.2) - activestorage (= 6.0.3.2) - activesupport (= 6.0.3.2) + 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.0.3.2) - actionpack (= 6.0.3.2) - actionview (= 6.0.3.2) - activejob (= 6.0.3.2) + 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.0.3.2) - actionview (= 6.0.3.2) - activesupport (= 6.0.3.2) - rack (~> 2.0, >= 2.0.8) + 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.0.3.2) - actionpack (= 6.0.3.2) - activerecord (= 6.0.3.2) - activestorage (= 6.0.3.2) - activesupport (= 6.0.3.2) + 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.0.3.2) - activesupport (= 6.0.3.2) + 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) - activeadmin (2.2.0) + activeadmin (2.14.0) arbre (~> 1.2, >= 1.2.1) - formtastic (~> 3.1) + formtastic (>= 3.1, < 5.0) formtastic_i18n (~> 0.4) inherited_resources (~> 1.7) jquery-rails (~> 4.2) - kaminari (~> 1.0, >= 1.0.1) - railties (>= 5.0, < 6.1) - ransack (~> 2.1, >= 2.1.1) - sassc-rails (~> 2.1) - sprockets (>= 3.0, < 4.1) - sprockets-es6 (~> 0.9, >= 0.9.2) - activejob (6.0.3.2) - activesupport (= 6.0.3.2) + kaminari (~> 1.0, >= 1.2.1) + railties (>= 6.1, < 7.1) + ransack (>= 2.1.1, < 4) + activejob (6.1.7.10) + activesupport (= 6.1.7.10) globalid (>= 0.3.6) - activemodel (6.0.3.2) - activesupport (= 6.0.3.2) - activerecord (6.0.3.2) - activemodel (= 6.0.3.2) - activesupport (= 6.0.3.2) - activerecord-import (1.0.6) - activerecord (>= 3.2) - activestorage (6.0.3.2) - actionpack (= 6.0.3.2) - activejob (= 6.0.3.2) - activerecord (= 6.0.3.2) - marcel (~> 0.3.1) - activesupport (6.0.3.2) + activemodel (6.1.7.10) + activesupport (= 6.1.7.10) + activerecord (6.1.7.10) + activemodel (= 6.1.7.10) + activesupport (= 6.1.7.10) + activerecord-import (2.2.0) + activerecord (>= 4.2) + 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 (>= 0.7, < 2) - minitest (~> 5.1) - tzinfo (~> 1.1) - zeitwerk (~> 2.2, >= 2.2.2) - annotate (3.1.1) - activerecord (>= 3.2, < 7.0) + i18n (>= 1.6, < 2) + minitest (>= 5.1) + tzinfo (~> 2.0) + zeitwerk (~> 2.3) + annotate (3.2.0) + activerecord (>= 3.2, < 8.0) rake (>= 10.4, < 14.0) - arbre (1.2.1) + arbre (1.7.0) activesupport (>= 3.0.0) - ast (2.4.1) - babel-source (5.8.35) - babel-transpiler (0.7.0) - babel-source (>= 4.0, < 6) - execjs (~> 2.0) - base64 (0.2.0) + ruby2_keywords (>= 0.0.2) + ast (2.4.3) + base64 (0.3.0) bcrypt (3.1.20) - better_errors (2.7.1) - coderay (>= 1.0.0) + better_errors (2.10.1) erubi (>= 1.0.0) rack (>= 0.9.0) + rouge (>= 1.0.0) + bigdecimal (3.2.2) bindex (0.8.1) - binding_of_caller (0.8.0) - debug_inspector (>= 0.0.1) - bootsnap (1.4.7) - msgpack (~> 1.0) + binding_of_caller (1.0.1) + debug_inspector (>= 1.2.0) bootstrap3-datetimepicker-rails (4.17.47) momentjs-rails (>= 2.8.1) bootstrap4-kaminari-views (1.0.1) kaminari (>= 0.13) rails (>= 3.1) - builder (3.2.4) - coderay (1.1.3) + builder (3.3.0) coffee-rails (5.0.0) coffee-script (>= 2.2.0) railties (>= 5.2.0) @@ -122,145 +118,154 @@ GEM coffee-script-source execjs coffee-script-source (1.12.2) - concurrent-ruby (1.1.6) + concurrent-ruby (1.3.5) crass (1.0.6) - debug_inspector (0.0.3) + date (3.4.1) + debug_inspector (1.2.0) devise (4.9.4) bcrypt (~> 3.0) orm_adapter (~> 0.1) railties (>= 4.1.0) responders warden (~> 1.2.3) - diff-lcs (1.4.4) + diff-lcs (1.6.2) doorkeeper (5.4.0) railties (>= 5) - dotenv (2.8.1) - dotenv-rails (2.8.1) - dotenv (= 2.8.1) - railties (>= 3.2) - dry-configurable (0.11.6) - concurrent-ruby (~> 1.0) - dry-core (~> 0.4, >= 0.4.7) - dry-equalizer (~> 0.2) - dry-container (0.7.2) - concurrent-ruby (~> 1.0) - dry-configurable (~> 0.1, >= 0.1.3) - dry-core (0.4.9) - concurrent-ruby (~> 1.0) - dry-equalizer (0.3.0) - dry-inflector (0.2.0) - dry-logic (1.0.6) + dotenv (3.1.8) + dotenv-rails (3.1.8) + dotenv (= 3.1.8) + railties (>= 6.1) + dry-core (1.0.2) concurrent-ruby (~> 1.0) - dry-core (~> 0.2) - dry-equalizer (~> 0.2) - dry-types (1.4.0) + logger + zeitwerk (~> 2.6) + dry-inflector (1.1.0) + dry-logic (1.5.0) concurrent-ruby (~> 1.0) - dry-container (~> 0.3) - dry-core (~> 0.4, >= 0.4.4) - dry-equalizer (~> 0.3) - dry-inflector (~> 0.1, >= 0.1.2) - dry-logic (~> 1.0, >= 1.0.2) - erubi (1.9.0) - execjs (2.7.0) - factory_bot (6.1.0) - activesupport (>= 5.0.0) - factory_bot_rails (6.1.0) - factory_bot (~> 6.1.0) - railties (>= 5.0.0) - faker (2.13.0) - i18n (>= 1.6, < 2) - faraday (2.8.1) - base64 - faraday-net_http (>= 2.0, < 3.1) - ruby2_keywords (>= 0.0.4) - faraday-net_http (3.0.2) - ffi (1.13.1) - formtastic (3.1.5) - actionpack (>= 3.2.13) - formtastic_i18n (0.6.0) - globalid (0.4.2) - activesupport (>= 4.2.0) - graphiti (1.2.21) - activesupport (>= 4.1) + dry-core (~> 1.0, < 2) + zeitwerk (~> 2.6) + dry-types (1.7.2) + bigdecimal (~> 3.0) concurrent-ruby (~> 1.0) + dry-core (~> 1.0) + dry-inflector (~> 1.0) + dry-logic (~> 1.4) + zeitwerk (~> 2.6) + erubi (1.13.1) + execjs (2.10.0) + factory_bot (6.5.4) + activesupport (>= 6.1.0) + factory_bot_rails (6.5.0) + factory_bot (~> 6.5) + railties (>= 6.1.0) + faker (3.5.1) + i18n (>= 1.8.11, < 2) + faraday (2.13.1) + faraday-net_http (>= 2.0, < 3.5) + json + logger + faraday-net_http (3.4.1) + net-http (>= 0.5.0) + ffi (1.17.2-x86_64-darwin) + formtastic (4.0.0) + actionpack (>= 5.2.0) + formtastic_i18n (0.7.0) + globalid (1.2.1) + activesupport (>= 6.1) + graphiti (1.8.2) + activesupport (>= 5.2) + concurrent-ruby (>= 1.2, < 2.0) dry-types (>= 0.15.0, < 2.0) graphiti_errors (~> 1.1.0) jsonapi-renderer (~> 0.2, >= 0.2.2) jsonapi-serializable (~> 0.3.0) graphiti_errors (1.1.2) jsonapi-serializable (~> 0.1) - graphiti_spec_helpers (1.0.5) + graphiti_spec_helpers (1.2.0) graphiti (>= 1.0.alpha.1) rspec (~> 3.0) - has_scope (0.7.2) - actionpack (>= 4.1) - activesupport (>= 4.1) + has_scope (0.8.2) + actionpack (>= 5.2) + activesupport (>= 5.2) hashie (5.0.0) - i18n (1.8.5) + i18n (1.14.7) concurrent-ruby (~> 1.0) - indefinite_article (0.2.4) + indefinite_article (0.2.5) activesupport - inherited_resources (1.11.0) - actionpack (>= 5.0, < 6.1) - has_scope (~> 0.6) - railties (>= 5.0, < 6.1) - responders (>= 2, < 4) - jbuilder (2.10.0) + inherited_resources (1.14.0) + actionpack (>= 6.0) + has_scope (>= 0.6) + railties (>= 6.0) + responders (>= 2) + jbuilder (2.13.0) + actionview (>= 5.0.0) activesupport (>= 5.0.0) - jquery-rails (4.4.0) + jquery-rails (4.6.0) rails-dom-testing (>= 1, < 3) railties (>= 4.2.0) thor (>= 0.14, < 2.0) + json (2.12.2) jsonapi-renderer (0.2.2) jsonapi-serializable (0.3.1) jsonapi-renderer (~> 0.2.0) - jwt (2.8.2) + jwt (3.0.0) base64 - kaminari (1.2.1) + kaminari (1.2.2) activesupport (>= 4.1.0) - kaminari-actionview (= 1.2.1) - kaminari-activerecord (= 1.2.1) - kaminari-core (= 1.2.1) - kaminari-actionview (1.2.1) + kaminari-actionview (= 1.2.2) + kaminari-activerecord (= 1.2.2) + kaminari-core (= 1.2.2) + kaminari-actionview (1.2.2) actionview - kaminari-core (= 1.2.1) - kaminari-activerecord (1.2.1) + kaminari-core (= 1.2.2) + kaminari-activerecord (1.2.2) activerecord - kaminari-core (= 1.2.1) - kaminari-core (1.2.1) - listen (3.1.5) - rb-fsevent (~> 0.9, >= 0.9.4) - rb-inotify (~> 0.9, >= 0.9.7) - ruby_dep (~> 1.2) - loofah (2.6.0) + kaminari-core (= 1.2.2) + kaminari-core (1.2.2) + language_server-protocol (3.17.0.5) + lint_roller (1.1.0) + listen (3.9.0) + rb-fsevent (~> 0.10, >= 0.10.3) + rb-inotify (~> 0.9, >= 0.9.10) + logger (1.7.0) + loofah (2.24.1) crass (~> 1.0.2) - nokogiri (>= 1.5.9) - mail (2.7.1) + nokogiri (>= 1.12.0) + mail (2.8.1) mini_mime (>= 0.1.1) - marcel (0.3.3) - mimemagic (~> 0.3.2) - method_source (1.0.0) - mimemagic (0.3.10) - nokogiri (~> 1) - rake - mini_mime (1.0.2) - mini_portile2 (2.4.0) - minitest (5.14.1) - momentjs-rails (2.20.1) + net-imap + net-pop + net-smtp + marcel (1.0.4) + method_source (1.1.0) + mini_mime (1.1.5) + minitest (5.25.5) + momentjs-rails (2.29.4.1) railties (>= 3.1) - msgpack (1.3.3) multi_xml (0.6.0) - nio4r (2.5.2) - nokogiri (1.10.10) - mini_portile2 (~> 2.4.0) - oauth2 (2.0.9) - faraday (>= 0.17.3, < 3.0) - jwt (>= 1.0, < 3.0) + net-http (0.6.0) + uri + net-imap (0.4.22) + date + net-protocol + net-pop (0.1.2) + net-protocol + net-protocol (0.2.2) + timeout + net-smtp (0.5.1) + net-protocol + nio4r (2.7.4) + nokogiri (1.17.2-x86_64-darwin) + racc (~> 1.4) + oauth2 (2.0.12) + faraday (>= 0.17.3, < 4.0) + jwt (>= 1.0, < 4.0) + logger (~> 1.2) multi_xml (~> 0.5) rack (>= 1.2, < 4) - snaky_hash (~> 2.0) - version_gem (~> 1.1) - omniauth (2.1.2) + snaky_hash (~> 2.0, >= 2.0.3) + version_gem (>= 1.1.8, < 3) + omniauth (2.1.3) hashie (>= 3.4.6) rack (>= 2.2.3) rack-protection @@ -274,107 +279,111 @@ GEM actionpack (>= 4.2) omniauth (~> 2.0) orm_adapter (0.5.0) - parallel (1.19.2) - parser (2.7.1.4) + parallel (1.27.0) + parser (3.3.8.0) ast (~> 2.4.1) - pg (1.2.3) - polyamorous (2.3.2) - activerecord (>= 5.2.1) - puma (5.6.8) + racc + pg (1.5.9) + prism (1.4.0) + puma (5.6.9) nio4r (~> 2.0) - rack (2.2.3) - rack-protection (3.0.6) - rack - rack-test (1.1.0) - rack (>= 1.0, < 3) - rails (6.0.3.2) - actioncable (= 6.0.3.2) - actionmailbox (= 6.0.3.2) - actionmailer (= 6.0.3.2) - actionpack (= 6.0.3.2) - actiontext (= 6.0.3.2) - actionview (= 6.0.3.2) - activejob (= 6.0.3.2) - activemodel (= 6.0.3.2) - activerecord (= 6.0.3.2) - activestorage (= 6.0.3.2) - activesupport (= 6.0.3.2) - bundler (>= 1.3.0) - railties (= 6.0.3.2) + racc (1.8.1) + rack (2.2.17) + rack-protection (3.2.0) + base64 (>= 0.1.0) + rack (~> 2.2, >= 2.2.4) + rack-test (2.2.0) + rack (>= 1.3) + 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.7.10) sprockets-rails (>= 2.0.0) - rails-dom-testing (2.0.3) - activesupport (>= 4.2.0) + rails-dom-testing (2.3.0) + activesupport (>= 5.0.0) + minitest nokogiri (>= 1.6) - rails-html-sanitizer (1.3.0) - loofah (~> 2.3) - railties (6.0.3.2) - actionpack (= 6.0.3.2) - activesupport (= 6.0.3.2) + 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 (6.1.7.10) + actionpack (= 6.1.7.10) + activesupport (= 6.1.7.10) method_source - rake (>= 0.8.7) - thor (>= 0.20.3, < 2.0) - rainbow (3.0.0) - rake (13.0.1) - ransack (2.3.2) - activerecord (>= 5.2.1) - activesupport (>= 5.2.1) + rake (>= 12.2) + thor (~> 1.0) + rainbow (3.1.1) + rake (13.3.0) + ransack (3.2.1) + activerecord (>= 6.1.5) + activesupport (>= 6.1.5) i18n - polyamorous (= 2.3.2) - rb-fsevent (0.10.4) - rb-inotify (0.10.1) + rb-fsevent (0.11.2) + rb-inotify (0.11.1) ffi (~> 1.0) - regexp_parser (1.7.1) - rescue_registry (0.2.2) + regexp_parser (2.10.0) + rescue_registry (0.2.5) activesupport (>= 5.0) - responders (3.0.1) - actionpack (>= 5.0) - railties (>= 5.0) - rexml (3.2.4) - rollbar (2.27.0) - rouge (3.21.0) + responders (3.1.1) + actionpack (>= 5.2) + railties (>= 5.2) + rollbar (3.6.2) + rouge (4.5.2) rouge-rails (0.2.1) actionview railties rouge - rspec (3.9.0) - rspec-core (~> 3.9.0) - rspec-expectations (~> 3.9.0) - rspec-mocks (~> 3.9.0) - rspec-core (3.9.2) - rspec-support (~> 3.9.3) - rspec-expectations (3.9.2) + rspec (3.13.1) + rspec-core (~> 3.13.0) + rspec-expectations (~> 3.13.0) + rspec-mocks (~> 3.13.0) + rspec-core (3.13.4) + rspec-support (~> 3.13.0) + rspec-expectations (3.13.5) diff-lcs (>= 1.2.0, < 2.0) - rspec-support (~> 3.9.0) - rspec-mocks (3.9.1) + rspec-support (~> 3.13.0) + rspec-mocks (3.13.5) diff-lcs (>= 1.2.0, < 2.0) - rspec-support (~> 3.9.0) - rspec-rails (4.0.1) - actionpack (>= 4.2) - activesupport (>= 4.2) - railties (>= 4.2) - rspec-core (~> 3.9) - rspec-expectations (~> 3.9) - rspec-mocks (~> 3.9) - rspec-support (~> 3.9) - rspec-support (3.9.3) - rubocop (0.89.0) + rspec-support (~> 3.13.0) + 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.4) + rubocop (1.77.0) + json (~> 2.3) + language_server-protocol (~> 3.17.0.2) + lint_roller (~> 1.1.0) parallel (~> 1.10) - parser (>= 2.7.1.1) + parser (>= 3.3.0.2) rainbow (>= 2.2.2, < 4.0) - regexp_parser (>= 1.7) - rexml - rubocop-ast (>= 0.1.0, < 1.0) + regexp_parser (>= 2.9.3, < 3.0) + rubocop-ast (>= 1.45.1, < 2.0) ruby-progressbar (~> 1.7) - unicode-display_width (>= 1.4.0, < 2.0) - rubocop-ast (0.3.0) - parser (>= 2.7.1.4) + unicode-display_width (>= 2.4.0, < 4.0) + rubocop-ast (1.45.1) + parser (>= 3.3.7.2) + prism (~> 1.4) rubocop-rails (2.5.2) activesupport rack (>= 1.1) rubocop (>= 0.72.0) - ruby-progressbar (1.10.1) + ruby-progressbar (1.13.0) ruby2_keywords (0.0.5) - ruby_dep (1.5.0) sass-rails (6.0.0) sassc-rails (~> 2.1, >= 2.1.1) sassc (2.4.0) @@ -385,54 +394,54 @@ GEM sprockets (> 3.0) sprockets-rails tilt - shoulda-matchers (4.3.0) - activesupport (>= 4.2.0) - snaky_hash (2.0.1) - hashie - version_gem (~> 1.1, >= 1.1.1) - sprockets (3.7.2) + shoulda-matchers (5.3.0) + activesupport (>= 5.2.0) + snaky_hash (2.0.3) + hashie (>= 0.1.0, < 6) + version_gem (>= 1.1.8, < 3) + sprockets (3.7.5) + base64 concurrent-ruby (~> 1.0) rack (> 1, < 3) - sprockets-es6 (0.9.2) - babel-source (>= 5.8.11) - babel-transpiler + sprockets-rails (3.5.2) + actionpack (>= 6.1) + activesupport (>= 6.1) sprockets (>= 3.0.0) - sprockets-rails (3.2.1) - actionpack (>= 4.0) - activesupport (>= 4.0) - sprockets (>= 3.0.0) - thor (1.0.1) - thread_safe (0.3.6) - tilt (2.0.10) - tzinfo (1.2.7) - thread_safe (~> 0.1) - unicode-display_width (1.7.0) + thor (1.3.2) + tilt (2.6.0) + timeout (0.4.3) + 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) vandal_ui (0.4.5) - version_gem (1.1.4) + version_gem (1.1.8) warden (1.2.9) rack (>= 2.0.9) - web-console (4.0.4) + web-console (4.2.1) actionview (>= 6.0.0) activemodel (>= 6.0.0) bindex (>= 0.4.0) railties (>= 6.0.0) - websocket-driver (0.7.3) + websocket-driver (0.8.0) + base64 websocket-extensions (>= 0.1.0) websocket-extensions (0.1.5) - wicked (1.3.4) + wicked (2.0.0) railties (>= 3.0.7) - zeitwerk (2.4.0) + zeitwerk (2.6.18) PLATFORMS - ruby + x86_64-darwin-22 DEPENDENCIES - activeadmin (= 2.2.0) + activeadmin (~> 2.10) activerecord-import annotate better_errors binding_of_caller - bootsnap (>= 1.4.2) bootstrap3-datetimepicker-rails (~> 4.17.43) bootstrap4-kaminari-views coffee-rails @@ -448,13 +457,14 @@ DEPENDENCIES indefinite_article jbuilder (~> 2.7) kaminari - listen (>= 3.0.5, < 3.2) + listen (~> 3.8) + logger momentjs-rails (>= 2.9.0) omniauth-github omniauth-rails_csrf_protection pg (>= 0.18, < 2.0) puma (~> 5.0) - rails (~> 6.0.2, >= 6.0.2.2) + rails (~> 6.1.0) ransack rollbar rouge @@ -470,7 +480,7 @@ DEPENDENCIES wicked RUBY VERSION - ruby 2.7.5p203 + ruby 3.0.3p157 BUNDLED WITH - 1.17.3 + 2.2.32 diff --git a/config/boot.rb b/config/boot.rb index b9e460c..4301da0 100644 --- a/config/boot.rb +++ b/config/boot.rb @@ -1,4 +1,5 @@ ENV['BUNDLE_GEMFILE'] ||= File.expand_path('../Gemfile', __dir__) require 'bundler/setup' # Set up gems listed in the Gemfile. -require 'bootsnap/setup' # Speed up boot time by caching expensive operations. +require 'logger' # Fix for Ruby 3.0 compatibility +# require 'bootsnap/setup' # Speed up boot time by caching expensive operations. diff --git a/config/initializers/fix_logger.rb b/config/initializers/fix_logger.rb new file mode 100644 index 0000000..99dfdcf --- /dev/null +++ b/config/initializers/fix_logger.rb @@ -0,0 +1 @@ +require 'logger' \ No newline at end of file From 465ab1750a135112945daef7fdec42a402d1aaf9 Mon Sep 17 00:00:00 2001 From: Ben Purinton Date: Mon, 23 Jun 2025 15:43:29 +0200 Subject: [PATCH 11/12] wip --- .ruby-version | 2 +- Gemfile | 13 +- Gemfile.lock | 486 -------------------------------------------------- 3 files changed, 8 insertions(+), 493 deletions(-) delete mode 100644 Gemfile.lock diff --git a/.ruby-version b/.ruby-version index 75a22a2..ff365e0 100644 --- a/.ruby-version +++ b/.ruby-version @@ -1 +1 @@ -3.0.3 +3.1.3 diff --git a/Gemfile b/Gemfile index 97accce..099e936 100644 --- a/Gemfile +++ b/Gemfile @@ -1,12 +1,13 @@ source 'https://rubygems.org' git_source(:github) { |repo| "https://github.com/#{repo}.git" } -ruby '3.0.3' +ruby '3.1.3' -gem 'activeadmin', '~> 2.10' +gem 'activeadmin', '~> 2.13' gem 'activerecord-import' # gem 'bootsnap', '>= 1.4.2', require: false gem 'logger' +gem 'psych', '< 4' gem 'bootstrap3-datetimepicker-rails', '~> 4.17.43' gem 'bootstrap4-kaminari-views' gem 'coffee-rails' @@ -27,18 +28,18 @@ gem 'rollbar' gem 'rouge' gem 'rouge-rails' gem 'rspec-rails' -gem 'rubocop-rails', '2.5.2', require: false +gem 'rubocop-rails', '~> 2.17', require: false gem 'sass-rails', '>= 6' -gem 'shoulda-matchers' +gem 'shoulda-matchers', '~> 5.0' gem 'sprockets', '~> 3.7' gem 'sprockets-rails', require: 'sprockets/railtie' gem 'vandal_ui', '~> 0.4' gem 'wicked' -gem "omniauth-github" +gem "omniauth-github", "~> 1.4" gem "omniauth-rails_csrf_protection" group :development, :test do - gem 'factory_bot_rails' + gem 'factory_bot_rails', '~> 6.2' gem 'faker' gem 'graphiti_spec_helpers' gem "dotenv-rails" diff --git a/Gemfile.lock b/Gemfile.lock deleted file mode 100644 index 48c8d7b..0000000 --- a/Gemfile.lock +++ /dev/null @@ -1,486 +0,0 @@ -GIT - remote: https://github.com/firstdraft/graphiti-rails.git - revision: ef9bf246e15beb553f6774fcb42a9f2b473cd162 - branch: develop - specs: - graphiti-rails (0.2.3) - graphiti (~> 1.2) - rails (>= 5.0) - rescue_registry (~> 0.2.1) - -GIT - remote: https://github.com/firstdraft/ideas_generators.git - revision: c1c214d95ffe14ce49d97d9947c9fb268096f4d8 - specs: - ideas_generators (0.1.0) - railties - -GEM - remote: https://rubygems.org/ - specs: - 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.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.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.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.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.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) - activeadmin (2.14.0) - arbre (~> 1.2, >= 1.2.1) - formtastic (>= 3.1, < 5.0) - formtastic_i18n (~> 0.4) - inherited_resources (~> 1.7) - jquery-rails (~> 4.2) - kaminari (~> 1.0, >= 1.2.1) - railties (>= 6.1, < 7.1) - ransack (>= 2.1.1, < 4) - activejob (6.1.7.10) - activesupport (= 6.1.7.10) - globalid (>= 0.3.6) - activemodel (6.1.7.10) - activesupport (= 6.1.7.10) - activerecord (6.1.7.10) - activemodel (= 6.1.7.10) - activesupport (= 6.1.7.10) - activerecord-import (2.2.0) - activerecord (>= 4.2) - 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) - tzinfo (~> 2.0) - zeitwerk (~> 2.3) - annotate (3.2.0) - activerecord (>= 3.2, < 8.0) - rake (>= 10.4, < 14.0) - arbre (1.7.0) - activesupport (>= 3.0.0) - ruby2_keywords (>= 0.0.2) - ast (2.4.3) - base64 (0.3.0) - bcrypt (3.1.20) - better_errors (2.10.1) - erubi (>= 1.0.0) - rack (>= 0.9.0) - rouge (>= 1.0.0) - bigdecimal (3.2.2) - bindex (0.8.1) - binding_of_caller (1.0.1) - debug_inspector (>= 1.2.0) - bootstrap3-datetimepicker-rails (4.17.47) - momentjs-rails (>= 2.8.1) - bootstrap4-kaminari-views (1.0.1) - kaminari (>= 0.13) - rails (>= 3.1) - builder (3.3.0) - coffee-rails (5.0.0) - coffee-script (>= 2.2.0) - railties (>= 5.2.0) - coffee-script (2.4.1) - coffee-script-source - execjs - coffee-script-source (1.12.2) - concurrent-ruby (1.3.5) - crass (1.0.6) - date (3.4.1) - debug_inspector (1.2.0) - devise (4.9.4) - bcrypt (~> 3.0) - orm_adapter (~> 0.1) - railties (>= 4.1.0) - responders - warden (~> 1.2.3) - diff-lcs (1.6.2) - doorkeeper (5.4.0) - railties (>= 5) - dotenv (3.1.8) - dotenv-rails (3.1.8) - dotenv (= 3.1.8) - railties (>= 6.1) - dry-core (1.0.2) - concurrent-ruby (~> 1.0) - logger - zeitwerk (~> 2.6) - dry-inflector (1.1.0) - dry-logic (1.5.0) - concurrent-ruby (~> 1.0) - dry-core (~> 1.0, < 2) - zeitwerk (~> 2.6) - dry-types (1.7.2) - bigdecimal (~> 3.0) - concurrent-ruby (~> 1.0) - dry-core (~> 1.0) - dry-inflector (~> 1.0) - dry-logic (~> 1.4) - zeitwerk (~> 2.6) - erubi (1.13.1) - execjs (2.10.0) - factory_bot (6.5.4) - activesupport (>= 6.1.0) - factory_bot_rails (6.5.0) - factory_bot (~> 6.5) - railties (>= 6.1.0) - faker (3.5.1) - i18n (>= 1.8.11, < 2) - faraday (2.13.1) - faraday-net_http (>= 2.0, < 3.5) - json - logger - faraday-net_http (3.4.1) - net-http (>= 0.5.0) - ffi (1.17.2-x86_64-darwin) - formtastic (4.0.0) - actionpack (>= 5.2.0) - formtastic_i18n (0.7.0) - globalid (1.2.1) - activesupport (>= 6.1) - graphiti (1.8.2) - activesupport (>= 5.2) - concurrent-ruby (>= 1.2, < 2.0) - dry-types (>= 0.15.0, < 2.0) - graphiti_errors (~> 1.1.0) - jsonapi-renderer (~> 0.2, >= 0.2.2) - jsonapi-serializable (~> 0.3.0) - graphiti_errors (1.1.2) - jsonapi-serializable (~> 0.1) - graphiti_spec_helpers (1.2.0) - graphiti (>= 1.0.alpha.1) - rspec (~> 3.0) - has_scope (0.8.2) - actionpack (>= 5.2) - activesupport (>= 5.2) - hashie (5.0.0) - i18n (1.14.7) - concurrent-ruby (~> 1.0) - indefinite_article (0.2.5) - activesupport - inherited_resources (1.14.0) - actionpack (>= 6.0) - has_scope (>= 0.6) - railties (>= 6.0) - responders (>= 2) - jbuilder (2.13.0) - actionview (>= 5.0.0) - activesupport (>= 5.0.0) - jquery-rails (4.6.0) - rails-dom-testing (>= 1, < 3) - railties (>= 4.2.0) - thor (>= 0.14, < 2.0) - json (2.12.2) - jsonapi-renderer (0.2.2) - jsonapi-serializable (0.3.1) - jsonapi-renderer (~> 0.2.0) - jwt (3.0.0) - base64 - kaminari (1.2.2) - activesupport (>= 4.1.0) - kaminari-actionview (= 1.2.2) - kaminari-activerecord (= 1.2.2) - kaminari-core (= 1.2.2) - kaminari-actionview (1.2.2) - actionview - kaminari-core (= 1.2.2) - kaminari-activerecord (1.2.2) - activerecord - kaminari-core (= 1.2.2) - kaminari-core (1.2.2) - language_server-protocol (3.17.0.5) - lint_roller (1.1.0) - listen (3.9.0) - rb-fsevent (~> 0.10, >= 0.10.3) - rb-inotify (~> 0.9, >= 0.9.10) - logger (1.7.0) - loofah (2.24.1) - crass (~> 1.0.2) - nokogiri (>= 1.12.0) - mail (2.8.1) - mini_mime (>= 0.1.1) - net-imap - net-pop - net-smtp - marcel (1.0.4) - method_source (1.1.0) - mini_mime (1.1.5) - minitest (5.25.5) - momentjs-rails (2.29.4.1) - railties (>= 3.1) - multi_xml (0.6.0) - net-http (0.6.0) - uri - net-imap (0.4.22) - date - net-protocol - net-pop (0.1.2) - net-protocol - net-protocol (0.2.2) - timeout - net-smtp (0.5.1) - net-protocol - nio4r (2.7.4) - nokogiri (1.17.2-x86_64-darwin) - racc (~> 1.4) - oauth2 (2.0.12) - faraday (>= 0.17.3, < 4.0) - jwt (>= 1.0, < 4.0) - logger (~> 1.2) - multi_xml (~> 0.5) - rack (>= 1.2, < 4) - snaky_hash (~> 2.0, >= 2.0.3) - version_gem (>= 1.1.8, < 3) - omniauth (2.1.3) - hashie (>= 3.4.6) - rack (>= 2.2.3) - rack-protection - omniauth-github (2.0.1) - omniauth (~> 2.0) - omniauth-oauth2 (~> 1.8) - omniauth-oauth2 (1.8.0) - oauth2 (>= 1.4, < 3) - omniauth (~> 2.0) - omniauth-rails_csrf_protection (1.0.2) - actionpack (>= 4.2) - omniauth (~> 2.0) - orm_adapter (0.5.0) - parallel (1.27.0) - parser (3.3.8.0) - ast (~> 2.4.1) - racc - pg (1.5.9) - prism (1.4.0) - puma (5.6.9) - nio4r (~> 2.0) - racc (1.8.1) - rack (2.2.17) - rack-protection (3.2.0) - base64 (>= 0.1.0) - rack (~> 2.2, >= 2.2.4) - rack-test (2.2.0) - rack (>= 1.3) - 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.7.10) - sprockets-rails (>= 2.0.0) - rails-dom-testing (2.3.0) - activesupport (>= 5.0.0) - minitest - nokogiri (>= 1.6) - 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 (6.1.7.10) - actionpack (= 6.1.7.10) - activesupport (= 6.1.7.10) - method_source - rake (>= 12.2) - thor (~> 1.0) - rainbow (3.1.1) - rake (13.3.0) - ransack (3.2.1) - activerecord (>= 6.1.5) - activesupport (>= 6.1.5) - i18n - rb-fsevent (0.11.2) - rb-inotify (0.11.1) - ffi (~> 1.0) - regexp_parser (2.10.0) - rescue_registry (0.2.5) - activesupport (>= 5.0) - responders (3.1.1) - actionpack (>= 5.2) - railties (>= 5.2) - rollbar (3.6.2) - rouge (4.5.2) - rouge-rails (0.2.1) - actionview - railties - rouge - rspec (3.13.1) - rspec-core (~> 3.13.0) - rspec-expectations (~> 3.13.0) - rspec-mocks (~> 3.13.0) - rspec-core (3.13.4) - 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) - diff-lcs (>= 1.2.0, < 2.0) - rspec-support (~> 3.13.0) - 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.4) - rubocop (1.77.0) - json (~> 2.3) - language_server-protocol (~> 3.17.0.2) - lint_roller (~> 1.1.0) - parallel (~> 1.10) - parser (>= 3.3.0.2) - rainbow (>= 2.2.2, < 4.0) - regexp_parser (>= 2.9.3, < 3.0) - rubocop-ast (>= 1.45.1, < 2.0) - ruby-progressbar (~> 1.7) - unicode-display_width (>= 2.4.0, < 4.0) - rubocop-ast (1.45.1) - parser (>= 3.3.7.2) - prism (~> 1.4) - rubocop-rails (2.5.2) - activesupport - rack (>= 1.1) - rubocop (>= 0.72.0) - ruby-progressbar (1.13.0) - ruby2_keywords (0.0.5) - sass-rails (6.0.0) - sassc-rails (~> 2.1, >= 2.1.1) - sassc (2.4.0) - ffi (~> 1.9) - sassc-rails (2.1.2) - railties (>= 4.0.0) - sassc (>= 2.0) - sprockets (> 3.0) - sprockets-rails - tilt - shoulda-matchers (5.3.0) - activesupport (>= 5.2.0) - snaky_hash (2.0.3) - hashie (>= 0.1.0, < 6) - version_gem (>= 1.1.8, < 3) - sprockets (3.7.5) - base64 - concurrent-ruby (~> 1.0) - rack (> 1, < 3) - sprockets-rails (3.5.2) - actionpack (>= 6.1) - activesupport (>= 6.1) - sprockets (>= 3.0.0) - thor (1.3.2) - tilt (2.6.0) - timeout (0.4.3) - 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) - vandal_ui (0.4.5) - version_gem (1.1.8) - warden (1.2.9) - rack (>= 2.0.9) - web-console (4.2.1) - actionview (>= 6.0.0) - activemodel (>= 6.0.0) - bindex (>= 0.4.0) - railties (>= 6.0.0) - websocket-driver (0.8.0) - base64 - websocket-extensions (>= 0.1.0) - websocket-extensions (0.1.5) - wicked (2.0.0) - railties (>= 3.0.7) - zeitwerk (2.6.18) - -PLATFORMS - x86_64-darwin-22 - -DEPENDENCIES - activeadmin (~> 2.10) - activerecord-import - annotate - better_errors - binding_of_caller - bootstrap3-datetimepicker-rails (~> 4.17.43) - bootstrap4-kaminari-views - coffee-rails - devise (~> 4.9.2) - doorkeeper (~> 5.4.0) - dotenv-rails - factory_bot_rails - faker - graphiti (~> 1.2) - graphiti-rails! - graphiti_spec_helpers - ideas_generators! - indefinite_article - jbuilder (~> 2.7) - kaminari - listen (~> 3.8) - logger - momentjs-rails (>= 2.9.0) - omniauth-github - omniauth-rails_csrf_protection - pg (>= 0.18, < 2.0) - puma (~> 5.0) - rails (~> 6.1.0) - ransack - rollbar - rouge - rouge-rails - rspec-rails - rubocop-rails (= 2.5.2) - sass-rails (>= 6) - shoulda-matchers - sprockets (~> 3.7) - sprockets-rails - vandal_ui (~> 0.4) - web-console (>= 3.3.0) - wicked - -RUBY VERSION - ruby 3.0.3p157 - -BUNDLED WITH - 2.2.32 From dbf37d91d2dc81b797386d3048bb2e49be824600 Mon Sep 17 00:00:00 2001 From: Ben Purinton Date: Mon, 23 Jun 2025 15:47:39 +0200 Subject: [PATCH 12/12] Upgrade to Ruby 3.1.3 for deployment MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Update .ruby-version to 3.1.3 - Update Gemfile ruby version to 3.1.3 - Add logger fix in config/boot.rb for Ruby 3.0+ compatibility - Add Gemfile.lock with compatible gem versions - Add psych constraint for Ruby 3.1 YAML compatibility 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude --- Gemfile | 8 +- Gemfile.lock | 484 +++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 488 insertions(+), 4 deletions(-) create mode 100644 Gemfile.lock diff --git a/Gemfile b/Gemfile index 099e936..dc851eb 100644 --- a/Gemfile +++ b/Gemfile @@ -3,7 +3,7 @@ git_source(:github) { |repo| "https://github.com/#{repo}.git" } ruby '3.1.3' -gem 'activeadmin', '~> 2.13' +gem 'activeadmin', '~> 2.9' gem 'activerecord-import' # gem 'bootsnap', '>= 1.4.2', require: false gem 'logger' @@ -28,9 +28,9 @@ gem 'rollbar' gem 'rouge' gem 'rouge-rails' gem 'rspec-rails' -gem 'rubocop-rails', '~> 2.17', require: false +gem 'rubocop-rails', '2.5.2', require: false gem 'sass-rails', '>= 6' -gem 'shoulda-matchers', '~> 5.0' +gem 'shoulda-matchers' gem 'sprockets', '~> 3.7' gem 'sprockets-rails', require: 'sprockets/railtie' gem 'vandal_ui', '~> 0.4' @@ -39,7 +39,7 @@ gem "omniauth-github", "~> 1.4" gem "omniauth-rails_csrf_protection" group :development, :test do - gem 'factory_bot_rails', '~> 6.2' + gem 'factory_bot_rails' gem 'faker' gem 'graphiti_spec_helpers' gem "dotenv-rails" diff --git a/Gemfile.lock b/Gemfile.lock new file mode 100644 index 0000000..1d086c6 --- /dev/null +++ b/Gemfile.lock @@ -0,0 +1,484 @@ +GIT + remote: https://github.com/firstdraft/graphiti-rails.git + revision: ef9bf246e15beb553f6774fcb42a9f2b473cd162 + branch: develop + specs: + graphiti-rails (0.2.3) + graphiti (~> 1.2) + rails (>= 5.0) + rescue_registry (~> 0.2.1) + +GIT + remote: https://github.com/firstdraft/ideas_generators.git + revision: c1c214d95ffe14ce49d97d9947c9fb268096f4d8 + specs: + ideas_generators (0.1.0) + railties + +GEM + remote: https://rubygems.org/ + specs: + 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.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.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.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.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.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) + activeadmin (2.14.0) + arbre (~> 1.2, >= 1.2.1) + formtastic (>= 3.1, < 5.0) + formtastic_i18n (~> 0.4) + inherited_resources (~> 1.7) + jquery-rails (~> 4.2) + kaminari (~> 1.0, >= 1.2.1) + railties (>= 6.1, < 7.1) + ransack (>= 2.1.1, < 4) + activejob (6.1.7.10) + activesupport (= 6.1.7.10) + globalid (>= 0.3.6) + activemodel (6.1.7.10) + activesupport (= 6.1.7.10) + activerecord (6.1.7.10) + activemodel (= 6.1.7.10) + activesupport (= 6.1.7.10) + activerecord-import (2.2.0) + activerecord (>= 4.2) + 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) + tzinfo (~> 2.0) + zeitwerk (~> 2.3) + annotate (3.2.0) + activerecord (>= 3.2, < 8.0) + rake (>= 10.4, < 14.0) + arbre (1.7.0) + activesupport (>= 3.0.0) + ruby2_keywords (>= 0.0.2) + ast (2.4.3) + base64 (0.3.0) + bcrypt (3.1.20) + better_errors (2.10.1) + erubi (>= 1.0.0) + rack (>= 0.9.0) + rouge (>= 1.0.0) + bigdecimal (3.2.2) + bindex (0.8.1) + binding_of_caller (1.0.1) + debug_inspector (>= 1.2.0) + bootstrap3-datetimepicker-rails (4.17.47) + momentjs-rails (>= 2.8.1) + bootstrap4-kaminari-views (1.0.1) + kaminari (>= 0.13) + rails (>= 3.1) + builder (3.3.0) + coffee-rails (5.0.0) + coffee-script (>= 2.2.0) + railties (>= 5.2.0) + coffee-script (2.4.1) + coffee-script-source + execjs + coffee-script-source (1.12.2) + concurrent-ruby (1.3.5) + crass (1.0.6) + date (3.4.1) + debug_inspector (1.2.0) + devise (4.9.4) + bcrypt (~> 3.0) + orm_adapter (~> 0.1) + railties (>= 4.1.0) + responders + warden (~> 1.2.3) + diff-lcs (1.6.2) + doorkeeper (5.4.0) + railties (>= 5) + dotenv (3.1.8) + dotenv-rails (3.1.8) + dotenv (= 3.1.8) + railties (>= 6.1) + dry-core (1.0.2) + concurrent-ruby (~> 1.0) + logger + zeitwerk (~> 2.6) + dry-inflector (1.1.0) + dry-logic (1.5.0) + concurrent-ruby (~> 1.0) + dry-core (~> 1.0, < 2) + zeitwerk (~> 2.6) + dry-types (1.7.2) + bigdecimal (~> 3.0) + concurrent-ruby (~> 1.0) + dry-core (~> 1.0) + dry-inflector (~> 1.0) + dry-logic (~> 1.4) + zeitwerk (~> 2.6) + erubi (1.13.1) + execjs (2.10.0) + factory_bot (6.5.4) + activesupport (>= 6.1.0) + factory_bot_rails (6.5.0) + factory_bot (~> 6.5) + railties (>= 6.1.0) + faker (3.5.1) + i18n (>= 1.8.11, < 2) + faraday (2.13.1) + faraday-net_http (>= 2.0, < 3.5) + json + logger + faraday-net_http (3.4.1) + net-http (>= 0.5.0) + ffi (1.17.2-x86_64-darwin) + formtastic (4.0.0) + actionpack (>= 5.2.0) + formtastic_i18n (0.7.0) + globalid (1.2.1) + activesupport (>= 6.1) + graphiti (1.8.2) + activesupport (>= 5.2) + concurrent-ruby (>= 1.2, < 2.0) + dry-types (>= 0.15.0, < 2.0) + graphiti_errors (~> 1.1.0) + jsonapi-renderer (~> 0.2, >= 0.2.2) + jsonapi-serializable (~> 0.3.0) + graphiti_errors (1.1.2) + jsonapi-serializable (~> 0.1) + graphiti_spec_helpers (1.2.0) + graphiti (>= 1.0.alpha.1) + rspec (~> 3.0) + has_scope (0.8.2) + actionpack (>= 5.2) + activesupport (>= 5.2) + hashie (5.0.0) + i18n (1.14.7) + concurrent-ruby (~> 1.0) + indefinite_article (0.2.5) + activesupport + inherited_resources (1.14.0) + actionpack (>= 6.0) + has_scope (>= 0.6) + railties (>= 6.0) + responders (>= 2) + jbuilder (2.13.0) + actionview (>= 5.0.0) + activesupport (>= 5.0.0) + jquery-rails (4.6.0) + rails-dom-testing (>= 1, < 3) + railties (>= 4.2.0) + thor (>= 0.14, < 2.0) + json (2.12.2) + jsonapi-renderer (0.2.2) + jsonapi-serializable (0.3.1) + jsonapi-renderer (~> 0.2.0) + jwt (3.0.0) + base64 + kaminari (1.2.2) + activesupport (>= 4.1.0) + kaminari-actionview (= 1.2.2) + kaminari-activerecord (= 1.2.2) + kaminari-core (= 1.2.2) + kaminari-actionview (1.2.2) + actionview + kaminari-core (= 1.2.2) + kaminari-activerecord (1.2.2) + activerecord + kaminari-core (= 1.2.2) + kaminari-core (1.2.2) + language_server-protocol (3.17.0.5) + lint_roller (1.1.0) + listen (3.9.0) + rb-fsevent (~> 0.10, >= 0.10.3) + rb-inotify (~> 0.9, >= 0.9.10) + logger (1.7.0) + loofah (2.24.1) + crass (~> 1.0.2) + nokogiri (>= 1.12.0) + mail (2.8.1) + mini_mime (>= 0.1.1) + net-imap + net-pop + net-smtp + marcel (1.0.4) + method_source (1.1.0) + mini_mime (1.1.5) + minitest (5.25.5) + momentjs-rails (2.29.4.1) + railties (>= 3.1) + multi_xml (0.6.0) + net-http (0.6.0) + uri + net-imap (0.4.22) + date + net-protocol + net-pop (0.1.2) + net-protocol + net-protocol (0.2.2) + timeout + net-smtp (0.5.1) + net-protocol + nio4r (2.7.4) + nokogiri (1.17.2-x86_64-darwin) + racc (~> 1.4) + oauth2 (2.0.12) + faraday (>= 0.17.3, < 4.0) + jwt (>= 1.0, < 4.0) + logger (~> 1.2) + multi_xml (~> 0.5) + rack (>= 1.2, < 4) + snaky_hash (~> 2.0, >= 2.0.3) + version_gem (>= 1.1.8, < 3) + omniauth (1.9.2) + hashie (>= 3.4.6) + rack (>= 1.6.2, < 3) + omniauth-github (1.4.0) + omniauth (~> 1.5) + omniauth-oauth2 (>= 1.4.0, < 2.0) + omniauth-oauth2 (1.7.3) + oauth2 (>= 1.4, < 3) + omniauth (>= 1.9, < 3) + omniauth-rails_csrf_protection (0.1.2) + actionpack (>= 4.2) + omniauth (>= 1.3.1) + orm_adapter (0.5.0) + parallel (1.27.0) + parser (3.3.8.0) + ast (~> 2.4.1) + racc + pg (1.5.9) + prism (1.4.0) + psych (3.3.4) + puma (5.6.9) + nio4r (~> 2.0) + racc (1.8.1) + rack (2.2.17) + rack-test (2.2.0) + rack (>= 1.3) + 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.7.10) + sprockets-rails (>= 2.0.0) + rails-dom-testing (2.3.0) + activesupport (>= 5.0.0) + minitest + nokogiri (>= 1.6) + 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 (6.1.7.10) + actionpack (= 6.1.7.10) + activesupport (= 6.1.7.10) + method_source + rake (>= 12.2) + thor (~> 1.0) + rainbow (3.1.1) + rake (13.3.0) + ransack (3.2.1) + activerecord (>= 6.1.5) + activesupport (>= 6.1.5) + i18n + rb-fsevent (0.11.2) + rb-inotify (0.11.1) + ffi (~> 1.0) + regexp_parser (2.10.0) + rescue_registry (0.2.5) + activesupport (>= 5.0) + responders (3.1.1) + actionpack (>= 5.2) + railties (>= 5.2) + rollbar (3.6.2) + rouge (4.5.2) + rouge-rails (0.2.1) + actionview + railties + rouge + rspec (3.13.1) + rspec-core (~> 3.13.0) + rspec-expectations (~> 3.13.0) + rspec-mocks (~> 3.13.0) + rspec-core (3.13.4) + 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) + diff-lcs (>= 1.2.0, < 2.0) + rspec-support (~> 3.13.0) + 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.4) + rubocop (1.77.0) + json (~> 2.3) + language_server-protocol (~> 3.17.0.2) + lint_roller (~> 1.1.0) + parallel (~> 1.10) + parser (>= 3.3.0.2) + rainbow (>= 2.2.2, < 4.0) + regexp_parser (>= 2.9.3, < 3.0) + rubocop-ast (>= 1.45.1, < 2.0) + ruby-progressbar (~> 1.7) + unicode-display_width (>= 2.4.0, < 4.0) + rubocop-ast (1.45.1) + parser (>= 3.3.7.2) + prism (~> 1.4) + rubocop-rails (2.5.2) + activesupport + rack (>= 1.1) + rubocop (>= 0.72.0) + ruby-progressbar (1.13.0) + ruby2_keywords (0.0.5) + sass-rails (6.0.0) + sassc-rails (~> 2.1, >= 2.1.1) + sassc (2.4.0) + ffi (~> 1.9) + sassc-rails (2.1.2) + railties (>= 4.0.0) + sassc (>= 2.0) + sprockets (> 3.0) + sprockets-rails + tilt + shoulda-matchers (5.3.0) + activesupport (>= 5.2.0) + snaky_hash (2.0.3) + hashie (>= 0.1.0, < 6) + version_gem (>= 1.1.8, < 3) + sprockets (3.7.5) + base64 + concurrent-ruby (~> 1.0) + rack (> 1, < 3) + sprockets-rails (3.5.2) + actionpack (>= 6.1) + activesupport (>= 6.1) + sprockets (>= 3.0.0) + thor (1.3.2) + tilt (2.6.0) + timeout (0.4.3) + 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) + vandal_ui (0.4.5) + version_gem (1.1.8) + warden (1.2.9) + rack (>= 2.0.9) + web-console (4.2.1) + actionview (>= 6.0.0) + activemodel (>= 6.0.0) + bindex (>= 0.4.0) + railties (>= 6.0.0) + websocket-driver (0.8.0) + base64 + websocket-extensions (>= 0.1.0) + websocket-extensions (0.1.5) + wicked (2.0.0) + railties (>= 3.0.7) + zeitwerk (2.6.18) + +PLATFORMS + x86_64-darwin-22 + +DEPENDENCIES + activeadmin (~> 2.9) + activerecord-import + annotate + better_errors + binding_of_caller + bootstrap3-datetimepicker-rails (~> 4.17.43) + bootstrap4-kaminari-views + coffee-rails + devise (~> 4.9.2) + doorkeeper (~> 5.4.0) + dotenv-rails + factory_bot_rails + faker + graphiti (~> 1.2) + graphiti-rails! + graphiti_spec_helpers + ideas_generators! + indefinite_article + jbuilder (~> 2.7) + kaminari + listen (~> 3.8) + logger + momentjs-rails (>= 2.9.0) + omniauth-github (~> 1.4) + omniauth-rails_csrf_protection + pg (>= 0.18, < 2.0) + psych (< 4) + puma (~> 5.0) + rails (~> 6.1.0) + ransack + rollbar + rouge + rouge-rails + rspec-rails + rubocop-rails (= 2.5.2) + sass-rails (>= 6) + shoulda-matchers + sprockets (~> 3.7) + sprockets-rails + vandal_ui (~> 0.4) + web-console (>= 3.3.0) + wicked + +RUBY VERSION + ruby 3.1.3p185 + +BUNDLED WITH + 2.2.32