Skip to content

sdk%doc: promote docs/ for Zensical namespace, write startup guide, clean up style guide for web publication, make docs guide informative #142

sdk%doc: promote docs/ for Zensical namespace, write startup guide, clean up style guide for web publication, make docs guide informative

sdk%doc: promote docs/ for Zensical namespace, write startup guide, clean up style guide for web publication, make docs guide informative #142

Workflow file for this run

name: MSRV (1.85)
on:
push:
branches: [develop]
pull_request:
concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: true
permissions:
contents: read
jobs:
lint:
name: Lint
runs-on: ubuntu-24.04
steps:
- name: Checkout
uses: actions/checkout@v6
with:
fetch-depth: 100
- name: Run pull request checks
if: github.event_name == 'pull_request'
shell: bash
run: |
source .github/ci.env
commits=${{ github.event.pull_request.commits }}
if [ "${commits}" -gt "${MAX_PR_COMMITS}" ]; then
echo "::error::PR has ${commits} commits (limit: ${MAX_PR_COMMITS})"
exit 1
fi
- name: Install Rust toolchain
uses: dtolnay/rust-toolchain@1.85.0
with:
components: rustfmt
- name: Set up Node.js
uses: actions/setup-node@v5
with:
node-version: 24
- name: Set up Python
uses: actions/setup-python@v6
with:
python-version-file: pyproject.toml
- name: Install Python dependencies
run: pip install ".[dev]"
- name: Install CodeQL
id: setup-codeql
uses: github/codeql-action/setup-codeql@v4.37.1
with:
tools: linked
- name: Setup CodeQL
run: echo "$(dirname '${{ steps.setup-codeql.outputs.codeql-path }}')" >> "$GITHUB_PATH"
- name: Restore cargo registry
uses: actions/cache/restore@v5
with:
path: |
~/.cargo/registry
~/.cargo/git
key: cargo-deps-${{ hashFiles('Cargo.lock', 'docs/samples/Cargo.lock') }}
restore-keys: cargo-deps-
- name: Restore build artifacts
uses: actions/cache/restore@v5
with:
path: target
key: cargo-build-msrv-${{ runner.os }}-${{ runner.arch }}-${{ github.sha }}
restore-keys: |
cargo-build-msrv-${{ runner.os }}-${{ runner.arch }}-
- name: Manage CodeQL packs
uses: actions/cache@v5
with:
path: ~/.codeql
key: codeql-packs-${{ hashFiles('contrib/codeql/codeql-pack.lock.yml') }}
- name: Run linters
run: python3 contrib/lint_all.py --exclude lint_codeql
env:
RUSTUP_TOOLCHAIN: 1.85.0
- name: Run CodeQL
run: python3 contrib/lint/lint_codeql.py --with-suite=rust-security-and-quality
env:
RUSTUP_TOOLCHAIN: 1.85.0
- name: Check PR commit messages
if: github.event_name == 'pull_request'
run: >
python3 contrib/lint/lint_unconv.py
-r "${{ github.event.pull_request.base.sha }}..${{ github.event.pull_request.head.sha }}"
build:
name: Build and test
runs-on: ubuntu-24.04-arm
steps:
- name: Checkout
uses: actions/checkout@v6
with:
fetch-depth: 1
- name: Run pull request checks
if: github.event_name == 'pull_request'
shell: bash
run: |
source .github/ci.env
commits=${{ github.event.pull_request.commits }}
if [ "${commits}" -gt "${MAX_PR_COMMITS}" ]; then
echo "::error::PR has ${commits} commits (limit: ${MAX_PR_COMMITS})"
exit 1
fi
- name: Install Rust toolchain
uses: dtolnay/rust-toolchain@1.85.0
- name: Restore cargo registry
uses: actions/cache/restore@v5
with:
path: |
~/.cargo/registry
~/.cargo/git
key: cargo-deps-${{ hashFiles('Cargo.lock', 'docs/samples/Cargo.lock') }}
restore-keys: cargo-deps-
- name: Manage build artifacts
uses: actions/cache@v5
with:
path: target
key: cargo-build-msrv-${{ runner.os }}-${{ runner.arch }}-${{ github.sha }}
restore-keys: |
cargo-build-msrv-${{ runner.os }}-${{ runner.arch }}-
- name: Build workspace
run: |
cargo build --workspace --exclude dash-pow --features full
cargo build -p dash-pow --features std,aes_hw
env:
RUSTUP_TOOLCHAIN: 1.85.0
- name: Test workspace
run: |
cargo test --workspace --exclude dash-pow --features full
cargo test -p dash-pow --features std,aes_hw
env:
RUSTUP_TOOLCHAIN: 1.85.0