97 lines · 3.6 KB · TOML
RawDownload
lints.workspace = true [package]name = "gix-testtools"description = "Shared code for gitoxide crates to facilitate testing"version = "0.20.0"authors = ["Sebastian Thiel <sebastian.thiel@icloud.com>"]edition = "2024"license = "MIT OR Apache-2.0"include = ["/src/**/*", "/LICENSE-*"]rust-version = "1.88" [[bin]]name = "jtt"path = "src/main.rs" [lib]doctest = true [features]default = ["worktree-exclusions", "repo-snapshot"]## Use the current repository's complete ignore rules to decide if generated fixture archives should be written.## Without this feature, only the `.gitignore` next to the archive is consulted using a fallback matcher## that supports literal patterns and `*`, but not the full `.gitignore` syntax.worktree-exclusions = ["dep:gix-discover", "dep:gix-worktree", "dep:gix-fs"]## Capture repository snapshots using `gix-*` plumbing crates instead of invoking Git.## Without this feature, repository snapshots use the Git executable selected by `gix-path`.repo-snapshot = [    "dep:gix-config",    "dep:gix-discover",    "dep:gix-index",    "dep:gix-object",    "dep:gix-odb",    "dep:gix-ref",    "dep:gix-shallow",]## Enable support for SHA-1 fixture repositories and object IDs.sha1 = [    "gix-hash/sha1",    "gix-config?/sha1",    "gix-index?/sha1",    "gix-object?/sha1",    "gix-odb?/sha1",    "gix-ref?/sha1",    "gix-shallow?/sha1",]## Enable support for SHA-256 fixture repositories and object IDs.sha256 = [    "gix-hash/sha256",    "gix-config?/sha256",    "gix-index?/sha256",    "gix-object?/sha256",    "gix-odb?/sha256",    "gix-ref?/sha256",    "gix-shallow?/sha256",]## Use instead of plain `tar` files, compress these to produce `tar.xz` files instead.## This is useful if archives are uploaded into `git-lfs`, which doesn't have built-in compression## and metering counts towards uncompressed bytes transferred.xz = ["dep:xz2"] [dependencies]gix-hash = { version = "^0.26.2", path = "../../gix-hash" }gix-lock = { version = "^24.0.0", path = "../../gix-lock" }gix-path = { version = "^0.12.6", path = "../../gix-path" }gix-config = { version = "^0.60.0", path = "../../gix-config", optional = true, default-features = false }gix-discover = { version = "^0.55.0", path = "../../gix-discover", optional = true }gix-index = { version = "^0.55.0", path = "../../gix-index", optional = true, default-features = false }gix-object = { version = "^0.64.1", path = "../../gix-object", optional = true, default-features = false }gix-odb = { version = "^0.84.0", path = "../../gix-odb", optional = true, default-features = false }gix-ref = { version = "^0.67.1", path = "../../gix-ref", optional = true, default-features = false }gix-shallow = { version = "^0.13.0", path = "../../gix-shallow", optional = true }gix-worktree = { version = "^0.56.0", path = "../../gix-worktree", optional = true, features = ["parallel"] }gix-fs = { version = "^0.22.1", path = "../../gix-fs", optional = true }gix-tempfile = { version = "^24.0.0", path = "../../gix-tempfile", default-features = false, features = ["signals"] } fastrand = "2.0.0"bstr = { version = "1.12.0", default-features = false }crc = "3.4.0"tempfile = "3.26.0"fs_extra = "1.2.0"parking_lot = { version = "0.12.4" }is_ci = "1.1.1"io-close = "0.3.7"tar = { version = "0.4.46", default-features = false }xz2 = { version = "0.1.6", optional = true } document-features = { version = "0.2.1", optional = true } [dev-dependencies]gix-testtools = { path = ".", default-features = false, features = ["sha1", "sha256"] }insta = "1.46.3"serial_test = { version = "3.4.0", default-features = false } [package.metadata.docs.rs]all-features = truefeatures = ["document-features"]