44 lines
1.8 KiB
YAML
44 lines
1.8 KiB
YAML
name: Imaging and meshing gate
|
|
|
|
on:
|
|
push:
|
|
pull_request:
|
|
|
|
jobs:
|
|
native:
|
|
runs-on: ubuntu-latest
|
|
env:
|
|
RUSTDOCFLAGS: -D warnings
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
- uses: actions/setup-python@v5
|
|
with:
|
|
python-version: "3.11"
|
|
- uses: dtolnay/rust-toolchain@stable
|
|
with:
|
|
components: clippy,rustfmt
|
|
- name: Audit milestone ownership and feature isolation
|
|
run: python tools/check_milestone_06.py
|
|
- name: Test native imaging and meshing crates
|
|
run: |
|
|
cargo test -p libremetaverse-imaging
|
|
cargo test -p libremetaverse-imaging-skia --no-default-features
|
|
cargo test -p libremetaverse-prim-mesher
|
|
- name: Test reviewed milestone parity cases
|
|
run: |
|
|
cargo test -p libremetaverse-compat-tests --test imaging_meshing_semantics reviewed_managedimagetests_
|
|
cargo test -p libremetaverse-compat-tests --test imaging_meshing_semantics reviewed_coordtests_
|
|
cargo test -p libremetaverse-compat-tests --test imaging_meshing_semantics reviewed_quattests_
|
|
cargo test -p libremetaverse-compat-tests --test imaging_meshing_semantics reviewed_primmeshtests_
|
|
- name: Compile workspace tests and performance baselines
|
|
run: |
|
|
cargo test --workspace --no-run
|
|
cargo bench -p libremetaverse-imaging --bench image_pipeline --no-run
|
|
cargo bench -p libremetaverse-prim-mesher --bench meshing --no-run
|
|
- name: Lint and document milestone crates
|
|
run: |
|
|
cargo clippy -p libremetaverse-imaging -p libremetaverse-imaging-skia -p libremetaverse-prim-mesher --all-targets -- -D warnings
|
|
cargo doc -p libremetaverse-imaging -p libremetaverse-imaging-skia -p libremetaverse-prim-mesher --no-deps
|
|
- name: Verify formatting
|
|
run: cargo fmt --all -- --check
|