[package]
edition = "2024"
rust-version = "1.93"
name = "zenresize"
version = "0.2.1"
build = "build.rs"
exclude = [
"CLAUDE.md",
"CONTEXT-HANDOFF.md",
"FEEDBACK.md",
".claude/",
".superwork/",
".zenbench/",
"copter-report/",
".github/",
"Cross.toml",
"justfile",
"Cargo.toml.original.txt",
"fuzz/",
]
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "High-quality image resampling with 31 filters, streaming API, and SIMD acceleration"
readme = "README.md"
keywords = [
"image",
"resize",
"resampling",
"simd",
"lanczos",
]
categories = [
"graphics",
"multimedia::images",
"no-std",
]
license = "AGPL-3.0-only OR LicenseRef-Imazen-Commercial"
repository = "https://github.com/imazen/zenresize"
[package.metadata.superwork.ci]
strategy = "strip_path"
[features]
avx512 = ["archmage/avx512"]
bench-simd-competitors = [
"pic-scale/sse",
"pic-scale/avx",
"pic-scale/rdm",
]
default = [
"std",
"layout",
]
layout = ["dep:zenlayout"]
pretty-safe = []
std = [
"archmage/std",
"magetypes/std",
"linear-srgb/std",
"zenlayout?/std",
"zenpixels/std",
"whereat/std",
"zenblend/std",
]
[lib]
name = "zenresize"
path = "src/lib.rs"
[[test]]
name = "cross_format"
path = "tests/cross_format.rs"
[[test]]
name = "dispatch_tiers"
path = "tests/dispatch_tiers.rs"
[[test]]
name = "golden_outputs"
path = "tests/golden_outputs.rs"
[[test]]
name = "integration"
path = "tests/integration.rs"
[[test]]
name = "real_vs_synth"
path = "tests/real_vs_synth.rs"
[[test]]
name = "size_ratio_stress"
path = "tests/size_ratio_stress.rs"
[[test]]
name = "vs_palette"
path = "tests/vs_palette.rs"
[[bench]]
name = "cachegrind_vfilter"
path = "benches/cachegrind_vfilter.rs"
harness = false
[[bench]]
name = "competitors_zen"
path = "benches/competitors_zen.rs"
harness = false
[[bench]]
name = "composite_bench"
path = "benches/composite_bench.rs"
harness = false
[[bench]]
name = "composite_e2e"
path = "benches/composite_e2e.rs"
harness = false
[[bench]]
name = "ff_vs_stream_zen"
path = "benches/ff_vs_stream_zen.rs"
harness = false
[[bench]]
name = "fullframe_vs_streaming"
path = "benches/fullframe_vs_streaming.rs"
harness = false
[[bench]]
name = "paired_bench"
path = "benches/paired_bench.rs"
harness = false
[[bench]]
name = "planar_bench"
path = "benches/planar_bench.rs"
harness = false
[[bench]]
name = "precision"
path = "benches/precision.rs"
harness = false
[[bench]]
name = "profile_f16"
path = "benches/profile_f16.rs"
harness = false
[[bench]]
name = "profile_f32"
path = "benches/profile_f32.rs"
harness = false
[[bench]]
name = "profile_linear"
path = "benches/profile_linear.rs"
harness = false
[[bench]]
name = "profile_srgb"
path = "benches/profile_srgb.rs"
harness = false
[[bench]]
name = "profile_streaming"
path = "benches/profile_streaming.rs"
harness = false
[[bench]]
name = "resize_bench"
path = "benches/resize_bench.rs"
harness = false
[[bench]]
name = "sweep_bench"
path = "benches/sweep_bench.rs"
harness = false
[[bench]]
name = "tango_bench"
path = "benches/tango_bench.rs"
harness = false
[[bench]]
name = "tiled_bench"
path = "benches/tiled_bench.rs"
harness = false
[[bench]]
name = "transfer_bench"
path = "benches/transfer_bench.rs"
harness = false
[dependencies.archmage]
version = "0.9.15"
features = ["macros"]
default-features = false
[dependencies.imgref]
version = "1.12"
[dependencies.libm]
version = "0.2"
default-features = false
[dependencies.linear-srgb]
version = "0.6.7"
features = ["transfer"]
default-features = false
[dependencies.magetypes]
version = "0.9.15"
default-features = false
[dependencies.rgb]
version = "0.8"
default-features = false
[dependencies.safe_unaligned_simd]
version = "0.2.5"
[dependencies.whereat]
version = "0.1.5"
default-features = false
[dependencies.zenblend]
version = "0.1.0"
default-features = false
[dependencies.zenlayout]
version = "0.2"
optional = true
default-features = false
[dependencies.zenpixels]
version = "0.2.2"
default-features = false
[dev-dependencies.colorutils-rs]
version = "0.7"
[dev-dependencies.image]
version = "0.25"
features = [
"png",
"jpeg",
]
default-features = false
[dev-dependencies.linear-srgb]
version = "0.6.7"
[dev-dependencies.rgb]
version = "0.8"
[dev-dependencies.zenblend]
version = "0.1.0"
[target.'cfg(not(target_arch = "wasm32"))'.dev-dependencies.fast_image_resize]
version = "6"
[target.'cfg(not(target_arch = "wasm32"))'.dev-dependencies.palette]
version = "0.7"
[target.'cfg(not(target_arch = "wasm32"))'.dev-dependencies.pic-scale]
version = "0.7"
features = ["colorspaces"]
default-features = false
[target.'cfg(not(target_arch = "wasm32"))'.dev-dependencies.pic-scale-safe]
version = "0.1"
[target.'cfg(not(target_arch = "wasm32"))'.dev-dependencies.resize]
version = "0.8"
[target.'cfg(not(target_arch = "wasm32"))'.dev-dependencies.tango-bench]
version = "0.7"
[target.'cfg(not(target_arch = "wasm32"))'.dev-dependencies.zenbench]
version = "0.1.2"
features = ["criterion-compat"]
[lints.rust.unexpected_cfgs]
level = "allow"
priority = 0
check-cfg = ['cfg(feature, values("avx512", "bench-simd-competitors", "pretty-safe"))']
[profile.dev]
opt-level = 1
[profile.test]
opt-level = 2