[package]
edition = "2024"
rust-version = "1.90.0"
name = "datapath"
version = "0.0.6"
authors = ["rm-dr"]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Type-safe structured paths with partitions, parsing, and schema associations"
readme = "README.md"
keywords = [
"path",
"filesystem",
"parsing",
"typed",
"schema",
]
categories = [
"filesystem",
"data-structures",
"parsing",
]
license = "GPL-3.0"
repository = "https://github.com/rm-dr/datapath"
resolver = "2"
[features]
default = []
index = [
"dep:regex",
"dep:trie-rs",
"dep:tracing",
"dep:itertools",
]
tokio = ["dep:tokio"]
[lib]
name = "datapath"
path = "src/lib.rs"
[dependencies.datapath-macro]
version = "0.0.6"
[dependencies.itertools]
version = "0.14.0"
optional = true
[dependencies.regex]
version = "1.12.2"
optional = true
[dependencies.tokio]
version = "1.48.0"
features = ["sync"]
optional = true
[dependencies.tracing]
version = "0.1"
optional = true
[dependencies.trie-rs]
version = "0.4.2"
optional = true
[dev-dependencies.uuid]
version = "1"
features = ["v4"]
[lints.clippy]
allow_attributes = "deny"
cargo_common_metadata = "deny"
comparison_chain = "allow"
create_dir = "deny"
dbg_macro = "deny"
expect_used = "warn"
filetype_is_file = "deny"
identity_op = "allow"
integer_division = "allow"
large_types_passed_by_value = "deny"
lossy_float_literal = "deny"
map_err_ignore = "deny"
missing_safety_doc = "warn"
multiple_crate_versions = "deny"
mutex_atomic = "deny"
needless_raw_strings = "deny"
needless_return = "allow"
negative_feature_names = "deny"
new_without_default = "allow"
print_stderr = "deny"
print_stdout = "deny"
redundant_feature_names = "deny"
result_large_err = "allow"
str_to_string = "deny"
string_add = "deny"
tabs_in_doc_comments = "allow"
todo = "deny"
too_many_arguments = "allow"
type_complexity = "allow"
unimplemented = "deny"
uninlined_format_args = "allow"
unwrap_used = "warn"
upper_case_acronyms = "deny"
use_debug = "allow"
verbose_file_reads = "deny"
wildcard_dependencies = "deny"
[lints.rust]
absolute_paths_not_starting_with_crate = "deny"
elided_lifetimes_in_paths = "deny"
explicit_outlives_requirements = "warn"
macro_use_extern_crate = "deny"
missing_docs = "allow"
non_ascii_idents = "deny"
redundant_lifetimes = "warn"
single_use_lifetimes = "deny"
unit_bindings = "deny"
unused_crate_dependencies = "warn"
unused_import_braces = "deny"