Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
23 changes: 20 additions & 3 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,8 +11,9 @@ jobs:
os: [ubuntu-latest, macos-latest, windows-latest]
gemfile:
- Gemfile
- gemfiles/Gemfile-rails-8-0
- gemfiles/Gemfile-rails-main
ruby: ["3.3", "3.4"]
ruby: ["3.3", "3.4", "4.0"]
include:
- gemfile: "gemfiles/Gemfile-rails-main"
experimental: true
Expand All @@ -26,8 +27,8 @@ jobs:
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1

- name: Remove Gemfile.lock
if: (matrix.gemfile == 'Gemfile') && (matrix.ruby == 'head')
run: "rm ${{ matrix.gemfile }}.lock"
shell: bash
run: "rm -Rf ${{ matrix.gemfile }}.lock"

- name: Set up Ruby
uses: ruby/setup-ruby@80740b3b13bf9857e28854481ca95a84e78a2bdf # v1.284.0
Expand Down Expand Up @@ -58,3 +59,19 @@ jobs:

- name: Lint Ruby files
run: bin/rubocop

summary:
runs-on: ubuntu-latest
needs: [test, lint]
if: always()
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What does this do?

Copy link
Copy Markdown
Member Author

@rafaelfranca rafaelfranca Jan 21, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Without this, this step will not run if one of the dependencies fail. This says it should always run.

Now, why a summary step?

To avoid this page here to need to be changed every time we add or remove a new Ruby version to the matrix. And also to avoid adding new entires to the matrix to invalidate all open PRs.
Screenshot 2026-01-21 at 10 52 32 AM

steps:
- name: Check test matrix status
if: needs.test.result != 'success'
run: exit 1

- name: Check lint status
if: needs.lint.result != 'success'
run: exit 1

- name: All checks passed
run: echo "All checks passed successfully!"
2 changes: 1 addition & 1 deletion .ruby-version
Original file line number Diff line number Diff line change
@@ -1 +1 @@
3.4.5
4.0.1
5 changes: 2 additions & 3 deletions Gemfile
Original file line number Diff line number Diff line change
Expand Up @@ -14,10 +14,9 @@ gem "rubocop-shopify", "~> 2.15", require: false
gem "rubocop-minitest", "~> 0.36", require: false
gem "rubocop-rake", "~> 0.6", require: false
gem "rubocop-sorbet", "~> 0.8", require: false
gem "sorbet-static", platforms: :ruby
gem "sorbet-static", "< 0.6.12889", platforms: :ruby
gem "tapioca", "~> 0.13", require: false, platforms: :ruby
gem "psych", "~> 5.1", require: false
gem "rails", "~> 8.0.0"
gem "rails", "~> 8.1.0"

platforms :mingw, :x64_mingw, :mswin, :jruby do
gem "tzinfo"
Expand Down
Loading