diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 0ce5d9ef..2fb40845 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -27,6 +27,7 @@ jobs: fail-fast: false matrix: ruby: + - 3.1.2 - 3.0.3 - 2.7.5 - 2.6.9 @@ -38,6 +39,7 @@ jobs: - sqlite3 - postgresql exclude: + - { ruby: 3.1.2, appraisal: rails_5_2 } - { ruby: 3.0.3, appraisal: rails_5_2 } env: DATABASE_ADAPTER: ${{ matrix.adapter }} diff --git a/Appraisals b/Appraisals index 10b405c0..cb67b914 100644 --- a/Appraisals +++ b/Appraisals @@ -58,9 +58,11 @@ appraise 'rails_6_0' do gem 'bcrypt', '~> 3.1.7' gem 'capybara', '>= 2.15' gem 'listen', '~> 3.3.0' + gem 'psych', '~> 3.0' gem 'spring-watcher-listen', '~> 2.0.0' gem 'selenium-webdriver' gem 'webdrivers' + gem 'net-smtp', require: false # Database adapters gem 'pg', '>= 0.18', '< 2.0' @@ -80,6 +82,8 @@ appraise 'rails_6_1' do gem 'bcrypt', '~> 3.1.7' gem 'capybara', '>= 2.15' gem 'listen', '>= 3.0.5', '< 3.6' + gem 'net-smtp', require: false + gem 'psych', '~> 3.0' gem 'rack-mini-profiler', '~> 2.0.0' gem 'spring-watcher-listen', '~> 2.0.0' gem 'selenium-webdriver' diff --git a/Gemfile.lock b/Gemfile.lock index 9d7e6827..dbc61a98 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -20,7 +20,7 @@ GEM i18n (1.8.5) concurrent-ruby (~> 1.0) method_source (1.0.0) - minitest (5.14.2) + minitest (5.15.0) parallel (1.19.2) parser (2.7.2.0) ast (~> 2.4.1) @@ -100,4 +100,4 @@ DEPENDENCIES zeus BUNDLED WITH - 2.2.22 + 2.2.32 diff --git a/gemfiles/rails_6_0.gemfile b/gemfiles/rails_6_0.gemfile index 92a6b301..b8b4e89b 100644 --- a/gemfiles/rails_6_0.gemfile +++ b/gemfiles/rails_6_0.gemfile @@ -31,8 +31,10 @@ gem "jbuilder", "~> 2.7" gem "bcrypt", "~> 3.1.7" gem "capybara", ">= 2.15" gem "listen", "~> 3.3.0" +gem "psych", "~> 3.0" gem "spring-watcher-listen", "~> 2.0.0" gem "selenium-webdriver" gem "webdrivers" +gem "net-smtp", require: false gem "pg", ">= 0.18", "< 2.0" gem "sqlite3", "~> 1.4" diff --git a/gemfiles/rails_6_0.gemfile.lock b/gemfiles/rails_6_0.gemfile.lock index 0a45073c..8140cb3e 100644 --- a/gemfiles/rails_6_0.gemfile.lock +++ b/gemfiles/rails_6_0.gemfile.lock @@ -82,6 +82,7 @@ GEM concurrent-ruby (1.1.9) crass (1.0.6) diff-lcs (1.5.0) + digest (3.1.0) erubi (1.10.0) ffi (1.15.5) fssm (0.2.10) @@ -107,6 +108,12 @@ GEM mini_portile2 (2.7.1) minitest (5.15.0) msgpack (1.4.4) + net-protocol (0.1.3) + timeout + net-smtp (0.3.1) + digest + net-protocol + timeout nio4r (2.5.8) nokogiri (1.13.1) mini_portile2 (~> 2.7.0) @@ -121,6 +128,7 @@ GEM pry-byebug (3.9.0) byebug (~> 11.0) pry (~> 0.13.0) + psych (3.3.2) public_suffix (4.0.6) puma (4.3.10) nio4r (~> 2.0) @@ -239,6 +247,7 @@ GEM thor (1.2.1) thread_safe (0.3.6) tilt (2.0.10) + timeout (0.3.0) turbolinks (5.2.1) turbolinks-source (~> 5.2) turbolinks-source (5.2.0) @@ -274,9 +283,11 @@ DEPENDENCIES fssm jbuilder (~> 2.7) listen (~> 3.3.0) + net-smtp pg (>= 0.18, < 2.0) pry pry-byebug + psych (~> 3.0) puma (~> 4.1) rails (= 6.0.4.4) rails-controller-testing (>= 1.0.1) @@ -302,4 +313,4 @@ DEPENDENCIES zeus BUNDLED WITH - 2.2.22 + 2.3.19 diff --git a/gemfiles/rails_6_1.gemfile b/gemfiles/rails_6_1.gemfile index 55f72c78..515b1d3d 100644 --- a/gemfiles/rails_6_1.gemfile +++ b/gemfiles/rails_6_1.gemfile @@ -31,6 +31,8 @@ gem "jbuilder", "~> 2.7" gem "bcrypt", "~> 3.1.7" gem "capybara", ">= 2.15" gem "listen", ">= 3.0.5", "< 3.6" +gem "net-smtp", require: false +gem "psych", "~> 3.0" gem "rack-mini-profiler", "~> 2.0.0" gem "spring-watcher-listen", "~> 2.0.0" gem "selenium-webdriver" diff --git a/gemfiles/rails_6_1.gemfile.lock b/gemfiles/rails_6_1.gemfile.lock index f9c8ed87..05928963 100644 --- a/gemfiles/rails_6_1.gemfile.lock +++ b/gemfiles/rails_6_1.gemfile.lock @@ -86,6 +86,7 @@ GEM concurrent-ruby (1.1.9) crass (1.0.6) diff-lcs (1.5.0) + digest (3.1.0) erubi (1.10.0) ffi (1.15.5) fssm (0.2.10) @@ -111,6 +112,12 @@ GEM mini_portile2 (2.7.1) minitest (5.15.0) msgpack (1.4.4) + net-protocol (0.1.3) + timeout + net-smtp (0.3.1) + digest + net-protocol + timeout nio4r (2.5.8) nokogiri (1.13.1) mini_portile2 (~> 2.7.0) @@ -125,6 +132,7 @@ GEM pry-byebug (3.8.0) byebug (~> 11.0) pry (~> 0.10) + psych (3.3.2) public_suffix (4.0.6) puma (5.6.1) nio4r (~> 2.0) @@ -244,6 +252,7 @@ GEM sqlite3 (1.4.2) thor (1.2.1) tilt (2.0.10) + timeout (0.3.0) turbolinks (5.2.1) turbolinks-source (~> 5.2) turbolinks-source (5.2.0) @@ -279,9 +288,11 @@ DEPENDENCIES fssm jbuilder (~> 2.7) listen (>= 3.0.5, < 3.6) + net-smtp pg (>= 0.18, < 2.0) pry pry-byebug + psych (~> 3.0) puma (~> 5.0) rack-mini-profiler (~> 2.0.0) rails (= 6.1.4.4) @@ -308,4 +319,4 @@ DEPENDENCIES zeus BUNDLED WITH - 2.2.22 + 2.2.32 diff --git a/spec/support/acceptance/helpers/rails_version_helpers.rb b/spec/support/acceptance/helpers/rails_version_helpers.rb index 1cd24bd3..dcc2ff51 100644 --- a/spec/support/acceptance/helpers/rails_version_helpers.rb +++ b/spec/support/acceptance/helpers/rails_version_helpers.rb @@ -11,5 +11,9 @@ module AcceptanceTests def rails_gt_6_0? rails_version > 6.0 end + + def rails_6_x? + rails_version =~ '~> 6.0' + end end end diff --git a/spec/support/acceptance/helpers/ruby_version_helpers.rb b/spec/support/acceptance/helpers/ruby_version_helpers.rb index 8725944b..a7f73dd6 100644 --- a/spec/support/acceptance/helpers/ruby_version_helpers.rb +++ b/spec/support/acceptance/helpers/ruby_version_helpers.rb @@ -5,5 +5,9 @@ module AcceptanceTests def ruby_version Tests::Version.new(RUBY_VERSION) end + + def ruby_gt_3_1? + ruby_version >= '3.1' + end end end diff --git a/spec/support/acceptance/helpers/step_helpers.rb b/spec/support/acceptance/helpers/step_helpers.rb index 55c03246..529f97fc 100644 --- a/spec/support/acceptance/helpers/step_helpers.rb +++ b/spec/support/acceptance/helpers/step_helpers.rb @@ -82,6 +82,8 @@ module AcceptanceTests bundle.remove_gem 'web-console' end + add_gem 'net-smtp', require: false if rails_6_x? && ruby_gt_3_1? + fs.open('config/database.yml', 'w') do |file| YAML.dump(database.config.load_file, file) end