name: "Test & Lint"
on:
push:
tags-ignore: "*"
branches: main
paths-ignore:
- screenshots/**
- README.md
- CHANGELOG.md
- LICENSE
pull_request:
jobs:
lint:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v7
- uses: docker://mvdan/shfmt
with:
args: -i 4 -l -d scripts/combine-screenshots scripts/package scripts/screenshot-windows
- uses: docker://koalaman/shellcheck:stable
with:
args: -S style -o all scripts/combine-screenshots scripts/package scripts/screenshot-windows
- uses: dtolnay/rust-toolchain@stable
with:
components: rustfmt
- run: cargo fmt --all -- --check
- uses: EmbarkStudios/cargo-deny-action@v2
- uses: EmbarkStudios/cargo-deny-action@v2
with:
arguments: "--no-default-features"
manifest-path: "./pulldown-cmark-mdcat/Cargo.toml"
- run: sudo apt-get install -y asciidoctor
- run: asciidoctor -b manpage -a reproducible --warnings mdcat.1.adoc
- run: man -l --warnings=w --pager=cat mdcat.1
env:
MANWIDTH: 80
test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v7
- uses: dtolnay/rust-toolchain@stable
with:
components: clippy
- uses: Swatinem/rust-cache@v2
- run: cargo clippy -p pulldown-cmark-mdcat --all-targets --locked --no-default-features
- run: cargo test -p pulldown-cmark-mdcat --locked --no-default-features
- run: cargo clippy --workspace --all-targets --locked
- run: cargo test --workspace --locked
- run: cargo run -- sample/common-mark.md
test-windows:
runs-on: windows-latest
if: github.ref == 'refs/heads/main'
steps:
- uses: actions/checkout@v7
- uses: dtolnay/rust-toolchain@stable
with:
components: clippy
- uses: Swatinem/rust-cache@v2
- run: cargo clippy --workspace --all-targets --locked
- run: cargo test --workspace --locked
- run: cargo run -- sample/common-mark.md