-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathCargo.toml
More file actions
47 lines (43 loc) · 2.05 KB
/
Copy pathCargo.toml
File metadata and controls
47 lines (43 loc) · 2.05 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
[workspace]
resolver = "2"
members = ["core", "forensic", "cli"]
# Single source of truth for fields shared by every member (DRY): bump version /
# edition / license here once; members inherit via `field.workspace = true`.
[workspace.package]
version = "0.11.0"
edition = "2021"
license = "Apache-2.0"
[workspace.dependencies]
# KNOWLEDGE-layer format constants + the shared report model (Severity/Observation).
forensicnomicon = "1"
# The native reader, consumed by the forensic analyzer.
sqlite-core = { version = "0.11.0", path = "core" }
# The anomaly auditor, consumed by the sqlite4n6 CLI.
sqlite-forensic = { version = "0.11.0", path = "forensic" }
# CLI argument parsing.
clap = { version = "4", features = ["derive"] }
# SHA-256 content hashing for recovered BLOBs (RustCrypto — audited, never hand-rolled).
sha2 = "0.10"
# Output sanitization: RFC 4180 CSV quoting + spreadsheet formula guard.
jsonguard = "0.2"
[workspace.lints.rust]
unsafe_code = "forbid"
[workspace.lints.clippy]
all = { level = "warn", priority = -1 }
pedantic = { level = "warn", priority = -1 }
correctness = { level = "deny", priority = -1 }
suspicious = { level = "deny", priority = -1 }
unwrap_used = { level = "deny", priority = 0 }
expect_used = { level = "deny", priority = 0 }
module_name_repetitions = { level = "allow", priority = 1 }
must_use_candidate = { level = "allow", priority = 1 }
missing_errors_doc = { level = "allow", priority = 1 }
missing_panics_doc = { level = "allow", priority = 1 }
cast_possible_truncation = { level = "allow", priority = 1 }
cast_possible_wrap = { level = "allow", priority = 1 }
cast_sign_loss = { level = "allow", priority = 1 }
cast_precision_loss = { level = "allow", priority = 1 }
too_many_lines = { level = "allow", priority = 1 }
items_after_statements = { level = "allow", priority = 1 }
similar_names = { level = "allow", priority = 1 }
manual_let_else = { level = "allow", priority = 1 }