-
Notifications
You must be signed in to change notification settings - Fork 15
Expand file tree
/
Copy pathCargo.toml
More file actions
95 lines (81 loc) · 2.33 KB
/
Copy pathCargo.toml
File metadata and controls
95 lines (81 loc) · 2.33 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
[workspace]
members = [
"peri-agent",
"peri-middlewares",
"peri-tui",
"peri-acp",
"langfuse-client",
"peri-widgets",
"peri-lsp",
"peri-web-pty",
"agm",
]
resolver = "2"
[workspace.package]
version = "0.2.0"
edition = "2021"
[profile.release]
# NOTE: "symbols" not "true" — Apple strip doesn't behave like GNU strip.
# "true" on macOS only strips debug info, leaving 8MB of symbol table.
strip = "symbols"
opt-level = "z"
lto = true
codegen-units = 1
# ============================================================================
# Workspace-wide dependency declarations
# Single source of truth — all crates reference via `workspace = true`.
# ============================================================================
[workspace.dependencies]
# --- Async runtime ---
tokio = { version = "1", features = ["full"] }
tokio-util = { version = "0.7", features = ["rt"] }
futures = "0.3"
async-trait = "0.1"
# --- Serde ecosystem ---
serde = { version = "1.0", features = ["derive", "rc"] }
serde_json = "1.0"
serde_yaml = "0.9"
# --- HTTP ---
reqwest = { version = "0.13", default-features = false, features = [
"json",
"rustls",
] }
# --- Time ---
chrono = { version = "0.4", features = ["serde"] }
# --- Error handling ---
anyhow = "1.0"
thiserror = "2.0"
# --- Logging ---
tracing = "0.1"
tracing-subscriber = { version = "0.3", features = [
"env-filter",
"fmt",
"json",
] }
# --- Utilities ---
uuid = { version = "1", features = ["v4", "v7", "serde"] }
parking_lot = "0.12"
dirs-next = "2"
url = "2"
sqlx = { version = "0.8", features = ["runtime-tokio", "sqlite"] }
sysinfo = "0.39"
lsp-types = "0.97"
lru = "0.18"
# --- Build ---
tempfile = "3"
# --- Allocator ---
mimalloc = "0.1"
libmimalloc-sys = { version = "0.1", features = ["extended"] }
tikv-jemallocator = "0.6"
tikv-jemalloc-ctl = { version = "0.6", features = ["stats", "use_std"] }
tikv-jemalloc-sys = "0.6"
clap = { version = "4", features = ["derive", "env"] }
semver = "1"
sha2 = "0.10"
# --- PTY server ---
axum = { version = "0.7", features = ["ws"] }
# Pin 到 0.8.1:0.9.0 在 Windows ConPTY 上 reader 读不到 PTY child 输出(短命令场景),
# 0.8.1 据报告在该场景工作正常。详见 docs/review/2026-06-16-peri-web-pty-windows-conpty-bug.md
portable-pty = "=0.8.1"
tokio-tungstenite = "0.29"
serial_test = "3"