Skip to content

Update Spectrum struct #117

Update Spectrum struct

Update Spectrum struct #117

Workflow file for this run

name: Rust CI
on:
push:
branches: [ "main" ]
pull_request:
branches: [ "main" ]
concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.sha }}
cancel-in-progress: true
env:
CARGO_TERM_COLOR: always
RUSTFLAGS: -D warnings
RUST_BACKTRACE: 1
RUSTUP_WINDOWS_PATH_ADD_BIN: 1
rust_stable: stable
rust_nightly: nightly
rust_min: "1.80"
defaults:
run:
shell: bash
permissions:
contents: read
jobs:
all-tests-pass:
name: LGTM™
runs-on: ubuntu-latest
needs:
- fmt
- clippy
- docs
- minrust
- test-metabodecon-full
steps:
- run: exit 0
basics:
name: basics
runs-on: ubuntu-latest
needs:
- fmt
- clippy
- docs
- minrust
steps:
- run: exit 0
fmt:
name: fmt
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Install Rust ${{ env.rust_nightly }}
uses: dtolnay/rust-toolchain@nightly
with:
toolchain: ${{ env.rust_nightly }}
components: rustfmt
- uses: Swatinem/rust-cache@v2
- name: "rustfmt --check"
run: cargo fmt -- --check
clippy:
name: clippy
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Install Rust ${{ env.rust_stable }}
uses: dtolnay/rust-toolchain@stable
with:
toolchain: ${{ env.rust_stable }}
- name: "clippy --all"
run: cargo clippy --all --all-targets --all-features
docs:
name: docs
runs-on: ${{ matrix.os }}
strategy:
matrix:
os:
- windows-latest
- ubuntu-latest
- macos-latest
steps:
- uses: actions/checkout@v4
- name: Install Rust ${{ env.rust_nightly }}
uses: dtolnay/rust-toolchain@nightly
with:
toolchain: ${{ env.rust_nightly }}
- uses: Swatinem/rust-cache@v2
- name: "doc --all-features"
run: |
cargo doc --all-features --no-deps --document-private-items
cargo doc --all-features --no-deps
env:
RUSTFLAGS: --cfg docsrs
RUSTDOCFLAGS: --cfg docsrs
- name: Upload docs
if: matrix.os == 'ubuntu-latest'
uses: actions/upload-artifact@v4
with:
name: docs
path: target/doc/
minrust:
name: minrust
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Install Rust ${{ env.rust_min }}
uses: dtolnay/rust-toolchain@stable
with:
toolchain: ${{ env.rust_min }}
- uses: Swatinem/rust-cache@v2
- name: "check --workspace --all-features"
run: cargo check --workspace --all-features
test-metabodecon-full:
name : test-metabodecon-full
runs-on: ${{ matrix.os }}
strategy:
matrix:
os:
- windows-latest
- ubuntu-latest
- macos-latest
needs:
- basics
steps:
- uses: actions/checkout@v4
- name: Install Rust ${{ env.rust_stable }}
uses: dtolnay/rust-toolchain@stable
with:
toolchain: ${{ env.rust_stable }}
- uses: Swatinem/rust-cache@v2
- name: test metabodecon full
run: cargo test --features full