From 135201f10c89a3b00533d031a55a9cb883611b64 Mon Sep 17 00:00:00 2001 From: Emma Sax Date: Tue, 10 Feb 2026 18:06:25 -0600 Subject: [PATCH 1/6] Set the ruby platform version --- .github/workflows/ci-common.yml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.github/workflows/ci-common.yml b/.github/workflows/ci-common.yml index 2511d1d..1c49ec5 100644 --- a/.github/workflows/ci-common.yml +++ b/.github/workflows/ci-common.yml @@ -22,11 +22,13 @@ jobs: RAILS_VERSION: ${{ inputs.rails }} steps: - uses: actions/checkout@v4 - - if: ${{ inputs.rails < '6.0.0' }} + - if: ${{ inputs.rails < '6.0.0' || inputs.ruby == '3.5' }} run: sudo apt-get update && sudo apt-get install -y libsqlite3-dev - uses: ruby/setup-ruby@v1 with: bundler: ${{ inputs.bundler }} bundler-cache: true ruby-version: ${{ inputs.ruby }} + env: + BUNDLE_FORCE_RUBY_PLATFORM: ${{ inputs.ruby == '3.5' && 'true' || 'false' }} - run: bundle exec rake From 0ef1a747c4e1a5edd9f1bf10331110fb3c53ea1f Mon Sep 17 00:00:00 2001 From: Emma Sax Date: Tue, 10 Feb 2026 18:22:46 -0600 Subject: [PATCH 2/6] Try this --- .github/workflows/ci-common.yml | 2 +- .github/workflows/ci.yml | 6 ++++-- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/.github/workflows/ci-common.yml b/.github/workflows/ci-common.yml index 1c49ec5..c9ee4f8 100644 --- a/.github/workflows/ci-common.yml +++ b/.github/workflows/ci-common.yml @@ -22,7 +22,7 @@ jobs: RAILS_VERSION: ${{ inputs.rails }} steps: - uses: actions/checkout@v4 - - if: ${{ inputs.rails < '6.0.0' || inputs.ruby == '3.5' }} + - if: ${{ inputs.rails < '6.0.0' || inputs.ruby >= '3.5' }} run: sudo apt-get update && sudo apt-get install -y libsqlite3-dev - uses: ruby/setup-ruby@v1 with: diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 9c446d8..45bc5ba 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -43,13 +43,14 @@ jobs: test-rails-7: name: Ruby ${{ matrix.ruby }} and Rails ${{ matrix.rails }} uses: ./.github/workflows/ci-common.yml + continue-on-error: ${{ contains(fromJSON('["3.5", "4.0"]'), matrix.ruby) }} with: rails: ${{ matrix.rails }} ruby: ${{ matrix.ruby }} strategy: matrix: rails: [ '7.0.1', '7.1.0', '7.2.0' ] - ruby: [ '2.7', '3.0', '3.1', '3.2', '3.3', '3.4', '3.5' ] + ruby: [ '2.7', '3.0', '3.1', '3.2', '3.3', '3.4', '3.5', '4.0' ] exclude: - { rails: '7.2.0', ruby: '2.7' } - { rails: '7.2.0', ruby: '3.0' } @@ -57,10 +58,11 @@ jobs: test-rails-8: name: Ruby ${{ matrix.ruby }} and Rails ${{ matrix.rails }} uses: ./.github/workflows/ci-common.yml + continue-on-error: ${{ contains(fromJSON('["3.5", "4.0"]'), matrix.ruby) }} with: rails: ${{ matrix.rails }} ruby: ${{ matrix.ruby }} strategy: matrix: rails: [ '8.0.0', '8.1.0' ] - ruby: [ '3.2', '3.3', '3.4', '3.5' ] + ruby: [ '3.2', '3.3', '3.4', '3.5', '4.0' ] From 5b1656a834bf1a30e4809a95a1627e9e9cec5bfa Mon Sep 17 00:00:00 2001 From: Emma Sax Date: Tue, 10 Feb 2026 18:25:19 -0600 Subject: [PATCH 3/6] And try this --- .github/workflows/ci-common.yml | 5 +++++ .github/workflows/ci.yml | 4 ++-- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci-common.yml b/.github/workflows/ci-common.yml index c9ee4f8..abec755 100644 --- a/.github/workflows/ci-common.yml +++ b/.github/workflows/ci-common.yml @@ -13,10 +13,15 @@ on: required: false type: string default: 'default' + continue-on-error: + required: false + type: boolean + default: false jobs: test: runs-on: ubuntu-24.04 + continue-on-error: ${{ inputs.continue-on-error }} name: Ruby ${{ inputs.ruby }} and Rails ${{ inputs.rails }} env: RAILS_VERSION: ${{ inputs.rails }} diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 45bc5ba..720d577 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -43,10 +43,10 @@ jobs: test-rails-7: name: Ruby ${{ matrix.ruby }} and Rails ${{ matrix.rails }} uses: ./.github/workflows/ci-common.yml - continue-on-error: ${{ contains(fromJSON('["3.5", "4.0"]'), matrix.ruby) }} with: rails: ${{ matrix.rails }} ruby: ${{ matrix.ruby }} + continue-on-error: ${{ contains(fromJSON('["3.5", "4.0"]'), matrix.ruby) }} strategy: matrix: rails: [ '7.0.1', '7.1.0', '7.2.0' ] @@ -58,10 +58,10 @@ jobs: test-rails-8: name: Ruby ${{ matrix.ruby }} and Rails ${{ matrix.rails }} uses: ./.github/workflows/ci-common.yml - continue-on-error: ${{ contains(fromJSON('["3.5", "4.0"]'), matrix.ruby) }} with: rails: ${{ matrix.rails }} ruby: ${{ matrix.ruby }} + continue-on-error: ${{ contains(fromJSON('["3.5", "4.0"]'), matrix.ruby) }} strategy: matrix: rails: [ '8.0.0', '8.1.0' ] From 28e54972255d2c403c4fce1cd14e8eaa41e348a0 Mon Sep 17 00:00:00 2001 From: Emma Sax Date: Tue, 10 Feb 2026 18:31:41 -0600 Subject: [PATCH 4/6] Try this --- .github/workflows/ci-common.yml | 9 +-------- .github/workflows/ci.yml | 6 ++---- 2 files changed, 3 insertions(+), 12 deletions(-) diff --git a/.github/workflows/ci-common.yml b/.github/workflows/ci-common.yml index abec755..d049ddc 100644 --- a/.github/workflows/ci-common.yml +++ b/.github/workflows/ci-common.yml @@ -13,27 +13,20 @@ on: required: false type: string default: 'default' - continue-on-error: - required: false - type: boolean - default: false jobs: test: runs-on: ubuntu-24.04 - continue-on-error: ${{ inputs.continue-on-error }} name: Ruby ${{ inputs.ruby }} and Rails ${{ inputs.rails }} env: RAILS_VERSION: ${{ inputs.rails }} steps: - uses: actions/checkout@v4 - - if: ${{ inputs.rails < '6.0.0' || inputs.ruby >= '3.5' }} + - if: ${{ inputs.rails < '6.0.0' || inputs.ruby >= '4.0' }} run: sudo apt-get update && sudo apt-get install -y libsqlite3-dev - uses: ruby/setup-ruby@v1 with: bundler: ${{ inputs.bundler }} bundler-cache: true ruby-version: ${{ inputs.ruby }} - env: - BUNDLE_FORCE_RUBY_PLATFORM: ${{ inputs.ruby == '3.5' && 'true' || 'false' }} - run: bundle exec rake diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 720d577..9088ebe 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -46,11 +46,10 @@ jobs: with: rails: ${{ matrix.rails }} ruby: ${{ matrix.ruby }} - continue-on-error: ${{ contains(fromJSON('["3.5", "4.0"]'), matrix.ruby) }} strategy: matrix: rails: [ '7.0.1', '7.1.0', '7.2.0' ] - ruby: [ '2.7', '3.0', '3.1', '3.2', '3.3', '3.4', '3.5', '4.0' ] + ruby: [ '2.7', '3.0', '3.1', '3.2', '3.3', '3.4', '4.0' ] exclude: - { rails: '7.2.0', ruby: '2.7' } - { rails: '7.2.0', ruby: '3.0' } @@ -61,8 +60,7 @@ jobs: with: rails: ${{ matrix.rails }} ruby: ${{ matrix.ruby }} - continue-on-error: ${{ contains(fromJSON('["3.5", "4.0"]'), matrix.ruby) }} strategy: matrix: rails: [ '8.0.0', '8.1.0' ] - ruby: [ '3.2', '3.3', '3.4', '3.5', '4.0' ] + ruby: [ '3.2', '3.3', '3.4', '4.0' ] From aa8bea7f924b9c2e76e424865bb747c2d834ba01 Mon Sep 17 00:00:00 2001 From: Emma Sax Date: Tue, 10 Feb 2026 18:36:05 -0600 Subject: [PATCH 5/6] Try this --- .github/workflows/ci-common.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci-common.yml b/.github/workflows/ci-common.yml index d049ddc..2511d1d 100644 --- a/.github/workflows/ci-common.yml +++ b/.github/workflows/ci-common.yml @@ -22,7 +22,7 @@ jobs: RAILS_VERSION: ${{ inputs.rails }} steps: - uses: actions/checkout@v4 - - if: ${{ inputs.rails < '6.0.0' || inputs.ruby >= '4.0' }} + - if: ${{ inputs.rails < '6.0.0' }} run: sudo apt-get update && sudo apt-get install -y libsqlite3-dev - uses: ruby/setup-ruby@v1 with: From 1b4ead4f82180199610053848b4976a1bae70783 Mon Sep 17 00:00:00 2001 From: Emma Sax Date: Tue, 10 Feb 2026 18:38:02 -0600 Subject: [PATCH 6/6] Update Changelog --- CHANGELOG.markdown | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/CHANGELOG.markdown b/CHANGELOG.markdown index 5d27c49..25dd28a 100644 --- a/CHANGELOG.markdown +++ b/CHANGELOG.markdown @@ -1,3 +1,7 @@ +#### Unreleased +* Replace Ruby 3.5 with Ruby 4.0 in all rspec tests + > emmahsax: https://github.com/emmahsax/okcomputer/pull/22 + #### v1.19.1 * Add rspec for higher versions of Ruby and Rails > emmahsax: https://github.com/emmahsax/okcomputer/pull/19