Skip to content

Fix issue 925 (wheel rotation calculation) #1490

Fix issue 925 (wheel rotation calculation)

Fix issue 925 (wheel rotation calculation) #1490

Workflow file for this run

name: Rapier CI build
on:
push:
branches: [master]
pull_request:
branches: [master]
env:
CARGO_TERM_COLOR: always
jobs:
check-fmt:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Check formatting
run: cargo fmt -- --check
doc:
runs-on: ubuntu-latest
env:
RUSTDOCFLAGS: -D warnings
steps:
- uses: actions/checkout@v4
- name: Cargo doc
run: cargo doc --features parallel,simd-stable,serde-serialize,debug-render -p rapier3d -p rapier2d -p rapier3d-meshloader -p rapier3d-urdf && cargo doc -p mjcf-rs --features msh && cargo doc -p rapier3d-mjcf --features stl,wavefront,msh
build-native:
runs-on: ubuntu-latest
env:
RUSTFLAGS: -D warnings
steps:
- uses: actions/checkout@v4
- run: sudo apt-get install -y cmake libxcb-composite0-dev
- name: Clippy
run: cargo clippy
- name: Clippy rapier2d
run: cargo clippy -p rapier-examples-2d --features parallel,simd-stable
- name: Clippy rapier3d
run: cargo clippy -p rapier-examples-3d --features parallel,simd-stable
- name: Clippy mjcf-rs
run: cargo clippy -p mjcf-rs --all-targets --features msh
- name: Clippy rapier3d-mjcf
run: cargo clippy -p rapier3d-mjcf --all-targets --features stl,wavefront,msh
- name: Build rapier2d
run: cargo build --verbose -p rapier2d;
- name: Build rapier3d
run: cargo build --verbose -p rapier3d;
- name: Build rapier2d SIMD
run: cd crates/rapier2d; cargo build --verbose --features simd-stable;
- name: Build rapier3d SIMD
run: cd crates/rapier3d; cargo build --verbose --features simd-stable;
- name: Build rapier2d SIMD Parallel
run: cd crates/rapier2d; cargo build --verbose --features simd-stable --features parallel;
- name: Build rapier3d SIMD Parallel
run: cd crates/rapier3d; cargo build --verbose --features simd-stable --features parallel;
- name: Run tests
run: cargo test
- name: Test mjcf-rs
run: cargo test -p mjcf-rs --features msh
- name: Test rapier3d-mjcf
run: cargo test -p rapier3d-mjcf --features stl,wavefront,msh
- name: Check rapier_testbed2d
run: cargo check --verbose -p rapier_testbed2d;
- name: Check rapier_testbed3d
run: cargo check --verbose -p rapier_testbed3d;
- name: Check rapier_testbed2d --features parallel
run: cd crates/rapier_testbed2d; cargo check --verbose --features parallel;
- name: Check rapier_testbed3d --features parallel
run: cd crates/rapier_testbed3d; cargo check --verbose --features parallel;
- name: Check rapier_testbed2d --features enhanced-determinism
run: cd crates/rapier2d; cargo check --verbose --features enhanced-determinism;
- name: Check rapier_testbed3d --features enhanced-determinism
run: cd crates/rapier3d; cargo check --verbose --features enhanced-determinism;
- name: Check rapier-examples-2d
run: cargo check -j 1 --verbose -p rapier-examples-2d;
- name: Check rapier-examples-3d
run: cargo check -j 1 --verbose -p rapier-examples-3d;
build-no-std:
runs-on: ubuntu-latest
env:
RUSTFLAGS: -D warnings
steps:
- uses: actions/checkout@v4
- name: Install stable Rust
uses: dtolnay/rust-toolchain@master
with:
toolchain: stable
targets: "x86_64-unknown-linux-gnu,thumbv7em-none-eabihf"
- name: Check rapier2d thumbv7em-none-eabihf (no alloc)
run: cargo check --verbose -p rapier2d --no-default-features --features dim2,f32 --target=thumbv7em-none-eabihf
- name: Check rapier3d thumbv7em-none-eabihf (no alloc)
run: cargo check --verbose -p rapier3d --no-default-features --features dim3,f32 --target=thumbv7em-none-eabihf
- name: Check rapier2d-f64 thumbv7em-none-eabihf (no alloc)
run: cargo check --verbose -p rapier2d-f64 --no-default-features --features dim2,f64 --target=thumbv7em-none-eabihf
- name: Check rapier3d-f64 thumbv7em-none-eabihf (no alloc)
run: cargo check --verbose -p rapier3d-f64 --no-default-features --features dim3,f64 --target=thumbv7em-none-eabihf
- name: Check rapier2d thumbv7em-none-eabihf + alloc
run: cargo check --verbose -p rapier2d --no-default-features --features dim2,f32,alloc --target=thumbv7em-none-eabihf
- name: Check rapier3d thumbv7em-none-eabihf + alloc
run: cargo check --verbose -p rapier3d --no-default-features --features dim3,f32,alloc --target=thumbv7em-none-eabihf
- name: Check rapier2d-f64 thumbv7em-none-eabihf + alloc
run: cargo check --verbose -p rapier2d-f64 --no-default-features --features dim2,f64,alloc --target=thumbv7em-none-eabihf
- name: Check rapier3d-f64 thumbv7em-none-eabihf + alloc
run: cargo check --verbose -p rapier3d-f64 --no-default-features --features dim3,f64,alloc --target=thumbv7em-none-eabihf
- name: Check rapier2d thumbv7em-none-eabihf + alloc + debug-render
run: cargo check --verbose -p rapier2d --no-default-features --features dim2,f32,alloc,debug-render --target=thumbv7em-none-eabihf
- name: Check rapier3d thumbv7em-none-eabihf + alloc + debug-render
run: cargo check --verbose -p rapier3d --no-default-features --features dim3,f32,alloc,debug-render --target=thumbv7em-none-eabihf
build-wasm:
runs-on: ubuntu-latest
env:
RUSTFLAGS: -D warnings
steps:
- uses: actions/checkout@v4
- run: rustup target add wasm32-unknown-unknown
- name: build rapier2d
run: cd crates/rapier2d && cargo build --verbose --target wasm32-unknown-unknown;
- name: build rapier3d
run: cd crates/rapier3d && cargo build --verbose --target wasm32-unknown-unknown;
build-wasm-emscripten:
runs-on: ubuntu-latest
env:
RUSTFLAGS: -D warnings
steps:
- uses: actions/checkout@v4
- run: rustup target add wasm32-unknown-emscripten
- name: build rapier2d
run: cd crates/rapier2d && cargo build --verbose --target wasm32-unknown-emscripten;
- name: build rapier3d
run: cd crates/rapier3d && cargo build --verbose --target wasm32-unknown-emscripten;
- name: build rapier2d --features simd-stable
run: cd crates/rapier2d && cargo build --verbose --target wasm32-unknown-emscripten --features simd-stable;
- name: build rapier3d --features simd-stable
run: cd crates/rapier3d && cargo build --verbose --target wasm32-unknown-emscripten --features simd-stable;
# If this fails, consider changing your text or adding something to .typos.toml
# You can find typos here: https://crates.io/crates/typos'
typos:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: check typos
uses: crate-ci/typos@v1.23.2
publish-dry-run:
runs-on: ubuntu-latest
env:
RUSTFLAGS: -D warnings
steps:
- uses: actions/checkout@v4
- run: sudo apt-get install -y cmake libxcb-composite0-dev
# Builds and verifies each crate the same way `cargo publish` does,
# catching bugs hidden by workspace feature unification.
- name: publish dry-run
run: ./publish.sh --dry-run
# Builds the docusaurus website (user guides + docs site).
website-build:
runs-on: ubuntu-latest
defaults:
run:
working-directory: ./website
steps:
- uses: actions/checkout@v4
- name: User guides generation
run: ./generate_user_guides.sh
- name: yarn install
run: corepack enable && yarn
- name: yarn build
run: PUBLISH_MODE=1 yarn build
# Checks the Rust documentation snippets compile against the in-tree rapier.
website-rust-snippets:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Install Linux dependencies
uses: ./.github/actions/install-linux-deps
- name: Tests injection + code snippets
run: cd website/docs-examples && cargo test
# Checks the JavaScript documentation snippets build (against the published @dimforge/rapier).
website-javascript-snippets:
runs-on: ubuntu-latest
strategy:
matrix:
dimension: [2d, 3d]
defaults:
run:
working-directory: ./website/docs-examples/${{ matrix.dimension }}/javascript
steps:
- uses: actions/checkout@v4
- name: Install dependencies
run: npm ci
- name: Builds javascript snippets.
run: npm run build