Merge pull request #459 from googlefonts/chrissimpkins-cargo-toml-fix #1324
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
on: | |
pull_request: | |
merge_group: | |
push: | |
branches: | |
- main | |
tags: | |
- "*" | |
name: Continuous integration | |
# The check, clippy-lint, and test-stable-* jobs should typically be direct copies from | |
# https://github.com/googlefonts/fontations/blob/main/.github/workflows/rust.yml. | |
# other than the list of crates for cargo check no std | |
jobs: | |
check: | |
name: Rustfmt | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v3 | |
- name: install stable toolchain | |
uses: dtolnay/rust-toolchain@stable | |
- name: rustup component add rustfmt | |
run: rustup component add rustfmt | |
- name: rustfmt check | |
run: cargo fmt --all -- --check | |
- name: cargo doc | |
run: cargo doc --all-features --document-private-items --no-deps | |
- name: check no println! or eprintln! statements | |
run: resources/scripts/check_no_println.sh | |
clippy-lint: | |
name: Clippy lints | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v3 | |
- name: install stable toolchain | |
uses: dtolnay/rust-toolchain@stable | |
- name: cargo clippy --all-features | |
run: cargo clippy --all-features --all-targets -- -D warnings | |
- name: cargo clippy --no-default-features | |
run: cargo clippy --all-targets --no-default-features -- -D warnings | |
# test all packages individually to ensure deterministic resolution | |
# of dependencies for each package | |
# Try to group our tests into sets of crates that take roughly equal time to run | |
# so we get concurrent execution on multiple runners | |
test-stable-fontbe: | |
name: fontbe tests | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v3 | |
- name: install stable toolchain | |
uses: dtolnay/rust-toolchain@stable | |
- name: cargo test fontbe | |
run: cargo test -p fontbe --all-targets --all-features | |
test-stable-fontc: | |
name: fontc tests | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v3 | |
- name: install stable toolchain | |
uses: dtolnay/rust-toolchain@stable | |
- name: cargo test fontc | |
run: cargo test -p fontc --all-targets --all-features | |
test-stable-misc-quick: | |
name: tests other than fontbe,fontc | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v3 | |
- name: install stable toolchain | |
uses: dtolnay/rust-toolchain@stable | |
- name: cargo test fontdrasil | |
run: cargo test -p fontdrasil --all-targets --all-features | |
- name: cargo test fontir | |
run: cargo test -p fontir --all-targets --all-features | |
- name: cargo test glyphs-reader | |
run: cargo test -p glyphs-reader --all-targets --all-features | |
- name: cargo test glyphs2fontir | |
run: cargo test -p glyphs2fontir --all-targets --all-features | |
- name: cargo test ufo2fontir | |
run: cargo test -p ufo2fontir --all-targets --all-features | |
check-no-std: | |
name: cargo check no std | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v3 | |
- name: install stable toolchain | |
uses: dtolnay/rust-toolchain@stable | |
- name: cargo check fontdrasil | |
run: cargo check --manifest-path=fontdrasil/Cargo.toml --no-default-features | |
- name: cargo check fontir | |
run: cargo check --manifest-path=fontir/Cargo.toml --no-default-features | |
- name: cargo check ufo2fontir | |
run: cargo check --manifest-path=ufo2fontir/Cargo.toml --no-default-features | |
- name: cargo check glyphs2fontir | |
run: cargo check --manifest-path=glyphs2fontir/Cargo.toml --no-default-features | |
- name: cargo check fontbe | |
run: cargo check --manifest-path=fontbe/Cargo.toml --no-default-features | |
- name: cargo check fontc | |
run: cargo check --manifest-path=fontc/Cargo.toml --no-default-features | |
check-ots: | |
name: resources/scripts/ots_test.sh | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v3 | |
- name: install stable toolchain | |
uses: dtolnay/rust-toolchain@stable | |
- name: Run resources/scripts/ots_test.sh | |
run: resources/scripts/ots_test.sh |