- save() writes <config>/config.toml (atomic temp+rename), flat keys at the top level and group/sub keys as [group] tables, values as native TOML int/float/bool/string (non-finite doubles degrade to strings and restore via the declared type) - load() prefers config.toml; a legacy config.ini (C++ or pre-TOML Rust builds) is read once and immediately re-persisted as TOML; the INI file is left in place; a corrupt TOML is reported, never silently discarded - cd.yml: drop a stale oakengine comment (the crate is retired)
37 lines
1.4 KiB
TOML
37 lines
1.4 KiB
TOML
[package]
|
|
name = "oakcommon"
|
|
version = "0.1.0"
|
|
edition = "2021"
|
|
description = "Oak Video Editor shared utilities (Rust)"
|
|
license = "GPL-3.0-or-later"
|
|
|
|
[lib]
|
|
crate-type = ["staticlib", "rlib"]
|
|
|
|
[features]
|
|
# Compile the in-crate ffmpeg_bridge mock (fb_find_best_pix_fmt_of_list stub)
|
|
# so the integration tests can link without libffmpeg_bridge. Without this
|
|
# flag, `cargo test --lib` still works (the stub is active under `cfg(test)`),
|
|
# but the C ABI wrapper tests in tests/ffi_ffmpegutils.rs need it. This
|
|
# mirrors the `test-stubs` convention of oakplugin / oaktimeline.
|
|
test-stubs = []
|
|
|
|
[dependencies]
|
|
oakcore-rs = { path = "../oakcore" }
|
|
quick-xml = "0.41.0"
|
|
log = "0.4"
|
|
# TOML persistence for the application config (configstore.rs). Already in
|
|
# Cargo.lock as a transitive dependency (0.8.23); promoted to a direct one.
|
|
toml = "0.8"
|
|
# OpenColorIO bindings (crates.io `ocio-rs`, BSD-3-Clause). ocioutils.rs maps
|
|
# PixelFormat to the real `ocio_rs::BitDepth` enum and wraps
|
|
# `ocio_rs::Config`/`CPUProcessor` for config loading and RGBA transforms.
|
|
# Rationale registered in README.md.
|
|
ocio-rs = "0.2.1"
|
|
# Pure-Rust image I/O (crates.io `image`, MIT OR Apache-2.0); default features
|
|
# off, TIFF enabled — the only format current callers need. oiioutils.rs
|
|
# derives per-channel bit depths from its color-type tables and does float
|
|
# image I/O through it. See README.md.
|
|
image = { version = "0.25", default-features = false, features = ["tiff"] }
|
|
thiserror = "2"
|