[package]
name = "nom-exif"
rust-version = "1.83"
version = "3.2.0"
edition = "2021"
license-file = "LICENSE"
description = "Exif/metadata parsing library written in pure Rust, both image (jpeg/heif/heic/jpg/tiff etc.) and video/audio (mov/mp4/3gp/webm/mkv/mka, etc.) files are supported."
homepage = "https://github.com/mindeng/nom-exif"
repository = "https://github.com/mindeng/nom-exif"
exclude = [
  "testdata/*",
  "AGENTS.md",
  "docs/V3_API_DESIGN.md",
  "docs/superpowers/**",
]
categories = [
  "multimedia::images",
  "multimedia::video",
  "multimedia::audio",
  "parsing",
  "parser-implementations",
]
keywords = ["metadata", "exif"]

[package.metadata.docs.rs]
# Build docs with all features so async helpers (tokio) and serde-derived
# impls render with resolved rustdoc links on docs.rs.
all-features = true

# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html

[dependencies]
nom = "8.0"
thiserror = "2.0.11"
serde = { version = "1.0", features = ["derive"], optional = true }
regex = { version = "1.10" }
chrono = "0.4"
tracing = { version = "0.1.40" }
tokio = { version = "1.40.0", features = ["fs", "io-util"], optional = true }
bytes = "1.7.1"
iso6709parse = "0.1.0"

[features]
# default = ["tokio", "serde"]
tokio = ["dep:tokio"]
serde = ["dep:serde"]

[dev-dependencies]
test-case = "3"
rand = "0.9"
chrono = "0.4"
serde_json = "1.0"
regex = { version = "1.10" }
clap = { version = "4.4", features = ["derive"] }
tracing-subscriber = { version = "0.3.18", features = ["env-filter"] }
tokio = { version = "1.40.0", features = [
  "rt-multi-thread",
  "macros",
  "fs",
  "io-util",
] }

[[example]]
name = "rexiftool"
# required-features = ["serde"]

[workspace]
members = ["."]
