Skip to content

Bump actions/checkout from 3 to 4 (#95) #580

Bump actions/checkout from 3 to 4 (#95)

Bump actions/checkout from 3 to 4 (#95) #580

Workflow file for this run

name: build
on:
push:
branches: [main]
pull_request:
branches: [main]
workflow_dispatch:
env:
CARGO_INCREMENTAL: 0
CARGO_TERM_COLOR: always
RUSTDOCFLAGS: -Ctarget-cpu=haswell -Dwarnings
RUSTFLAGS: -Ctarget-cpu=haswell -Dwarnings
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/cache@v3
with:
path: |
~/.cache/gmp-mpfr-sys
key: ${{ runner.os }}-${{ secrets.CACHE_VERSION }}-${{ hashFiles('Cargo.toml') }}
restore-keys: |
${{ runner.os }}-${{ secrets.CACHE_VERSION }}-
- uses: actions-rs/toolchain@v1
with:
toolchain: nightly
override: true
profile: minimal
components: clippy, rustfmt
- uses: Swatinem/rust-cache@v2
- name: Is AVX-512F available?
id: avx512f
run: lscpu | grep --quiet avx512f
continue-on-error: true
- name: Test
run: cargo test --release
- name: Test (target AVX-512F)
run: cargo test --release
if: ${{ steps.avx512f.outcome == 'success' }}
env:
RUSTFLAGS: ${{ env.RUSTFLAGS }} -Ctarget-feature=+avx512f
RUSTDOCFLAGS: ${{ env.RUSTDOCFLAGS }} -Ctarget-feature=+avx512f
- name: Test (--no-default-features)
run: cargo test --release --no-default-features --lib --tests
- name: Clippy
run: cargo clippy --all-targets
- name: Clippy (target AVX-512F)
run: cargo clippy --all-targets
if: ${{ steps.avx512f.outcome == 'success' }}
env:
RUSTFLAGS: ${{ env.RUSTFLAGS }} -Ctarget-feature=+avx512f
RUSTDOCFLAGS: ${{ env.RUSTDOCFLAGS }} -Ctarget-feature=+avx512f
- name: Check format
run: cargo fmt -- --check
- name: Check docs
run: cargo rustdoc
coverage:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/cache@v3
with:
path: |
~/.cache/gmp-mpfr-sys
key: ${{ env.GITHUB_JOB }}-${{ secrets.CACHE_VERSION }}-${{ hashFiles('Cargo.toml') }}
restore-keys: |
${{ env.GITHUB_JOB }}-${{ secrets.CACHE_VERSION }}-
- uses: actions-rs/toolchain@v1
with:
toolchain: nightly
override: true
profile: minimal
- uses: Swatinem/rust-cache@v2
- name: Coverage
env:
RUSTFLAGS: ${{ env.RUSTFLAGS }} -Zprofile -Ccodegen-units=1 -Clink-dead-code -Coverflow-checks=off -Cpanic=abort -Zpanic_abort_tests
RUSTDOCFLAGS: ${{ env.RUSTDOCFLAGS }} -Zprofile -Ccodegen-units=1 -Clink-dead-code -Coverflow-checks=off -Cpanic=abort -Zpanic_abort_tests
run: cargo test
- name: Gather coverage data
id: coverage
uses: actions-rs/grcov@v0.1
- name: Upload to Coveralls
uses: coverallsapp/github-action@master
with:
github-token: ${{ secrets.GITHUB_TOKEN }}
path-to-lcov: ${{ steps.coverage.outputs.report }}
msrv:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/cache@v3
with:
path: |
~/.cache/gmp-mpfr-sys
key: ${{ runner.os }}-${{ secrets.CACHE_VERSION }}-${{ hashFiles('Cargo.toml') }}
restore-keys: |
${{ runner.os }}-${{ secrets.CACHE_VERSION }}-
- uses: actions-rs/toolchain@v1
with:
toolchain: 1.65.0
override: true
profile: minimal
- uses: Swatinem/rust-cache@v2
- name: Is AVX-512F available?
id: avx512f
run: lscpu | grep --quiet avx512f
continue-on-error: true
- name: Check
run: cargo check --all-targets
- name: Check (target AVX-512F)
run: cargo check --all-targets
if: ${{ steps.avx512f.outcome == 'success' }}
env:
RUSTFLAGS: ${{ env.RUSTFLAGS }} -Ctarget-feature=+avx512f
RUSTDOCFLAGS: ${{ env.RUSTDOCFLAGS }} -Ctarget-feature=+avx512f
- name: Check (--no-default-features)
run: cargo check --no-default-features --all-targets