open-standards/wai/wai-live-web/Cargo.toml
Transaction Science beb4679dc6 Merge #493 (wai/messaging-calls @01f3aac1): wai.live.message and wai.live.call, conversations and calls on live rooms
Merged last, as asked. Conflicts, all adjacent additions, both sides kept:
- joule-moq-room: Cargo.toml's wai features (live_world, remote_desktop and
  live_messaging); lib.rs's modules (messaging, msgstore, remote), Config's
  remote, messaging and call, Service's remote, messaging and calls, the epoch
  through remote::epoch with the conversation and calls opened beside it, and
  settings()'s refusals (#482's world room, #493's conversation and call); the
  README's world, conversation and call sections.
- joule-moq-web: app.js asks a remote room's grant as #489 does and takes a
  given grant as #493 does (a remote page's fallback to viewer only when it
  asked); run.sh runs room.e2e.mjs (now with --remote) and messaging.e2e.mjs,
  each its own --only scenarios; the usage names every scenario.
- workflows: joule-moq-room.yml's and joule-moq-web.yml's accounts;
  wai-conformance.yml's WAI_FEATURES gains live_messaging (#477's union) and
  the first step's test build names live_messaging beside the train's targets.
- wai-live-web's wai features (stream_termination, live_world, live_messaging),
  wai-rs lib.rs's modules, registry.rs's capability list, REGISTRY.md's rows;
  CHANGELOG, #493's entry on top.
- capabilities.json and v2.ttl regenerated (registry export, then --check).

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-26 12:23:34 -04:00

40 lines
1.8 KiB
TOML

[package]
name = "wai-live-web"
version = "0.1.0"
edition = "2021"
license = "Apache-2.0"
description = "WAI's live records for a page: the integer layout and mixer of live-compose, the room's lifecycle replay, the composition at an instant, signed events and captions, and the WAI1 envelope, built from wai-rs for wasm32-unknown-unknown. The same functions build natively, so a test compares the browser's rectangles with the host's."
[lib]
crate-type = ["cdylib", "rlib"]
[[bin]]
# A room for the browser client's end-to-end tests, and the composition the host computes
# for it (see src/bin/wai_live_web.rs).
name = "wai_live_web"
path = "src/bin/wai_live_web.rs"
[dependencies]
# Only the live records (co-performance's, live worlds', live messaging's, the browser sink's and
# stream termination's among them) and the envelope: no codec chain, nothing native.
wai = { path = "../wai-rs", default-features = false, features = ["live_compose", "timed_text", "co_performance", "browser_sink", "stream_termination", "live_world", "live_messaging"] }
serde = { version = "1", features = ["derive"] }
serde_json = { version = "1", features = ["preserve_order"] }
ed25519-dalek = "2"
sha2 = "0.10"
hex = "0.4"
# Pinned to the wasm-bindgen CLI the build runs: the two must match exactly.
wasm-bindgen = "=0.2.127"
[features]
# A decoder on the browser sink's wasm route (WAI extensions/browser-sink.md §4.3, §7.2):
# `decodeBound` verifies a `wai.video.int_motion` envelope against its receipts, decodes it
# with the integer decoder and binds every frame. Built as a second wasm,
# `wai_live_web_decode`, that a page loads only when an object routes to wasm, so the room's
# own build carries none of the decoder.
int_video = ["wai/video_int"]
[profile.release]
opt-level = 3
lto = true
codegen-units = 1