Skip to content

Commit

Permalink
Add Rails 7.1 to test matrix (bensheldon#1105)
Browse files Browse the repository at this point in the history
  • Loading branch information
bensheldon authored Oct 19, 2023
1 parent 61746c0 commit 413c2c6
Show file tree
Hide file tree
Showing 4 changed files with 171 additions and 70 deletions.
8 changes: 7 additions & 1 deletion Appraisals
Original file line number Diff line number Diff line change
Expand Up @@ -34,8 +34,14 @@ if ruby_31_or_higher
end

unless jruby
appraise "rails-7.1-ruby-3.1" do
gem "capybara", "~> 3.36" # For Ruby 3.1 support https://github.com/teamcapybara/capybara/pull/2468
gem "rails", "~> 7.1.0"
gem "selenium-webdriver", "~> 4.0" # https://github.com/rails/rails/pull/43498
end

appraise "rails-head" do
gem "capybara", "~> 3.36"
gem "capybara", "~> 3.36" # For Ruby 3.1 support https://github.com/teamcapybara/capybara/pull/24
gem "rails", github: "rails/rails", branch: "main"
gem "selenium-webdriver", "~> 4.0" # https://github.com/rails/rails/pull/43498
end
Expand Down
172 changes: 104 additions & 68 deletions Gemfile.lock
Original file line number Diff line number Diff line change
Expand Up @@ -12,59 +12,63 @@ PATH
GEM
remote: https://rubygems.org/
specs:
actioncable (7.0.8)
actionpack (= 7.0.8)
activesupport (= 7.0.8)
actioncable (7.1.1)
actionpack (= 7.1.1)
activesupport (= 7.1.1)
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)
zeitwerk (~> 2.6)
actionmailbox (7.1.1)
actionpack (= 7.1.1)
activejob (= 7.1.1)
activerecord (= 7.1.1)
activestorage (= 7.1.1)
activesupport (= 7.1.1)
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)
actionmailer (7.1.1)
actionpack (= 7.1.1)
actionview (= 7.1.1)
activejob (= 7.1.1)
activesupport (= 7.1.1)
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)
rails-dom-testing (~> 2.2)
actionpack (7.1.1)
actionview (= 7.1.1)
activesupport (= 7.1.1)
nokogiri (>= 1.8.5)
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.8)
actionpack (= 7.0.8)
activerecord (= 7.0.8)
activestorage (= 7.0.8)
activesupport (= 7.0.8)
rails-dom-testing (~> 2.2)
rails-html-sanitizer (~> 1.6)
actiontext (7.1.1)
actionpack (= 7.1.1)
activerecord (= 7.1.1)
activestorage (= 7.1.1)
activesupport (= 7.1.1)
globalid (>= 0.6.0)
nokogiri (>= 1.8.5)
actionview (7.0.8)
activesupport (= 7.0.8)
actionview (7.1.1)
activesupport (= 7.1.1)
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)
erubi (~> 1.11)
rails-dom-testing (~> 2.2)
rails-html-sanitizer (~> 1.6)
activejob (7.1.1)
activesupport (= 7.1.1)
globalid (>= 0.3.6)
activemodel (7.0.8)
activesupport (= 7.0.8)
activerecord (7.0.8)
activemodel (= 7.0.8)
activesupport (= 7.0.8)
activemodel (7.1.1)
activesupport (= 7.1.1)
activerecord (7.1.1)
activemodel (= 7.1.1)
activesupport (= 7.1.1)
timeout (>= 0.4.0)
activerecord-explain-analyze (0.1.0)
activerecord (>= 4)
pg
Expand All @@ -73,17 +77,21 @@ GEM
activerecord-jdbcpostgresql-adapter (70.1-java)
activerecord-jdbc-adapter (= 70.1)
jdbc-postgres (>= 9.4, < 43)
activestorage (7.0.8)
actionpack (= 7.0.8)
activejob (= 7.0.8)
activerecord (= 7.0.8)
activesupport (= 7.0.8)
activestorage (7.1.1)
actionpack (= 7.1.1)
activejob (= 7.1.1)
activerecord (= 7.1.1)
activesupport (= 7.1.1)
marcel (~> 1.0)
mini_mime (>= 1.1.0)
activesupport (7.0.8)
activesupport (7.1.1)
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)
addressable (2.8.5)
public_suffix (>= 2.0.2, < 6.0)
Expand Down Expand Up @@ -121,6 +129,8 @@ GEM
erubi (~> 1.4)
parser (>= 2.4)
smart_properties
bigdecimal (3.1.4)
bigdecimal (3.1.4-java)
builder (3.2.4)
byebug (11.1.3)
capybara (3.39.2)
Expand All @@ -136,6 +146,7 @@ GEM
concurrent-ruby
coderay (1.1.3)
concurrent-ruby (1.2.2)
connection_pool (2.4.1)
console (1.23.2)
fiber-annotation
fiber-local
Expand All @@ -144,6 +155,8 @@ GEM
date (3.3.3-java)
diff-lcs (1.5.0)
dotenv (2.8.1)
drb (2.1.1)
ruby2_keywords
easy_translate (0.5.1)
thread
thread_safe
Expand Down Expand Up @@ -197,7 +210,13 @@ GEM
rails-i18n
rainbow (>= 2.2.2, < 4.0)
terminal-table (>= 1.5.1)
io-console (0.6.0)
io-console (0.6.0-java)
io-event (1.3.2)
irb (1.8.1)
rdoc
reline (>= 0.3.8)
jar-dependencies (0.4.1)
jdbc-postgres (42.6.0)
json (2.6.3)
json (2.6.3-java)
Expand All @@ -206,7 +225,7 @@ GEM
kramdown-parser-gfm (1.1.0)
kramdown (~> 2.0)
language_server-protocol (3.17.0.3)
loofah (2.21.3)
loofah (2.21.4)
crass (~> 1.0.2)
nokogiri (>= 1.12.0)
mail (2.8.1)
Expand All @@ -233,14 +252,15 @@ GEM
msgpack (1.7.2)
msgpack (1.7.2-java)
multi_json (1.15.0)
net-imap (0.3.7)
mutex_m (0.1.2)
net-imap (0.4.1)
date
net-protocol
net-pop (0.1.2)
net-protocol
net-protocol (0.2.1)
timeout
net-smtp (0.3.3)
net-smtp (0.4.0)
net-protocol
netrc (0.11.0)
nio4r (2.5.9)
Expand Down Expand Up @@ -282,6 +302,10 @@ GEM
pry (>= 0.13, < 0.15)
pry-rails (0.3.9)
pry (>= 0.10.4)
psych (5.1.0)
stringio
psych (5.1.0-java)
jar-dependencies (>= 0.1.7)
public_suffix (5.0.3)
puma (5.6.7)
nio4r (~> 2.0)
Expand All @@ -293,22 +317,27 @@ GEM
rack (2.2.8)
rack-mini-profiler (3.1.1)
rack (>= 1.2.0)
rack-session (1.0.1)
rack (< 3)
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)
rackup (1.0.0)
rack (< 3)
webrick
rails (7.1.1)
actioncable (= 7.1.1)
actionmailbox (= 7.1.1)
actionmailer (= 7.1.1)
actionpack (= 7.1.1)
actiontext (= 7.1.1)
actionview (= 7.1.1)
activejob (= 7.1.1)
activemodel (= 7.1.1)
activerecord (= 7.1.1)
activestorage (= 7.1.1)
activesupport (= 7.1.1)
bundler (>= 1.15.0)
railties (= 7.0.8)
railties (= 7.1.1)
rails-dom-testing (2.2.0)
activesupport (>= 5.0.0)
minitest
Expand All @@ -319,13 +348,14 @@ GEM
rails-i18n (7.0.8)
i18n (>= 0.7, < 2)
railties (>= 6.0.0, < 8)
railties (7.0.8)
actionpack (= 7.0.8)
activesupport (= 7.0.8)
method_source
railties (7.1.1)
actionpack (= 7.1.1)
activesupport (= 7.1.1)
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)
rbi (0.0.17)
Expand All @@ -337,7 +367,11 @@ GEM
ffi (>= 1.0.6)
msgpack (>= 0.4.3)
optimist (>= 3.0.0)
rdoc (6.5.0)
psych (>= 4.0.0)
regexp_parser (2.8.1)
reline (0.3.9)
io-console (~> 0.5)
rexml (3.2.6)
rspec-core (3.12.2)
rspec-support (~> 3.12.0)
Expand Down Expand Up @@ -415,6 +449,7 @@ GEM
spoon (0.0.6)
ffi
stackprof (0.2.25)
stringio (3.0.8)
syntax_tree (6.1.1)
prettier_print (>= 1.2.0)
tapioca (0.11.8)
Expand Down Expand Up @@ -442,6 +477,7 @@ GEM
unparser (0.6.8)
diff-lcs (~> 1.3)
parser (>= 3.2.0)
webrick (1.8.1)
websocket (1.2.9)
websocket-driver (0.7.6)
websocket-extensions (>= 0.1.0)
Expand All @@ -456,7 +492,7 @@ GEM
yard-sorbet (0.8.1)
sorbet-runtime (>= 0.5)
yard (>= 0.9)
zeitwerk (2.6.11)
zeitwerk (2.6.12)

PLATFORMS
arm64-darwin
Expand Down
52 changes: 52 additions & 0 deletions gemfiles/rails_7.1_ruby_3.1.gemfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
# This file was generated by Appraisal

source "https://rubygems.org"

gem "activerecord-jdbcpostgresql-adapter", platforms: [:jruby]
gem "appraisal"
gem "matrix"
gem "nokogiri"
gem "pg", platforms: [:mri, :mingw, :x64_mingw]
gem "rack", "~> 2.2"
gem "rails", "~> 7.1.0"
gem "capybara", "~> 3.36"
gem "selenium-webdriver", "~> 4.0"

platforms :ruby do
gem "dotenv"
gem "foreman"
gem "gem-release"
gem "github_changelog_generator", require: false
gem "net-imap", require: false
gem "net-pop", require: false
gem "net-smtp", require: false

group :debug do
gem "activerecord-explain-analyze", require: false
gem "pry-byebug"
gem "rack-mini-profiler"
gem "rbtrace"
gem "stackprof"
end

group :lint do
gem "easy_translate"
gem "erb_lint"
gem "i18n-tasks"
gem "mdl"
gem "rubocop"
gem "rubocop-performance"
gem "rubocop-rails"
gem "rubocop-rspec"
gem "sorbet"
gem "sorbet-runtime"
gem "spoom", require: false
gem "tapioca", require: false
end

group :demo, :production do
gem "skylight"
end
end

gemspec path: "../"
9 changes: 8 additions & 1 deletion spec/test_app/app/jobs/application_job.rb
Original file line number Diff line number Diff line change
@@ -1,3 +1,10 @@
class ApplicationJob < ActiveJob::Base
retry_on StandardError, wait: :exponentially_longer, attempts: Float::INFINITY
POLYNOMIALLY_LONGER = if ActiveJob.gem_version >= Gem::Version.new("7.1.0.a")
:polynomially_longer
else
:exponentially_longer
end

retry_on StandardError, wait: POLYNOMIALLY_LONGER, attempts: Float::INFINITY
end

0 comments on commit 413c2c6

Please sign in to comment.