Files
MetaCrate/.gitea/workflows/codegen.yml
Chili Palmer 4a32025e37
Some checks failed
Native code generation / deterministic (push) Successful in 5m4s
Imaging and meshing gate / native (push) Failing after 17s
JPEG 2000 feature / linux (push) Failing after 59s
Skia feature / linux (push) Failing after 1m31s
Generate skeleton attention and genepool catalogs (#49)
2026-08-09 09:28:40 +00:00

45 lines
2.1 KiB
YAML

name: Native code generation
on:
push:
pull_request:
jobs:
deterministic:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: dtolnay/rust-toolchain@stable
with:
components: clippy,rustfmt
- name: Test diagnostics and byte-identical generation
run: cargo test -p libremetaverse-codegen
- name: Verify vendored hashes and checked-in output
run: cargo run -p libremetaverse-codegen -- check
- name: Test generated wire codecs and translated parity cases
run: |
cargo test -p libremetaverse --lib generated_codec_tests
cargo test -p libremetaverse --test packet_wire
cargo test -p libremetaverse-compat-tests --test wire_semantics
- name: Test generated visual and foliage catalogs
run: |
cargo test -p libremetaverse --test generated_catalogs
cargo test -p libremetaverse-compat-tests --test appearance_visual_semantics
- name: Test generated skeleton, attention, and genepool catalogs
run: |
cargo test -p libremetaverse --test generated_avatar_catalogs
cargo test -p libremetaverse --lib linden_skeleton
cargo test -p libremetaverse --lib joint_base_support_category
cargo test -p libremetaverse --lib joint_get_aliases_list
- name: Regenerate twice without reference checkout access
run: |
cargo run -p libremetaverse-codegen -- generate
cargo run -p libremetaverse-codegen -- generate
git diff --exit-code -- codegen/generated crates/libremetaverse/src/packet_catalog.rs crates/libremetaverse/src/visual_catalog.rs crates/libremetaverse/src/foliage_catalog.rs crates/libremetaverse/src/skeleton_catalog.rs crates/libremetaverse/src/attention_catalog.rs crates/libremetaverse/src/genepool_catalog.rs
- name: Lint native generator
run: |
cargo clippy -p libremetaverse-codegen --all-targets -- -D warnings
cargo clippy -p libremetaverse --all-targets --no-deps -- -D warnings
- name: Prove normal consumer build does not execute generation
run: cargo build -p libremetaverse --locked