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
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
[]
= "csift"
= "0.10.5"
= ["Greendam <8943519+wdhwg001@users.noreply.github.com>"]
= "2021"
= "1.89"
= "ripgrep for Claude Code session transcripts: fast regex list/search over ~/.claude/projects/**/*.jsonl"
= "MIT"
= "https://github.com/wdhwg001/csift"
= "README.md"
= ["claude-code", "claude", "jsonl", "transcript", "search"]
= ["command-line-utilities", "development-tools"]
# CLAUDE.md is a symlink to AGENTS.md; `cargo package` would dereference it into
# a duplicate copy inside the crate tarball.
= ["CLAUDE.md"]
[[]]
= "csift"
= "src/main.rs"
[]
= { = "4.6", = ["derive"] }
= "1.12"
= "0.8"
= { = "1.0", = ["derive"] }
= { = "1.0", = ["raw_value"] }
= "2.8"
= "0.9"
= "1.12"
= "1.0"
# Glob matching for `files --glob <PAT>` (full-path patterns; `**` crosses `/`).
= "0.4"
# Modern datetime + timezone crate: ISO8601 parse + system-local timezone
# rendering alongside raw UTC (jiff's default `tz-system` feature powers
# `TimeZone::system()`).
= "0.2"
= { = "0.25.10", = false, = ["png", "jpeg", "gif", "webp", "color_quant"] }
= "0.3.1"
= "1.1.0"
= "1.1.4"
# Global allocator swap (SPEC §7 performance contract): the scan paths allocate
# per-record Strings across rayon workers, and macOS libmalloc contends hard under
# multi-thread. mimalloc removes that bottleneck. No unsafe in THIS crate — the
# `#[global_allocator]` registration in main.rs is a safe attribute.
= { = "0.1", = false }
= "0.1.25"
# CC's file-history checkpoint store keys entries by sha256(absolute path) truncated to
# 16 hex chars; `recover --list-backups` recomputes that key (RustCrypto pure-Rust).
= "0.10"
[]
# The list-backups e2e computes the same store key as the binary (sha256 of the
# absolute path) to author its fixture filenames.
= "0.10"
# Installs a git pre-commit hook on first `cargo test`/build that runs the same
# gate as CI: fmt --check + clippy (warnings-as-errors) + test. The hook is
# sourced from .cargo-husky/hooks/ (user-hooks feature) and copied to
# .git/hooks/pre-commit. See CLAUDE.md § Commands.
= { = "1.5", = false, = [
"user-hooks",
] }
[]
# Forbid unsafe crate-wide. `deny` (not `forbid`) is deliberate: it bans every
# `unsafe` block EXCEPT the single audited, SPEC §7a-mandated mmap site, which
# carries a targeted `#[allow(unsafe_code)]` (parse.rs). `forbid` cannot be
# locally overridden, so it would refuse to compile that irreducibly-unsafe mmap;
# `deny` gives "forbidden everywhere except the one commented exception". Any other
# `unsafe` (without an explicit allow) is a hard error.
= "deny"
= "warn"
[]
# CI denies via `cargo clippy --all-targets -- -D warnings`; here the whole `all`
# group is set to warn (priority -1 so specific allows below win), then the
# pedantic/nursery noise that is not useful for a CLI of this shape is quieted.
# Real correctness lints stay loud.
= { = "warn", = -1 }
# Per-function complexity gate (C901-style): threshold lives in clippy.toml;
# the -D warnings gate turns any crossing into a hard failure.
= "warn"
# Module roots are path-named (`src/<m>.rs` beside `src/<m>/`); the legacy
# `mod.rs` layout is rejected. The structure gate in the pre-commit hook
# mirrors this so the failure names the offending file even without clippy.
= "warn"
# Pedantic is intentionally NOT enabled wholesale (too noisy for a CLI). The
# allows below pre-empt the most common false positives so a future pedantic
# opt-in stays low-friction.
= "allow"
= "allow"
= "allow"
= "allow"
[]
# Fast scans over 200MB+ files: prefer throughput. thin-LTO + single codegen unit.
= "thin"
= 1