filesnap 0.4.0

Git-free file snapshots and rewind: a content-addressed store that puts a directory back the way it was, without a repository and without touching the user's version control.
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"
rust-version = "1.89"
name = "filesnap"
version = "0.4.0"
build = false
exclude = ["tests/"]
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Git-free file snapshots and rewind: a content-addressed store that puts a directory back the way it was, without a repository and without touching the user's version control."
readme = "README.md"
keywords = [
    "snapshot",
    "rewind",
    "undo",
    "checkpoint",
    "restore",
]
categories = [
    "filesystem",
    "development-tools",
]
license = "Apache-2.0"
repository = "https://github.com/extracurricular-ai/filesnap"

[features]
test-support = ["dep:tempfile"]

[lib]
name = "filesnap"
path = "src/lib.rs"
doctest = false

[[example]]
name = "scan_bench"
path = "examples/scan_bench.rs"

[dependencies.dunce]
version = "1.0.5"

[dependencies.gix]
version = "0.87.1"
features = [
    "sha1",
    "index",
]
default-features = false

[dependencies.ignore]
version = "0.4.23"

[dependencies.serde]
version = "1"
features = [
    "rc",
    "derive",
]

[dependencies.serde_json]
version = "1"

[dependencies.sha2]
version = "0.10"

[dependencies.tempfile]
version = "3.23.0"
optional = true

[dependencies.thiserror]
version = "2.0.17"

[dependencies.tracing]
version = "0.1.44"

[dev-dependencies.pretty_assertions]
version = "1.4.1"

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

[lints.clippy]
await_holding_invalid_type = "deny"
await_holding_lock = "deny"
disallowed_methods = "deny"
expect_used = "deny"
identity_op = "deny"
manual_clamp = "deny"
manual_filter = "deny"
manual_find = "deny"
manual_flatten = "deny"
manual_map = "deny"
manual_memcpy = "deny"
manual_non_exhaustive = "deny"
manual_ok_or = "deny"
manual_range_contains = "deny"
manual_retain = "deny"
manual_strip = "deny"
manual_try_fold = "deny"
manual_unwrap_or = "deny"
needless_borrow = "deny"
needless_borrowed_reference = "deny"
needless_collect = "deny"
needless_late_init = "deny"
needless_option_as_deref = "deny"
needless_question_mark = "deny"
needless_update = "deny"
redundant_clone = "deny"
redundant_closure = "deny"
redundant_closure_for_method_calls = "deny"
redundant_static_lifetimes = "deny"
trivially_copy_pass_by_ref = "deny"
uninlined_format_args = "deny"
unnecessary_filter_map = "deny"
unnecessary_lazy_evaluations = "deny"
unnecessary_sort_by = "deny"
unnecessary_to_owned = "deny"
unwrap_used = "deny"

[lints.rust]