liteboxfs 0.2.0

A modern POSIX filesystem in a SQLite database
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.90.0"
name = "liteboxfs"
version = "0.2.0"
authors = ["Lark Aster <lark@lark.gay>"]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "A modern POSIX filesystem in a SQLite database"
homepage = "https://codeberg.org/justlark/liteboxfs"
documentation = "https://docs.rs/liteboxfs"
readme = "README.md"
keywords = [
    "sqlite",
    "database",
    "filesystem",
    "archive",
]
categories = ["filesystem"]
license = "Apache-2.0"
repository = "https://codeberg.org/justlark/liteboxfs"
resolver = "2"

[package.metadata.docs.rs]
all-features = true

[features]
_encryption = ["dep:secrecy"]
bundled-sqlcipher = [
    "rusqlite/bundled-sqlcipher",
    "_encryption",
]
bundled-sqlcipher-vendored-openssl = [
    "rusqlite/bundled-sqlcipher-vendored-openssl",
    "_encryption",
]
bundled-sqlite = ["rusqlite/bundled"]
chunking = ["dep:fastcdc"]
compression = ["dep:zstd"]
default = ["fs"]
fs = [
    "dep:nix",
    "dep:xattr",
]
fuse = [
    "fs",
    "dep:fuser",
]
sqlcipher = [
    "rusqlite/sqlcipher",
    "_encryption",
]

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

[[bench]]
name = "archive"
path = "benches/archive.rs"
harness = false

[[bench]]
name = "children"
path = "benches/children.rs"
harness = false

[[bench]]
name = "common"
path = "benches/common.rs"

[[bench]]
name = "copy"
path = "benches/copy.rs"
harness = false

[[bench]]
name = "create"
path = "benches/create.rs"
harness = false

[[bench]]
name = "descendants"
path = "benches/descendants.rs"
harness = false

[[bench]]
name = "read"
path = "benches/read.rs"
harness = false

[[bench]]
name = "rename"
path = "benches/rename.rs"
harness = false

[[bench]]
name = "snapshot"
path = "benches/snapshot.rs"
harness = false

[[bench]]
name = "walk"
path = "benches/walk.rs"
harness = false

[[bench]]
name = "write"
path = "benches/write.rs"
harness = false

[dependencies.bitflags]
version = "2.10.0"

[dependencies.blake3]
version = "1.8.2"

[dependencies.fastcdc]
version = "3.2.1"
optional = true

[dependencies.rusqlite]
version = "0.37.0"
features = [
    "functions",
    "i128_blob",
]

[dependencies.secrecy]
version = "0.10.3"
optional = true

[dependencies.thiserror]
version = "2.0.17"

[dependencies.uuid]
version = "1.18.1"
features = ["v4"]

[dependencies.zstd]
version = "0.13.3"
optional = true

[dev-dependencies.criterion]
version = "0.8.1"
features = ["html_reports"]

[dev-dependencies.rand]
version = "0.9.2"

[dev-dependencies.rusqlite]
version = "0.37.0"
features = [
    "functions",
    "i128_blob",
]

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

[dev-dependencies.xpct]
version = "0.5.1"
features = ["diff"]

[target.'cfg(target_family = "unix")'.dependencies.nix]
version = "0.30.1"
features = [
    "fs",
    "user",
]
optional = true

[target.'cfg(target_family = "unix")'.dependencies.xattr]
version = "1.6.1"
optional = true

[target.'cfg(target_os = "linux")'.dependencies.fuser]
version = "0.17.0"
optional = true

[lints.rust.unexpected_cfgs]
level = "warn"
priority = 0
check-cfg = ["cfg(coverage,coverage_nightly)"]