Skip to content

Merge pull request #96 from hugopl/aerial-queries #235

Merge pull request #96 from hugopl/aerial-queries

Merge pull request #96 from hugopl/aerial-queries #235

Workflow file for this run

name: CI
on:
push:
branches:
- main
pull_request:
jobs:
test:
# Opt in to ubuntu-24.04 for now to get a newer version of the PCRE2 library
runs-on: ubuntu-24.04
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Set up tree-sitter
uses: tree-sitter/setup-action/cli@v1
with:
tree-sitter-ref: latest
- name: Install Crystal
uses: crystal-lang/install-crystal@v1
with:
crystal: latest
- name: Run tree-sitter tests
run: tree-sitter test
- name: Run stdlib coverage
run: crystal run test/stdlib_coverage.cr
- name: Run compiler verification tests (corpus)
run: crystal run test/crystal_parse_corpus.cr
- name: Run compiler verification tests (stdlib)
run: crystal run test/crystal_parse_stdlib.cr
generate:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Set up tree-sitter
uses: tree-sitter/setup-action/cli@v1
with:
tree-sitter-ref: latest
- name: Regenerate parser
run: tree-sitter generate
- name: Check for changes
run: git diff --stat --exit-code
lint:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Install nodejs
uses: actions/setup-node@v3
with:
node-version: 18
- name: Install eslint
run: npm install
- name: Run eslint on grammar.js
run: npx eslint grammar.js
- name: Run clang-format on C source files
uses: jidicula/clang-format-action@v4.14.0
with:
clang-format-version: 18
check-path: src
exclude-regex: '(parser\.c|tree_sitter/)'