vpin 0.20.7

Rust library for the virtual pinball ecosystem
Documentation

vpin

Rust library for the visual/virtual pinball ecosystem

Find it on crates.io: https://crates.io/crates/vpin

Also available on npm as WASM package: https://www.npmjs.com/package/@francisdb/vpin-wasm

Join #vpxtool on "Virtual Pinball Chat" discord for support and questions.

Documentation

https://docs.rs/vpin

Example code

Check the examples folder

Projects using vpin

https://github.com/francisdb/vpxtool https://github.com/jsm174/vpx-editor

Other links

Running the integration tests

We expect a folder ~/vpinball/tables to exist that contains a lot of vpx and directb2s files. The tests will recursively search for these files and run the tests on them.

cargo test --release -- --ignored --nocapture

WASM tests for server-side WASM (wasmtime)

# Install the target and wasmtime (do this only once)
rustup target add wasm32-wasip1
cargo install wasmtime-cli

# Run tests
cargo test --target wasm32-wasip1 --features wasm

WASM tests for browser (wasm-bindgen-test)

# Install the target and wasm-bindgen-test (do this only once)
rustup target add wasm32-unknown-unknown
cargo install wasm-bindgen-cli

# Run tests
cargo test --target wasm32-unknown-unknown

Making a release

We use https://github.com/MarcoIeni/release-plz which creates a release pr on every commit to master