Skip to content

Priority extensions #95

Priority extensions

Priority extensions #95

Workflow file for this run

name: Ruby CI
on:
pull_request:
push:
branches: [main]
workflow_dispatch:
jobs:
lint:
name: Lint
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4
- uses: ruby/setup-ruby@c04af2bb7258bb6a03df1d3c1865998ac9390972 # v1
with:
ruby-version: '3.3'
rubygems: latest
bundler: 2
bundler-cache: true
- run: bundle exec standardrb
required-ubuntu:
name: Ruby ${{ matrix.ruby }} - ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os:
- ubuntu-20.04
- ubuntu-22.04
- ubuntu-24.04
ruby:
- '2.6'
- '2.7'
- '3.1'
- '3.2'
- '3.3'
- truffleruby
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4
- uses: ruby/setup-ruby@c04af2bb7258bb6a03df1d3c1865998ac9390972 # v1
with:
ruby-version: ${{ matrix.ruby }}
rubygems: latest
bundler: 2
bundler-cache: true
- run: bundle exec ruby -S rake test --trace
required-macos:
name: Ruby ${{ matrix.ruby }} - ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os:
- macos-12
- macos-13
- macos-14
ruby:
- '2.6'
- '2.7'
- '3.1'
- '3.2'
- '3.3'
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4
- uses: ruby/setup-ruby@c04af2bb7258bb6a03df1d3c1865998ac9390972 # v1
with:
ruby-version: ${{ matrix.ruby }}
rubygems: latest
bundler: 2
bundler-cache: true
- run: bundle exec ruby -S rake test --trace
required-windows:
name: Ruby ${{ matrix.ruby }} - ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os:
- windows-2019
- windows-2022
ruby:
- '2.6'
- '2.7'
- '3.1'
- '3.2'
- '3.3'
- mswin
- ucrt
include:
- ruby: mingw
os: windows-2022
- ruby: '3.0'
os: windows-2022
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4
- uses: ruby/setup-ruby@c04af2bb7258bb6a03df1d3c1865998ac9390972 # v1
with:
ruby-version: ${{ matrix.ruby }}
rubygems: latest
bundler: 2
bundler-cache: true
- run: bundle exec ruby -S rake test --trace
# JRuby should NOT be optional, but I have not been able to make it work in quite
# a while.
jruby:
name: Ruby ${{ matrix.ruby }} - ${{ matrix.os }})
strategy:
fail-fast: false
matrix:
ruby:
- jruby
os:
- ubuntu-20.04
- ubuntu-22.04
- ubuntu-24.04
continue-on-error: true
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4
- uses: ruby/setup-ruby@c04af2bb7258bb6a03df1d3c1865998ac9390972 # v1
with:
ruby-version: ${{ matrix.ruby }}
rubygems: latest
bundler: 2
bundler-cache: true
- run: bundle exec jruby -S rake test --trace
ruby-head-optional:
name: Ruby ${{ matrix.ruby }} - ${{ matrix.os }} (optional)
strategy:
fail-fast: false
matrix:
ruby:
- head
os:
- macos-latest
- ubuntu-latest
- windows-latest
continue-on-error: true
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4
- uses: ruby/setup-ruby@c04af2bb7258bb6a03df1d3c1865998ac9390972 # v1
with:
ruby-version: ${{ matrix.ruby }}
rubygems: latest
bundler: 2
bundler-cache: true
- run: bundle exec ruby -S rake test --trace