Skip to content

Update status badges #61

Update status badges

Update status badges #61

Workflow file for this run

name: CI
on:
pull_request:
push:
branches: [master]
env:
CARGO_TERM_COLOR: always
RUST_BACKTRACE: 1
jobs:
ci:
name: CI
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Install LLVM and dependencies
run: |
sudo apt-get update
sudo apt-get install -y libffi-dev libz-dev libxml2-dev zlib1g-dev
wget https://apt.llvm.org/llvm.sh
chmod +x llvm.sh
sudo ./llvm.sh 20 all
sudo apt-get install -y libpolly-20-dev llvm-20-dev
echo "/usr/lib/llvm-20/bin" >> $GITHUB_PATH
echo "LLVM_SYS_201_PREFIX=/usr/lib/llvm-20" >> $GITHUB_ENV
- name: Setup Pixi
uses: prefix-dev/setup-pixi@v0.9.3
with:
pixi-version: v0.62.0
cache: true
- name: Install nightly Rust (for secondlang)
run: |
rustup toolchain install nightly
rustup component add clippy --toolchain nightly
- name: Format Check
run: pixi run format-check
- name: Clippy (stable)
run: pixi run clippy
- name: Clippy Secondlang (nightly)
run: rustup run nightly cargo clippy -p secondlang -- -D warnings
- name: Build (stable)
run: pixi run build
- name: Build Secondlang (nightly)
run: rustup run nightly cargo build -p secondlang
- name: Test Calculator
run: pixi run test-calculator
- name: Test Firstlang
run: pixi run test-firstlang
- name: Test Secondlang
run: rustup run nightly cargo test -p secondlang
- name: Run Examples (stable only)
run: |
cargo run -p calculator --bin main calculator/examples/simple.calc
cargo run -p firstlang -- firstlang/examples/basics.fl
cargo run -p firstlang -- firstlang/examples/fibonacci.fl
cargo run -p firstlang -- firstlang/examples/factorial.fl
- name: Run Secondlang Examples
run: |
rustup run nightly cargo run -p secondlang -- secondlang/examples/basics.sl
rustup run nightly cargo run -p secondlang -- secondlang/examples/fibonacci.sl
rustup run nightly cargo run -p secondlang -- secondlang/examples/factorial.sl
rustup run nightly cargo run -p secondlang -- secondlang/examples/inference.sl
- name: Build Book
run: pixi run book-build