MSFS Comm bus events are untyped and silently dropped if data such as the event name is incorrect. While this isnt entirely an issue if you are dealing with a handfull of events. With large scale, any changes to event names, event payloads, etc. can can lead to silent failures. We want to turn events into something strict, type safe whilest having a single source of truth for both coherent and wasm.
Both halves ship together off one version: [workspace.package] version in the
root Cargo.toml for the crates, and version in
ts/infinity-ibus-runtime/package.json for the npm package. Bump both, commit,
then run the scripts. Each is a dry run unless you pass -Execute.
./scripts/publish-crates.ps1 # build, test, package, verify
./scripts/publish-crates.ps1 -Execute # publish to crates.io
./scripts/publish-npm.ps1 # install, build, pack
./scripts/publish-npm.ps1 -Execute # publish to npmBoth refuse to run on a dirty working tree (-AllowDirty overrides), refuse a
version already on the registry, and the npm script refuses to publish when
package.json and the Cargo workspace disagree on the version.
Credentials come from cargo login and npm login; the crates script also
takes -Token for CI.