-
Notifications
You must be signed in to change notification settings - Fork 22
Expand file tree
/
Copy pathCargo.toml
More file actions
113 lines (106 loc) · 3.84 KB
/
Copy pathCargo.toml
File metadata and controls
113 lines (106 loc) · 3.84 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
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
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
[package]
name = "context-engine-rs"
version = "0.1.72"
edition = "2024"
license-file = "LICENSE"
# The benchmark harness lives in src/bin/chunk_bench.rs as a second binary.
# Without default-run, `cargo run`/`cargo watch -x 'run -r'` becomes ambiguous
# ("could not determine which binary to run") and the dev server fails to start.
# Pin the server binary as the default so the bench binary is opt-in via --bin.
default-run = "context-engine-rs"
# `bench-query` is a self-contained CLI that boots the engine through the SAME
# shared `engine_boot::boot_engine` the server uses, then runs remove/rebuild/
# index/query through the SAME `engine_ops` fns — so it can never drift from the
# server. The dir is `src/bin/bench_query/` (snake_case, like chunk_bench's auto-
# discovered dir); this explicit [[bin]] just renames the artifact to the
# hyphenated `bench-query` invoked by the `bench-small-repo` justfile recipe.
[[bin]]
name = "bench-query"
path = "src/bin/bench_query/main.rs"
# `bench-incremental` is the incremental-path measurement ORACLE: it boots the
# engine through the SAME shared `engine_boot::boot_engine` path, does a clean
# full rebuild to set up realistic on-disk DB state, appends a sentinel line to N
# real indexed files (guaranteeing a `Modified` classification), runs ONE manual
# incremental index, captures the per-stage `PERF SUMMARY incremental` breakdown,
# and ALWAYS restores the files. Measurement-only; implements no optimization.
[[bin]]
name = "bench-incremental"
path = "src/bin/bench_incremental/main.rs"
[dependencies]
ignore = "0.4"
globset = "0.4"
notify = "8"
notify-debouncer-full = "0.6"
axum = "0.7"
tokio = { version = "1", features = ["full"] }
serde = { version = "1", features = ["derive"] }
serde_json = "1"
toml_edit = "0.25"
clap = { version = "4", features = ["derive", "env"] }
dirs = "6"
tempfile = "3"
anyhow = "1"
memmap2 = "0.9"
bytemuck = "1"
surrealdb = { version = "2", default-features = false, features = ["kv-rocksdb"] }
reqwest = { version = "0.12", default-features = false, features = ["json", "rustls-tls", "stream"] }
rayon = "1"
futures = "0.3"
tree-sitter = "0.25"
tree-sitter-python = "0.23"
tree-sitter-javascript = "0.23"
tree-sitter-typescript = "0.23"
tree-sitter-rust = "0.23"
tree-sitter-go = "0.23"
tree-sitter-java = "0.23"
tree-sitter-c = "0.23"
tree-sitter-cpp = "0.23"
tree-sitter-c-sharp = "0.23"
tree-sitter-php = "0.24"
tree-sitter-ruby = "0.23"
tree-sitter-objc = "3"
tree-sitter-swift = "0.7"
tree-sitter-kotlin-ng = "1"
tree-sitter-dart = "0.2"
tree-sitter-lua = "0.5"
tree-sitter-luau = "1"
tree-sitter-svelte-ng = "1"
tree-sitter-pascal = "0.10"
tree-sitter-liquid = { path = "vendor/tree-sitter-liquid" }
base64 = "0.22"
md5 = "0.7"
sha2 = "0.10"
machine-uid = "0.5"
filetime = "0.2"
chrono = { version = "0.4", features = ["serde"] }
regex = "1"
tracing = "0.1"
tracing-subscriber = { version = "0.3", features = ["env-filter"] }
rmcp = { version = "1.7.0", features = ["server", "macros", "transport-streamable-http-server"] }
tokio-util = "0.7"
tokio-stream = { version = "0.1", features = ["sync"] }
async-stream = "0.3"
schemars = "1"
tower-service = "0.3"
async-trait = "0.1"
# Windows Job Object FFI (router-side worker lifetime guarantee). When the
# router process dies, the Job Object's kill-on-close limit terminates every
# worker assigned to it — the belt-and-suspenders behind each worker's own
# idle self-exit. Only pulled in on Windows.
[target.'cfg(windows)'.dependencies]
windows-sys = { version = "0.59", features = [
"Win32_Foundation",
"Win32_Security",
"Win32_System_JobObjects",
"Win32_System_Threading",
] }
[profile.dev]
debug = 0
[profile.dev.package."*"]
debug = false
[dev-dependencies]
tempfile = "3"
tokio = { version = "1", features = ["full"] }
reqwest = { version = "0.12", default-features = false, features = ["json", "rustls-tls", "stream"] }
futures = "0.3"
base64 = "0.22"