From cc68603a28064c0111798312b21abda89a6bcea7 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Thu, 26 Feb 2026 18:57:45 +0000 Subject: [PATCH 1/2] Initial plan From 0c7c227e36a8597290a19ede9fc194e6b9cad238 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Thu, 26 Feb 2026 19:03:13 +0000 Subject: [PATCH 2/2] Bump rspec dependency to >= 3.6, < 5 and add RSpec version matrix in CI Co-authored-by: wesrich <1194120+wesrich@users.noreply.github.com> --- .github/workflows/ci.yml | 20 +++++++++++++++++++- Gemfile | 3 +++ marsh_grass.gemspec | 2 +- 3 files changed, 23 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index f612da2..7d27bc1 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -24,9 +24,12 @@ jobs: run: bundle exec rubocop --fail-level warning --display-only-fail-level-offenses --format github test: - name: Test - ${{ matrix.gemfile }} - Ruby ${{ matrix.ruby }} + name: Test - ${{ matrix.gemfile }} - Ruby ${{ matrix.ruby }} - RSpec ${{ matrix.rspec }} runs-on: ubuntu-latest timeout-minutes: 10 + permissions: + contents: read + checks: write strategy: fail-fast: false matrix: @@ -38,6 +41,7 @@ jobs: activesupport-8.0, activesupport-8.1, ] + rspec: ["3", "4"] exclude: # Rails 7.2 is >= 3.1 - ruby: "3.0" @@ -52,9 +56,23 @@ jobs: gemfile: activesupport-8.1 - ruby: 3.1 gemfile: activesupport-8.1 + # RSpec 4 only on Ruby 4.0 + - ruby: "3.0" + rspec: "4" + - ruby: 3.1 + rspec: "4" + - ruby: 3.2 + rspec: "4" + - ruby: 3.3 + rspec: "4" + - ruby: 3.4 + rspec: "4" + - ruby: 3.5 + rspec: "4" env: BUNDLE_GEMFILE: ${{ github.workspace }}/gemfiles/${{ matrix.gemfile }}.gemfile + RSPEC_VERSION: ${{ matrix.rspec }} steps: - name: Checkout code diff --git a/Gemfile b/Gemfile index f857e45..e4ab7d9 100644 --- a/Gemfile +++ b/Gemfile @@ -5,6 +5,9 @@ git_source(:github) {|repo_name| "https://github.com/#{repo_name}" } # Specify your gem's dependencies in marsh_grass.gemspec gemspec +gem 'rspec', '>= 4.0.0.alpha', '< 5' if ENV['RSPEC_VERSION'] == '4' +gem 'rspec', '~> 3.6' if ENV['RSPEC_VERSION'] == '3' + group :development, :test do gem 'rubocop' gem 'rspec_junit_formatter' diff --git a/marsh_grass.gemspec b/marsh_grass.gemspec index 921a95c..b7b6ab6 100644 --- a/marsh_grass.gemspec +++ b/marsh_grass.gemspec @@ -34,7 +34,7 @@ Gem::Specification.new do |spec| spec.add_development_dependency 'pry-byebug', '~> 3' spec.add_development_dependency 'rake', '~> 13.0' spec.add_dependency 'activesupport', '>= 7.1', '< 9.0' - spec.add_dependency 'rspec', '~> 3.6' + spec.add_dependency 'rspec', '>= 3.6', '< 5' spec.add_dependency 'rspec-rails', '~> 6' spec.add_dependency 'timecop', '~> 0.9' end