[package] edition = "2024" name = "code-core" version = { workspace = true } [lib] doctest = false name = "code_core" path = "src/lib.rs" [lints] workspace = true [dependencies] anyhow = { workspace = true } askama = { workspace = true } async-channel = { workspace = true } async-trait = { workspace = true } base64 = { workspace = true } bytes = { workspace = true } chrono = { workspace = true, features = ["serde"] } chardetng = { workspace = true } code-apply-patch = { workspace = true } code-file-search = { workspace = true } code-protocol = { workspace = true } code-rmcp-client = { workspace = true } code-app-server-protocol = { workspace = true } code-otel = { workspace = true, features = ["otel"] } code-browser = { path = "../browser" } code-version = { path = "../code-version" } agent-client-protocol = "0.4.3" dirs = { workspace = true } dunce = { workspace = true } env-flags = { workspace = true } encoding_rs = { workspace = true } eventsource-stream = { workspace = true } futures = { workspace = true } futures-util = "0.3" indexmap = { workspace = true } lazy_static = { workspace = true } libc = { workspace = true } mcp-types = { workspace = true } mime_guess = { workspace = true } os_info = { workspace = true } fs2 = "0.4" htmd = "0.1" httpdate = "1" img_hash = "3" once_cell = { workspace = true } portable-pty = { workspace = true } rand = { workspace = true } regex-lite = { workspace = true } reqwest = { workspace = true, features = ["json", "stream"] } schemars = "0.8.22" serde = { workspace = true, features = ["derive"] } serde_bytes = "0.11" serde_ignored = "0.1" serde_json = { workspace = true } serde_yaml = "0.9" sha1 = { workspace = true } shlex = { workspace = true } similar = { workspace = true } strum_macros = { workspace = true } tempfile = { workspace = true } thiserror = { workspace = true } time = { workspace = true, features = [ "formatting", "parsing", "local-offset", "macros", ] } tokio = { workspace = true, features = [ "io-std", "macros", "process", "rt-multi-thread", "signal", ] } tokio-tungstenite = { version = "0.23", features = ["rustls-tls-webpki-roots"] } tokio-util = { workspace = true } crc32fast = { workspace = true } tokio-stream = { workspace = true } toml = { workspace = true } toml_edit = { workspace = true } tracing = { workspace = true, features = ["log"] } tree-sitter = { workspace = true } tree-sitter-bash = { workspace = true } uuid = { workspace = true, features = ["serde", "v4"] } url = "2" which = { workspace = true } wildmatch = { workspace = true } [target.'cfg(target_os = "macos")'.dependencies] core-foundation = "0.9" [target.'cfg(target_os = "linux")'.dependencies] landlock = "0.4.1" seccompiler = "0.5.0" # Build OpenSSL from source for musl builds. [target.x86_64-unknown-linux-musl.dependencies] openssl-sys = { version = "*", features = ["vendored"] } # Build OpenSSL from source for musl builds. [target.aarch64-unknown-linux-musl.dependencies] openssl-sys = { version = "*", features = ["vendored"] } [target.'cfg(target_os = "windows")'.dependencies] windows-sys = { version = "0.61.2", features = [ "Win32_Foundation", "Win32_System_Threading", ] } [dev-dependencies] assert_cmd = { workspace = true } filetime = { workspace = true } maplit = { workspace = true } serial_test = "3.2.0" pretty_assertions = { workspace = true } tokio-test = { workspace = true } wiremock = { workspace = true } code-git-tooling = { path = "../git-tooling" } walkdir = { workspace = true } [package.metadata.cargo-shear] ignored = ["openssl-sys"]