Skip to content

Merge pull request #23 from rodrimati1992/safe_project_typeeq #131

Merge pull request #23 from rodrimati1992/safe_project_typeeq

Merge pull request #23 from rodrimati1992/safe_project_typeeq #131

Workflow file for this run

name: Rust
on:
push:
branches:
- main
pull_request:
env:
CARGO_TERM_COLOR: always
jobs:
build:
runs-on: ubuntu-latest
strategy:
max-parallel: 2
matrix:
rust: [
stable,
beta,
nightly,
# the MSRV of konst
1.65.0,
# the MSRV of konst_kernel
1.57.0,
]
steps:
- uses: actions/checkout@v2
- name: ci-all-versions
run: |
set -ex
rustup override set ${{ matrix.rust }}
cargo update
cd "${{github.workspace}}/konst_kernel/"
cargo test --no-default-features
cargo test --no-default-features --features "debug"
- uses: actions/checkout@v2
- name: ci-MSRV-versions
if: ${{ matrix.rust != '1.57.0' }}
run: |
set -ex
rustup override set ${{ matrix.rust }}
cargo update
cd "${{github.workspace}}/konst_kernel/"
cargo test --no-default-features --features "debug __for_konst"
cd "${{github.workspace}}/konst_proc_macros/"
cargo build
cd "${{github.workspace}}/konst/"
cargo test --no-default-features --features "debug"
cargo test --no-default-features --features "debug cmp"
cargo test --no-default-features --features "debug iter"
cargo test --no-default-features --features "debug parsing_proc"
cargo test --no-default-features --features "debug parsing"
cargo test --no-default-features --features "debug __cp_derive"
cargo test --no-default-features --features "debug __cp_derive alloc cmp iter parsing_proc"
- uses: actions/checkout@v2
- name: ci-stable-or-later
if: ${{ matrix.rust == 'stable' || matrix.rust == 'beta' || matrix.rust == 'nightly' }}
run: |
set -ex
rustup override set ${{ matrix.rust }}
cargo update
cd "${{github.workspace}}/konst/"
cargo test --no-default-features --features "debug rust_latest_stable cmp"
cargo test --no-default-features --features "debug rust_latest_stable iter"
cargo test --no-default-features --features "debug rust_latest_stable parsing"
cargo test --no-default-features --features "debug rust_latest_stable parsing_proc"
cargo test --no-default-features --features "debug rust_latest_stable __cp_derive"
cargo test --no-default-features --features "debug rust_latest_stable __cp_derive alloc cmp iter parsing_proc"
- uses: actions/checkout@v2
- name: ci-nighly
if: ${{ matrix.rust == 'nightly' && runner.os == 'Linux' }}
run: |
set -ex
rustup override set ${{ matrix.rust }}
cargo update -Z minimal-versions
cd "${{github.workspace}}/konst_proc_macros/"
cargo build
cd "${{github.workspace}}/konst/"
cargo test --no-default-features --features "debug nightly_mut_refs"
cargo test --no-default-features --features "debug __cp_derive alloc cmp iter parsing_proc rust_latest_stable nightly_mut_refs"
MIRI_NIGHTLY=nightly-$(curl -s https://rust-lang.github.io/rustup-components-history/x86_64-unknown-linux-gnu/miri)
echo "Installing latest nightly with Miri"
echo "$MIRI_NIGHTLY"
rustup set profile minimal
rustup default "$MIRI_NIGHTLY"
rustup override set "$MIRI_NIGHTLY"
rustup component add miri
cargo miri setup
cargo clean
env RUST_BACKTRACE=0 MIRIFLAGS="-Zmiri-disable-isolation " \
cargo miri test --no-default-features \
--features "alloc debug cmp iter parsing_proc rust_latest_stable nightly_mut_refs"