[workspace] resolver = "2" members = [ "hcie-protocol", "hcie-color", "hcie-blend", "hcie-history", "hcie-brush-engine", "hcie-draw", "hcie-composite", "hcie-filter", "hcie-selection", "hcie-text", "hcie-vector", "hcie-io", "hcie-document", "hcie-engine-api", "hcie-ai", "hcie-vision", "hcie-tile", "hcie-fx", "hcie-psd", "hcie-psd-saver", "hcie-kra", "hcie-native", "hcie-egui-app/crates/hcie-gui-egui", "hcie-egui-app/crates/egui-panel-adapter", "hcie-egui-app/crates/egui-panel-filters", "hcie-egui-app/crates/egui-panel-ai-chat", "hcie-egui-app/crates/egui-panel-script", "hcie-egui-app/crates/egui-panel-ai-script", "hcie-iced-app/crates/hcie-iced-gui", "hcie-iced-app/crates/iced-panel-adapter", "hcie-iced-app/crates/iced-panel-script", "hcie-iced-app/crates/iced-panel-ai-chat", "tools/screenshot-diff", "tools/panel-tuner", ] [workspace.dependencies] serde = { version = "1.0", features = ["derive"] } serde_json = "1.0" image = { version = "0.25", default-features = false, features = ["png", "jpeg", "webp"] } rayon = "1.10" log = "0.4" rand = "0.8" rand_distr = "0.4" bincode = "1.3" # Engine-internal (no GUI) fastnoise-lite = "1.1" fontdue = "0.9" zip = { version = "2.2", default-features = false, features = ["deflate"] } quick-xml = "0.36" usvg = "0.43" resvg = "0.43" tiny-skia = "0.11" # GUI deps egui = "0.34" eframe = { version = "0.34", default-features = false, features = ["default_fonts", "glow", "persistence", "wayland", "x11"] } egui_extras = { version = "0.34", features = ["svg", "image"] } egui_dock = { version = "0.19", features = ["serde"] } rfd = "0.15" iced = { version = "0.13", features = ["tokio", "image", "svg", "canvas"] } # Utilities base64 = "0.22" reqwest = { version = "0.12", features = ["json", "multipart", "blocking", "stream"] } tokio = { version = "1.40", features = ["full"] } async-trait = "0.1" anyhow = "1.0" futures-util = "0.3" arboard = "3.4" env_logger = "0.11" # Test frameworks rstest = "0.23" proptest = "1.5" approx = "0.5" # ════════════════════════════════════════════════════════════════════ # [LOCKED_PERF_PROFILES_START] # # ⚠️ AI WARNING — DO NOT REMOVE OR MODIFY THIS BLOCK ⚠️ # # opt-level=0 makes pixel loops 10-50x slower. # This profile is MANDATORY for development. # ════════════════════════════════════════════════════════════════════ [profile.dev] opt-level = 1 codegen-units = 1 [profile.dev.package."*"] opt-level = 3 [profile.dev.package.hcie-protocol] opt-level = 3 [profile.dev.package.hcie-color] opt-level = 3 [profile.dev.package.hcie-blend] opt-level = 3 [profile.dev.package.hcie-history] opt-level = 3 [profile.dev.package.hcie-brush-engine] opt-level = 3 [profile.dev.package.hcie-draw] opt-level = 3 [profile.dev.package.hcie-composite] opt-level = 3 [profile.dev.package.hcie-filter] opt-level = 3 [profile.dev.package.hcie-selection] opt-level = 3 [profile.dev.package.hcie-text] opt-level = 3 [profile.dev.package.hcie-vector] opt-level = 3 [profile.dev.package.hcie-io] opt-level = 3 [profile.dev.package.hcie-document] opt-level = 3 [profile.dev.package.hcie-engine-api] opt-level = 3 [profile.dev.package.hcie-tile] opt-level = 3 [profile.dev.package.hcie-ai] opt-level = 2 [profile.dev.package.hcie-vision] opt-level = 2 # [LOCKED_PERF_PROFILES_END] # ════════════════════════════════════════════════════════════════════ [patch.crates-io] egui-winit = { path = "patches/egui-winit" } [profile.release] opt-level = 3 lto = "thin" codegen-units = 1 strip = true