Skip to content

Use Rust and LiteSVM for tests per new Anchor defaults, migrate from 1.0rc5 to Anchor 1.0 final #1553

Use Rust and LiteSVM for tests per new Anchor defaults, migrate from 1.0rc5 to Anchor 1.0 final

Use Rust and LiteSVM for tests per new Anchor defaults, migrate from 1.0rc5 to Anchor 1.0 final #1553

Workflow file for this run

# The name of your workflow. GitHub displays the names of your workflows on your repository's "Actions" tab
name: Rust Lint
# To automatically trigger the workflow
on:
# NB: this differs from the book's project!
# These settings allow us to run this specific CI pipeline for PRs against
# this specific branch (a.k.a. book chapter).
push:
branches:
- main
- anchor-1.0-final
- anchor-1.0
- fix-biome-errors
pull_request:
types: [opened, synchronize, reopened]
branches:
- main
env:
# Force all JavaScript-based actions to use Node.js 24 runtime.
# Node.js 20 actions are deprecated and will stop working June 2026.
# This catches composite actions whose internal dependencies still reference @v4.
FORCE_JAVASCRIPT_ACTIONS_TO_NODE24: true
# A workflow run is made up of one or more jobs, which run in parallel by default
# Each job runs in a runner environment specified by runs-on
jobs:
# `fmt` container job
fmt:
name: Rustfmt
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v5
- uses: dtolnay/rust-toolchain@stable
with:
# Specific to dtolnay/rust-toolchain: Comma-separated string of additional components to install
components: rustfmt
- name: Enforce formatting
run: cargo fmt --check
# `clippy` container job
clippy:
name: Clippy
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v5
- uses: dtolnay/rust-toolchain@stable
with:
components: clippy
- name: Linting
# Allow diverging_sub_expression: false positive from Anchor 1.0's #[program] macro expansion
run: cargo clippy -- -D warnings -A clippy::diverging_sub_expression