mirror of
https://github.com/storytold/lightcraft.git
synced 2026-11-10 02:19:57 -06:00
- brand.toml is the only place the product name lives; every crate and app
reads it through dac-brand (env vars with legacy fallback, settings folder
with copy-only migration, default library, preset extensions, i18n {app})
- cargo xtask brand check|test, run|install|package, docs, rename-crates,
deny and immich; packaging files are templates rendered from brand.toml
- icons regenerated from brand/icon.svg; upstream branding removed
- MIT licence (segment and fetch stay Apache-2.0); cargo deny licence policy
- clean-room rules in AGENTS.md/CLAUDE.md; docs/upstream-merge.md
- plan/ rebuilt and committed; parity tracker reopens Classic rows, adds
PLAN.md section 2 rows and the IMM Immich section; plan/immich.md and a
pinned Immich test server
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
48 lines
1.6 KiB
TOML
48 lines
1.6 KiB
TOML
[package]
|
|
name = "dac-codecs"
|
|
version.workspace = true
|
|
edition.workspace = true
|
|
license.workspace = true
|
|
description = "Standard image codecs: sniffing, decode to linear light, ICC, encoders (L1)"
|
|
|
|
[lints]
|
|
workspace = true
|
|
|
|
[dependencies]
|
|
dac-brand = { workspace = true }
|
|
dac-geom = { workspace = true }
|
|
dac-color = { workspace = true }
|
|
dac-raster = { workspace = true }
|
|
dac-heif = { workspace = true, optional = true }
|
|
serde = { workspace = true }
|
|
bytemuck = { workspace = true }
|
|
thiserror = { workspace = true }
|
|
rayon = { workspace = true, optional = true }
|
|
image = { workspace = true, features = ["gif", "bmp"] }
|
|
zune-jpeg = { workspace = true }
|
|
zune-core = { workspace = true }
|
|
jpeg-decoder = { workspace = true }
|
|
jpeg-encoder = { workspace = true }
|
|
png = { workspace = true }
|
|
tiff = { workspace = true }
|
|
image-webp = { workspace = true }
|
|
moxcms = { workspace = true }
|
|
jxl-oxide = { workspace = true, optional = true }
|
|
|
|
[target.'cfg(not(target_arch = "wasm32"))'.dependencies]
|
|
ravif = { workspace = true, optional = true }
|
|
|
|
[features]
|
|
default = ["parallel", "jxl", "avif"]
|
|
parallel = ["dep:rayon", "dac-raster/parallel", "jpeg-decoder/rayon"]
|
|
jxl = ["dep:jxl-oxide"]
|
|
# HEIC/HEIF decode via the optional dac-heif crate (heic-rs, pure Rust). Off by default so
|
|
# distributors choose it at build time (HEVC patents are a distributor's call, same policy as
|
|
# PhotoCraft); `cargo xtask ci` clippies and tests it (`--features heif`), releases don't ship it yet.
|
|
heif = ["dep:dac-heif"]
|
|
## AVIF encoding via ravif/rav1e (pure Rust, BSD). Native targets only; a no-op on wasm32.
|
|
avif = ["dep:ravif"]
|
|
|
|
[dev-dependencies]
|
|
proptest = { workspace = true }
|