Skip to content

feat(A4): adopt the strict parse — stray identifiers are a parse error #491

feat(A4): adopt the strict parse — stray identifiers are a parse error

feat(A4): adopt the strict parse — stray identifiers are a parse error #491

Workflow file for this run

name: rake
on:
push:
branches: [ main, v*, ci-check ]
tags: [ v* ]
pull_request:
jobs:
rspec:
name: Test on Ruby ${{ matrix.ruby }} / ${{ matrix.os }}
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
ruby: ["3.3", "3.4"]
os: [ubuntu-latest, windows-latest, macos-latest]
env:
BUNDLE_WITHOUT: "secryst"
SKIP_JS: "1"
SKIP_PYTHON: "1"
steps:
- uses: actions/checkout@v7
- uses: ruby/setup-ruby@v1
with:
ruby-version: ${{ matrix.ruby }}
bundler-cache: true
- name: RSpec
run: bundle exec rspec
standard:
name: StandardRB
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v7
- uses: ruby/setup-ruby@v1
with:
ruby-version: "3.4"
bundler-cache: true
- run: bundle exec standardrb
conformance-matrix:
name: Conformance matrix (frozen fixtures)
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v7
- uses: ruby/setup-ruby@v1
with:
ruby-version: "3.3"
bundler-cache: true
- name: Download fixtures (Releases via the API -- bypasses the asset-redirect CDN)
env:
GH_TOKEN: ${{ github.token }}
run: |
mkdir -p fixtures && cd fixtures
dl() { # dl <tag> <asset-name> <out>
local id=$(gh api repos/interscript/interscript-models/releases/tags/$1 --jq ".assets[] | select(.name==\"$2\") | .id")
gh api -H "Accept: application/octet-stream" repos/interscript/interscript-models/releases/assets/$id > "$3"
}
dl index-v12 models-index.yaml models-index.yaml
dl index-v12 models-index.yaml.sha256 models-index.yaml.sha256
sha256sum -c models-index.yaml.sha256
for v in urd-diac-base fas-diac-base urd-g2p-base; do
dl index-v12 $v-vectors.json $v-vectors.json
done
# the two single-zip models; urd-g2p (split parts) resolves
# via the runtime resolver in a later matrix pass
for m in urd-diac-base-1.0 fas-diac-base-1.0; do
dl $m $m-fp16.zip $m.zip
done
- name: Run the matrix
run: |
for pair in "urd-diac-base-1.0 urd-diac-base" "fas-diac-base-1.0 fas-diac-base"; do
set -- $pair
echo "::group::$1"
SECRYST_E2E_ZIP="$PWD/fixtures/$1.zip" \
CONFORMANCE_VECTORS="$PWD/fixtures/$2-vectors.json" \
bundle exec rspec spec/interscript/ml/conformance_spec.rb
echo "::endgroup::"
done