d864d985c8
All downstream crates now import Foundation, KlondikePile, Tableau, Klondike, Session, Suit, Rank exclusively from solitaire_core. solitaire_core is the single version-pin point for the upstream crates. - solitaire_engine: 19 files updated, klondike direct dep removed - solitaire_wasm: use statement updated, klondike direct dep removed - solitaire_data: unused klondike dep removed - Cargo.lock: klondike no longer a direct dep of engine/wasm/data - Full workspace clippy clean, all tests pass Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
55 lines
2.1 KiB
TOML
55 lines
2.1 KiB
TOML
[package]
|
|
name = "solitaire_engine"
|
|
version.workspace = true
|
|
license.workspace = true
|
|
edition.workspace = true
|
|
|
|
[dependencies]
|
|
bevy = { workspace = true }
|
|
image = { workspace = true }
|
|
solitaire_core = { workspace = true }
|
|
solitaire_data = { workspace = true }
|
|
solitaire_sync = { workspace = true }
|
|
chrono = { workspace = true }
|
|
uuid = { workspace = true }
|
|
serde = { workspace = true }
|
|
serde_json = { workspace = true }
|
|
thiserror = { workspace = true }
|
|
usvg = { workspace = true }
|
|
resvg = { workspace = true }
|
|
tiny-skia = { workspace = true }
|
|
ron = { workspace = true }
|
|
|
|
# These deps are not available / not needed on wasm32:
|
|
# reqwest — uses mio/hyper native networking (sync plugin is gated out)
|
|
# kira — uses cpal OS audio (audio plugin is gated out)
|
|
# tokio — multi-threaded runtime (TokioRuntimeResource is gated out)
|
|
# dirs — platform data directories (storage uses WasmStorage instead)
|
|
# zip — theme ZIP importer (importer is gated out on wasm32)
|
|
# arboard — clipboard (no wasm backend; stats copy-link uses localStorage)
|
|
[target.'cfg(not(target_arch = "wasm32"))'.dependencies]
|
|
reqwest = { workspace = true }
|
|
kira = { workspace = true }
|
|
tokio = { workspace = true }
|
|
dirs = { workspace = true }
|
|
zip = { workspace = true }
|
|
|
|
# `arboard` has no Android backend and no wasm32 backend. Gate it out for
|
|
# both; the copy-share-link button surfaces an informational toast instead.
|
|
[target.'cfg(all(not(target_os = "android"), not(target_arch = "wasm32")))'.dependencies]
|
|
arboard = { workspace = true }
|
|
|
|
[target.'cfg(target_os = "android")'.dependencies]
|
|
jni = { workspace = true }
|
|
|
|
[target.'cfg(target_arch = "wasm32")'.dependencies]
|
|
base64 = "0.22"
|
|
getrandom = { version = "0.3", features = ["wasm_js"] }
|
|
wasm-bindgen = "0.2"
|
|
web-sys = { version = "0.3", features = ["Storage", "Window"] }
|
|
|
|
[dev-dependencies]
|
|
async-trait = { workspace = true }
|
|
tempfile = { workspace = true }
|
|
solitaire_core = { workspace = true, features = ["test-support"] }
|