[package] name = "exr" description = "Read and write OpenEXR files without any unsafe code" keywords = ["exr", "openexr", "file", "binary", "io"] categories = ["encoding", "filesystem", "graphics", "multimedia"] version = "1.73.0" edition = "2018" authors = ["johannesvollmer "] repository = "https://github.com/johannesvollmer/exrs" readme = "README.md" license = "BSD-3-Clause" exclude = [ "specification/*", "specification/**", "tests/images/*", "tests/images/**" ] rust-version = "1.61.0" [badges] maintenance = { status = "actively-developed" } [lib] path = "src/lib.rs" test = true doctest = true bench = true doc = true plugin = false proc-macro = false [dependencies] lebe = "^0.5.2" # generic binary serialization half = "2.1.0" # 16 bit float pixel data type bit_field = "^0.10.1" # exr file version bit flags miniz_oxide = "^0.8.0" # zip compression for pxr24 smallvec = "^1.7.0" # make cache-friendly allocations TODO profile if smallvec is really an improvement! rayon-core = "^1.11.0" # threading for parallel compression TODO make this an optional feature? zune-inflate = { version = "^0.2.3", default-features = false, features = ["zlib"] } # zip decompression, faster than miniz_oxide [dev-dependencies] image = { version = "0.25.2", default-features = false, features = ["png"] } # used to convert one exr to some pngs bencher = "0.1.5" walkdir = "2.3.2" # automatically test things for all files in a directory rand = "0.8.5" # used for fuzz testing rayon = "1.5.3" # run tests for many files in parallel [[bench]] name = "read" harness = false [[bench]] name = "profiling" harness = false [[bench]] name = "write" harness = false [[bench]] name = "pixel_format_conversion" harness = false # recommended release settings for max runtime performance [profile.release] opt-level = 3 lto = true debug = false debug-assertions = false codegen-units = 1 # test with fast runtime speed and slow build speed [profile.dev] incremental = true opt-level = 3 debug-assertions = true overflow-checks = true debug = true lto = true # test with fast runtime speed and moderate build speed [profile.test] incremental = true opt-level = 3 debug-assertions = true overflow-checks = true debug = true lto = true # bench with fastest runtime speed [profile.bench] opt-level = 3 debug-assertions = false overflow-checks = false lto = true debug = true codegen-units = 1