mirror of
https://github.com/pchuan98/codex.git
synced 2026-07-01 00:31:56 +08:00
5a56caf18c
## Why First-party async traits should expose their `Send` contracts explicitly without requiring `async_trait`. This completes the migration pattern established in #27303 and #27304. ## What changed - Replaced the remaining first-party `async_trait` traits with native return-position `impl Future + Send` where statically dispatched and explicit boxed `Send` futures where object safety is required. - Kept implementations behavior-preserving, outlining existing async bodies into inherent methods where that keeps the diff reviewable. - Removed all direct first-party `async-trait` dependencies and the workspace dependency declaration. - Added a cargo-deny policy that permits `async-trait` only through the remaining transitive wrapper crates. - Updated `rand` from 0.8.5 to 0.8.6 to resolve RUSTSEC-2026-0097 and keep the full cargo-deny check passing. ## Validation - `just test -p codex-exec-server`: 216 passed, 2 skipped. - `just test -p codex-model-provider`: 39 passed. - `just test -p codex-core` and `just test`: changed tests passed; remaining failures are environment-sensitive suites unrelated to this migration. - `cargo deny check` - `just fix` - `just fmt` - `cargo shear` - `just bazel-lock-check`
74 lines
2.2 KiB
TOML
74 lines
2.2 KiB
TOML
[package]
|
|
name = "codex-config"
|
|
version.workspace = true
|
|
edition.workspace = true
|
|
license.workspace = true
|
|
|
|
[[example]]
|
|
name = "generate-proto"
|
|
path = "examples/generate-proto.rs"
|
|
|
|
[lints]
|
|
workspace = true
|
|
|
|
[dependencies]
|
|
anyhow = { workspace = true }
|
|
base64 = { workspace = true }
|
|
codex-app-server-protocol = { workspace = true }
|
|
codex-execpolicy = { workspace = true }
|
|
codex-features = { workspace = true }
|
|
codex-file-system = { workspace = true }
|
|
codex-git-utils = { workspace = true }
|
|
codex-model-provider-info = { workspace = true }
|
|
codex-network-proxy = { workspace = true }
|
|
codex-protocol = { workspace = true }
|
|
codex-utils-absolute-path = { workspace = true }
|
|
codex-utils-path = { workspace = true }
|
|
codex-utils-path-uri = { workspace = true }
|
|
dunce = { workspace = true }
|
|
futures = { workspace = true, features = ["alloc", "std"] }
|
|
gethostname = { workspace = true }
|
|
indexmap = { workspace = true, features = ["serde"] }
|
|
multimap = { workspace = true }
|
|
prost = "0.14.3"
|
|
schemars = { workspace = true }
|
|
serde = { workspace = true, features = ["derive"] }
|
|
serde_ignored = { workspace = true }
|
|
serde_json = { workspace = true }
|
|
serde_path_to_error = { workspace = true }
|
|
sha2 = { workspace = true }
|
|
thiserror = { workspace = true }
|
|
tokio = { workspace = true, features = ["fs"] }
|
|
toml = { workspace = true, features = ["preserve_order"] }
|
|
toml_edit = { workspace = true }
|
|
tonic = { workspace = true }
|
|
tonic-prost = { workspace = true }
|
|
tracing = { workspace = true }
|
|
wildmatch = { workspace = true }
|
|
|
|
[target.'cfg(unix)'.dependencies]
|
|
dns-lookup = { workspace = true }
|
|
libc = { workspace = true }
|
|
|
|
[target.'cfg(target_os = "macos")'.dependencies]
|
|
core-foundation = "0.9"
|
|
|
|
[target.'cfg(target_os = "windows")'.dependencies]
|
|
winapi-util = { workspace = true }
|
|
windows-sys = { version = "0.52", features = [
|
|
"Win32_Foundation",
|
|
"Win32_System_Com",
|
|
"Win32_UI_Shell",
|
|
] }
|
|
|
|
[dev-dependencies]
|
|
pretty_assertions = { workspace = true }
|
|
tempfile = { workspace = true }
|
|
tokio = { workspace = true, features = ["full"] }
|
|
tokio-stream = { workspace = true, features = ["net"] }
|
|
tonic = { workspace = true, features = ["router", "transport"] }
|
|
tonic-prost-build = { version = "=0.14.3", default-features = false, features = ["transport"] }
|
|
|
|
[lib]
|
|
doctest = false
|