[package]
edition = "2024"
name = "opendefocus"
version = "0.1.10"
authors = ["Gilles Vink <gillesvink@noreply.codeberg.org>"]
build = false
publish = true
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "An advanced open-source convolution library for image post-processing"
homepage = "https://opendefocus.codeberg.page"
documentation = "https://docs.rs/opendefocus/"
readme = "README.md"
keywords = [
"defocus",
"convolution",
"image-processing",
]
categories = [
"multimedia",
"graphics",
]
license = "EUPL-1.2"
repository = "https://codeberg.org/gillesvink/opendefocus"
resolver = "2"
[features]
default = [
"std",
"wgpu",
]
documented = [
"opendefocus-datastructure/documented",
"bokeh-creator/documented",
"circle-of-confusion/documented",
]
libm = [
"glam/libm",
"num-traits/libm",
"opendefocus-shared/libm",
"opendefocus-kernel/libm",
"opendefocus-datastructure/libm",
]
protobuf-vendored = ["opendefocus-datastructure/protobuf-vendored"]
std = [
"glam/default",
"num-traits/std",
"opendefocus-shared/std",
"opendefocus-kernel/std",
"opendefocus-datastructure/std",
]
wgpu = [
"dep:wgpu",
"std",
]
[lib]
name = "opendefocus"
crate-type = [
"staticlib",
"dylib",
"rlib",
]
path = "src/lib.rs"
[dependencies.bokeh-creator]
version = ">=0.1.15, < 0.2"
features = ["image"]
default-features = false
[dependencies.bytemuck]
version = "1.24"
features = ["derive"]
[dependencies.circle-of-confusion]
version = "0.2"
[dependencies.futures]
version = "0.3"
[dependencies.glam]
version = "0.30"
features = ["bytemuck"]
default-features = false
[dependencies.image]
version = "0.25"
features = ["rayon"]
default-features = false
[dependencies.image-ndarray]
version = ">= 0.1.4, < 0.2"
[dependencies.inpaint]
version = ">=0.1.7, < 0.2"
[dependencies.libc]
version = "0.2"
[dependencies.log]
version = "0.4"
[dependencies.ndarray]
version = "0.16"
features = ["rayon"]
[dependencies.num-traits]
version = "0.2"
default-features = false
[dependencies.opendefocus-datastructure]
version = "=0.1.10"
[dependencies.opendefocus-kernel]
version = "=0.1.10"
[dependencies.opendefocus-shared]
version = "=0.1.10"
[dependencies.prost]
version = ">=0.14, < 0.15"
[dependencies.rayon]
version = "1.10"
[dependencies.resize]
version = "0.8"
[dependencies.rgb]
version = "0.8"
[dependencies.serde]
version = ">=1.0, < 1.1"
features = ["derive"]
optional = true
[dependencies.thiserror]
version = "2.0"
[dependencies.wgpu]
version = "28"
features = [
"metal",
"vulkan",
"wgsl",
"spirv",
"vulkan-portability",
]
optional = true
default-features = false
[dev-dependencies.anyhow]
version = "1.0"
[dev-dependencies.assert_approx_eq]
version = "1.1"
[dev-dependencies.image]
version = "0.25"
features = ["rayon"]
[dev-dependencies.image-compare]
version = "0.4"
[dev-dependencies.rstest]
version = "0.26"
[dev-dependencies.tokio]
version = "1.0"
features = ["full"]
[dev-dependencies.tokio-test]
version = "0.4.4"