[workspace]
resolver = "2"
members = [
  "crates/lanspread-compat",
  "crates/lanspread-db",
  "crates/lanspread-mdns",
  "crates/lanspread-peer",
  "crates/lanspread-peer-cli",
  "crates/lanspread-proto",
  "crates/lanspread-tauri-deno-ts/src-tauri",
  "crates/lanspread-utils",
]

[workspace.dependencies]
base64 = "0.22"
bytes = { version = "1", features = ["serde"] }
eyre = "0.6"
futures = "0.3"
gethostname = "1"
if-addrs = "0.15"
log = "0.4"
mdns-sd = "0.19"
mimalloc = { version = "0.1", features = ["secure"] }
notify = "7"
s2n-quic = { version = "1", features = ["provider-event-tracing"] }
serde = { version = "1", features = ["derive"] }
serde_json = "1"
sqlx = { version = "0.8", default-features = false, features = [
  "derive",
  "runtime-tokio",
  "sqlite",
] }
strum = { version = "0.28", features = ["derive"] }
tauri = { version = "2", features = [] }
tauri-plugin-dialog = "2"
tauri-plugin-log = "2"
tauri-plugin-shell = "2"
tauri-plugin-store = "2"
tokio = { version = "1", features = ["full"] }
tokio-util = { version = "0.7", features = ["codec", "rt"] }
tracing = "0.1"
uuid = { version = "1", features = ["v7"] }
walkdir = "2"
windows = { version = "0.62", features = [
  "Win32",
  "Win32_UI",
  "Win32_UI_Shell",
  "Win32_UI_WindowsAndMessaging",
] }

[profile.release]
debug = true
strip = false
debug-assertions = true
overflow-checks = true
lto = false
panic = "unwind"
codegen-units = 1

[profile.release-lto]
inherits = "release"
debug = false
strip = true
debug-assertions = false
overflow-checks = false
lto = true
