1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129
|
name: Test
on:
- push
- pull_request
jobs:
run:
strategy:
fail-fast: false
matrix:
include:
- name: "2.1"
ruby-version: "2.1"
runs-on: "ubuntu-latest"
# Disabled because ruby/setup-ruby doesn't work.
# - name: "2.2"
# ruby-version: "2.2"
# runs-on: "ubuntu-latest"
- name: "2.3"
ruby-version: "2.3"
runs-on: "ubuntu-latest"
- name: "2.4"
ruby-version: "2.4"
runs-on: "ubuntu-latest"
- name: "2.4 + frozen string literal"
ruby-version: "2.4"
runs-on: "ubuntu-latest"
rubyopt: "--enable-frozen-string-literal"
- name: "2.5"
ruby-version: "2.5"
runs-on: "ubuntu-latest"
# Disabled because RubyGems doesn't support frozen string literal.
# - name: "2.5 + frozen string literal"
# ruby-version: "2.5"
# runs-on: "ubuntu-latest"
# rubyopt: "--enable-frozen-string-literal"
- name: "2.6"
ruby-version: "2.6"
runs-on: "ubuntu-latest"
- name: "2.6 + frozen string literal"
ruby-version: "2.6"
runs-on: "ubuntu-latest"
rubyopt: "--enable-frozen-string-literal"
- name: "2.7"
ruby-version: "2.7"
runs-on: "ubuntu-latest"
- name: "2.7 + frozen string literal"
ruby-version: "2.7"
runs-on: "ubuntu-latest"
rubyopt: "--enable-frozen-string-literal"
- name: "3.0"
ruby-version: "3.0"
runs-on: "ubuntu-latest"
- name: "3.0 + frozen string literal"
ruby-version: "3.0"
runs-on: "ubuntu-latest"
rubyopt: "--enable-frozen-string-literal"
- name: "3.1"
ruby-version: "3.1"
runs-on: "ubuntu-latest"
- name: "3.1 + frozen string literal"
ruby-version: "3.1"
runs-on: "ubuntu-latest"
rubyopt: "--enable-frozen-string-literal"
- name: "3.1 on macOS"
ruby-version: "3.1"
runs-on: "macos-latest"
- name: "3.1 on Windows"
ruby-version: "3.1"
runs-on: "windows-latest"
- name: "3.2"
ruby-version: "3.2"
runs-on: "ubuntu-latest"
- name: "3.2 + frozen string literal"
ruby-version: "3.2"
runs-on: "ubuntu-latest"
rubyopt: "--enable-frozen-string-literal"
- name: "3.2 on macOS"
ruby-version: "3.2"
runs-on: "macos-latest"
- name: "3.2 on Windows"
ruby-version: "3.2"
runs-on: "windows-latest"
- name: "3.3"
ruby-version: "3.3"
runs-on: "ubuntu-latest"
- name: "3.3 + frozen string literal"
ruby-version: "3.3"
runs-on: "ubuntu-latest"
rubyopt: "--enable-frozen-string-literal"
- name: "3.3 on macOS"
ruby-version: "3.3"
runs-on: "macos-latest"
- name: "3.3 on Windows"
ruby-version: "3.3"
runs-on: "windows-latest"
- name: "head"
ruby-version: "head"
runs-on: "ubuntu-latest"
- name: "head + frozen string literal"
ruby-version: "head"
runs-on: "ubuntu-latest"
rubyopt: "--enable-frozen-string-literal"
- name: "JRuby"
ruby-version: "jruby"
runs-on: "ubuntu-latest"
- name: "JRuby - head"
ruby-version: "jruby-head"
runs-on: "ubuntu-latest"
- name: "TruffleRuby"
ruby-version: "truffleruby"
runs-on: "ubuntu-latest"
- name: "TruffleRuby - head"
ruby-version: "truffleruby-head"
runs-on: "ubuntu-latest"
name: ${{ matrix.name }}
runs-on: ${{ matrix.runs-on }}
steps:
- uses: actions/checkout@v4
- uses: ruby/setup-ruby@v1
with:
ruby-version: ${{ matrix.ruby-version }}
- name: Install dependencies
run: |
bundle install
- name: Test
run: |
bundle exec rake
env:
RUBYOPT: ${{ matrix.rubyopt }}
|