jbig2enc-rust 0.5.0

JBIG2 encoder implementation in Rust with PDF fragment support
Documentation
# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO
#
# When uploading crates to the registry Cargo will automatically
# "normalize" Cargo.toml files for maximal compatibility
# with all versions of Cargo and also rewrite `path` dependencies
# to registry (e.g., crates.io) dependencies.
#
# If you are reading this file be aware that the original Cargo.toml
# will likely look very different (and much more reasonable).
# See Cargo.toml.orig for the original contents.

[package]
edition = "2024"
name = "jbig2enc-rust"
version = "0.5.0"
build = "build.rs"
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "JBIG2 encoder implementation in Rust with PDF fragment support"
homepage = "https://github.com/LegeApp/jbig2enc-rust"
documentation = "https://docs.rs/jbig2enc-rust"
readme = false
keywords = [
    "jbig2",
    "encoder",
    "compression",
    "image",
    "pdf",
]
categories = [
    "multimedia::encoding",
    "multimedia::images",
]
license = "MIT OR Apache-2.0"
repository = "https://github.com/LegeApp/jbig2enc-rust"

[features]
cc-analysis = []
default = []
halftone_bin = ["dep:image"]
line_verify = []
parallel = ["dep:rayon"]
profiling = ["dep:pprof"]
refine = []
symboldict = ["cc-analysis"]
trace_arith = []
trace_encoder = [
    "dep:tracing",
    "dep:tracing-subscriber",
]
tracing = [
    "dep:tracing",
    "dep:tracing-subscriber",
]

[lib]
name = "jbig2enc_rust"
path = "src/lib.rs"

[[bin]]
name = "halftone_tester"
path = "src/bin/halftone_tester.rs"
required-features = ["halftone_bin"]

[[bin]]
name = "tester"
path = "src/bin/tester.rs"

[[test]]
name = "comparator"
path = "tests/comparator.rs"

[[test]]
name = "encoder"
path = "tests/encoder.rs"

[[test]]
name = "encoder_pbm"
path = "tests/encoder_pbm.rs"

[[test]]
name = "mode_comparison"
path = "tests/mode_comparison.rs"

[[test]]
name = "multi_page_benchmark"
path = "tests/multi_page_benchmark.rs"

[[test]]
name = "pdf_variants"
path = "tests/pdf_variants.rs"

[[test]]
name = "perf_smoke"
path = "tests/perf_smoke.rs"

[dependencies.anyhow]
version = "1.0"

[dependencies.bitfrob]
version = "1.3"

[dependencies.bitvec]
version = "1.0"

[dependencies.bytemuck]
version = "1.0"
features = ["derive"]

[dependencies.byteorder]
version = "1.4"

[dependencies.chrono]
version = "0.4"

[dependencies.clap]
version = "4.5.41"
features = ["derive"]

[dependencies.derive_builder]
version = "0.20.2"

[dependencies.env_logger]
version = "0.10"

[dependencies.fax]
version = "0.2.6"
default-features = false

[dependencies.fnv]
version = "1.0"

[dependencies.glob]
version = "0.3"

[dependencies.image]
version = "0.25.9"
features = [
    "png",
    "jpeg",
]
optional = true
default-features = false

[dependencies.lazy_static]
version = "1.4"

[dependencies.log]
version = "0.4"

[dependencies.lopdf]
version = "0.39"

[dependencies.ndarray]
version = "0.16.1"

[dependencies.once_cell]
version = "1.19"

[dependencies.pprof]
version = "0.15"
features = ["flamegraph"]
optional = true

[dependencies.rayon]
version = "1.10"
optional = true

[dependencies.rustc-hash]
version = "1.1"

[dependencies.serde]
version = "1.0"
features = ["derive"]

[dependencies.serde_derive]
version = "1.0"

[dependencies.serde_json]
version = "1.0"

[dependencies.smallvec]
version = "1.15"

[dependencies.thiserror]
version = "1.0"

[dependencies.tinyvec]
version = "1.9"

[dependencies.tracing]
version = "0.1"
features = ["std"]
optional = true

[dependencies.tracing-subscriber]
version = "0.3.19"
features = [
    "env-filter",
    "fmt",
    "registry",
    "std",
]
optional = true

[dependencies.xxhash-rust]
version = "0.8"
features = ["xxh3"]

[dev-dependencies.hex-literal]
version = "1.0.0"

[dev-dependencies.tempfile]
version = "3.20"

[dev-dependencies.tracing]
version = "0.1"
features = ["std"]

[dev-dependencies.tracing-subscriber]
version = "0.3.19"
features = [
    "env-filter",
    "fmt",
    "registry",
    "std",
]

[dev-dependencies.which]
version = "8.0.0"

[build-dependencies.vergen]
version = "9.0.6"
features = ["build"]
default-features = false