mirror of
https://github.com/storytold/lightcraft.git
synced 2026-11-01 14:07:34 -06:00
- `app.gpu {wait: false}` with GPU rendering on starts creating the device in the background
(`warm_up`), so a caller that never waits still gets an answer later. `warm_up` starts one
thread at most, and may start again if GPU rendering was turned off before it ran.
- Settings > Performance asks for a repaint every 250 ms while it shows "GPU: starting…": the
device is created on another thread, which doesn't wake the window.
- CLI test: `{enabled: true, wait: false}` answers enabled with available, adapter and reason
null (skips with LIGHTCRAFT_GPU=0, since it starts creating a device).
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
43 lines
1.4 KiB
TOML
43 lines
1.4 KiB
TOML
[package]
|
|
name = "lightcraft-cli"
|
|
version.workspace = true
|
|
edition.workspace = true
|
|
license.workspace = true
|
|
publish = false
|
|
description = "LightCraft command-line tool: headless render, command listing and the MCP server"
|
|
|
|
[[bin]]
|
|
name = "lightcraft-cli"
|
|
path = "src/main.rs"
|
|
|
|
[lints]
|
|
workspace = true
|
|
|
|
[dependencies]
|
|
lightcraft-engine = { workspace = true }
|
|
lightcraft-denoise = { workspace = true }
|
|
lightcraft-sysmem = { workspace = true }
|
|
lightcraft-mcp = { workspace = true }
|
|
lightcraft-ui-egui = { workspace = true }
|
|
lightcraft-codecs = { workspace = true }
|
|
lightcraft-raster = { workspace = true }
|
|
lightcraft-merge = { workspace = true }
|
|
serde_json = { workspace = true }
|
|
dhat = { workspace = true, optional = true }
|
|
|
|
[dev-dependencies]
|
|
lightcraft-testkit = { workspace = true }
|
|
|
|
[features]
|
|
default = ["denoise"]
|
|
denoise = ["lightcraft-engine/denoise"]
|
|
rawnind-model = ["denoise", "lightcraft-engine/rawnind-model"]
|
|
# Heap profiling: `cargo run --release -p lightcraft-cli --features dhat-heap -- snapshot …` counts
|
|
# every allocation (live/peak bytes in `library.memory` / `ui.inspect`) and writes dhat-heap.json
|
|
# (open it in DHAT's viewer: allocation sites by bytes at the peak). Slows allocation-heavy work.
|
|
dhat-heap = ["dep:dhat"]
|
|
|
|
# Open HEIC/HEIF photos (the optional lightcraft-heif crate). Not default so distributors choose
|
|
# it (HEVC patents); build with `--features heif` to include it.
|
|
heif = ["lightcraft-codecs/heif"]
|