Skip to content

Nuke AST backends (#562) #62

Nuke AST backends (#562)

Nuke AST backends (#562) #62

Workflow file for this run

name: Diplomat CI
on:
push:
branches: [ main ]
pull_request:
branches: [ main ]
env:
CARGO_TERM_COLOR: always
jobs:
lint:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Check rustfmt
run: cargo fmt --all -- --check
- name: Check clippy
run: cargo clippy --all-targets --all-features -- -D warnings
build-test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Build
run: cargo build --verbose
- name: Run tests
run: cargo test --verbose
gen:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Install cargo-make
uses: taiki-e/install-action@v2
with:
tool: [email protected] # https://github.com/rust-diplomat/diplomat/issues/440
- name: Run regeneration
run: cargo make gen
- name: Test code is fresh
run: git add . && git diff --cached --exit-code
test-c:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Install cargo-make
uses: taiki-e/install-action@cargo-make
- name: Test C
run: cargo make test-c
test-cpp:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Install cargo-make
uses: taiki-e/install-action@cargo-make
- name: Test C++ (clang)
run: CXX=clang++-14 cargo make test-cpp
- name: Test C++ (gcc)
run: CXX=g++ cargo make test-cpp
test-cpp-self-contained:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Install cargo-make
uses: taiki-e/install-action@cargo-make
- name: Test C++ self-contained (clang)
run: CXX=clang++-14 cargo make test-cpp-self-contained
- name: Test C++ self-contained (clang, c++20)
run: CXX=clang++-14 CXX_STD=c++20 cargo make test-cpp-self-contained
- name: Test C++ self-contained (g++, c++23)
run: CXX=g++ CXX_STD=c++23 cargo make test-cpp-self-contained
test-js:
runs-on: ubuntu-latest
strategy:
matrix:
node-version: [
18.20.3, # supported until 2025-04-30
20.14.0, # supported until 2026-04-30
22.3.0, # current, supported until 2027-04-30
]
fail-fast: false
steps:
- uses: actions/checkout@v2
- name: Install cargo-make
uses: taiki-e/install-action@cargo-make
- name: Load Rust toolchain for WASM.
run: rustup target add wasm32-unknown-unknown
- name: Install Node.js
uses: actions/setup-node@v1
with:
node-version: ${{ matrix.node-version }}
- name: Test JS
run: cargo make test-js
test-dart:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Install cargo-make
uses: taiki-e/install-action@cargo-make
- name: Install Dart
uses: dart-lang/setup-dart@v1
with:
sdk: 3.4.0-204.0.dev
- name: Test Dart
run: cargo make test-dart