From 1dec12a6d3fa3f4736102f01b1f2b2323213bd32 Mon Sep 17 00:00:00 2001 From: Greg Annandale Date: Tue, 16 Jan 2024 16:30:14 +0000 Subject: [PATCH 01/24] Set up GitHub Action --- .circleci/config.yml | 48 -------------------------------------- .github/workflows/ruby.yml | 32 +++++++++++++++++++++++++ 2 files changed, 32 insertions(+), 48 deletions(-) delete mode 100644 .circleci/config.yml create mode 100644 .github/workflows/ruby.yml diff --git a/.circleci/config.yml b/.circleci/config.yml deleted file mode 100644 index 07a4f1b..0000000 --- a/.circleci/config.yml +++ /dev/null @@ -1,48 +0,0 @@ -version: 2.1 -orbs: - ruby: circleci/ruby@2.0.0 - -jobs: - test: - parameters: - ruby-version: - type: string - rails-version: - type: string - docker: - - image: cimg/ruby:<< parameters.ruby-version >> - steps: - - checkout - - ruby/install-deps: - key: gems-v2-ruby-<< parameters.ruby-version >>+rails-<< parameters.rails-version >>- - gemfile: gemfiles/rails_<< parameters.rails-version >>.gemfile - - ruby/rspec-test - - rubocop: - docker: - - image: cimg/ruby:2.7.7 - steps: - - checkout - - ruby/install-deps: - key: gems-v2-ruby-2.7.7+rails-7.0 - - ruby/rubocop-check: - format: progress - label: Inspecting with Rubocop - -workflows: - tests: - jobs: - - test: - matrix: - parameters: - rails-version: ["6.1", "7.0"] - ruby-version: ["2.7.7", "3.0.5", "3.1.3"] - - code_quality: - jobs: - - rubocop: - filters: - branches: - ignore: - - master - - main diff --git a/.github/workflows/ruby.yml b/.github/workflows/ruby.yml new file mode 100644 index 0000000..83974af --- /dev/null +++ b/.github/workflows/ruby.yml @@ -0,0 +1,32 @@ +# This workflow uses actions that are not certified by GitHub. +# They are provided by a third-party and are governed by +# separate terms of service, privacy policy, and support +# documentation. +# This workflow will download a prebuilt Ruby version, install dependencies and run tests with Rake +# For more information see: https://github.com/marketplace/actions/setup-ruby-jruby-and-truffleruby + +name: Ruby + +on: + push: + branches: [ main ] + pull_request: + branches: [ main ] + +jobs: + test: + + runs-on: ubuntu-latest + strategy: + matrix: + ruby-version: ['2.6', '2.7', '3.0', '3.1', '3.2', '3.3'] + + steps: + - uses: actions/checkout@v2 + - name: Set up Ruby + uses: ruby/setup-ruby@v1 + with: + ruby-version: ${{ matrix.ruby-version }} + bundler-cache: true # runs 'bundle install' and caches installed gems automatically + - name: Run tests + run: bundle exec rake From bf618ba27ca947117dca8ef139f273742afa3d1f Mon Sep 17 00:00:00 2001 From: Greg Annandale Date: Tue, 16 Jan 2024 16:45:15 +0000 Subject: [PATCH 02/24] Update Gems --- Gemfile.lock | 42 ++++++++++++++++++++++-------------------- 1 file changed, 22 insertions(+), 20 deletions(-) diff --git a/Gemfile.lock b/Gemfile.lock index f814c98..d546133 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -1,7 +1,7 @@ PATH remote: . specs: - rpi_auth (3.3.0) + rpi_auth (3.4.0) omniauth-rails_csrf_protection (~> 1.0.0) omniauth_openid_connect (~> 0.7.1) rails (>= 6.1.4) @@ -76,7 +76,7 @@ GEM tzinfo (~> 2.0) aes_key_wrap (1.1.0) ast (2.4.2) - attr_required (1.0.1) + attr_required (1.0.2) base64 (0.2.0) bindata (2.4.15) builder (3.2.4) @@ -86,14 +86,15 @@ GEM crass (1.0.6) diff-lcs (1.5.0) docile (1.4.0) + email_validator (2.2.4) + activemodel erubi (1.11.0) - faraday (2.7.12) - base64 - faraday-net_http (>= 2.0, < 3.1) - ruby2_keywords (>= 0.0.4) + faraday (2.9.0) + faraday-net_http (>= 2.0, < 3.2) faraday-follow_redirects (0.3.0) faraday (>= 1, < 3) - faraday-net_http (3.0.2) + faraday-net_http (3.1.0) + net-http ffi (1.15.5) globalid (1.1.0) activesupport (>= 5.0) @@ -101,9 +102,10 @@ GEM i18n (1.13.0) concurrent-ruby (~> 1.0) json (2.6.2) - json-jwt (1.16.3) + json-jwt (1.16.5) activesupport (>= 4.2) aes_key_wrap + base64 bindata faraday (~> 2.0) faraday-follow_redirects @@ -119,6 +121,8 @@ GEM method_source (1.0.0) mini_mime (1.1.2) minitest (5.18.0) + net-http (0.4.1) + uri net-imap (0.3.1) net-protocol net-pop (0.1.2) @@ -132,7 +136,7 @@ GEM racc (~> 1.4) nokogiri (1.14.3-x86_64-linux) racc (~> 1.4) - omniauth (2.1.1) + omniauth (2.1.2) hashie (>= 3.4.6) rack (>= 2.2.3) rack-protection @@ -142,17 +146,17 @@ GEM omniauth_openid_connect (0.7.1) omniauth (>= 1.9, < 3) openid_connect (~> 2.2) - openid_connect (2.2.0) + openid_connect (2.3.0) activemodel attr_required (>= 1.0.0) + email_validator faraday (~> 2.0) faraday-follow_redirects json-jwt (>= 1.16) - net-smtp + mail rack-oauth2 (~> 2.2) swd (~> 2.0) tzinfo - validate_email validate_url webfinger (~> 2.0) parallel (1.22.1) @@ -169,14 +173,15 @@ GEM nio4r (~> 2.0) racc (1.6.2) rack (2.2.7) - rack-oauth2 (2.2.0) + rack-oauth2 (2.2.1) activesupport attr_required faraday (~> 2.0) faraday-follow_redirects json-jwt (>= 1.11.0) rack (>= 2.1.0) - rack-protection (3.1.0) + rack-protection (3.2.0) + base64 (>= 0.1.0) rack (~> 2.2, >= 2.2.4) rack-test (2.0.2) rack (>= 1.3) @@ -254,14 +259,13 @@ GEM rubocop-rspec (2.15.0) rubocop (~> 1.33) ruby-progressbar (1.11.0) - ruby2_keywords (0.0.5) simplecov (0.21.2) docile (~> 1.1) simplecov-html (~> 0.11) simplecov_json_formatter (~> 0.1) simplecov-html (0.12.3) simplecov_json_formatter (0.1.4) - swd (2.0.2) + swd (2.0.3) activesupport (>= 3) attr_required (>= 0.0.5) faraday (~> 2.0) @@ -271,13 +275,11 @@ GEM tzinfo (2.0.6) concurrent-ruby (~> 1.0) unicode-display_width (2.3.0) - validate_email (0.1.6) - activemodel (>= 3.0) - mail (>= 2.2.5) + uri (0.13.0) validate_url (1.0.15) activemodel (>= 3.0.0) public_suffix - webfinger (2.1.2) + webfinger (2.1.3) activesupport faraday (~> 2.0) faraday-follow_redirects From cbf79e5e1fe11d6b0e95138d0b47554322355940 Mon Sep 17 00:00:00 2001 From: Greg Annandale Date: Tue, 16 Jan 2024 16:49:05 +0000 Subject: [PATCH 03/24] Update Gems --- Gemfile.lock | 305 ++++++++++++++++++++++++++++++--------------------- 1 file changed, 177 insertions(+), 128 deletions(-) diff --git a/Gemfile.lock b/Gemfile.lock index d546133..dde713d 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -9,99 +9,117 @@ PATH GEM remote: https://rubygems.org/ specs: - actioncable (7.0.4) - actionpack (= 7.0.4) - activesupport (= 7.0.4) + actioncable (7.1.2) + actionpack (= 7.1.2) + activesupport (= 7.1.2) nio4r (~> 2.0) websocket-driver (>= 0.6.1) - actionmailbox (7.0.4) - actionpack (= 7.0.4) - activejob (= 7.0.4) - activerecord (= 7.0.4) - activestorage (= 7.0.4) - activesupport (= 7.0.4) + zeitwerk (~> 2.6) + actionmailbox (7.1.2) + actionpack (= 7.1.2) + activejob (= 7.1.2) + activerecord (= 7.1.2) + activestorage (= 7.1.2) + activesupport (= 7.1.2) mail (>= 2.7.1) net-imap net-pop net-smtp - actionmailer (7.0.4) - actionpack (= 7.0.4) - actionview (= 7.0.4) - activejob (= 7.0.4) - activesupport (= 7.0.4) + actionmailer (7.1.2) + actionpack (= 7.1.2) + actionview (= 7.1.2) + activejob (= 7.1.2) + activesupport (= 7.1.2) mail (~> 2.5, >= 2.5.4) net-imap net-pop net-smtp - rails-dom-testing (~> 2.0) - actionpack (7.0.4) - actionview (= 7.0.4) - activesupport (= 7.0.4) - rack (~> 2.0, >= 2.2.0) + rails-dom-testing (~> 2.2) + actionpack (7.1.2) + actionview (= 7.1.2) + activesupport (= 7.1.2) + nokogiri (>= 1.8.5) + racc + rack (>= 2.2.4) + rack-session (>= 1.0.1) rack-test (>= 0.6.3) - rails-dom-testing (~> 2.0) - rails-html-sanitizer (~> 1.0, >= 1.2.0) - actiontext (7.0.4) - actionpack (= 7.0.4) - activerecord (= 7.0.4) - activestorage (= 7.0.4) - activesupport (= 7.0.4) + rails-dom-testing (~> 2.2) + rails-html-sanitizer (~> 1.6) + actiontext (7.1.2) + actionpack (= 7.1.2) + activerecord (= 7.1.2) + activestorage (= 7.1.2) + activesupport (= 7.1.2) globalid (>= 0.6.0) nokogiri (>= 1.8.5) - actionview (7.0.4) - activesupport (= 7.0.4) + actionview (7.1.2) + activesupport (= 7.1.2) builder (~> 3.1) - erubi (~> 1.4) - rails-dom-testing (~> 2.0) - rails-html-sanitizer (~> 1.1, >= 1.2.0) - activejob (7.0.4) - activesupport (= 7.0.4) + erubi (~> 1.11) + rails-dom-testing (~> 2.2) + rails-html-sanitizer (~> 1.6) + activejob (7.1.2) + activesupport (= 7.1.2) globalid (>= 0.3.6) - activemodel (7.0.4) - activesupport (= 7.0.4) - activerecord (7.0.4) - activemodel (= 7.0.4) - activesupport (= 7.0.4) - activestorage (7.0.4) - actionpack (= 7.0.4) - activejob (= 7.0.4) - activerecord (= 7.0.4) - activesupport (= 7.0.4) + activemodel (7.1.2) + activesupport (= 7.1.2) + activerecord (7.1.2) + activemodel (= 7.1.2) + activesupport (= 7.1.2) + timeout (>= 0.4.0) + activestorage (7.1.2) + actionpack (= 7.1.2) + activejob (= 7.1.2) + activerecord (= 7.1.2) + activesupport (= 7.1.2) marcel (~> 1.0) - mini_mime (>= 1.1.0) - activesupport (7.0.4) + activesupport (7.1.2) + base64 + bigdecimal concurrent-ruby (~> 1.0, >= 1.0.2) + connection_pool (>= 2.2.5) + drb i18n (>= 1.6, < 2) minitest (>= 5.1) + mutex_m tzinfo (~> 2.0) aes_key_wrap (1.1.0) ast (2.4.2) attr_required (1.0.2) base64 (0.2.0) + bigdecimal (3.1.5) bindata (2.4.15) builder (3.2.4) byebug (11.1.3) coderay (1.1.3) - concurrent-ruby (1.2.2) + concurrent-ruby (1.2.3) + connection_pool (2.4.1) crass (1.0.6) + date (3.3.4) diff-lcs (1.5.0) docile (1.4.0) + drb (2.2.0) + ruby2_keywords email_validator (2.2.4) activemodel - erubi (1.11.0) + erubi (1.12.0) faraday (2.9.0) faraday-net_http (>= 2.0, < 3.2) faraday-follow_redirects (0.3.0) faraday (>= 1, < 3) faraday-net_http (3.1.0) net-http - ffi (1.15.5) - globalid (1.1.0) - activesupport (>= 5.0) + ffi (1.16.3) + globalid (1.2.1) + activesupport (>= 6.1) hashie (5.0.0) - i18n (1.13.0) + i18n (1.14.1) concurrent-ruby (~> 1.0) - json (2.6.2) + io-console (0.7.1) + irb (1.11.1) + rdoc + reline (>= 0.4.2) + json (2.7.1) json-jwt (1.16.5) activesupport (>= 4.2) aes_key_wrap @@ -109,32 +127,38 @@ GEM bindata faraday (~> 2.0) faraday-follow_redirects - listen (3.7.1) + language_server-protocol (3.17.0.3) + listen (3.8.0) rb-fsevent (~> 0.10, >= 0.10.3) rb-inotify (~> 0.9, >= 0.9.10) - loofah (2.19.1) + loofah (2.22.0) 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) + net-imap + net-pop + net-smtp marcel (1.0.2) method_source (1.0.0) - mini_mime (1.1.2) - minitest (5.18.0) + mini_mime (1.1.5) + minitest (5.21.1) + mutex_m (0.2.0) net-http (0.4.1) uri - net-imap (0.3.1) + net-imap (0.4.9.1) + date net-protocol net-pop (0.1.2) net-protocol - net-protocol (0.1.3) + net-protocol (0.2.2) timeout - net-smtp (0.3.3) + net-smtp (0.4.0.1) net-protocol - nio4r (2.5.8) - nokogiri (1.14.3-arm64-darwin) + nio4r (2.7.0) + nokogiri (1.16.0-arm64-darwin) racc (~> 1.4) - nokogiri (1.14.3-x86_64-linux) + nokogiri (1.16.0-x86_64-linux) racc (~> 1.4) omniauth (2.1.2) hashie (>= 3.4.6) @@ -159,20 +183,23 @@ GEM tzinfo validate_url webfinger (~> 2.0) - parallel (1.22.1) - parser (3.1.3.0) + parallel (1.24.0) + parser (3.3.0.4) ast (~> 2.4.1) - pry (0.14.1) + racc + pry (0.14.2) coderay (~> 1.1) method_source (~> 1.0) pry-byebug (3.10.1) byebug (~> 11.0) pry (>= 0.13, < 0.15) + psych (5.1.2) + stringio public_suffix (5.0.4) - puma (6.2.2) + puma (6.4.2) nio4r (~> 2.0) - racc (1.6.2) - rack (2.2.7) + racc (1.7.3) + rack (3.0.8) rack-oauth2 (2.2.1) activesupport attr_required @@ -180,101 +207,122 @@ GEM faraday-follow_redirects json-jwt (>= 1.11.0) rack (>= 2.1.0) - rack-protection (3.2.0) - base64 (>= 0.1.0) - rack (~> 2.2, >= 2.2.4) - rack-test (2.0.2) + rack-protection (3.0.6) + rack + rack-session (2.0.0) + rack (>= 3.0.0) + rack-test (2.1.0) rack (>= 1.3) - rails (7.0.4) - actioncable (= 7.0.4) - actionmailbox (= 7.0.4) - actionmailer (= 7.0.4) - actionpack (= 7.0.4) - actiontext (= 7.0.4) - actionview (= 7.0.4) - activejob (= 7.0.4) - activemodel (= 7.0.4) - activerecord (= 7.0.4) - activestorage (= 7.0.4) - activesupport (= 7.0.4) + rackup (2.1.0) + rack (>= 3) + webrick (~> 1.8) + rails (7.1.2) + actioncable (= 7.1.2) + actionmailbox (= 7.1.2) + actionmailer (= 7.1.2) + actionpack (= 7.1.2) + actiontext (= 7.1.2) + actionview (= 7.1.2) + activejob (= 7.1.2) + activemodel (= 7.1.2) + activerecord (= 7.1.2) + activestorage (= 7.1.2) + activesupport (= 7.1.2) bundler (>= 1.15.0) - railties (= 7.0.4) - rails-dom-testing (2.0.3) - activesupport (>= 4.2.0) + railties (= 7.1.2) + rails-dom-testing (2.2.0) + activesupport (>= 5.0.0) + minitest nokogiri (>= 1.6) - rails-html-sanitizer (1.4.4) - loofah (~> 2.19, >= 2.19.1) - railties (7.0.4) - actionpack (= 7.0.4) - activesupport (= 7.0.4) - method_source + rails-html-sanitizer (1.6.0) + loofah (~> 2.21) + nokogiri (~> 1.14) + railties (7.1.2) + actionpack (= 7.1.2) + activesupport (= 7.1.2) + irb + rackup (>= 1.0.0) rake (>= 12.2) - thor (~> 1.0) - zeitwerk (~> 2.5) + thor (~> 1.0, >= 1.2.2) + zeitwerk (~> 2.6) rainbow (3.1.1) - rake (13.0.6) + rake (13.1.0) rb-fsevent (0.11.2) rb-inotify (0.10.1) ffi (~> 1.0) - regexp_parser (2.6.1) - rexml (3.2.5) - rspec-core (3.12.0) + rdoc (6.6.2) + psych (>= 4.0.0) + regexp_parser (2.9.0) + reline (0.4.2) + io-console (~> 0.5) + rexml (3.2.6) + rspec-core (3.12.2) rspec-support (~> 3.12.0) - rspec-expectations (3.12.0) + rspec-expectations (3.12.3) diff-lcs (>= 1.2.0, < 2.0) rspec-support (~> 3.12.0) - rspec-mocks (3.12.0) + rspec-mocks (3.12.6) diff-lcs (>= 1.2.0, < 2.0) rspec-support (~> 3.12.0) - rspec-rails (6.0.1) + rspec-rails (6.1.0) actionpack (>= 6.1) activesupport (>= 6.1) railties (>= 6.1) - rspec-core (~> 3.11) - rspec-expectations (~> 3.11) - rspec-mocks (~> 3.11) - rspec-support (~> 3.11) - rspec-support (3.12.0) + rspec-core (~> 3.12) + rspec-expectations (~> 3.12) + rspec-mocks (~> 3.12) + rspec-support (~> 3.12) + rspec-support (3.12.1) rspec_junit_formatter (0.6.0) rspec-core (>= 2, < 4, != 2.12.0) - rubocop (1.39.0) + rubocop (1.60.0) json (~> 2.3) + language_server-protocol (>= 3.17.0) parallel (~> 1.10) - parser (>= 3.1.2.1) + parser (>= 3.3.0.2) rainbow (>= 2.2.2, < 4.0) regexp_parser (>= 1.8, < 3.0) rexml (>= 3.2.5, < 4.0) - rubocop-ast (>= 1.23.0, < 2.0) + rubocop-ast (>= 1.30.0, < 2.0) ruby-progressbar (~> 1.7) - unicode-display_width (>= 1.4.0, < 3.0) - rubocop-ast (1.24.0) - parser (>= 3.1.1.0) - rubocop-performance (1.15.1) - rubocop (>= 1.7.0, < 2.0) - rubocop-ast (>= 0.4.0) - rubocop-rails (2.17.3) + unicode-display_width (>= 2.4.0, < 3.0) + rubocop-ast (1.30.0) + parser (>= 3.2.1.0) + rubocop-capybara (2.20.0) + rubocop (~> 1.41) + rubocop-factory_bot (2.25.1) + rubocop (~> 1.41) + rubocop-performance (1.20.2) + rubocop (>= 1.48.1, < 2.0) + rubocop-ast (>= 1.30.0, < 2.0) + rubocop-rails (2.23.1) activesupport (>= 4.2.0) rack (>= 1.1) rubocop (>= 1.33.0, < 2.0) - rubocop-rspec (2.15.0) - rubocop (~> 1.33) - ruby-progressbar (1.11.0) - simplecov (0.21.2) + rubocop-ast (>= 1.30.0, < 2.0) + rubocop-rspec (2.26.1) + rubocop (~> 1.40) + rubocop-capybara (~> 2.17) + rubocop-factory_bot (~> 2.22) + ruby-progressbar (1.13.0) + ruby2_keywords (0.0.5) + simplecov (0.22.0) docile (~> 1.1) simplecov-html (~> 0.11) simplecov_json_formatter (~> 0.1) simplecov-html (0.12.3) simplecov_json_formatter (0.1.4) + stringio (3.1.0) swd (2.0.3) activesupport (>= 3) attr_required (>= 0.0.5) faraday (~> 2.0) faraday-follow_redirects - thor (1.2.1) - timeout (0.3.0) + thor (1.3.0) + timeout (0.4.1) tzinfo (2.0.6) concurrent-ruby (~> 1.0) - unicode-display_width (2.3.0) + unicode-display_width (2.5.0) uri (0.13.0) validate_url (1.0.15) activemodel (>= 3.0.0) @@ -283,10 +331,11 @@ GEM activesupport faraday (~> 2.0) faraday-follow_redirects - websocket-driver (0.7.5) + webrick (1.8.1) + websocket-driver (0.7.6) websocket-extensions (>= 0.1.0) websocket-extensions (0.1.5) - zeitwerk (2.6.6) + zeitwerk (2.6.12) PLATFORMS arm64-darwin-22 From 898d384fda53da583a384f2fc36b8262f1102103 Mon Sep 17 00:00:00 2001 From: Greg Annandale Date: Tue, 16 Jan 2024 16:51:00 +0000 Subject: [PATCH 04/24] Execute rspec --- .github/workflows/ruby.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ruby.yml b/.github/workflows/ruby.yml index 83974af..8499e30 100644 --- a/.github/workflows/ruby.yml +++ b/.github/workflows/ruby.yml @@ -29,4 +29,4 @@ jobs: ruby-version: ${{ matrix.ruby-version }} bundler-cache: true # runs 'bundle install' and caches installed gems automatically - name: Run tests - run: bundle exec rake + run: bundle exec rspec From 5c7f2537f8d9a1247df093728efa2c866ed17b18 Mon Sep 17 00:00:00 2001 From: Greg Annandale Date: Tue, 16 Jan 2024 17:07:55 +0000 Subject: [PATCH 05/24] Only test Ruby >=3 --- .github/workflows/ruby.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ruby.yml b/.github/workflows/ruby.yml index 8499e30..e8e6d4c 100644 --- a/.github/workflows/ruby.yml +++ b/.github/workflows/ruby.yml @@ -19,7 +19,7 @@ jobs: runs-on: ubuntu-latest strategy: matrix: - ruby-version: ['2.6', '2.7', '3.0', '3.1', '3.2', '3.3'] + ruby-version: ['3.0', '3.1', '3.2', '3.3'] steps: - uses: actions/checkout@v2 From e8514977b428bf1253b2157c8e21ef297b6924ce Mon Sep 17 00:00:00 2001 From: Greg Annandale Date: Tue, 16 Jan 2024 17:09:34 +0000 Subject: [PATCH 06/24] Revert "Only test Ruby >=3" This reverts commit 5c7f2537f8d9a1247df093728efa2c866ed17b18. --- .github/workflows/ruby.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ruby.yml b/.github/workflows/ruby.yml index e8e6d4c..8499e30 100644 --- a/.github/workflows/ruby.yml +++ b/.github/workflows/ruby.yml @@ -19,7 +19,7 @@ jobs: runs-on: ubuntu-latest strategy: matrix: - ruby-version: ['3.0', '3.1', '3.2', '3.3'] + ruby-version: ['2.6', '2.7', '3.0', '3.1', '3.2', '3.3'] steps: - uses: actions/checkout@v2 From 59fc14c85916079e3998424d99961da83d3502fc Mon Sep 17 00:00:00 2001 From: Greg Annandale Date: Tue, 16 Jan 2024 17:36:56 +0000 Subject: [PATCH 07/24] Remove Ruby 2.6 --- .github/workflows/ruby.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ruby.yml b/.github/workflows/ruby.yml index 8499e30..95c41f3 100644 --- a/.github/workflows/ruby.yml +++ b/.github/workflows/ruby.yml @@ -19,7 +19,7 @@ jobs: runs-on: ubuntu-latest strategy: matrix: - ruby-version: ['2.6', '2.7', '3.0', '3.1', '3.2', '3.3'] + ruby-version: ['2.7', '3.0', '3.1', '3.2', '3.3'] steps: - uses: actions/checkout@v2 From a36d73d8d3257af60a2ef6ab4db98431f8f33c5d Mon Sep 17 00:00:00 2001 From: Patrick Cherry Date: Tue, 16 Jan 2024 18:04:30 +0000 Subject: [PATCH 08/24] Add in rails-version gemfiles --- .github/workflows/ruby.yml | 6 +- Gemfile.lock | 341 ++++++++++++++++--------------------- 2 files changed, 150 insertions(+), 197 deletions(-) diff --git a/.github/workflows/ruby.yml b/.github/workflows/ruby.yml index 95c41f3..65f6e6d 100644 --- a/.github/workflows/ruby.yml +++ b/.github/workflows/ruby.yml @@ -18,13 +18,17 @@ jobs: runs-on: ubuntu-latest strategy: + fail_fast: false matrix: - ruby-version: ['2.7', '3.0', '3.1', '3.2', '3.3'] + ruby-version: ['2.7', '3.1', '3.2'] + gemfile: [ rails_6.1, rails_7.0 ] steps: - uses: actions/checkout@v2 - name: Set up Ruby uses: ruby/setup-ruby@v1 + env: + BUNDLE_GEMFILE: ${{ github.workspace }}/gemfiles/${{ matrix.gemfile }}.gemfile with: ruby-version: ${{ matrix.ruby-version }} bundler-cache: true # runs 'bundle install' and caches installed gems automatically diff --git a/Gemfile.lock b/Gemfile.lock index dde713d..f814c98 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -1,7 +1,7 @@ PATH remote: . specs: - rpi_auth (3.4.0) + rpi_auth (3.3.0) omniauth-rails_csrf_protection (~> 1.0.0) omniauth_openid_connect (~> 0.7.1) rails (>= 6.1.4) @@ -9,158 +9,130 @@ PATH GEM remote: https://rubygems.org/ specs: - actioncable (7.1.2) - actionpack (= 7.1.2) - activesupport (= 7.1.2) + actioncable (7.0.4) + actionpack (= 7.0.4) + activesupport (= 7.0.4) nio4r (~> 2.0) websocket-driver (>= 0.6.1) - zeitwerk (~> 2.6) - actionmailbox (7.1.2) - actionpack (= 7.1.2) - activejob (= 7.1.2) - activerecord (= 7.1.2) - activestorage (= 7.1.2) - activesupport (= 7.1.2) + actionmailbox (7.0.4) + actionpack (= 7.0.4) + activejob (= 7.0.4) + activerecord (= 7.0.4) + activestorage (= 7.0.4) + activesupport (= 7.0.4) mail (>= 2.7.1) net-imap net-pop net-smtp - actionmailer (7.1.2) - actionpack (= 7.1.2) - actionview (= 7.1.2) - activejob (= 7.1.2) - activesupport (= 7.1.2) + actionmailer (7.0.4) + actionpack (= 7.0.4) + actionview (= 7.0.4) + activejob (= 7.0.4) + activesupport (= 7.0.4) mail (~> 2.5, >= 2.5.4) net-imap net-pop net-smtp - rails-dom-testing (~> 2.2) - actionpack (7.1.2) - actionview (= 7.1.2) - activesupport (= 7.1.2) - nokogiri (>= 1.8.5) - racc - rack (>= 2.2.4) - rack-session (>= 1.0.1) + rails-dom-testing (~> 2.0) + actionpack (7.0.4) + actionview (= 7.0.4) + activesupport (= 7.0.4) + rack (~> 2.0, >= 2.2.0) rack-test (>= 0.6.3) - rails-dom-testing (~> 2.2) - rails-html-sanitizer (~> 1.6) - actiontext (7.1.2) - actionpack (= 7.1.2) - activerecord (= 7.1.2) - activestorage (= 7.1.2) - activesupport (= 7.1.2) + rails-dom-testing (~> 2.0) + rails-html-sanitizer (~> 1.0, >= 1.2.0) + actiontext (7.0.4) + actionpack (= 7.0.4) + activerecord (= 7.0.4) + activestorage (= 7.0.4) + activesupport (= 7.0.4) globalid (>= 0.6.0) nokogiri (>= 1.8.5) - actionview (7.1.2) - activesupport (= 7.1.2) + actionview (7.0.4) + activesupport (= 7.0.4) builder (~> 3.1) - erubi (~> 1.11) - rails-dom-testing (~> 2.2) - rails-html-sanitizer (~> 1.6) - activejob (7.1.2) - activesupport (= 7.1.2) + erubi (~> 1.4) + rails-dom-testing (~> 2.0) + rails-html-sanitizer (~> 1.1, >= 1.2.0) + activejob (7.0.4) + activesupport (= 7.0.4) globalid (>= 0.3.6) - activemodel (7.1.2) - activesupport (= 7.1.2) - activerecord (7.1.2) - activemodel (= 7.1.2) - activesupport (= 7.1.2) - timeout (>= 0.4.0) - activestorage (7.1.2) - actionpack (= 7.1.2) - activejob (= 7.1.2) - activerecord (= 7.1.2) - activesupport (= 7.1.2) + activemodel (7.0.4) + activesupport (= 7.0.4) + activerecord (7.0.4) + activemodel (= 7.0.4) + activesupport (= 7.0.4) + activestorage (7.0.4) + actionpack (= 7.0.4) + activejob (= 7.0.4) + activerecord (= 7.0.4) + activesupport (= 7.0.4) marcel (~> 1.0) - activesupport (7.1.2) - base64 - bigdecimal + mini_mime (>= 1.1.0) + activesupport (7.0.4) concurrent-ruby (~> 1.0, >= 1.0.2) - connection_pool (>= 2.2.5) - drb i18n (>= 1.6, < 2) minitest (>= 5.1) - mutex_m tzinfo (~> 2.0) aes_key_wrap (1.1.0) ast (2.4.2) - attr_required (1.0.2) + attr_required (1.0.1) base64 (0.2.0) - bigdecimal (3.1.5) bindata (2.4.15) builder (3.2.4) byebug (11.1.3) coderay (1.1.3) - concurrent-ruby (1.2.3) - connection_pool (2.4.1) + concurrent-ruby (1.2.2) crass (1.0.6) - date (3.3.4) diff-lcs (1.5.0) docile (1.4.0) - drb (2.2.0) - ruby2_keywords - email_validator (2.2.4) - activemodel - erubi (1.12.0) - faraday (2.9.0) - faraday-net_http (>= 2.0, < 3.2) + erubi (1.11.0) + faraday (2.7.12) + base64 + faraday-net_http (>= 2.0, < 3.1) + ruby2_keywords (>= 0.0.4) faraday-follow_redirects (0.3.0) faraday (>= 1, < 3) - faraday-net_http (3.1.0) - net-http - ffi (1.16.3) - globalid (1.2.1) - activesupport (>= 6.1) + faraday-net_http (3.0.2) + ffi (1.15.5) + globalid (1.1.0) + activesupport (>= 5.0) hashie (5.0.0) - i18n (1.14.1) + i18n (1.13.0) concurrent-ruby (~> 1.0) - io-console (0.7.1) - irb (1.11.1) - rdoc - reline (>= 0.4.2) - json (2.7.1) - json-jwt (1.16.5) + json (2.6.2) + json-jwt (1.16.3) activesupport (>= 4.2) aes_key_wrap - base64 bindata faraday (~> 2.0) faraday-follow_redirects - language_server-protocol (3.17.0.3) - listen (3.8.0) + listen (3.7.1) rb-fsevent (~> 0.10, >= 0.10.3) rb-inotify (~> 0.9, >= 0.9.10) - loofah (2.22.0) + loofah (2.19.1) crass (~> 1.0.2) - nokogiri (>= 1.12.0) - mail (2.8.1) + nokogiri (>= 1.5.9) + mail (2.7.1) mini_mime (>= 0.1.1) - net-imap - net-pop - net-smtp marcel (1.0.2) method_source (1.0.0) - mini_mime (1.1.5) - minitest (5.21.1) - mutex_m (0.2.0) - net-http (0.4.1) - uri - net-imap (0.4.9.1) - date + mini_mime (1.1.2) + minitest (5.18.0) + net-imap (0.3.1) net-protocol net-pop (0.1.2) net-protocol - net-protocol (0.2.2) + net-protocol (0.1.3) timeout - net-smtp (0.4.0.1) + net-smtp (0.3.3) net-protocol - nio4r (2.7.0) - nokogiri (1.16.0-arm64-darwin) + nio4r (2.5.8) + nokogiri (1.14.3-arm64-darwin) racc (~> 1.4) - nokogiri (1.16.0-x86_64-linux) + nokogiri (1.14.3-x86_64-linux) racc (~> 1.4) - omniauth (2.1.2) + omniauth (2.1.1) hashie (>= 3.4.6) rack (>= 2.2.3) rack-protection @@ -170,172 +142,149 @@ GEM omniauth_openid_connect (0.7.1) omniauth (>= 1.9, < 3) openid_connect (~> 2.2) - openid_connect (2.3.0) + openid_connect (2.2.0) activemodel attr_required (>= 1.0.0) - email_validator faraday (~> 2.0) faraday-follow_redirects json-jwt (>= 1.16) - mail + net-smtp rack-oauth2 (~> 2.2) swd (~> 2.0) tzinfo + validate_email validate_url webfinger (~> 2.0) - parallel (1.24.0) - parser (3.3.0.4) + parallel (1.22.1) + parser (3.1.3.0) ast (~> 2.4.1) - racc - pry (0.14.2) + pry (0.14.1) coderay (~> 1.1) method_source (~> 1.0) pry-byebug (3.10.1) byebug (~> 11.0) pry (>= 0.13, < 0.15) - psych (5.1.2) - stringio public_suffix (5.0.4) - puma (6.4.2) + puma (6.2.2) nio4r (~> 2.0) - racc (1.7.3) - rack (3.0.8) - rack-oauth2 (2.2.1) + racc (1.6.2) + rack (2.2.7) + rack-oauth2 (2.2.0) activesupport attr_required faraday (~> 2.0) faraday-follow_redirects json-jwt (>= 1.11.0) rack (>= 2.1.0) - rack-protection (3.0.6) - rack - rack-session (2.0.0) - rack (>= 3.0.0) - rack-test (2.1.0) + rack-protection (3.1.0) + rack (~> 2.2, >= 2.2.4) + rack-test (2.0.2) rack (>= 1.3) - rackup (2.1.0) - rack (>= 3) - webrick (~> 1.8) - rails (7.1.2) - actioncable (= 7.1.2) - actionmailbox (= 7.1.2) - actionmailer (= 7.1.2) - actionpack (= 7.1.2) - actiontext (= 7.1.2) - actionview (= 7.1.2) - activejob (= 7.1.2) - activemodel (= 7.1.2) - activerecord (= 7.1.2) - activestorage (= 7.1.2) - activesupport (= 7.1.2) + rails (7.0.4) + actioncable (= 7.0.4) + actionmailbox (= 7.0.4) + actionmailer (= 7.0.4) + actionpack (= 7.0.4) + actiontext (= 7.0.4) + actionview (= 7.0.4) + activejob (= 7.0.4) + activemodel (= 7.0.4) + activerecord (= 7.0.4) + activestorage (= 7.0.4) + activesupport (= 7.0.4) bundler (>= 1.15.0) - railties (= 7.1.2) - rails-dom-testing (2.2.0) - activesupport (>= 5.0.0) - minitest + railties (= 7.0.4) + rails-dom-testing (2.0.3) + activesupport (>= 4.2.0) nokogiri (>= 1.6) - rails-html-sanitizer (1.6.0) - loofah (~> 2.21) - nokogiri (~> 1.14) - railties (7.1.2) - actionpack (= 7.1.2) - activesupport (= 7.1.2) - irb - rackup (>= 1.0.0) + rails-html-sanitizer (1.4.4) + loofah (~> 2.19, >= 2.19.1) + railties (7.0.4) + actionpack (= 7.0.4) + activesupport (= 7.0.4) + method_source rake (>= 12.2) - thor (~> 1.0, >= 1.2.2) - zeitwerk (~> 2.6) + thor (~> 1.0) + zeitwerk (~> 2.5) rainbow (3.1.1) - rake (13.1.0) + rake (13.0.6) rb-fsevent (0.11.2) rb-inotify (0.10.1) ffi (~> 1.0) - rdoc (6.6.2) - psych (>= 4.0.0) - regexp_parser (2.9.0) - reline (0.4.2) - io-console (~> 0.5) - rexml (3.2.6) - rspec-core (3.12.2) + regexp_parser (2.6.1) + rexml (3.2.5) + rspec-core (3.12.0) rspec-support (~> 3.12.0) - rspec-expectations (3.12.3) + rspec-expectations (3.12.0) diff-lcs (>= 1.2.0, < 2.0) rspec-support (~> 3.12.0) - rspec-mocks (3.12.6) + rspec-mocks (3.12.0) diff-lcs (>= 1.2.0, < 2.0) rspec-support (~> 3.12.0) - rspec-rails (6.1.0) + rspec-rails (6.0.1) actionpack (>= 6.1) activesupport (>= 6.1) railties (>= 6.1) - rspec-core (~> 3.12) - rspec-expectations (~> 3.12) - rspec-mocks (~> 3.12) - rspec-support (~> 3.12) - rspec-support (3.12.1) + rspec-core (~> 3.11) + rspec-expectations (~> 3.11) + rspec-mocks (~> 3.11) + rspec-support (~> 3.11) + rspec-support (3.12.0) rspec_junit_formatter (0.6.0) rspec-core (>= 2, < 4, != 2.12.0) - rubocop (1.60.0) + rubocop (1.39.0) json (~> 2.3) - language_server-protocol (>= 3.17.0) parallel (~> 1.10) - parser (>= 3.3.0.2) + parser (>= 3.1.2.1) rainbow (>= 2.2.2, < 4.0) regexp_parser (>= 1.8, < 3.0) rexml (>= 3.2.5, < 4.0) - rubocop-ast (>= 1.30.0, < 2.0) + rubocop-ast (>= 1.23.0, < 2.0) ruby-progressbar (~> 1.7) - unicode-display_width (>= 2.4.0, < 3.0) - rubocop-ast (1.30.0) - parser (>= 3.2.1.0) - rubocop-capybara (2.20.0) - rubocop (~> 1.41) - rubocop-factory_bot (2.25.1) - rubocop (~> 1.41) - rubocop-performance (1.20.2) - rubocop (>= 1.48.1, < 2.0) - rubocop-ast (>= 1.30.0, < 2.0) - rubocop-rails (2.23.1) + unicode-display_width (>= 1.4.0, < 3.0) + rubocop-ast (1.24.0) + parser (>= 3.1.1.0) + rubocop-performance (1.15.1) + rubocop (>= 1.7.0, < 2.0) + rubocop-ast (>= 0.4.0) + rubocop-rails (2.17.3) activesupport (>= 4.2.0) rack (>= 1.1) rubocop (>= 1.33.0, < 2.0) - rubocop-ast (>= 1.30.0, < 2.0) - rubocop-rspec (2.26.1) - rubocop (~> 1.40) - rubocop-capybara (~> 2.17) - rubocop-factory_bot (~> 2.22) - ruby-progressbar (1.13.0) + rubocop-rspec (2.15.0) + rubocop (~> 1.33) + ruby-progressbar (1.11.0) ruby2_keywords (0.0.5) - simplecov (0.22.0) + simplecov (0.21.2) docile (~> 1.1) simplecov-html (~> 0.11) simplecov_json_formatter (~> 0.1) simplecov-html (0.12.3) simplecov_json_formatter (0.1.4) - stringio (3.1.0) - swd (2.0.3) + swd (2.0.2) activesupport (>= 3) attr_required (>= 0.0.5) faraday (~> 2.0) faraday-follow_redirects - thor (1.3.0) - timeout (0.4.1) + thor (1.2.1) + timeout (0.3.0) tzinfo (2.0.6) concurrent-ruby (~> 1.0) - unicode-display_width (2.5.0) - uri (0.13.0) + unicode-display_width (2.3.0) + validate_email (0.1.6) + activemodel (>= 3.0) + mail (>= 2.2.5) validate_url (1.0.15) activemodel (>= 3.0.0) public_suffix - webfinger (2.1.3) + webfinger (2.1.2) activesupport faraday (~> 2.0) faraday-follow_redirects - webrick (1.8.1) - websocket-driver (0.7.6) + websocket-driver (0.7.5) websocket-extensions (>= 0.1.0) websocket-extensions (0.1.5) - zeitwerk (2.6.12) + zeitwerk (2.6.6) PLATFORMS arm64-darwin-22 From 370f9cd507483f9a69e35f67cc8d84dc8994b25e Mon Sep 17 00:00:00 2001 From: Patrick Cherry Date: Tue, 16 Jan 2024 18:05:46 +0000 Subject: [PATCH 09/24] Add fail fast correclty --- .github/workflows/ruby.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ruby.yml b/.github/workflows/ruby.yml index 65f6e6d..1d56d0f 100644 --- a/.github/workflows/ruby.yml +++ b/.github/workflows/ruby.yml @@ -18,7 +18,7 @@ jobs: runs-on: ubuntu-latest strategy: - fail_fast: false + fail-fast: false matrix: ruby-version: ['2.7', '3.1', '3.2'] gemfile: [ rails_6.1, rails_7.0 ] From f1babe2a3c0fa49abac2ddd9f9d7cfcb1c358180 Mon Sep 17 00:00:00 2001 From: Patrick Cherry Date: Tue, 16 Jan 2024 18:07:59 +0000 Subject: [PATCH 10/24] Update gemfiles --- Gemfile.lock | 44 ++++++++++++++-------------- gemfiles/rails_6.1.gemfile.lock | 51 ++++++++++++++++----------------- 2 files changed, 48 insertions(+), 47 deletions(-) diff --git a/Gemfile.lock b/Gemfile.lock index f814c98..1f6dab9 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -1,7 +1,7 @@ PATH - remote: . + remote: .. specs: - rpi_auth (3.3.0) + rpi_auth (3.4.0) omniauth-rails_csrf_protection (~> 1.0.0) omniauth_openid_connect (~> 0.7.1) rails (>= 6.1.4) @@ -76,7 +76,7 @@ GEM tzinfo (~> 2.0) aes_key_wrap (1.1.0) ast (2.4.2) - attr_required (1.0.1) + attr_required (1.0.2) base64 (0.2.0) bindata (2.4.15) builder (3.2.4) @@ -86,14 +86,15 @@ GEM crass (1.0.6) diff-lcs (1.5.0) docile (1.4.0) + email_validator (2.2.4) + activemodel erubi (1.11.0) - faraday (2.7.12) - base64 - faraday-net_http (>= 2.0, < 3.1) - ruby2_keywords (>= 0.0.4) + faraday (2.9.0) + faraday-net_http (>= 2.0, < 3.2) faraday-follow_redirects (0.3.0) faraday (>= 1, < 3) - faraday-net_http (3.0.2) + faraday-net_http (3.1.0) + net-http ffi (1.15.5) globalid (1.1.0) activesupport (>= 5.0) @@ -101,9 +102,10 @@ GEM i18n (1.13.0) concurrent-ruby (~> 1.0) json (2.6.2) - json-jwt (1.16.3) + json-jwt (1.16.5) activesupport (>= 4.2) aes_key_wrap + base64 bindata faraday (~> 2.0) faraday-follow_redirects @@ -119,6 +121,8 @@ GEM method_source (1.0.0) mini_mime (1.1.2) minitest (5.18.0) + net-http (0.4.1) + uri net-imap (0.3.1) net-protocol net-pop (0.1.2) @@ -132,7 +136,7 @@ GEM racc (~> 1.4) nokogiri (1.14.3-x86_64-linux) racc (~> 1.4) - omniauth (2.1.1) + omniauth (2.1.2) hashie (>= 3.4.6) rack (>= 2.2.3) rack-protection @@ -142,17 +146,17 @@ GEM omniauth_openid_connect (0.7.1) omniauth (>= 1.9, < 3) openid_connect (~> 2.2) - openid_connect (2.2.0) + openid_connect (2.3.0) activemodel attr_required (>= 1.0.0) + email_validator faraday (~> 2.0) faraday-follow_redirects json-jwt (>= 1.16) - net-smtp + mail rack-oauth2 (~> 2.2) swd (~> 2.0) tzinfo - validate_email validate_url webfinger (~> 2.0) parallel (1.22.1) @@ -169,14 +173,15 @@ GEM nio4r (~> 2.0) racc (1.6.2) rack (2.2.7) - rack-oauth2 (2.2.0) + rack-oauth2 (2.2.1) activesupport attr_required faraday (~> 2.0) faraday-follow_redirects json-jwt (>= 1.11.0) rack (>= 2.1.0) - rack-protection (3.1.0) + rack-protection (3.2.0) + base64 (>= 0.1.0) rack (~> 2.2, >= 2.2.4) rack-test (2.0.2) rack (>= 1.3) @@ -254,14 +259,13 @@ GEM rubocop-rspec (2.15.0) rubocop (~> 1.33) ruby-progressbar (1.11.0) - ruby2_keywords (0.0.5) simplecov (0.21.2) docile (~> 1.1) simplecov-html (~> 0.11) simplecov_json_formatter (~> 0.1) simplecov-html (0.12.3) simplecov_json_formatter (0.1.4) - swd (2.0.2) + swd (2.0.3) activesupport (>= 3) attr_required (>= 0.0.5) faraday (~> 2.0) @@ -271,13 +275,11 @@ GEM tzinfo (2.0.6) concurrent-ruby (~> 1.0) unicode-display_width (2.3.0) - validate_email (0.1.6) - activemodel (>= 3.0) - mail (>= 2.2.5) + uri (0.13.0) validate_url (1.0.15) activemodel (>= 3.0.0) public_suffix - webfinger (2.1.2) + webfinger (2.1.3) activesupport faraday (~> 2.0) faraday-follow_redirects diff --git a/gemfiles/rails_6.1.gemfile.lock b/gemfiles/rails_6.1.gemfile.lock index a5358ac..fa6f1f8 100644 --- a/gemfiles/rails_6.1.gemfile.lock +++ b/gemfiles/rails_6.1.gemfile.lock @@ -1,7 +1,7 @@ PATH remote: .. specs: - rpi_auth (3.3.0) + rpi_auth (3.4.0) omniauth-rails_csrf_protection (~> 1.0.0) omniauth_openid_connect (~> 0.7.1) rails (>= 6.1.4) @@ -70,7 +70,8 @@ GEM zeitwerk (~> 2.3) aes_key_wrap (1.1.0) ast (2.4.2) - attr_required (1.0.1) + attr_required (1.0.2) + base64 (0.2.0) bindata (2.4.15) builder (3.2.4) byebug (11.1.3) @@ -79,13 +80,15 @@ GEM crass (1.0.6) diff-lcs (1.5.0) docile (1.4.0) + email_validator (2.2.4) + activemodel erubi (1.11.0) - faraday (2.7.5) - faraday-net_http (>= 2.0, < 3.1) - ruby2_keywords (>= 0.0.4) + faraday (2.9.0) + faraday-net_http (>= 2.0, < 3.2) faraday-follow_redirects (0.3.0) faraday (>= 1, < 3) - faraday-net_http (3.0.2) + faraday-net_http (3.1.0) + net-http ffi (1.15.5) globalid (1.0.0) activesupport (>= 5.0) @@ -93,9 +96,10 @@ GEM i18n (1.12.0) concurrent-ruby (~> 1.0) json (2.6.2) - json-jwt (1.16.3) + json-jwt (1.16.5) activesupport (>= 4.2) aes_key_wrap + base64 bindata faraday (~> 2.0) faraday-follow_redirects @@ -111,16 +115,14 @@ GEM method_source (1.0.0) mini_mime (1.1.2) minitest (5.16.3) - net-protocol (0.2.1) - timeout - net-smtp (0.3.3) - net-protocol + net-http (0.4.1) + uri nio4r (2.5.8) nokogiri (1.15.5-arm64-darwin) racc (~> 1.4) nokogiri (1.15.5-x86_64-linux) racc (~> 1.4) - omniauth (2.1.1) + omniauth (2.1.2) hashie (>= 3.4.6) rack (>= 2.2.3) rack-protection @@ -130,17 +132,17 @@ GEM omniauth_openid_connect (0.7.1) omniauth (>= 1.9, < 3) openid_connect (~> 2.2) - openid_connect (2.2.0) + openid_connect (2.3.0) activemodel attr_required (>= 1.0.0) + email_validator faraday (~> 2.0) faraday-follow_redirects json-jwt (>= 1.16) - net-smtp + mail rack-oauth2 (~> 2.2) swd (~> 2.0) tzinfo - validate_email validate_url webfinger (~> 2.0) parallel (1.22.1) @@ -152,20 +154,21 @@ GEM pry-byebug (3.10.1) byebug (~> 11.0) pry (>= 0.13, < 0.15) - public_suffix (5.0.1) + public_suffix (5.0.4) puma (6.2.2) nio4r (~> 2.0) racc (1.6.0) rack (2.2.4) - rack-oauth2 (2.2.0) + rack-oauth2 (2.2.1) activesupport attr_required faraday (~> 2.0) faraday-follow_redirects json-jwt (>= 1.11.0) rack (>= 2.1.0) - rack-protection (3.0.6) - rack + rack-protection (3.2.0) + base64 (>= 0.1.0) + rack (~> 2.2, >= 2.2.4) rack-test (2.0.2) rack (>= 1.3) rails (6.1.7) @@ -242,7 +245,6 @@ GEM rubocop-rspec (2.15.0) rubocop (~> 1.33) ruby-progressbar (1.11.0) - ruby2_keywords (0.0.5) simplecov (0.21.2) docile (~> 1.1) simplecov-html (~> 0.11) @@ -256,23 +258,20 @@ GEM actionpack (>= 5.2) activesupport (>= 5.2) sprockets (>= 3.0.0) - swd (2.0.2) + swd (2.0.3) activesupport (>= 3) attr_required (>= 0.0.5) faraday (~> 2.0) faraday-follow_redirects thor (1.2.1) - timeout (0.3.2) tzinfo (2.0.5) concurrent-ruby (~> 1.0) unicode-display_width (2.3.0) - validate_email (0.1.6) - activemodel (>= 3.0) - mail (>= 2.2.5) + uri (0.13.0) validate_url (1.0.15) activemodel (>= 3.0.0) public_suffix - webfinger (2.1.2) + webfinger (2.1.3) activesupport faraday (~> 2.0) faraday-follow_redirects From c20e5aadd5a06c1796676f608592604e78fa815d Mon Sep 17 00:00:00 2001 From: Patrick Cherry Date: Tue, 16 Jan 2024 18:13:39 +0000 Subject: [PATCH 11/24] Revert to ruby 2.7 Lowest common denominator --- .tool-versions | 2 +- Gemfile.lock | 324 ++++++++++++++++++-------------- gemfiles/rails_6.1.gemfile.lock | 272 +++++++++++++++------------ 3 files changed, 334 insertions(+), 264 deletions(-) diff --git a/.tool-versions b/.tool-versions index 520a168..59511e1 100644 --- a/.tool-versions +++ b/.tool-versions @@ -1 +1 @@ -ruby 3.1.3 +ruby 2.7.8 diff --git a/Gemfile.lock b/Gemfile.lock index 1f6dab9..63f8344 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -9,99 +9,118 @@ PATH GEM remote: https://rubygems.org/ specs: - actioncable (7.0.4) - actionpack (= 7.0.4) - activesupport (= 7.0.4) + actioncable (7.1.2) + actionpack (= 7.1.2) + activesupport (= 7.1.2) nio4r (~> 2.0) websocket-driver (>= 0.6.1) - actionmailbox (7.0.4) - actionpack (= 7.0.4) - activejob (= 7.0.4) - activerecord (= 7.0.4) - activestorage (= 7.0.4) - activesupport (= 7.0.4) + zeitwerk (~> 2.6) + actionmailbox (7.1.2) + actionpack (= 7.1.2) + activejob (= 7.1.2) + activerecord (= 7.1.2) + activestorage (= 7.1.2) + activesupport (= 7.1.2) mail (>= 2.7.1) net-imap net-pop net-smtp - actionmailer (7.0.4) - actionpack (= 7.0.4) - actionview (= 7.0.4) - activejob (= 7.0.4) - activesupport (= 7.0.4) + actionmailer (7.1.2) + actionpack (= 7.1.2) + actionview (= 7.1.2) + activejob (= 7.1.2) + activesupport (= 7.1.2) mail (~> 2.5, >= 2.5.4) net-imap net-pop net-smtp - rails-dom-testing (~> 2.0) - actionpack (7.0.4) - actionview (= 7.0.4) - activesupport (= 7.0.4) - rack (~> 2.0, >= 2.2.0) + rails-dom-testing (~> 2.2) + actionpack (7.1.2) + actionview (= 7.1.2) + activesupport (= 7.1.2) + nokogiri (>= 1.8.5) + racc + rack (>= 2.2.4) + rack-session (>= 1.0.1) rack-test (>= 0.6.3) - rails-dom-testing (~> 2.0) - rails-html-sanitizer (~> 1.0, >= 1.2.0) - actiontext (7.0.4) - actionpack (= 7.0.4) - activerecord (= 7.0.4) - activestorage (= 7.0.4) - activesupport (= 7.0.4) + rails-dom-testing (~> 2.2) + rails-html-sanitizer (~> 1.6) + actiontext (7.1.2) + actionpack (= 7.1.2) + activerecord (= 7.1.2) + activestorage (= 7.1.2) + activesupport (= 7.1.2) globalid (>= 0.6.0) nokogiri (>= 1.8.5) - actionview (7.0.4) - activesupport (= 7.0.4) + actionview (7.1.2) + activesupport (= 7.1.2) builder (~> 3.1) - erubi (~> 1.4) - rails-dom-testing (~> 2.0) - rails-html-sanitizer (~> 1.1, >= 1.2.0) - activejob (7.0.4) - activesupport (= 7.0.4) + erubi (~> 1.11) + rails-dom-testing (~> 2.2) + rails-html-sanitizer (~> 1.6) + activejob (7.1.2) + activesupport (= 7.1.2) globalid (>= 0.3.6) - activemodel (7.0.4) - activesupport (= 7.0.4) - activerecord (7.0.4) - activemodel (= 7.0.4) - activesupport (= 7.0.4) - activestorage (7.0.4) - actionpack (= 7.0.4) - activejob (= 7.0.4) - activerecord (= 7.0.4) - activesupport (= 7.0.4) + activemodel (7.1.2) + activesupport (= 7.1.2) + activerecord (7.1.2) + activemodel (= 7.1.2) + activesupport (= 7.1.2) + timeout (>= 0.4.0) + activestorage (7.1.2) + actionpack (= 7.1.2) + activejob (= 7.1.2) + activerecord (= 7.1.2) + activesupport (= 7.1.2) marcel (~> 1.0) - mini_mime (>= 1.1.0) - activesupport (7.0.4) + activesupport (7.1.2) + base64 + bigdecimal concurrent-ruby (~> 1.0, >= 1.0.2) + connection_pool (>= 2.2.5) + drb i18n (>= 1.6, < 2) minitest (>= 5.1) + mutex_m tzinfo (~> 2.0) aes_key_wrap (1.1.0) ast (2.4.2) attr_required (1.0.2) base64 (0.2.0) + bigdecimal (3.1.5) bindata (2.4.15) builder (3.2.4) byebug (11.1.3) coderay (1.1.3) - concurrent-ruby (1.2.2) + concurrent-ruby (1.2.3) + connection_pool (2.4.1) crass (1.0.6) + date (3.3.4) diff-lcs (1.5.0) docile (1.4.0) + drb (2.2.0) + ruby2_keywords email_validator (2.2.4) activemodel - erubi (1.11.0) - faraday (2.9.0) - faraday-net_http (>= 2.0, < 3.2) + erubi (1.12.0) + faraday (2.8.1) + base64 + faraday-net_http (>= 2.0, < 3.1) + ruby2_keywords (>= 0.0.4) faraday-follow_redirects (0.3.0) faraday (>= 1, < 3) - faraday-net_http (3.1.0) - net-http - ffi (1.15.5) - globalid (1.1.0) - activesupport (>= 5.0) + faraday-net_http (3.0.2) + ffi (1.16.3) + globalid (1.2.1) + activesupport (>= 6.1) hashie (5.0.0) - i18n (1.13.0) + i18n (1.14.1) concurrent-ruby (~> 1.0) - json (2.6.2) + io-console (0.7.1) + irb (1.11.1) + rdoc + reline (>= 0.4.2) + json (2.7.1) json-jwt (1.16.5) activesupport (>= 4.2) aes_key_wrap @@ -109,32 +128,36 @@ GEM bindata faraday (~> 2.0) faraday-follow_redirects - listen (3.7.1) + language_server-protocol (3.17.0.3) + listen (3.8.0) rb-fsevent (~> 0.10, >= 0.10.3) rb-inotify (~> 0.9, >= 0.9.10) - loofah (2.19.1) + loofah (2.22.0) 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) + net-imap + net-pop + net-smtp marcel (1.0.2) method_source (1.0.0) - mini_mime (1.1.2) - minitest (5.18.0) - net-http (0.4.1) - uri - net-imap (0.3.1) + mini_mime (1.1.5) + mini_portile2 (2.8.5) + minitest (5.21.1) + mutex_m (0.2.0) + net-imap (0.4.9.1) + date net-protocol net-pop (0.1.2) net-protocol - net-protocol (0.1.3) + net-protocol (0.2.2) timeout - net-smtp (0.3.3) + net-smtp (0.4.0.1) net-protocol - nio4r (2.5.8) - nokogiri (1.14.3-arm64-darwin) - racc (~> 1.4) - nokogiri (1.14.3-x86_64-linux) + nio4r (2.7.0) + nokogiri (1.15.5) + mini_portile2 (~> 2.8.2) racc (~> 1.4) omniauth (2.1.2) hashie (>= 3.4.6) @@ -159,20 +182,23 @@ GEM tzinfo validate_url webfinger (~> 2.0) - parallel (1.22.1) - parser (3.1.3.0) + parallel (1.24.0) + parser (3.3.0.4) ast (~> 2.4.1) - pry (0.14.1) + racc + pry (0.14.2) coderay (~> 1.1) method_source (~> 1.0) pry-byebug (3.10.1) byebug (~> 11.0) pry (>= 0.13, < 0.15) + psych (5.1.2) + stringio public_suffix (5.0.4) - puma (6.2.2) + puma (6.4.2) nio4r (~> 2.0) - racc (1.6.2) - rack (2.2.7) + racc (1.7.3) + rack (3.0.8) rack-oauth2 (2.2.1) activesupport attr_required @@ -180,102 +206,122 @@ GEM faraday-follow_redirects json-jwt (>= 1.11.0) rack (>= 2.1.0) - rack-protection (3.2.0) - base64 (>= 0.1.0) - rack (~> 2.2, >= 2.2.4) - rack-test (2.0.2) + rack-protection (3.0.6) + rack + rack-session (2.0.0) + rack (>= 3.0.0) + rack-test (2.1.0) rack (>= 1.3) - rails (7.0.4) - actioncable (= 7.0.4) - actionmailbox (= 7.0.4) - actionmailer (= 7.0.4) - actionpack (= 7.0.4) - actiontext (= 7.0.4) - actionview (= 7.0.4) - activejob (= 7.0.4) - activemodel (= 7.0.4) - activerecord (= 7.0.4) - activestorage (= 7.0.4) - activesupport (= 7.0.4) + rackup (2.1.0) + rack (>= 3) + webrick (~> 1.8) + rails (7.1.2) + actioncable (= 7.1.2) + actionmailbox (= 7.1.2) + actionmailer (= 7.1.2) + actionpack (= 7.1.2) + actiontext (= 7.1.2) + actionview (= 7.1.2) + activejob (= 7.1.2) + activemodel (= 7.1.2) + activerecord (= 7.1.2) + activestorage (= 7.1.2) + activesupport (= 7.1.2) bundler (>= 1.15.0) - railties (= 7.0.4) - rails-dom-testing (2.0.3) - activesupport (>= 4.2.0) + railties (= 7.1.2) + rails-dom-testing (2.2.0) + activesupport (>= 5.0.0) + minitest nokogiri (>= 1.6) - rails-html-sanitizer (1.4.4) - loofah (~> 2.19, >= 2.19.1) - railties (7.0.4) - actionpack (= 7.0.4) - activesupport (= 7.0.4) - method_source + rails-html-sanitizer (1.6.0) + loofah (~> 2.21) + nokogiri (~> 1.14) + railties (7.1.2) + actionpack (= 7.1.2) + activesupport (= 7.1.2) + irb + rackup (>= 1.0.0) rake (>= 12.2) - thor (~> 1.0) - zeitwerk (~> 2.5) + thor (~> 1.0, >= 1.2.2) + zeitwerk (~> 2.6) rainbow (3.1.1) - rake (13.0.6) + rake (13.1.0) rb-fsevent (0.11.2) rb-inotify (0.10.1) ffi (~> 1.0) - regexp_parser (2.6.1) - rexml (3.2.5) - rspec-core (3.12.0) + rdoc (6.6.2) + psych (>= 4.0.0) + regexp_parser (2.9.0) + reline (0.4.2) + io-console (~> 0.5) + rexml (3.2.6) + rspec-core (3.12.2) rspec-support (~> 3.12.0) - rspec-expectations (3.12.0) + rspec-expectations (3.12.3) diff-lcs (>= 1.2.0, < 2.0) rspec-support (~> 3.12.0) - rspec-mocks (3.12.0) + rspec-mocks (3.12.6) diff-lcs (>= 1.2.0, < 2.0) rspec-support (~> 3.12.0) - rspec-rails (6.0.1) + rspec-rails (6.1.0) actionpack (>= 6.1) activesupport (>= 6.1) railties (>= 6.1) - rspec-core (~> 3.11) - rspec-expectations (~> 3.11) - rspec-mocks (~> 3.11) - rspec-support (~> 3.11) - rspec-support (3.12.0) + rspec-core (~> 3.12) + rspec-expectations (~> 3.12) + rspec-mocks (~> 3.12) + rspec-support (~> 3.12) + rspec-support (3.12.1) rspec_junit_formatter (0.6.0) rspec-core (>= 2, < 4, != 2.12.0) - rubocop (1.39.0) + rubocop (1.60.0) json (~> 2.3) + language_server-protocol (>= 3.17.0) parallel (~> 1.10) - parser (>= 3.1.2.1) + parser (>= 3.3.0.2) rainbow (>= 2.2.2, < 4.0) regexp_parser (>= 1.8, < 3.0) rexml (>= 3.2.5, < 4.0) - rubocop-ast (>= 1.23.0, < 2.0) + rubocop-ast (>= 1.30.0, < 2.0) ruby-progressbar (~> 1.7) - unicode-display_width (>= 1.4.0, < 3.0) - rubocop-ast (1.24.0) - parser (>= 3.1.1.0) - rubocop-performance (1.15.1) - rubocop (>= 1.7.0, < 2.0) - rubocop-ast (>= 0.4.0) - rubocop-rails (2.17.3) + unicode-display_width (>= 2.4.0, < 3.0) + rubocop-ast (1.30.0) + parser (>= 3.2.1.0) + rubocop-capybara (2.20.0) + rubocop (~> 1.41) + rubocop-factory_bot (2.25.1) + rubocop (~> 1.41) + rubocop-performance (1.20.2) + rubocop (>= 1.48.1, < 2.0) + rubocop-ast (>= 1.30.0, < 2.0) + rubocop-rails (2.23.1) activesupport (>= 4.2.0) rack (>= 1.1) rubocop (>= 1.33.0, < 2.0) - rubocop-rspec (2.15.0) - rubocop (~> 1.33) - ruby-progressbar (1.11.0) - simplecov (0.21.2) + rubocop-ast (>= 1.30.0, < 2.0) + rubocop-rspec (2.26.1) + rubocop (~> 1.40) + rubocop-capybara (~> 2.17) + rubocop-factory_bot (~> 2.22) + ruby-progressbar (1.13.0) + ruby2_keywords (0.0.5) + simplecov (0.22.0) docile (~> 1.1) simplecov-html (~> 0.11) simplecov_json_formatter (~> 0.1) simplecov-html (0.12.3) simplecov_json_formatter (0.1.4) + stringio (3.1.0) swd (2.0.3) activesupport (>= 3) attr_required (>= 0.0.5) faraday (~> 2.0) faraday-follow_redirects - thor (1.2.1) - timeout (0.3.0) + thor (1.3.0) + timeout (0.4.1) tzinfo (2.0.6) concurrent-ruby (~> 1.0) - unicode-display_width (2.3.0) - uri (0.13.0) + unicode-display_width (2.5.0) validate_url (1.0.15) activemodel (>= 3.0.0) public_suffix @@ -283,14 +329,14 @@ GEM activesupport faraday (~> 2.0) faraday-follow_redirects - websocket-driver (0.7.5) + webrick (1.8.1) + websocket-driver (0.7.6) websocket-extensions (>= 0.1.0) websocket-extensions (0.1.5) - zeitwerk (2.6.6) + zeitwerk (2.6.12) PLATFORMS - arm64-darwin-22 - x86_64-linux + ruby DEPENDENCIES listen @@ -307,4 +353,4 @@ DEPENDENCIES simplecov BUNDLED WITH - 2.3.26 + 2.1.4 diff --git a/gemfiles/rails_6.1.gemfile.lock b/gemfiles/rails_6.1.gemfile.lock index fa6f1f8..5956ea0 100644 --- a/gemfiles/rails_6.1.gemfile.lock +++ b/gemfiles/rails_6.1.gemfile.lock @@ -9,60 +9,60 @@ PATH GEM remote: https://rubygems.org/ specs: - actioncable (6.1.7) - actionpack (= 6.1.7) - activesupport (= 6.1.7) + actioncable (6.1.7.6) + actionpack (= 6.1.7.6) + activesupport (= 6.1.7.6) nio4r (~> 2.0) websocket-driver (>= 0.6.1) - actionmailbox (6.1.7) - actionpack (= 6.1.7) - activejob (= 6.1.7) - activerecord (= 6.1.7) - activestorage (= 6.1.7) - activesupport (= 6.1.7) + actionmailbox (6.1.7.6) + actionpack (= 6.1.7.6) + activejob (= 6.1.7.6) + activerecord (= 6.1.7.6) + activestorage (= 6.1.7.6) + activesupport (= 6.1.7.6) mail (>= 2.7.1) - actionmailer (6.1.7) - actionpack (= 6.1.7) - actionview (= 6.1.7) - activejob (= 6.1.7) - activesupport (= 6.1.7) + actionmailer (6.1.7.6) + actionpack (= 6.1.7.6) + actionview (= 6.1.7.6) + activejob (= 6.1.7.6) + activesupport (= 6.1.7.6) mail (~> 2.5, >= 2.5.4) rails-dom-testing (~> 2.0) - actionpack (6.1.7) - actionview (= 6.1.7) - activesupport (= 6.1.7) + actionpack (6.1.7.6) + actionview (= 6.1.7.6) + activesupport (= 6.1.7.6) 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) - actionpack (= 6.1.7) - activerecord (= 6.1.7) - activestorage (= 6.1.7) - activesupport (= 6.1.7) + actiontext (6.1.7.6) + actionpack (= 6.1.7.6) + activerecord (= 6.1.7.6) + activestorage (= 6.1.7.6) + activesupport (= 6.1.7.6) nokogiri (>= 1.8.5) - actionview (6.1.7) - activesupport (= 6.1.7) + actionview (6.1.7.6) + activesupport (= 6.1.7.6) builder (~> 3.1) erubi (~> 1.4) rails-dom-testing (~> 2.0) rails-html-sanitizer (~> 1.1, >= 1.2.0) - activejob (6.1.7) - activesupport (= 6.1.7) + activejob (6.1.7.6) + activesupport (= 6.1.7.6) globalid (>= 0.3.6) - activemodel (6.1.7) - activesupport (= 6.1.7) - activerecord (6.1.7) - activemodel (= 6.1.7) - activesupport (= 6.1.7) - activestorage (6.1.7) - actionpack (= 6.1.7) - activejob (= 6.1.7) - activerecord (= 6.1.7) - activesupport (= 6.1.7) + activemodel (6.1.7.6) + activesupport (= 6.1.7.6) + activerecord (6.1.7.6) + activemodel (= 6.1.7.6) + activesupport (= 6.1.7.6) + activestorage (6.1.7.6) + actionpack (= 6.1.7.6) + activejob (= 6.1.7.6) + activerecord (= 6.1.7.6) + activesupport (= 6.1.7.6) marcel (~> 1.0) mini_mime (>= 1.1.0) - activesupport (6.1.7) + activesupport (6.1.7.6) concurrent-ruby (~> 1.0, >= 1.0.2) i18n (>= 1.6, < 2) minitest (>= 5.1) @@ -76,26 +76,28 @@ GEM builder (3.2.4) byebug (11.1.3) coderay (1.1.3) - concurrent-ruby (1.1.10) + concurrent-ruby (1.2.3) crass (1.0.6) + date (3.3.4) diff-lcs (1.5.0) docile (1.4.0) email_validator (2.2.4) activemodel - erubi (1.11.0) - faraday (2.9.0) - faraday-net_http (>= 2.0, < 3.2) + erubi (1.12.0) + faraday (2.8.1) + base64 + faraday-net_http (>= 2.0, < 3.1) + ruby2_keywords (>= 0.0.4) faraday-follow_redirects (0.3.0) faraday (>= 1, < 3) - faraday-net_http (3.1.0) - net-http - ffi (1.15.5) - globalid (1.0.0) - activesupport (>= 5.0) + faraday-net_http (3.0.2) + ffi (1.16.3) + globalid (1.2.1) + activesupport (>= 6.1) hashie (5.0.0) - i18n (1.12.0) + i18n (1.14.1) concurrent-ruby (~> 1.0) - json (2.6.2) + json (2.7.1) json-jwt (1.16.5) activesupport (>= 4.2) aes_key_wrap @@ -103,24 +105,35 @@ GEM bindata faraday (~> 2.0) faraday-follow_redirects - listen (3.7.1) + language_server-protocol (3.17.0.3) + listen (3.8.0) rb-fsevent (~> 0.10, >= 0.10.3) rb-inotify (~> 0.9, >= 0.9.10) - loofah (2.19.0) + loofah (2.22.0) 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) + net-imap + net-pop + net-smtp marcel (1.0.2) method_source (1.0.0) - mini_mime (1.1.2) - minitest (5.16.3) - net-http (0.4.1) - uri - nio4r (2.5.8) - nokogiri (1.15.5-arm64-darwin) - racc (~> 1.4) - nokogiri (1.15.5-x86_64-linux) + mini_mime (1.1.5) + mini_portile2 (2.8.5) + minitest (5.21.1) + net-imap (0.4.9.1) + date + net-protocol + net-pop (0.1.2) + net-protocol + net-protocol (0.2.2) + timeout + net-smtp (0.4.0.1) + net-protocol + nio4r (2.7.0) + nokogiri (1.15.5) + mini_portile2 (~> 2.8.2) racc (~> 1.4) omniauth (2.1.2) hashie (>= 3.4.6) @@ -145,20 +158,21 @@ GEM tzinfo validate_url webfinger (~> 2.0) - parallel (1.22.1) - parser (3.1.3.0) + parallel (1.24.0) + parser (3.3.0.4) ast (~> 2.4.1) - pry (0.14.1) + racc + pry (0.14.2) coderay (~> 1.1) method_source (~> 1.0) pry-byebug (3.10.1) byebug (~> 11.0) pry (>= 0.13, < 0.15) public_suffix (5.0.4) - puma (6.2.2) + puma (6.4.2) nio4r (~> 2.0) - racc (1.6.0) - rack (2.2.4) + racc (1.7.3) + rack (2.2.8) rack-oauth2 (2.2.1) activesupport attr_required @@ -169,91 +183,102 @@ GEM rack-protection (3.2.0) base64 (>= 0.1.0) rack (~> 2.2, >= 2.2.4) - rack-test (2.0.2) + rack-test (2.1.0) rack (>= 1.3) - rails (6.1.7) - actioncable (= 6.1.7) - actionmailbox (= 6.1.7) - actionmailer (= 6.1.7) - actionpack (= 6.1.7) - actiontext (= 6.1.7) - actionview (= 6.1.7) - activejob (= 6.1.7) - activemodel (= 6.1.7) - activerecord (= 6.1.7) - activestorage (= 6.1.7) - activesupport (= 6.1.7) + rails (6.1.7.6) + actioncable (= 6.1.7.6) + actionmailbox (= 6.1.7.6) + actionmailer (= 6.1.7.6) + actionpack (= 6.1.7.6) + actiontext (= 6.1.7.6) + actionview (= 6.1.7.6) + activejob (= 6.1.7.6) + activemodel (= 6.1.7.6) + activerecord (= 6.1.7.6) + activestorage (= 6.1.7.6) + activesupport (= 6.1.7.6) bundler (>= 1.15.0) - railties (= 6.1.7) + railties (= 6.1.7.6) sprockets-rails (>= 2.0.0) - rails-dom-testing (2.0.3) - activesupport (>= 4.2.0) + rails-dom-testing (2.2.0) + activesupport (>= 5.0.0) + minitest nokogiri (>= 1.6) - rails-html-sanitizer (1.4.3) - loofah (~> 2.3) - railties (6.1.7) - actionpack (= 6.1.7) - activesupport (= 6.1.7) + rails-html-sanitizer (1.6.0) + loofah (~> 2.21) + nokogiri (~> 1.14) + railties (6.1.7.6) + actionpack (= 6.1.7.6) + activesupport (= 6.1.7.6) method_source rake (>= 12.2) thor (~> 1.0) rainbow (3.1.1) - rake (13.0.6) + rake (13.1.0) rb-fsevent (0.11.2) rb-inotify (0.10.1) ffi (~> 1.0) - regexp_parser (2.6.1) - rexml (3.2.5) - rspec-core (3.12.0) + regexp_parser (2.9.0) + rexml (3.2.6) + rspec-core (3.12.2) rspec-support (~> 3.12.0) - rspec-expectations (3.12.0) + rspec-expectations (3.12.3) diff-lcs (>= 1.2.0, < 2.0) rspec-support (~> 3.12.0) - rspec-mocks (3.12.0) + rspec-mocks (3.12.6) diff-lcs (>= 1.2.0, < 2.0) rspec-support (~> 3.12.0) - rspec-rails (6.0.1) + rspec-rails (6.1.0) actionpack (>= 6.1) activesupport (>= 6.1) railties (>= 6.1) - rspec-core (~> 3.11) - rspec-expectations (~> 3.11) - rspec-mocks (~> 3.11) - rspec-support (~> 3.11) - rspec-support (3.12.0) + rspec-core (~> 3.12) + rspec-expectations (~> 3.12) + rspec-mocks (~> 3.12) + rspec-support (~> 3.12) + rspec-support (3.12.1) rspec_junit_formatter (0.6.0) rspec-core (>= 2, < 4, != 2.12.0) - rubocop (1.39.0) + rubocop (1.60.0) json (~> 2.3) + language_server-protocol (>= 3.17.0) parallel (~> 1.10) - parser (>= 3.1.2.1) + parser (>= 3.3.0.2) rainbow (>= 2.2.2, < 4.0) regexp_parser (>= 1.8, < 3.0) rexml (>= 3.2.5, < 4.0) - rubocop-ast (>= 1.23.0, < 2.0) + rubocop-ast (>= 1.30.0, < 2.0) ruby-progressbar (~> 1.7) - unicode-display_width (>= 1.4.0, < 3.0) - rubocop-ast (1.24.0) - parser (>= 3.1.1.0) - rubocop-performance (1.15.1) - rubocop (>= 1.7.0, < 2.0) - rubocop-ast (>= 0.4.0) - rubocop-rails (2.17.3) + unicode-display_width (>= 2.4.0, < 3.0) + rubocop-ast (1.30.0) + parser (>= 3.2.1.0) + rubocop-capybara (2.20.0) + rubocop (~> 1.41) + rubocop-factory_bot (2.25.1) + rubocop (~> 1.41) + rubocop-performance (1.20.2) + rubocop (>= 1.48.1, < 2.0) + rubocop-ast (>= 1.30.0, < 2.0) + rubocop-rails (2.23.1) activesupport (>= 4.2.0) rack (>= 1.1) rubocop (>= 1.33.0, < 2.0) - rubocop-rspec (2.15.0) - rubocop (~> 1.33) - ruby-progressbar (1.11.0) - simplecov (0.21.2) + rubocop-ast (>= 1.30.0, < 2.0) + rubocop-rspec (2.26.1) + rubocop (~> 1.40) + rubocop-capybara (~> 2.17) + rubocop-factory_bot (~> 2.22) + ruby-progressbar (1.13.0) + ruby2_keywords (0.0.5) + simplecov (0.22.0) docile (~> 1.1) simplecov-html (~> 0.11) simplecov_json_formatter (~> 0.1) simplecov-html (0.12.3) simplecov_json_formatter (0.1.4) - sprockets (4.1.1) + sprockets (4.2.1) concurrent-ruby (~> 1.0) - rack (> 1, < 3) + rack (>= 2.2.4, < 4) sprockets-rails (3.4.2) actionpack (>= 5.2) activesupport (>= 5.2) @@ -263,11 +288,11 @@ GEM attr_required (>= 0.0.5) faraday (~> 2.0) faraday-follow_redirects - thor (1.2.1) - tzinfo (2.0.5) + thor (1.3.0) + timeout (0.4.1) + tzinfo (2.0.6) concurrent-ruby (~> 1.0) - unicode-display_width (2.3.0) - uri (0.13.0) + unicode-display_width (2.5.0) validate_url (1.0.15) activemodel (>= 3.0.0) public_suffix @@ -275,14 +300,13 @@ GEM activesupport faraday (~> 2.0) faraday-follow_redirects - websocket-driver (0.7.5) + websocket-driver (0.7.6) websocket-extensions (>= 0.1.0) websocket-extensions (0.1.5) - zeitwerk (2.6.6) + zeitwerk (2.6.12) PLATFORMS - arm64-darwin-22 - x86_64-linux + ruby DEPENDENCIES listen @@ -299,4 +323,4 @@ DEPENDENCIES simplecov BUNDLED WITH - 2.3.26 + 2.1.4 From 54f9105006ab3e92be9a3bfc0af2e906d418fe7a Mon Sep 17 00:00:00 2001 From: Patrick Cherry Date: Tue, 16 Jan 2024 18:16:03 +0000 Subject: [PATCH 12/24] Set BUNDLE_GEMFILE on job --- .github/workflows/ruby.yml | 6 ++---- Gemfile.lock | 2 +- 2 files changed, 3 insertions(+), 5 deletions(-) diff --git a/.github/workflows/ruby.yml b/.github/workflows/ruby.yml index 1d56d0f..cb96ff9 100644 --- a/.github/workflows/ruby.yml +++ b/.github/workflows/ruby.yml @@ -15,20 +15,18 @@ on: jobs: test: - runs-on: ubuntu-latest strategy: fail-fast: false matrix: ruby-version: ['2.7', '3.1', '3.2'] gemfile: [ rails_6.1, rails_7.0 ] - + env: + BUNDLE_GEMFILE: ${{ github.workspace }}/gemfiles/${{ matrix.gemfile }}.gemfile steps: - uses: actions/checkout@v2 - name: Set up Ruby uses: ruby/setup-ruby@v1 - env: - BUNDLE_GEMFILE: ${{ github.workspace }}/gemfiles/${{ matrix.gemfile }}.gemfile with: ruby-version: ${{ matrix.ruby-version }} bundler-cache: true # runs 'bundle install' and caches installed gems automatically diff --git a/Gemfile.lock b/Gemfile.lock index 63f8344..c280115 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -1,5 +1,5 @@ PATH - remote: .. + remote: . specs: rpi_auth (3.4.0) omniauth-rails_csrf_protection (~> 1.0.0) From 1b62405df44d00b77c3b04b9c630d2f7e5d202b9 Mon Sep 17 00:00:00 2001 From: Patrick Cherry Date: Tue, 16 Jan 2024 18:18:37 +0000 Subject: [PATCH 13/24] Fix remote --- Gemfile.lock | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Gemfile.lock b/Gemfile.lock index c280115..63f8344 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -1,5 +1,5 @@ PATH - remote: . + remote: .. specs: rpi_auth (3.4.0) omniauth-rails_csrf_protection (~> 1.0.0) From 438d93530a611f1a098c3d71b8c5315d29592ab2 Mon Sep 17 00:00:00 2001 From: Patrick Cherry Date: Tue, 16 Jan 2024 18:31:46 +0000 Subject: [PATCH 14/24] Add separate tests for 7.0 and 7.1 --- .github/workflows/ruby.yml | 2 +- README.md | 14 +- gemfiles/rails_6.1.gemfile | 2 +- gemfiles/rails_7.0.gemfile | 13 +- gemfiles/rails_7.0.gemfile.lock | 326 +++++++++++++++++- Gemfile => gemfiles/rails_7.1.gemfile | 2 +- .../rails_7.1.gemfile.lock | 2 +- 7 files changed, 350 insertions(+), 11 deletions(-) mode change 120000 => 100644 gemfiles/rails_7.0.gemfile mode change 120000 => 100644 gemfiles/rails_7.0.gemfile.lock rename Gemfile => gemfiles/rails_7.1.gemfile (89%) rename Gemfile.lock => gemfiles/rails_7.1.gemfile.lock (99%) diff --git a/.github/workflows/ruby.yml b/.github/workflows/ruby.yml index cb96ff9..ed4ec97 100644 --- a/.github/workflows/ruby.yml +++ b/.github/workflows/ruby.yml @@ -20,7 +20,7 @@ jobs: fail-fast: false matrix: ruby-version: ['2.7', '3.1', '3.2'] - gemfile: [ rails_6.1, rails_7.0 ] + gemfile: [ rails_6.1, rails_7.0, rails7.1 ] env: BUNDLE_GEMFILE: ${{ github.workspace }}/gemfiles/${{ matrix.gemfile }}.gemfile steps: diff --git a/README.md b/README.md index cf527ed..ce54c13 100644 --- a/README.md +++ b/README.md @@ -229,7 +229,9 @@ The gem is available as open source under the terms of the [MIT License](https:/ Run: ```bash -$ bundle +# Set the version of rails we want to follow +export BUNDLE_GEMFILE=gemfiles/rails_7.0.gemfile +bundle install ``` from the root directory. This will also install the gems required by the dummy application found at `spec/dummy`. @@ -260,16 +262,18 @@ Ensure to update `lib/rpi_auth/version.rb` when publishing a new version. ### Testing ```bash -$ bundle exec rspec +$ bundle exec --gemfile gemfiles/rails_7.0.gemfile rspec ``` #### Testing with different versions of Rails -This Gem should work with Rails 6.1+, but the `Gemfile.lock` is tracking Rails 7 at the moment. To test Rails 6.1, you'll want to use `gemfiles/rails_6.1.gemfile` as your gemfile, and then run rspec using that. +This Gem should work with Rails 6.1+. To test Rails 6.1, you'll want to use `gemfiles/rails_6.1.gemfile` as your gemfile, and then run rspec using that. ``` -bundle install --gemfile gemfiles/rails_6.1.gemfile -bundle exec --gemfile gemfiles/rails_6.1.gemfile rspec +# Set the version of rails we want to follow +export BUNDLE_GEMFILE=gemfiles/rails_6.1.gemfile +bundle install +bundle exec rspec ``` ## Releasing diff --git a/gemfiles/rails_6.1.gemfile b/gemfiles/rails_6.1.gemfile index d5b1f3f..af88999 100644 --- a/gemfiles/rails_6.1.gemfile +++ b/gemfiles/rails_6.1.gemfile @@ -2,7 +2,7 @@ source 'https://rubygems.org' -gem 'rails', '~> 6.1' +gem 'rails', '~> 6.1.0' # Specify your gem's dependencies in rpi_auth.gemspec. gemspec path: '../' diff --git a/gemfiles/rails_7.0.gemfile b/gemfiles/rails_7.0.gemfile deleted file mode 120000 index 26cb2ad..0000000 --- a/gemfiles/rails_7.0.gemfile +++ /dev/null @@ -1 +0,0 @@ -../Gemfile \ No newline at end of file diff --git a/gemfiles/rails_7.0.gemfile b/gemfiles/rails_7.0.gemfile new file mode 100644 index 0000000..e36e671 --- /dev/null +++ b/gemfiles/rails_7.0.gemfile @@ -0,0 +1,12 @@ +# frozen_string_literal: true + +source 'https://rubygems.org' + +gem 'rails', '~> 7.0.0' + +# Specify your gem's dependencies in rpi_auth.gemspec. +if File.dirname(__FILE__).end_with?('gemfiles') + gemspec path: '../' +else + gemspec +end diff --git a/gemfiles/rails_7.0.gemfile.lock b/gemfiles/rails_7.0.gemfile.lock deleted file mode 120000 index 412e45f..0000000 --- a/gemfiles/rails_7.0.gemfile.lock +++ /dev/null @@ -1 +0,0 @@ -../Gemfile.lock \ No newline at end of file diff --git a/gemfiles/rails_7.0.gemfile.lock b/gemfiles/rails_7.0.gemfile.lock new file mode 100644 index 0000000..65285d5 --- /dev/null +++ b/gemfiles/rails_7.0.gemfile.lock @@ -0,0 +1,325 @@ +PATH + remote: .. + specs: + rpi_auth (3.4.0) + omniauth-rails_csrf_protection (~> 1.0.0) + omniauth_openid_connect (~> 0.7.1) + rails (>= 6.1.4) + +GEM + remote: https://rubygems.org/ + specs: + actioncable (7.0.8) + actionpack (= 7.0.8) + activesupport (= 7.0.8) + nio4r (~> 2.0) + websocket-driver (>= 0.6.1) + actionmailbox (7.0.8) + actionpack (= 7.0.8) + activejob (= 7.0.8) + activerecord (= 7.0.8) + activestorage (= 7.0.8) + activesupport (= 7.0.8) + mail (>= 2.7.1) + net-imap + net-pop + net-smtp + actionmailer (7.0.8) + actionpack (= 7.0.8) + actionview (= 7.0.8) + activejob (= 7.0.8) + activesupport (= 7.0.8) + mail (~> 2.5, >= 2.5.4) + net-imap + net-pop + net-smtp + rails-dom-testing (~> 2.0) + actionpack (7.0.8) + actionview (= 7.0.8) + activesupport (= 7.0.8) + rack (~> 2.0, >= 2.2.4) + rack-test (>= 0.6.3) + rails-dom-testing (~> 2.0) + rails-html-sanitizer (~> 1.0, >= 1.2.0) + actiontext (7.0.8) + actionpack (= 7.0.8) + activerecord (= 7.0.8) + activestorage (= 7.0.8) + activesupport (= 7.0.8) + globalid (>= 0.6.0) + nokogiri (>= 1.8.5) + actionview (7.0.8) + activesupport (= 7.0.8) + builder (~> 3.1) + erubi (~> 1.4) + rails-dom-testing (~> 2.0) + rails-html-sanitizer (~> 1.1, >= 1.2.0) + activejob (7.0.8) + activesupport (= 7.0.8) + globalid (>= 0.3.6) + activemodel (7.0.8) + activesupport (= 7.0.8) + activerecord (7.0.8) + activemodel (= 7.0.8) + activesupport (= 7.0.8) + activestorage (7.0.8) + actionpack (= 7.0.8) + activejob (= 7.0.8) + activerecord (= 7.0.8) + activesupport (= 7.0.8) + marcel (~> 1.0) + mini_mime (>= 1.1.0) + activesupport (7.0.8) + concurrent-ruby (~> 1.0, >= 1.0.2) + i18n (>= 1.6, < 2) + minitest (>= 5.1) + tzinfo (~> 2.0) + aes_key_wrap (1.1.0) + ast (2.4.2) + attr_required (1.0.2) + base64 (0.2.0) + bindata (2.4.15) + builder (3.2.4) + byebug (11.1.3) + coderay (1.1.3) + concurrent-ruby (1.2.3) + crass (1.0.6) + date (3.3.4) + diff-lcs (1.5.0) + docile (1.4.0) + email_validator (2.2.4) + activemodel + erubi (1.12.0) + faraday (2.8.1) + base64 + faraday-net_http (>= 2.0, < 3.1) + ruby2_keywords (>= 0.0.4) + faraday-follow_redirects (0.3.0) + faraday (>= 1, < 3) + faraday-net_http (3.0.2) + ffi (1.16.3) + globalid (1.2.1) + activesupport (>= 6.1) + hashie (5.0.0) + i18n (1.14.1) + concurrent-ruby (~> 1.0) + json (2.7.1) + json-jwt (1.16.5) + activesupport (>= 4.2) + aes_key_wrap + base64 + bindata + faraday (~> 2.0) + faraday-follow_redirects + language_server-protocol (3.17.0.3) + listen (3.8.0) + rb-fsevent (~> 0.10, >= 0.10.3) + rb-inotify (~> 0.9, >= 0.9.10) + loofah (2.22.0) + crass (~> 1.0.2) + nokogiri (>= 1.12.0) + mail (2.8.1) + mini_mime (>= 0.1.1) + net-imap + net-pop + net-smtp + marcel (1.0.2) + method_source (1.0.0) + mini_mime (1.1.5) + mini_portile2 (2.8.5) + minitest (5.21.1) + net-imap (0.4.9.1) + date + net-protocol + net-pop (0.1.2) + net-protocol + net-protocol (0.2.2) + timeout + net-smtp (0.4.0.1) + net-protocol + nio4r (2.7.0) + nokogiri (1.15.5) + mini_portile2 (~> 2.8.2) + racc (~> 1.4) + omniauth (2.1.2) + hashie (>= 3.4.6) + rack (>= 2.2.3) + rack-protection + omniauth-rails_csrf_protection (1.0.1) + actionpack (>= 4.2) + omniauth (~> 2.0) + omniauth_openid_connect (0.7.1) + omniauth (>= 1.9, < 3) + openid_connect (~> 2.2) + openid_connect (2.3.0) + activemodel + attr_required (>= 1.0.0) + email_validator + faraday (~> 2.0) + faraday-follow_redirects + json-jwt (>= 1.16) + mail + rack-oauth2 (~> 2.2) + swd (~> 2.0) + tzinfo + validate_url + webfinger (~> 2.0) + parallel (1.24.0) + parser (3.3.0.4) + ast (~> 2.4.1) + racc + pry (0.14.2) + coderay (~> 1.1) + method_source (~> 1.0) + pry-byebug (3.10.1) + byebug (~> 11.0) + pry (>= 0.13, < 0.15) + public_suffix (5.0.4) + puma (6.4.2) + nio4r (~> 2.0) + racc (1.7.3) + rack (2.2.8) + rack-oauth2 (2.2.1) + activesupport + attr_required + faraday (~> 2.0) + faraday-follow_redirects + json-jwt (>= 1.11.0) + rack (>= 2.1.0) + rack-protection (3.2.0) + base64 (>= 0.1.0) + rack (~> 2.2, >= 2.2.4) + rack-test (2.1.0) + rack (>= 1.3) + rails (7.0.8) + actioncable (= 7.0.8) + actionmailbox (= 7.0.8) + actionmailer (= 7.0.8) + actionpack (= 7.0.8) + actiontext (= 7.0.8) + actionview (= 7.0.8) + activejob (= 7.0.8) + activemodel (= 7.0.8) + activerecord (= 7.0.8) + activestorage (= 7.0.8) + activesupport (= 7.0.8) + bundler (>= 1.15.0) + railties (= 7.0.8) + rails-dom-testing (2.2.0) + activesupport (>= 5.0.0) + minitest + nokogiri (>= 1.6) + rails-html-sanitizer (1.6.0) + loofah (~> 2.21) + nokogiri (~> 1.14) + railties (7.0.8) + actionpack (= 7.0.8) + activesupport (= 7.0.8) + method_source + rake (>= 12.2) + thor (~> 1.0) + zeitwerk (~> 2.5) + rainbow (3.1.1) + rake (13.1.0) + rb-fsevent (0.11.2) + rb-inotify (0.10.1) + ffi (~> 1.0) + regexp_parser (2.9.0) + rexml (3.2.6) + rspec-core (3.12.2) + rspec-support (~> 3.12.0) + rspec-expectations (3.12.3) + diff-lcs (>= 1.2.0, < 2.0) + rspec-support (~> 3.12.0) + rspec-mocks (3.12.6) + diff-lcs (>= 1.2.0, < 2.0) + rspec-support (~> 3.12.0) + rspec-rails (6.1.0) + actionpack (>= 6.1) + activesupport (>= 6.1) + railties (>= 6.1) + rspec-core (~> 3.12) + rspec-expectations (~> 3.12) + rspec-mocks (~> 3.12) + rspec-support (~> 3.12) + rspec-support (3.12.1) + rspec_junit_formatter (0.6.0) + rspec-core (>= 2, < 4, != 2.12.0) + rubocop (1.60.0) + json (~> 2.3) + language_server-protocol (>= 3.17.0) + parallel (~> 1.10) + parser (>= 3.3.0.2) + rainbow (>= 2.2.2, < 4.0) + regexp_parser (>= 1.8, < 3.0) + rexml (>= 3.2.5, < 4.0) + rubocop-ast (>= 1.30.0, < 2.0) + ruby-progressbar (~> 1.7) + unicode-display_width (>= 2.4.0, < 3.0) + rubocop-ast (1.30.0) + parser (>= 3.2.1.0) + rubocop-capybara (2.20.0) + rubocop (~> 1.41) + rubocop-factory_bot (2.25.1) + rubocop (~> 1.41) + rubocop-performance (1.20.2) + rubocop (>= 1.48.1, < 2.0) + rubocop-ast (>= 1.30.0, < 2.0) + rubocop-rails (2.23.1) + activesupport (>= 4.2.0) + rack (>= 1.1) + rubocop (>= 1.33.0, < 2.0) + rubocop-ast (>= 1.30.0, < 2.0) + rubocop-rspec (2.26.1) + rubocop (~> 1.40) + rubocop-capybara (~> 2.17) + rubocop-factory_bot (~> 2.22) + ruby-progressbar (1.13.0) + ruby2_keywords (0.0.5) + simplecov (0.22.0) + docile (~> 1.1) + simplecov-html (~> 0.11) + simplecov_json_formatter (~> 0.1) + simplecov-html (0.12.3) + simplecov_json_formatter (0.1.4) + swd (2.0.3) + activesupport (>= 3) + attr_required (>= 0.0.5) + faraday (~> 2.0) + faraday-follow_redirects + thor (1.3.0) + timeout (0.4.1) + tzinfo (2.0.6) + concurrent-ruby (~> 1.0) + unicode-display_width (2.5.0) + validate_url (1.0.15) + activemodel (>= 3.0.0) + public_suffix + webfinger (2.1.3) + activesupport + faraday (~> 2.0) + faraday-follow_redirects + websocket-driver (0.7.6) + websocket-extensions (>= 0.1.0) + websocket-extensions (0.1.5) + zeitwerk (2.6.12) + +PLATFORMS + ruby + +DEPENDENCIES + listen + pry-byebug + puma + rails (~> 7.0.0) + rpi_auth! + rspec-rails + rspec_junit_formatter + rubocop + rubocop-performance + rubocop-rails + rubocop-rspec + simplecov + +BUNDLED WITH + 2.1.4 diff --git a/Gemfile b/gemfiles/rails_7.1.gemfile similarity index 89% rename from Gemfile rename to gemfiles/rails_7.1.gemfile index cfed361..dab175c 100644 --- a/Gemfile +++ b/gemfiles/rails_7.1.gemfile @@ -2,7 +2,7 @@ source 'https://rubygems.org' -gem 'rails', '~> 7.0' +gem 'rails', '~> 7.1.0' # Specify your gem's dependencies in rpi_auth.gemspec. if File.dirname(__FILE__).end_with?('gemfiles') diff --git a/Gemfile.lock b/gemfiles/rails_7.1.gemfile.lock similarity index 99% rename from Gemfile.lock rename to gemfiles/rails_7.1.gemfile.lock index 63f8344..0725323 100644 --- a/Gemfile.lock +++ b/gemfiles/rails_7.1.gemfile.lock @@ -342,7 +342,7 @@ DEPENDENCIES listen pry-byebug puma - rails (~> 7.0) + rails (~> 7.1.0) rpi_auth! rspec-rails rspec_junit_formatter From 1a40febf4b9b05cdf56d708c5e4a504da7f420cd Mon Sep 17 00:00:00 2001 From: Patrick Cherry Date: Tue, 16 Jan 2024 18:34:04 +0000 Subject: [PATCH 15/24] Fix mistakes --- .github/workflows/ruby.yml | 2 +- README.md | 2 +- gemfiles/rails_6.1.gemfile.lock | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/ruby.yml b/.github/workflows/ruby.yml index ed4ec97..3c3c1c0 100644 --- a/.github/workflows/ruby.yml +++ b/.github/workflows/ruby.yml @@ -20,7 +20,7 @@ jobs: fail-fast: false matrix: ruby-version: ['2.7', '3.1', '3.2'] - gemfile: [ rails_6.1, rails_7.0, rails7.1 ] + gemfile: [ rails_6.1, rails_7.0, rails_7.1 ] env: BUNDLE_GEMFILE: ${{ github.workspace }}/gemfiles/${{ matrix.gemfile }}.gemfile steps: diff --git a/README.md b/README.md index ce54c13..8bf588a 100644 --- a/README.md +++ b/README.md @@ -262,7 +262,7 @@ Ensure to update `lib/rpi_auth/version.rb` when publishing a new version. ### Testing ```bash -$ bundle exec --gemfile gemfiles/rails_7.0.gemfile rspec +$ bundle exec rspec ``` #### Testing with different versions of Rails diff --git a/gemfiles/rails_6.1.gemfile.lock b/gemfiles/rails_6.1.gemfile.lock index 5956ea0..8191b28 100644 --- a/gemfiles/rails_6.1.gemfile.lock +++ b/gemfiles/rails_6.1.gemfile.lock @@ -312,7 +312,7 @@ DEPENDENCIES listen pry-byebug puma - rails (~> 6.1) + rails (~> 6.1.0) rpi_auth! rspec-rails rspec_junit_formatter From 9ebd15f82a970b6b8512414fc879cc5b7318e836 Mon Sep 17 00:00:00 2001 From: Patrick Cherry Date: Tue, 16 Jan 2024 19:56:49 +0000 Subject: [PATCH 16/24] Refactor workflows --- .github/workflows/ci.yml | 16 ++++++++++ .github/workflows/ruby.yml | 34 -------------------- .github/workflows/test.yml | 64 ++++++++++++++++++++++++++++++++++++++ 3 files changed, 80 insertions(+), 34 deletions(-) create mode 100644 .github/workflows/ci.yml delete mode 100644 .github/workflows/ruby.yml create mode 100644 .github/workflows/test.yml diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml new file mode 100644 index 0000000..357dea5 --- /dev/null +++ b/.github/workflows/ci.yml @@ -0,0 +1,16 @@ +name: CI + +on: + push: + branches: [ main ] + pull_request: + branches: [ main ] + +jobs: + test: + if: github.ref_type == 'branch' && github.ref_name != 'main' + uses: ./.github/workflows/test.yml + +# code_quality: +# if: github.ref_type == 'branch' && github.ref_name != 'main' +# uses: ./.github/workflows/code_quality.yml diff --git a/.github/workflows/ruby.yml b/.github/workflows/ruby.yml deleted file mode 100644 index 3c3c1c0..0000000 --- a/.github/workflows/ruby.yml +++ /dev/null @@ -1,34 +0,0 @@ -# This workflow uses actions that are not certified by GitHub. -# They are provided by a third-party and are governed by -# separate terms of service, privacy policy, and support -# documentation. -# This workflow will download a prebuilt Ruby version, install dependencies and run tests with Rake -# For more information see: https://github.com/marketplace/actions/setup-ruby-jruby-and-truffleruby - -name: Ruby - -on: - push: - branches: [ main ] - pull_request: - branches: [ main ] - -jobs: - test: - runs-on: ubuntu-latest - strategy: - fail-fast: false - matrix: - ruby-version: ['2.7', '3.1', '3.2'] - gemfile: [ rails_6.1, rails_7.0, rails_7.1 ] - env: - BUNDLE_GEMFILE: ${{ github.workspace }}/gemfiles/${{ matrix.gemfile }}.gemfile - steps: - - uses: actions/checkout@v2 - - name: Set up Ruby - uses: ruby/setup-ruby@v1 - with: - ruby-version: ${{ matrix.ruby-version }} - bundler-cache: true # runs 'bundle install' and caches installed gems automatically - - name: Run tests - run: bundle exec rspec diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml new file mode 100644 index 0000000..97daf83 --- /dev/null +++ b/.github/workflows/test.yml @@ -0,0 +1,64 @@ +# This workflow uses actions that are not certified by GitHub. +# They are provided by a third-party and are governed by +# separate terms of service, privacy policy, and support +# documentation. +# This workflow will download a prebuilt Ruby version, install dependencies and run tests with Rake +# For more information see: https://github.com/marketplace/actions/setup-ruby-jruby-and-truffleruby + +name: Test +on: + workflow_call: + +jobs: + test: + runs-on: ubuntu-latest + strategy: + fail-fast: false + matrix: + ruby-version: ['2.7', '3.1', '3.2'] + gemfile: [ rails_6.1, rails_7.0, rails_7.1 ] + env: + BUNDLE_GEMFILE: ${{ github.workspace }}/gemfiles/${{ matrix.gemfile }}.gemfile + steps: + - uses: actions/checkout@v2 + - name: Set up Ruby + uses: ruby/setup-ruby@v1 + with: + ruby-version: ${{ matrix.ruby-version }} + bundler-cache: true # runs 'bundle install' and caches installed gems automatically + - name: Run tests + run: bundle exec rspec + + - name: Archive coverage + if: ${{ success() || failure() }} + uses: actions/upload-artifact@v3 + with: + name: code-coverage-report-ruby_${{ matrix.ruby-version }}-${{ matrix.gemfile }} + path: ${{ github-workspace }}/coverage/ + + post_coverage: + runs-on: ubuntu-latest + needs: test + permissions: + pull-requests: write + steps: + - uses: actions/download-artifact@v3 + with: + name: code-coverage-report-ruby_3.2-rails_7.1 + path: coverage/ + + - name: Install JQ + run: sudo apt-get install -y jq + + - name: Determine coverage + id: coverage + run: | + # Check to see if coverage is under `result.line` or under `result.covered_percent` (older versions) + coverage=$(jq -r 'if .result.line then .result.line else .result.covered_percent end' < coverage/.last_run.json) + [ "${coverage}" = "null" ] && coverage="** Failed to determine coverage **" + echo value="${coverage}" >> "$GITHUB_OUTPUT" + + - uses: mshick/add-pr-comment@v2 + with: + message: | + * GitHub Actions [run \#${{ github.run_id }}](https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}) From 2149a475055f6ef43f4375ec978d8f87fc7585a3 Mon Sep 17 00:00:00 2001 From: Patrick Cherry Date: Tue, 16 Jan 2024 19:57:53 +0000 Subject: [PATCH 17/24] Fix yaml --- .github/workflows/test.yml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 97daf83..38096a4 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -30,11 +30,11 @@ jobs: run: bundle exec rspec - name: Archive coverage - if: ${{ success() || failure() }} - uses: actions/upload-artifact@v3 - with: - name: code-coverage-report-ruby_${{ matrix.ruby-version }}-${{ matrix.gemfile }} - path: ${{ github-workspace }}/coverage/ + if: ${{ success() || failure() }} + uses: actions/upload-artifact@v3 + with: + name: code-coverage-report-ruby_${{ matrix.ruby-version }}-${{ matrix.gemfile }} + path: ${{ github-workspace }}/coverage/ post_coverage: runs-on: ubuntu-latest From 811394ece7753a7da3f667584571f14a1463a8bc Mon Sep 17 00:00:00 2001 From: Patrick Cherry Date: Tue, 16 Jan 2024 19:58:52 +0000 Subject: [PATCH 18/24] fix yaml again --- .github/workflows/test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 38096a4..869d2b9 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -34,7 +34,7 @@ jobs: uses: actions/upload-artifact@v3 with: name: code-coverage-report-ruby_${{ matrix.ruby-version }}-${{ matrix.gemfile }} - path: ${{ github-workspace }}/coverage/ + path: ${{ github.workspace }}/coverage/ post_coverage: runs-on: ubuntu-latest From dc6b2226458e52f301d8029de41c5a865a42864e Mon Sep 17 00:00:00 2001 From: Patrick Cherry Date: Tue, 16 Jan 2024 20:03:53 +0000 Subject: [PATCH 19/24] Add missing part of message :) --- .github/workflows/test.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 869d2b9..8035759 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -62,3 +62,5 @@ jobs: with: message: | * GitHub Actions [run \#${{ github.run_id }}](https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}) + + Test coverage: ${{ steps.coverage.outputs.value }}% From 5646b93618c53f526836b8f36b1e3d57e0a57ae7 Mon Sep 17 00:00:00 2001 From: Greg Annandale Date: Wed, 17 Jan 2024 12:00:04 +0000 Subject: [PATCH 20/24] Adds Rubocop / Code Quality CI workflow --- .github/workflows/code_quality.yml | 31 ++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 .github/workflows/code_quality.yml diff --git a/.github/workflows/code_quality.yml b/.github/workflows/code_quality.yml new file mode 100644 index 0000000..82228a3 --- /dev/null +++ b/.github/workflows/code_quality.yml @@ -0,0 +1,31 @@ +name: 'Code quality' +on: + workflow_call: + inputs: + docker_image: + type: string + required: true + +defaults: + run: + working-directory: /app + +jobs: + code_quality: + runs-on: ubuntu-latest + needs: + - rubocop + steps: + - run: echo "All code quality checks complete." + working-directory: '/' + + rubocop: + runs-on: ubuntu-latest + container: + image: ${{ inputs.docker_image }} + credentials: + username: ${{ github.actor }} + password: ${{ secrets.github_token }} + steps: + - name: Inspecting with Rubocop + run: rubocop From 9681e79383d0f5afb682200e368ff6ec48b4dd75 Mon Sep 17 00:00:00 2001 From: Greg Annandale Date: Wed, 17 Jan 2024 12:01:26 +0000 Subject: [PATCH 21/24] Enable Code Quality CI --- .github/workflows/ci.yml | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 357dea5..85f11a5 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -10,7 +10,6 @@ jobs: test: if: github.ref_type == 'branch' && github.ref_name != 'main' uses: ./.github/workflows/test.yml - -# code_quality: -# if: github.ref_type == 'branch' && github.ref_name != 'main' -# uses: ./.github/workflows/code_quality.yml + code_quality: + if: github.ref_type == 'branch' && github.ref_name != 'main' + uses: ./.github/workflows/code_quality.yml From f321e4925776528f99ffc161cf75761ef1e90a6d Mon Sep 17 00:00:00 2001 From: Greg Annandale Date: Wed, 17 Jan 2024 12:04:11 +0000 Subject: [PATCH 22/24] Fix Code Quality CI config --- .github/workflows/code_quality.yml | 9 --------- 1 file changed, 9 deletions(-) diff --git a/.github/workflows/code_quality.yml b/.github/workflows/code_quality.yml index 82228a3..a969020 100644 --- a/.github/workflows/code_quality.yml +++ b/.github/workflows/code_quality.yml @@ -1,10 +1,6 @@ name: 'Code quality' on: workflow_call: - inputs: - docker_image: - type: string - required: true defaults: run: @@ -21,11 +17,6 @@ jobs: rubocop: runs-on: ubuntu-latest - container: - image: ${{ inputs.docker_image }} - credentials: - username: ${{ github.actor }} - password: ${{ secrets.github_token }} steps: - name: Inspecting with Rubocop run: rubocop From 368f7e3484ebba1dcc6962dcd44e3d4f07dc6930 Mon Sep 17 00:00:00 2001 From: Greg Annandale Date: Wed, 17 Jan 2024 12:05:40 +0000 Subject: [PATCH 23/24] Fix Code Quality CI config --- .github/workflows/code_quality.yml | 5 ----- 1 file changed, 5 deletions(-) diff --git a/.github/workflows/code_quality.yml b/.github/workflows/code_quality.yml index a969020..590c5ed 100644 --- a/.github/workflows/code_quality.yml +++ b/.github/workflows/code_quality.yml @@ -2,10 +2,6 @@ name: 'Code quality' on: workflow_call: -defaults: - run: - working-directory: /app - jobs: code_quality: runs-on: ubuntu-latest @@ -13,7 +9,6 @@ jobs: - rubocop steps: - run: echo "All code quality checks complete." - working-directory: '/' rubocop: runs-on: ubuntu-latest From 1ce8fb8f341071996015501561e06f7b411f4560 Mon Sep 17 00:00:00 2001 From: Greg Annandale Date: Wed, 17 Jan 2024 12:06:35 +0000 Subject: [PATCH 24/24] Revert Code Quality CI check --- .github/workflows/ci.yml | 6 +++--- .github/workflows/code_quality.yml | 17 ----------------- 2 files changed, 3 insertions(+), 20 deletions(-) delete mode 100644 .github/workflows/code_quality.yml diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 85f11a5..4063259 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -10,6 +10,6 @@ jobs: test: if: github.ref_type == 'branch' && github.ref_name != 'main' uses: ./.github/workflows/test.yml - code_quality: - if: github.ref_type == 'branch' && github.ref_name != 'main' - uses: ./.github/workflows/code_quality.yml + # code_quality: + # if: github.ref_type == 'branch' && github.ref_name != 'main' + # uses: ./.github/workflows/code_quality.yml diff --git a/.github/workflows/code_quality.yml b/.github/workflows/code_quality.yml deleted file mode 100644 index 590c5ed..0000000 --- a/.github/workflows/code_quality.yml +++ /dev/null @@ -1,17 +0,0 @@ -name: 'Code quality' -on: - workflow_call: - -jobs: - code_quality: - runs-on: ubuntu-latest - needs: - - rubocop - steps: - - run: echo "All code quality checks complete." - - rubocop: - runs-on: ubuntu-latest - steps: - - name: Inspecting with Rubocop - run: rubocop