From 894954ec3a998f59d00dacb4f728a7b695f556ba Mon Sep 17 00:00:00 2001 From: Marc Anguera Insa Date: Thu, 30 Jan 2025 11:19:44 +0100 Subject: [PATCH 1/5] [CI] add newer Ruby and Rails versions --- .github/workflows/ci.yml | 19 ++++++++++--------- Appraisals | 2 ++ README.md | 2 +- 3 files changed, 13 insertions(+), 10 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index cab1ad3..0cef995 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -1,6 +1,10 @@ name: CI -on: [push, pull_request] +on: + push: + branches: [master] + pull_request: + branches: [master] jobs: test: @@ -11,18 +15,15 @@ jobs: strategy: fail-fast: false matrix: - ruby: ["2.7", "3.0", "3.1", "3.2"] - gemfile: [rails_6.0, rails_6.1, rails_7.0, rails_7.1] - exclude: - - ruby: "3.1" - gemfile: rails_6.0 - - ruby: "3.2" - gemfile: rails_6.0 + ruby: ["3.4", "3.3", "3.2", "3.1"] + gemfile: [rails_8.0, rails_7.2, rails_7.1, rails_7.0, rails_6.1] include: - ruby: "2.7" gemfile: rails_5.2 + - ruby: "3.0" + gemfile: rails_6.0 - ruby: head - gemfile: rails_7.0 + gemfile: rails_8.0 steps: - uses: actions/checkout@v3 - uses: ruby/setup-ruby@v1 diff --git a/Appraisals b/Appraisals index 8dfaf31..ed29d3c 100644 --- a/Appraisals +++ b/Appraisals @@ -1,4 +1,6 @@ %w( + 8.0 + 7.2 7.1 7.0 6.1 diff --git a/README.md b/README.md index d038b52..2b12cd7 100644 --- a/README.md +++ b/README.md @@ -339,7 +339,7 @@ $ bundle exec appraisal rspec Run specs against specific version: ``` -$ bundle exec appraisal rails-6.0 rspec +$ bundle exec appraisal rails-7.0 rspec ``` ### Demo From 66f07f1bd9f4f1d624ffd2344badca3f8960ac8f Mon Sep 17 00:00:00 2001 From: Marc Anguera Insa Date: Thu, 30 Jan 2025 11:19:58 +0100 Subject: [PATCH 2/5] add missing gemfiles --- gemfiles/rails_7.2.gemfile | 8 ++++++++ gemfiles/rails_8.0.gemfile | 8 ++++++++ 2 files changed, 16 insertions(+) create mode 100644 gemfiles/rails_7.2.gemfile create mode 100644 gemfiles/rails_8.0.gemfile diff --git a/gemfiles/rails_7.2.gemfile b/gemfiles/rails_7.2.gemfile new file mode 100644 index 0000000..c7a2932 --- /dev/null +++ b/gemfiles/rails_7.2.gemfile @@ -0,0 +1,8 @@ +# This file was generated by Appraisal + +source "https://rubygems.org" + +gem "rails", "~> 7.2.0" +gem "concurrent-ruby", "< 1.3.5" + +gemspec path: "../" diff --git a/gemfiles/rails_8.0.gemfile b/gemfiles/rails_8.0.gemfile new file mode 100644 index 0000000..c5444d0 --- /dev/null +++ b/gemfiles/rails_8.0.gemfile @@ -0,0 +1,8 @@ +# This file was generated by Appraisal + +source "https://rubygems.org" + +gem "rails", "~> 8.0.0" +gem "concurrent-ruby", "< 1.3.5" + +gemspec path: "../" From 192c4f81724d16f3ff62262ef7fbd0394c826e86 Mon Sep 17 00:00:00 2001 From: Marc Anguera Insa Date: Thu, 30 Jan 2025 11:24:23 +0100 Subject: [PATCH 3/5] rails 8 requires ruby 3.2+ --- .github/workflows/ci.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 0cef995..2c3afeb 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -17,6 +17,9 @@ jobs: matrix: ruby: ["3.4", "3.3", "3.2", "3.1"] gemfile: [rails_8.0, rails_7.2, rails_7.1, rails_7.0, rails_6.1] + exclude: + - ruby: "3.1" + gemfile: rails_8.0 include: - ruby: "2.7" gemfile: rails_5.2 From 48260d633f8299c447d8a943d3aec1e19210a38a Mon Sep 17 00:00:00 2001 From: Marc Anguera Insa Date: Thu, 30 Jan 2025 11:48:02 +0100 Subject: [PATCH 4/5] add bigdecimal gem --- Appraisals | 5 ++++- gemfiles/rails_5.2.gemfile | 1 + gemfiles/rails_6.0.gemfile | 1 + gemfiles/rails_6.1.gemfile | 1 + gemfiles/rails_7.0.gemfile | 1 + gemfiles/rails_7.1.gemfile | 1 + gemfiles/rails_7.2.gemfile | 1 + gemfiles/rails_8.0.gemfile | 1 + 8 files changed, 11 insertions(+), 1 deletion(-) diff --git a/Appraisals b/Appraisals index ed29d3c..c75fc02 100644 --- a/Appraisals +++ b/Appraisals @@ -10,8 +10,11 @@ appraise "rails-#{version}" do gem "rails", "~> #{version}.0" - # NOTE: concurrent-ruby gem no longer loads the logger gem since v1.3.5. + # NOTE: The gem concurrent-ruby no longer loads the logger gem since v1.3.5. # More info: https://github.com/rails/rails/pull/54264 gem "concurrent-ruby", "< 1.3.5" + + # NOTE: Since Ruby 3.4+ BigDecimal is a bundled gem + gem "bigdecimal" end end diff --git a/gemfiles/rails_5.2.gemfile b/gemfiles/rails_5.2.gemfile index d4793f2..5968a75 100644 --- a/gemfiles/rails_5.2.gemfile +++ b/gemfiles/rails_5.2.gemfile @@ -4,5 +4,6 @@ source "https://rubygems.org" gem "rails", "~> 5.2.0" gem "concurrent-ruby", "< 1.3.5" +gem "bigdecimal" gemspec path: "../" diff --git a/gemfiles/rails_6.0.gemfile b/gemfiles/rails_6.0.gemfile index dd7fab9..db70fbf 100644 --- a/gemfiles/rails_6.0.gemfile +++ b/gemfiles/rails_6.0.gemfile @@ -4,5 +4,6 @@ source "https://rubygems.org" gem "rails", "~> 6.0.0" gem "concurrent-ruby", "< 1.3.5" +gem "bigdecimal" gemspec path: "../" diff --git a/gemfiles/rails_6.1.gemfile b/gemfiles/rails_6.1.gemfile index b2a8bf8..1192e0c 100644 --- a/gemfiles/rails_6.1.gemfile +++ b/gemfiles/rails_6.1.gemfile @@ -4,5 +4,6 @@ source "https://rubygems.org" gem "rails", "~> 6.1.0" gem "concurrent-ruby", "< 1.3.5" +gem "bigdecimal" gemspec path: "../" diff --git a/gemfiles/rails_7.0.gemfile b/gemfiles/rails_7.0.gemfile index 2b93f9b..b541f30 100644 --- a/gemfiles/rails_7.0.gemfile +++ b/gemfiles/rails_7.0.gemfile @@ -4,5 +4,6 @@ source "https://rubygems.org" gem "rails", "~> 7.0.0" gem "concurrent-ruby", "< 1.3.5" +gem "bigdecimal" gemspec path: "../" diff --git a/gemfiles/rails_7.1.gemfile b/gemfiles/rails_7.1.gemfile index 304e881..ad21690 100644 --- a/gemfiles/rails_7.1.gemfile +++ b/gemfiles/rails_7.1.gemfile @@ -4,5 +4,6 @@ source "https://rubygems.org" gem "rails", "~> 7.1.0" gem "concurrent-ruby", "< 1.3.5" +gem "bigdecimal" gemspec path: "../" diff --git a/gemfiles/rails_7.2.gemfile b/gemfiles/rails_7.2.gemfile index c7a2932..a51fa9d 100644 --- a/gemfiles/rails_7.2.gemfile +++ b/gemfiles/rails_7.2.gemfile @@ -4,5 +4,6 @@ source "https://rubygems.org" gem "rails", "~> 7.2.0" gem "concurrent-ruby", "< 1.3.5" +gem "bigdecimal" gemspec path: "../" diff --git a/gemfiles/rails_8.0.gemfile b/gemfiles/rails_8.0.gemfile index c5444d0..e06e2bc 100644 --- a/gemfiles/rails_8.0.gemfile +++ b/gemfiles/rails_8.0.gemfile @@ -4,5 +4,6 @@ source "https://rubygems.org" gem "rails", "~> 8.0.0" gem "concurrent-ruby", "< 1.3.5" +gem "bigdecimal" gemspec path: "../" From 3fc3089568dc26f86b666130b67f485702e4baf6 Mon Sep 17 00:00:00 2001 From: Marc Anguera Insa Date: Thu, 30 Jan 2025 11:50:23 +0100 Subject: [PATCH 5/5] test --- .github/workflows/ci.yml | 4 ++++ Appraisals | 3 --- gemfiles/rails_5.2.gemfile | 1 - gemfiles/rails_6.0.gemfile | 1 - gemfiles/rails_6.1.gemfile | 1 - gemfiles/rails_7.0.gemfile | 1 - gemfiles/rails_7.1.gemfile | 1 - gemfiles/rails_7.2.gemfile | 1 - gemfiles/rails_8.0.gemfile | 1 - 9 files changed, 4 insertions(+), 10 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 2c3afeb..70668de 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -20,6 +20,10 @@ jobs: exclude: - ruby: "3.1" gemfile: rails_8.0 + - ruby: "3.4" + gemfile: rails_7.0 + - ruby: "3.4" + gemfile: rails_6.1 include: - ruby: "2.7" gemfile: rails_5.2 diff --git a/Appraisals b/Appraisals index c75fc02..cebf9b9 100644 --- a/Appraisals +++ b/Appraisals @@ -13,8 +13,5 @@ # NOTE: The gem concurrent-ruby no longer loads the logger gem since v1.3.5. # More info: https://github.com/rails/rails/pull/54264 gem "concurrent-ruby", "< 1.3.5" - - # NOTE: Since Ruby 3.4+ BigDecimal is a bundled gem - gem "bigdecimal" end end diff --git a/gemfiles/rails_5.2.gemfile b/gemfiles/rails_5.2.gemfile index 5968a75..d4793f2 100644 --- a/gemfiles/rails_5.2.gemfile +++ b/gemfiles/rails_5.2.gemfile @@ -4,6 +4,5 @@ source "https://rubygems.org" gem "rails", "~> 5.2.0" gem "concurrent-ruby", "< 1.3.5" -gem "bigdecimal" gemspec path: "../" diff --git a/gemfiles/rails_6.0.gemfile b/gemfiles/rails_6.0.gemfile index db70fbf..dd7fab9 100644 --- a/gemfiles/rails_6.0.gemfile +++ b/gemfiles/rails_6.0.gemfile @@ -4,6 +4,5 @@ source "https://rubygems.org" gem "rails", "~> 6.0.0" gem "concurrent-ruby", "< 1.3.5" -gem "bigdecimal" gemspec path: "../" diff --git a/gemfiles/rails_6.1.gemfile b/gemfiles/rails_6.1.gemfile index 1192e0c..b2a8bf8 100644 --- a/gemfiles/rails_6.1.gemfile +++ b/gemfiles/rails_6.1.gemfile @@ -4,6 +4,5 @@ source "https://rubygems.org" gem "rails", "~> 6.1.0" gem "concurrent-ruby", "< 1.3.5" -gem "bigdecimal" gemspec path: "../" diff --git a/gemfiles/rails_7.0.gemfile b/gemfiles/rails_7.0.gemfile index b541f30..2b93f9b 100644 --- a/gemfiles/rails_7.0.gemfile +++ b/gemfiles/rails_7.0.gemfile @@ -4,6 +4,5 @@ source "https://rubygems.org" gem "rails", "~> 7.0.0" gem "concurrent-ruby", "< 1.3.5" -gem "bigdecimal" gemspec path: "../" diff --git a/gemfiles/rails_7.1.gemfile b/gemfiles/rails_7.1.gemfile index ad21690..304e881 100644 --- a/gemfiles/rails_7.1.gemfile +++ b/gemfiles/rails_7.1.gemfile @@ -4,6 +4,5 @@ source "https://rubygems.org" gem "rails", "~> 7.1.0" gem "concurrent-ruby", "< 1.3.5" -gem "bigdecimal" gemspec path: "../" diff --git a/gemfiles/rails_7.2.gemfile b/gemfiles/rails_7.2.gemfile index a51fa9d..c7a2932 100644 --- a/gemfiles/rails_7.2.gemfile +++ b/gemfiles/rails_7.2.gemfile @@ -4,6 +4,5 @@ source "https://rubygems.org" gem "rails", "~> 7.2.0" gem "concurrent-ruby", "< 1.3.5" -gem "bigdecimal" gemspec path: "../" diff --git a/gemfiles/rails_8.0.gemfile b/gemfiles/rails_8.0.gemfile index e06e2bc..c5444d0 100644 --- a/gemfiles/rails_8.0.gemfile +++ b/gemfiles/rails_8.0.gemfile @@ -4,6 +4,5 @@ source "https://rubygems.org" gem "rails", "~> 8.0.0" gem "concurrent-ruby", "< 1.3.5" -gem "bigdecimal" gemspec path: "../"