Expose proc_macro's source_text() on Span #1559
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: CI | |
on: | |
push: | |
pull_request: | |
workflow_dispatch: | |
schedule: [cron: "40 1 * * *"] | |
permissions: | |
contents: read | |
env: | |
RUSTFLAGS: -Dwarnings | |
jobs: | |
pre_ci: | |
uses: dtolnay/.github/.github/workflows/pre_ci.yml@master | |
test: | |
name: Rust ${{matrix.rust}} | |
needs: pre_ci | |
if: needs.pre_ci.outputs.continue | |
runs-on: ubuntu-latest | |
strategy: | |
fail-fast: false | |
matrix: | |
rust: [1.31.0, stable, beta] | |
timeout-minutes: 45 | |
steps: | |
- uses: actions/checkout@v3 | |
- uses: dtolnay/rust-toolchain@master | |
with: | |
toolchain: ${{matrix.rust}} | |
- run: cargo test | |
- run: cargo test --no-default-features | |
- run: cargo test --features span-locations | |
- name: RUSTFLAGS='--cfg procmacro2_semver_exempt' cargo test | |
run: cargo test | |
env: | |
RUSTFLAGS: --cfg procmacro2_semver_exempt ${{env.RUSTFLAGS}} | |
- name: RUSTFLAGS='--cfg procmacro2_semver_exempt' cargo test --no-default-features | |
run: cargo test --no-default-features | |
env: | |
RUSTFLAGS: --cfg procmacro2_semver_exempt ${{env.RUSTFLAGS}} | |
nightly: | |
name: Rust nightly | |
needs: pre_ci | |
if: needs.pre_ci.outputs.continue | |
runs-on: ubuntu-latest | |
timeout-minutes: 45 | |
steps: | |
- uses: actions/checkout@v3 | |
- uses: dtolnay/rust-toolchain@nightly | |
- name: Enable type layout randomization | |
run: echo RUSTFLAGS=${RUSTFLAGS}\ -Zrandomize-layout >> $GITHUB_ENV | |
- run: cargo test | |
- run: cargo test --no-default-features | |
- run: cargo test --no-default-features --test features -- --ignored make_sure_no_proc_macro # run the ignored test to make sure the `proc-macro` feature is disabled | |
- run: cargo test --features span-locations | |
- run: cargo test --manifest-path tests/ui/Cargo.toml | |
- name: RUSTFLAGS='--cfg procmacro2_semver_exempt' cargo test | |
run: cargo test | |
env: | |
RUSTFLAGS: --cfg procmacro2_semver_exempt ${{env.RUSTFLAGS}} | |
- name: RUSTFLAGS='--cfg procmacro2_semver_exempt' cargo test --no-default-features | |
run: cargo test --no-default-features | |
env: | |
RUSTFLAGS: --cfg procmacro2_semver_exempt ${{env.RUSTFLAGS}} | |
- name: RUSTFLAGS='-Z allow-features=' cargo test | |
run: cargo test | |
env: | |
RUSTFLAGS: -Z allow-features= ${{env.RUSTFLAGS}} | |
- run: cargo update -Z minimal-versions && cargo build | |
webassembly: | |
name: WebAssembly | |
needs: pre_ci | |
if: needs.pre_ci.outputs.continue | |
runs-on: ubuntu-latest | |
timeout-minutes: 45 | |
steps: | |
- uses: actions/checkout@v3 | |
- uses: dtolnay/rust-toolchain@nightly | |
with: | |
target: wasm32-unknown-unknown | |
- run: cargo test --target wasm32-unknown-unknown --no-run | |
fuzz: | |
name: Fuzz | |
needs: pre_ci | |
if: needs.pre_ci.outputs.continue | |
runs-on: ubuntu-latest | |
timeout-minutes: 45 | |
steps: | |
- uses: actions/checkout@v3 | |
- uses: dtolnay/rust-toolchain@nightly | |
- uses: dtolnay/install@cargo-fuzz | |
- run: cargo fuzz check | |
clippy: | |
name: Clippy | |
runs-on: ubuntu-latest | |
if: github.event_name != 'pull_request' | |
timeout-minutes: 45 | |
steps: | |
- uses: actions/checkout@v3 | |
- uses: dtolnay/rust-toolchain@clippy | |
- run: cargo clippy --tests -- -Dclippy::all -Dclippy::pedantic | |
- run: cargo clippy --tests --all-features -- -Dclippy::all -Dclippy::pedantic | |
miri: | |
name: Miri | |
needs: pre_ci | |
if: needs.pre_ci.outputs.continue | |
runs-on: ubuntu-latest | |
timeout-minutes: 45 | |
steps: | |
- uses: actions/checkout@v3 | |
- uses: dtolnay/rust-toolchain@miri | |
- run: cargo miri test | |
env: | |
MIRIFLAGS: -Zmiri-strict-provenance | |
outdated: | |
name: Outdated | |
runs-on: ubuntu-latest | |
if: github.event_name != 'pull_request' | |
timeout-minutes: 45 | |
steps: | |
- uses: actions/checkout@v3 | |
- uses: dtolnay/install@cargo-outdated | |
- run: cargo outdated --workspace --exit-code 1 | |
- run: cargo outdated --manifest-path fuzz/Cargo.toml --exit-code 1 |