586 lines · 21.3 KB · TOML
RawDownload
[workspace]members = [  "crates/*",  "app",]resolver = "2" # Include all members except serve-wasm (since it's a helper helper for serving# wasm binaries and not something we want to regularly compile or run# tests against) and integration (since it is only used for testing).default-members = [  "app",  "crates/channel_versions",  "crates/command",  "crates/editor",  "crates/graphql",  "crates/markdown_parser",  "crates/sum_tree",  "crates/warpui",  "crates/warp_completer",  "crates/warp_terminal",  "crates/warp_util",] [workspace.package]authors = ["Warp Team <dev@warp.dev>"]license = "AGPL-3.0-only"publish = false [workspace.dependencies]# Local workspace crates. This lets us reference them in other crates without specifying a path.ai = { path = "crates/ai" }ai_types = { path = "crates/ai_types" }app-installation-detection = { path = "crates/app-installation-detection" }asset_cache = { path = "crates/asset_cache" }asset_macro = { path = "crates/asset_macro" }build_cache = { path = "crates/build_cache" }channel_versions = { path = "crates/channel_versions", default-features = false }command = { path = "crates/command" }cloud_objects = { path = "crates/cloud_objects" }cloud_object_client = { path = "crates/cloud_object_client" }cloud_object_persistence = { path = "crates/cloud_object_persistence" }cloud_object_models = { path = "crates/cloud_object_models" }computer_use = { path = "crates/computer_use" }field_mask = { path = "crates/field_mask" }firebase = { path = "crates/firebase" }fuzzy_match = { path = "crates/fuzzy_match" }handlebars = { path = "crates/handlebars" }http_client = { path = "crates/http_client" }http_server = { path = "crates/http_server" }input_classifier = { path = "crates/input_classifier" }integration = { path = "crates/integration" }ipc = { path = "crates/ipc" }ipynb_parser = { path = "crates/ipynb_parser" }jsonrpc = { path = "crates/jsonrpc" }languages = { path = "crates/languages" }local_control = { path = "crates/local_control" }lsp = { path = "crates/lsp" }markdown_parser = { path = "crates/markdown_parser" }mcp = { path = "crates/mcp" }natural_language_detection = { path = "crates/natural_language_detection" }node_runtime = { path = "crates/node_runtime" }onboarding = { path = "crates/onboarding" }persistence = { path = "crates/persistence" }prevent_sleep = { path = "crates/prevent_sleep" }regex_dfas = { path = "crates/regex_dfas" }remote_server = { path = "crates/remote_server" }repo_metadata = { path = "crates/repo_metadata" }secret_redaction = { path = "crates/secret_redaction" }settings = { path = "crates/settings" }settings_value = { path = "crates/settings_value", default-features = false }settings_value_derive = { path = "crates/settings_value_derive" }simple_logger = { path = "crates/simple_logger" }string-offset = { path = "crates/string-offset" }sum_tree = { path = "crates/sum_tree" }syntax_tree = { path = "crates/syntax_tree" }ui_components = { path = "crates/ui_components" }vim = { path = "crates/vim" }virtual-fs = { path = "crates/virtual_fs" }voice_input = { path = "crates/voice_input" }warp = { path = "app" }warp_assets = { path = "crates/warp_assets" }warp_channel_config = { path = "crates/warp_channel_config" }warp_cli = { path = "crates/warp_cli" }warp_completer = { path = "crates/warp_completer" }warp_core = { path = "crates/warp_core" }warp_editor = { path = "crates/editor" }warp_errors = { path = "crates/warp_errors" }warp_features = { path = "crates/warp_features" }warp_files = { path = "crates/warp_files" }warp_graphql = { path = "crates/graphql" }warp_graphql_schema = { path = "crates/warp_graphql_schema" }warp_isolation_platform = { path = "crates/isolation_platform" }warp_logging = { path = "crates/warp_logging" }warp_managed_secrets = { path = "crates/managed_secrets" }warp_multi_agent_client = { path = "crates/warp_multi_agent_client" }warp_ripgrep = { path = "crates/warp_ripgrep" }warp_search_core = { path = "crates/warp_search_core" }warp_server_auth = { path = "crates/warp_server_auth" }warp_server_client = { path = "crates/warp_server_client" }warp_terminal = { path = "crates/warp_terminal" }warp_util = { path = "crates/warp_util" }warp_web_event_bus = { path = "crates/warp_web_event_bus" }warpui = { path = "crates/warpui" }warpui_core = { path = "crates/warpui_core" }warpui_extras = { path = "crates/warpui_extras", default-features = false }watcher = { path = "crates/watcher" }websocket = { path = "crates/websocket" } # Workspace-level dependencies used by multiple crates. Prefer adding dependencies# here to copying-and-pasting versions.axum = "0.8.4"anyhow = "1.0"arboard = { version = "3.6.1", default-features = false }arrayvec = "0.7.4"async-broadcast = "0.7.2"ashpd = { version = "0.11", default-features = false, features = ["async-std"] }async-channel = "2.3.1"async-compat = "0.2.5"async-io = "2.4.0"async-process = "2.3.0"async-stream = "0.3.5"async-task = "4.2.0"async-trait = "0.1.89"async-fs = "2.1.2"backtrace = "0.3.76"base64 = "0.22"bincode = "1.3.3"bitflags = { version = "2.4.0", features = ["serde"] }bitflags-serde-legacy = "0.1.1"block = "0.1.6"blocking = "1.6.2"bounded-vec-deque = "0.1"bytemuck = { version = "1.13.1" }bytes = { version = "1.11.1", features = ["serde"] }command-corrections = { git = "https://github.com/warpdotdev/command-corrections.git", rev = "eae08c8c51d9bc9741fcb17eef2c21f696aebbeb" }core-foundation = "0.10.1"concat-idents = "1.1.4"cfg_aliases = "0.2.1"cfg-if = "1.0.0"chrono = { version = "0.4.38", features = ["serde"] }clap = { version = "4.5", features = ["derive"] }cocoa = "=0.26.0"ctrlc = "3.4.7"crc = "3.4.0"cynic = { version = "3" }cynic-codegen = { version = "3", features = ["rkyv"] }dashmap = "6.1.0"derive_more = "0.99.17"diesel = { version = "2.3.8", default-features = false }directories = "6.0"dunce = "1.0.1"enum-iterator = "1.1.3"env_logger = "0.10.0"event-listener = "5.4.0"float-cmp = "0.9.0"font-kit = { git = "https://github.com/warpdotdev/font-kit", rev = "a04b225ecb639bb850f21d05212cfdc7465000f3", default-features = false, features = [  "source",] }futures = { version = "0.3", features = ["executor", "thread-pool"] }futures-lite = "1.13.0"futures-util = { version = "0.3", default-features = false }fs4 = { version = "0.13.1", features = ["sync"] }get-size = { version = "0.1.4", features = ["derive"] }globset = "0.4.18"gloo = { version = "0.11.0", default-features = false, features = [  "events",  "futures",  "utils",] }graphql-ws-client = { version = "0.11.1", default-features = false }hashbrown = "0.17.1"hex = "0.4.3"# This matches the version of hyper used by reqwest.hyper = "1.6.0"html5ever = "0.35.0"http = "1.1.0"humantime = "2.1.0"image = { version = "0.25.9", default-features = false, features = [  "rayon",  "jpeg",  "png",  "gif",  "webp",] }instant = { version = "0.1.12", features = ["wasm-bindgen"] }iso8601-duration = { version = "0.2.0", features = ["chrono", "serde"] }itertools = "0.14.0"jaq-json = { version = "2.0", features = ["serde"] }# Disabling the default `formats` feature is intended to avoid pulling in# CBOR/TOML/XML/YAML support, but `jaq-all` currently depends on `jaq-fmts`# with its default features enabled, which re-enables all those parsers transitively.# The long-term fix is https://github.com/01mf02/jaq/issues/431.jaq-all = { version = "0.1", default-features = false }jsonschema = { version = "0.45", default-features = false }lasso = { version = "0.7.3", features = ["multi-threaded"] }lazy_static = "1.4.0"libc = "0.2.81"libtest-mimic = "0.8.2"line-ending = "1.4.0"log = { version = "0.4", features = ["serde", "std"] }mermaid_to_svg = { git = "https://github.com/warpdotdev/mermaid-to-svg.git", rev = "8d3f789c2eb49335d7bf247a06bb649f59b6d4ed" }mime_guess = "2.0"minimp4 = "0.1.2"nix = { version = "0.26.4", default-features = false, features = ["signal"] }notify-debouncer-full = { git = "https://github.com/warpdotdev/notify", rev = "91b719849bc04ef251bcb2cc61076b099204e970" }nom = "7.1.1"num-traits = "0.2"oauth2 = { version = "5.0.0", default-features = false }opentelemetry = { version = "0.32.0", default-features = false, features = ["trace"] }opentelemetry-http = "0.32.0"opentelemetry-otlp = { version = "0.32.0", default-features = false, features = [  "gzip-http",  "http-proto",  "trace",  "zstd-http",] }opentelemetry_sdk = { version = "0.32.1", default-features = false, features = ["trace"] }openh264 = "0.8"static_assertions = "1.1.0"url = "2.5.4"urlocator = "0.1.4"mockall = "0.13.1"objc = "0.2"objc2 = "0.6.3"objc2-app-kit = { version = "0.3.2", default-features = false, features = ["NSScreen", "objc2-core-foundation"] }objc2-av-foundation = { version = "0.3.2", default-features = false }objc2-core-foundation = "0.3.2"objc2-core-graphics = "0.3.2"objc2-foundation = { version = "0.3", default-features = false, features = ["std"] }objc2-metal = { version = "0.3.2", default-features = false }objc2-quartz-core = { version = "0.3.2", default-features = false }dispatch2 = { version = "0.3.0", default-features = false, features = ["std", "block2"] }once_cell = "1.20.2"ordered-float = { version = "3.0.0", features = ["serde"] }parking_lot = "0.12.1"pathfinder_color = "0.5"pathfinder_geometry = "0.5.1"pin-project = "1.0.10"pprof = "0.15.0"prost = "0.14.3"prost-build = "0.14.3"prost-reflect = "0.16.3"prost-types = "0.14.3"qrcode = { version = "0.14.1", default-features = false }rand = "0.8.6"rangemap = "1.3.0"reqwest = { version = "0.13", features = [  "blocking",  "brotli",  "gzip",  "form",  "json",  "multipart",  "query",  "stream",] }reqwest-eventsource = { package = "aha-reqwest-eventsource", version = "0.1" }resvg = "0.47.0"rust-embed = { version = "8.7.0", features = ["include-exclude"] }rustc-hash = "2.1.1"rustls = "0.23.39"schemars = { version = "1", features = ["chrono04"] }sentry = { version = "0.47.0", default-features = false, features = [  "anyhow",  "backtrace",  "contexts",  "debug-images",  "panic",  "release-health",  "reqwest",  "rustls",] }sentry-log = "0.47.0"serde = { version = "1.0", features = ["derive", "rc"] }serde_bytes = "0.11"serde-bytes-repr = "0.3"serde_json = { version = "1.0", features = ["raw_value"] }serde_urlencoded = "0.7"serde_with = "^3.21"serde_yaml = "0.8"session-sharing-protocol = { git = "https://github.com/warpdotdev/session-sharing-protocol.git", rev = "fcd0fea35ab9f782043c8ec74fd81bce187ded9f" }similar = { version = "2.7", features = ["inline"] }simplelog = "0.12.2"smallvec = "1.6.1"smol_str = "0.2.2"strsim = "0.11"strum = "0.27"strum_macros = "0.27"tempfile = "3.8.0"thiserror = "2.0.17"tokio = "1.47.1"tokio-util = { version = "0.7", features = ["io"] }toml_edit = "0.25.5"tower = "0.5.2"tower-http = "0.6.6"tracing = "0.1.40"tracing-futures = "0.2.5"tracing-opentelemetry = { version = "0.33.0", default-features = false }tracing-subscriber = { version = "0.3.22", default-features = false, features = [  "registry",  "std",] }arborium = { version = "2", default-features = false, features = [  "lang-rust",  "lang-go",  "lang-yaml",  "lang-python",  "lang-javascript",  "lang-typescript",  "lang-tsx",  "lang-java",  "lang-cpp",  "lang-bash",  "lang-c-sharp",  "lang-html",  "lang-css",  "lang-c",  "lang-json",  "lang-jq",  "lang-hcl",  "lang-lua",  "lang-nix",  "lang-ruby",  "lang-php",  "lang-toml",  "lang-swift",  "lang-kotlin",  "lang-scala",  "lang-powershell",  "lang-elixir",  "lang-sql",  "lang-starlark",  "lang-objc",  "lang-xml",  "lang-vue",  "lang-dockerfile",  "lang-markdown",] }unicode-general-category = "1.1.0"unicode-linebreak = "0.1.5"unicode-segmentation = "1.11.0"unicode-width = "0.1.12"uuid = { version = "1.1.2", features = ["v4", "v5", "serde", "js"] }vec1 = { version = "1.8.0", features = ["serde"] }version-compare = "0.1"vte = { git = "https://github.com/warpdotdev/vte.git", rev = "4b399c87b63ba88f45709edaa6383fc519f6c900", default-features = false }walkdir = "2"warp-workflows = { git = "https://github.com/warpdotdev/workflows", rev = "793a98ddda6ef19682aed66364faebd2829f0e01" }warp_multi_agent_api = { git = "https://github.com/warpdotdev/warp-proto-apis.git", rev = "7b638a3bce15b6159116c25caa1dda62cf004b0e" }wasm-bindgen = "0.2.89"wasm-bindgen-futures = "0.4.42"web-sys = { version = "0.3.69", features = [  "Blob",  "Clipboard",  "ClipboardEvent",  "ClipboardItem",  "CompositionEvent",  "Document",  "DataTransfer",  "Event",  "HtmlCanvasElement",  "HtmlInputElement",  "InputEvent",  "Navigator",  "MediaQueryList",  "Window",  "Notification",  "NotificationPermission",] }# Disable default features to disable support for WebGPU, which does not yet# have wide browser support.  We enable all other default feature of wgpu,# though.wgpu = { version = "30.0.0", default-features = false, features = [  "dx12",  "gles",  "metal",  "parking_lot",  "std",  "vulkan",  "wgsl",] }zbus = "5.9.0"memchr = "2"memo-map = "0.3.1"async-recursion = "1.0.0"getset = "0.1.1"regex = "1.11.1"regex-automata = "0.4.6"dirs = "6.0.0"rayon = "1.10.0"sha2 = "0.10"shellexpand = "3.1.1"warp-command-signatures = { git = "https://github.com/warpdotdev/command-signatures.git", rev = "48fd7aa5b7b4d99f5db57d1c5a25c47c05567fcf", default-features = false }winit = { git = "https://github.com/warpdotdev/winit.git", rev = "14db95a686387211d57cf2afd1d908b2d82a20fe" }x11rb = "0.13.0"mockito = "1.7.0"sysinfo = { version = "0.37.0", default-features = false, features = [  "system",  "multithread",] }windows = { version = "0.62.2", features = [  "Win32",  "Win32_System",  "Win32_System_Kernel",  "Win32_System_Threading",  "Wdk_System",  "Wdk_System_SystemServices",  "Win32_System_Com",  "Win32_System_SecurityCenter",  "Win32_System_SystemInformation",  "Win32_System_Console",] }windows-core = { version = "0.62.2" }windows-registry = { version = "0.2.0" }windows-result = { version = "0.2.0" }winreg = "0.55.0"typed-path = "0.10.0"streaming-iterator = "0.1.0"derivative = "2.2.0"parquet = { version = "55.0.0", features = ["arrow"] }rmcp = { version = "1.6" } [profile.release]# Use line-tables-only (debug = 1) rather than full debuginfo (debug = 2 /# `true`). Line tables are enough to symbolicate panics and Sentry stack# traces with file/line info, but they omit the per-variable/type DWARF that# dominates DWARF size. Dropping the type info significantly reduces rustc's# peak memory during ThinLTO + codegen (which was OOM-killing release builds# on CI), at the cost of not being able to inspect locals/types when# attaching a debugger to a release binary.debug = 1# Force the rust compiler to create a dSYM. Starting in 1.53 the default on MacOS is "unpacked".split-debuginfo = "packed" [profile.dev]# Use line-tables-only to speed up dev builds. Change to `debug = true` if you# need full debuginfo for step-through debugging (gdb/lldb).debug = "line-tables-only"# loads debuginfo without needing to run dsymutil, leave the .o object files# in the build output directory instead of deleting them, and skips the step of running dsymutil.# Rust's backtrace support is smart enough to know how to find these .o files.# This should work as long as you don't need to move the binary to a different# location while retaining the debug information.split-debuginfo = "unpacked" [profile.dev.package]# Improve the performance of core terminal logic.warp_terminal.opt-level = 3# Minimize the runtime overhead of CPU profiling at the cost of a small# increase in compile time for this crate.backtrace.opt-level = 3# Minimize the runtime overhead of CPU profiling at the cost of a small# increase in compile time for this crate.pprof.opt-level = 3# Ensure jemalloc is optimized for performance.tikv-jemallocator.opt-level = 3tikv-jemalloc-sys.opt-level = 3jemalloc_pprof.opt-level = 3pprof_util.opt-level = 3# Vastly improve runtime performance of some font and text layout logic# at the cost of a small increase in compile time for this crate.ttf-parser.opt-level = 3# Improve the performance of Agent Mode diff application, particularly in tests.strsim.opt-level = 3# Improve performance of SSE stream parsing.eventsource-stream.opt-level = 3memchr.opt-level = 3nom.opt-level = 3# Improve performance of core runtime components slightly.tokio.opt-level = 1rayon-core.opt-level = 1# Improve performance of image processing for debug builds.fdeflate.opt-level = 3image.opt-level = 3png.opt-level = 3miniz_oxide.opt-level = 3 # A profile that behaves like release but enables ThinLTO, which should produce# binaries with better runtime performance with little build-time overhead.[profile.release-lto]inherits = "release"lto = "thin" # A shorthand profile for `release-lto`.# Windows enforces that any path is a maximum of 255 characters and# the length of this profile is sufficiently long that it can cause# compiler errors. We use a shorthand to get around these issues.[profile.rlto]inherits = "release-lto" # A custom release-like profile that forces debug assertions on.[profile.release-lto-debug_assertions]inherits = "release-lto"debug-assertions = true # A shorthand profile for `release-lto-debug_assertions`.# Windows enforces that any path is a maximum of 255 characters and# the length of this profile is sufficiently long that it can cause# compiler errors. We use a shorthand to get around these issues.

Lines 1–500 of 586.