integrate steep check #151
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: CI | ||
| on: [push, pull_request] | ||
| jobs: | ||
| test: | ||
| name: >- | ||
| ${{ matrix.os }} ${{ matrix.ruby }} | ||
| runs-on: ${{ matrix.os }} | ||
| strategy: | ||
| fail-fast: false | ||
| matrix: | ||
| os: [ ubuntu-latest, macos-latest, windows-latest ] | ||
| ruby: | ||
| - "3.4" | ||
| - "3.3" | ||
| - "3.2" | ||
| - "3.1" | ||
| - "3.0" | ||
| - "2.7" | ||
| - "2.6" | ||
| - "2.5" | ||
| - "2.4" | ||
| - "head" | ||
| - "jruby" | ||
| - "jruby-head" | ||
| - "truffleruby" | ||
| - "truffleruby-head" | ||
| exclude: | ||
| - os: windows-latest | ||
| ruby: truffleruby | ||
| - os: windows-latest | ||
| ruby: truffleruby-head | ||
| - os: macos-latest | ||
| ruby: 2.4 | ||
| - os: macos-latest | ||
| ruby: 2.5 | ||
| steps: | ||
| - name: repo checkout | ||
| uses: actions/checkout@v2 | ||
| - name: load ruby | ||
| uses: ruby/setup-ruby@v1 | ||
| with: | ||
| ruby-version: ${{ matrix.ruby }} | ||
| bundler-cache: true | ||
| - name: install libidn2 | ||
| if: matrix.os == 'ubuntu-latest' | ||
| run: sudo apt-get update -qq -o Acquire::Retries=3 && | ||
| sudo apt-get install --fix-missing -qq -o Acquire::Retries=3 idn2 | ||
| - name: install libidn2 | ||
| if: matrix.os == 'macos-latest' | ||
| run: brew install libidn2 | ||
| - name: install dev tools | ||
| if: matrix.os == 'windows-latest' | ||
| run: choco install make mingw | ||
| - name: test | ||
| run: bundle exec rake test | ||
| continue-on-error: ${{ matrix.os == 'windows-latest' || matrix.ruby == 'head' || matrix.ruby == 'jruby-head' || matrix.ruby == 'truffleruby-head' }} | ||
| - name: lint | ||
| run: bundle exec rake rubocop | ||
| if: matrix.ruby == '3.4' | ||
| - name: rbs collection | ||
| run: bundle exec rbs collection install | ||
| if: matrix.ruby == '3.4' | ||
| - name: runtime type check | ||
| run: bundle exec rbs -r ffi test --target "Idnx*" rake test | ||
| if: matrix.ruby == '3.4' | ||
| - name: static type check | ||
| run: bundle exec steep check | ||
| if: matrix.ruby == '3.4' | ||