Skip to content

chore(ci): Bump softprops/action-gh-release from 2 to 3 #42

chore(ci): Bump softprops/action-gh-release from 2 to 3

chore(ci): Bump softprops/action-gh-release from 2 to 3 #42

Workflow file for this run

name: CI
on:
push:
branches: [main] # Only on merge to main
pull_request:
branches: [main, develop] # PRs to main or develop
env:
CARGO_TERM_COLOR: always
RUST_BACKTRACE: 1
# Workaround for aws-lc-sys compiler bug check
AWS_LC_SYS_PREBUILT_NASM: 1
# Platform-independent features (excludes cuda, metal which require hardware)
# Note: lance temporarily excluded due to arrow version incompatibility (tracked in #33)
SAFE_FEATURES: "--features llama-cpp,holotensor,integration-tests"
jobs:
check:
name: Check
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- uses: dtolnay/rust-toolchain@stable
- uses: Swatinem/rust-cache@v2
- name: Run cargo check
run: cargo check --workspace ${{ env.SAFE_FEATURES }}
fmt:
name: Format
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- uses: dtolnay/rust-toolchain@stable
with:
components: rustfmt
- name: Run cargo fmt
run: cargo fmt --all -- --check
clippy:
name: Clippy
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- uses: dtolnay/rust-toolchain@stable
with:
components: clippy
- uses: Swatinem/rust-cache@v2
- name: Run cargo clippy
run: cargo clippy --workspace ${{ env.SAFE_FEATURES }} -- -D warnings
test:
name: Test
runs-on: ubuntu-latest
# Note: macOS and Windows temporarily excluded due to arcanum dependency issues:
# - macOS: arcanum-primitives 0.1.2 uses x86_64-only SIMD intrinsics on ARM
# - Windows: sha2-asm 0.6.4 linker failures with MSVC
# TODO: Re-enable cross-platform tests when arcanum dependencies are fixed
env:
# Disable incremental compilation to save disk space
CARGO_INCREMENTAL: 0
steps:
- name: Free disk space
run: |
echo "=== Disk space before cleanup ==="
df -h /
# Remove unnecessary pre-installed software
sudo rm -rf /usr/share/dotnet
sudo rm -rf /usr/local/lib/android
sudo rm -rf /opt/ghc
sudo rm -rf /opt/hostedtoolcache/CodeQL
sudo docker system prune -af || true
echo "=== Disk space after cleanup ==="
df -h /
- uses: actions/checkout@v6
- uses: dtolnay/rust-toolchain@stable
- uses: Swatinem/rust-cache@v2
with:
# Limit cache size to prevent bloat
cache-on-failure: false
- name: Run tests
run: cargo test --workspace --features llama-cpp,holotensor,integration-tests
docs:
name: Documentation
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- uses: dtolnay/rust-toolchain@stable
- uses: Swatinem/rust-cache@v2
- name: Build documentation
run: cargo doc --workspace --no-deps ${{ env.SAFE_FEATURES }}
env:
RUSTDOCFLAGS: -D warnings
msrv:
name: MSRV (1.91)
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- uses: dtolnay/rust-toolchain@master
with:
toolchain: "1.91"
- uses: Swatinem/rust-cache@v2
- name: Check MSRV
run: cargo check --workspace ${{ env.SAFE_FEATURES }}
security:
name: Security Audit
runs-on: ubuntu-latest
continue-on-error: true
steps:
- uses: actions/checkout@v6
- uses: rustsec/audit-check@v2
with:
token: ${{ secrets.GITHUB_TOKEN }}