lints.workspace = true
[package]
name = "gix-diff"
version = "0.62.0"
repository = "https://github.com/GitoxideLabs/gitoxide"
license = "MIT OR Apache-2.0"
description = "Calculate differences between various git objects"
authors = ["Sebastian Thiel <sebastian.thiel@icloud.com>"]
edition = "2021"
include = ["/src/**/*", "/LICENSE-*"]
rust-version = "1.82"
autotests = false
[features]
default = ["blob", "index"]
sha1 = ["gix-hash/sha1"]
blob = [
"dep:imara-diff",
"dep:gix-filter",
"dep:gix-worktree",
"dep:gix-path",
"dep:gix-fs",
"dep:gix-command",
"dep:gix-tempfile",
"dep:gix-trace",
"dep:gix-traverse"
]
index = ["dep:gix-index", "dep:gix-pathspec", "dep:gix-attributes"]
serde = ["dep:serde", "gix-hash/serde", "gix-object/serde", "gix-index?/serde"]
wasm = ["dep:getrandom"]
[lib]
doctest = false
[[bench]]
name = "line-count"
harness = false
required-features = ["blob"]
path = "./benches/line_count.rs"
[dependencies]
gix-index = { version = "^0.50.0", path = "../gix-index", optional = true }
gix-pathspec = { version = "^0.17.0", path = "../gix-pathspec", optional = true }
gix-attributes = { version = "^0.32.0", path = "../gix-attributes", optional = true }
gix-hash = { version = "^0.24.0", path = "../gix-hash" }
gix-object = { version = "^0.59.0", path = "../gix-object" }
gix-filter = { version = "^0.29.0", path = "../gix-filter", optional = true }
gix-worktree = { version = "^0.51.0", path = "../gix-worktree", default-features = false, features = ["attributes"], optional = true }
gix-command = { version = "^0.8.1", path = "../gix-command", optional = true }
gix-path = { version = "^0.11.3", path = "../gix-path", optional = true }
gix-fs = { version = "^0.20.0", path = "../gix-fs", optional = true }
gix-tempfile = { version = "^22.0.0", path = "../gix-tempfile", optional = true }
gix-trace = { version = "^0.1.19", path = "../gix-trace", optional = true }
gix-traverse = { version = "^0.56.0", path = "../gix-traverse", optional = true }
imara-diff = { package = "gix-imara-diff", version = "^0.2.0", optional = true, path = "../gix-imara-diff" }
thiserror = "2.0.18"
serde = { version = "1.0.114", optional = true, default-features = false, features = ["derive"] }
getrandom = { version = "0.4", optional = true, default-features = false, features = ["wasm_js"] }
bstr = { version = "1.12.0", default-features = false }
document-features = { version = "0.2.0", optional = true }
[dev-dependencies]
criterion = "0.8.2"
gix-hash = { path = "../gix-hash", features = ["sha1"] }
[package.metadata.docs.rs]
all-features = true
features = ["sha1", "document-features"]
[package.metadata.cargo-machete]
ignored = [
"getrandom",
"serde",
]