1[workspace]
2members = [
3 "crates/activity_indicator",
4 "crates/activity_indicator2",
5 "crates/ai",
6 "crates/assistant",
7 "crates/audio",
8 "crates/audio2",
9 "crates/auto_update",
10 "crates/auto_update2",
11 "crates/breadcrumbs",
12 "crates/breadcrumbs2",
13 "crates/call",
14 "crates/call2",
15 "crates/channel",
16 "crates/channel2",
17 "crates/cli",
18 "crates/client",
19 "crates/client2",
20 "crates/clock",
21 "crates/collab",
22 "crates/collab2",
23 "crates/collab_ui",
24 "crates/collab_ui2",
25 "crates/collections",
26 "crates/command_palette",
27 "crates/command_palette2",
28 "crates/component_test",
29 "crates/context_menu",
30 "crates/copilot",
31 "crates/copilot2",
32 "crates/copilot_button",
33 "crates/db",
34 "crates/db2",
35 "crates/refineable",
36 "crates/refineable/derive_refineable",
37 "crates/diagnostics",
38 "crates/diagnostics2",
39 "crates/drag_and_drop",
40 "crates/editor",
41 "crates/feature_flags",
42 "crates/feature_flags2",
43 "crates/feedback",
44 "crates/file_finder",
45 "crates/fs",
46 "crates/fs2",
47 "crates/fsevent",
48 "crates/fuzzy",
49 "crates/fuzzy2",
50 "crates/git",
51 "crates/go_to_line",
52 "crates/go_to_line2",
53 "crates/gpui",
54 "crates/gpui_macros",
55 "crates/gpui2",
56 "crates/gpui2_macros",
57 "crates/install_cli",
58 "crates/install_cli2",
59 "crates/journal",
60 "crates/journal2",
61 "crates/language",
62 "crates/language2",
63 "crates/language_selector",
64 "crates/language_selector2",
65 "crates/language_tools",
66 "crates/live_kit_client",
67 "crates/live_kit_server",
68 "crates/lsp",
69 "crates/lsp2",
70 "crates/media",
71 "crates/menu",
72 "crates/menu2",
73 "crates/multi_buffer",
74 "crates/multi_buffer2",
75 "crates/node_runtime",
76 "crates/notifications",
77 "crates/notifications2",
78 "crates/outline",
79 "crates/outline2",
80 "crates/picker",
81 "crates/picker2",
82 "crates/plugin",
83 "crates/plugin_macros",
84 "crates/plugin_runtime",
85 "crates/prettier",
86 "crates/prettier2",
87 "crates/project",
88 "crates/project2",
89 "crates/project_panel",
90 "crates/project_panel2",
91 "crates/project_symbols",
92 "crates/recent_projects",
93 "crates/rope",
94 "crates/rpc",
95 "crates/rpc2",
96 "crates/search",
97 "crates/search2",
98 "crates/semantic_index",
99 "crates/semantic_index2",
100 "crates/settings",
101 "crates/settings2",
102 "crates/snippet",
103 "crates/sqlez",
104 "crates/sqlez_macros",
105 "crates/rich_text",
106 "crates/storybook2",
107 "crates/sum_tree",
108 "crates/terminal",
109 "crates/terminal2",
110 "crates/terminal_view2",
111 "crates/text",
112 "crates/theme",
113 "crates/theme2",
114 "crates/theme_importer",
115 "crates/theme_selector",
116 "crates/theme_selector2",
117 "crates/ui2",
118 "crates/util",
119 "crates/story",
120 "crates/vim",
121 "crates/vcs_menu",
122 "crates/workspace2",
123 "crates/welcome",
124 "crates/welcome2",
125 "crates/xtask",
126 "crates/zed",
127 "crates/zed2",
128 "crates/zed-actions",
129 "crates/zed_actions2"
130]
131default-members = ["crates/zed"]
132resolver = "2"
133
134[workspace.dependencies]
135anyhow = { version = "1.0.57" }
136async-trait = { version = "0.1" }
137# TODO: Switch back to the published version of `ctor` once:
138# 1. A new version of `ctor` is published with this change: https://github.com/mmastrac/rust-ctor/pull/295
139# 2. We've confirmed it's fine to update to the latest version of `ctor` (we're currently on v0.1.20).
140ctor = { git = "https://github.com/zed-industries/rust-ctor", rev = "7f824cf6a7943885a649b579f33f9ac53f0d1db6" }
141derive_more = { version = "0.99.17" }
142env_logger = { version = "0.9" }
143futures = { version = "0.3" }
144globset = { version = "0.4" }
145indoc = "1"
146# We explicitly disable a http2 support in isahc.
147isahc = { version = "1.7.2", default-features = false, features = ["static-curl", "text-decoding"] }
148lazy_static = { version = "1.4.0" }
149log = { version = "0.4.16", features = ["kv_unstable_serde"] }
150ordered-float = { version = "2.1.1" }
151parking_lot = { version = "0.11.1" }
152postage = { version = "0.5", features = ["futures-traits"] }
153prost = { version = "0.8" }
154rand = { version = "0.8.5" }
155refineable = { path = "./crates/refineable" }
156regex = { version = "1.5" }
157rust-embed = { version = "8.0", features = ["include-exclude"] }
158rusqlite = { version = "0.29.0", features = ["blob", "array", "modern_sqlite"] }
159schemars = { version = "0.8" }
160serde = { version = "1.0", features = ["derive", "rc"] }
161serde_derive = { version = "1.0", features = ["deserialize_in_place"] }
162serde_json = { version = "1.0", features = ["preserve_order", "raw_value"] }
163smallvec = { version = "1.6", features = ["union"] }
164smol = { version = "1.2" }
165strum = { version = "0.25.0", features = ["derive"] }
166sysinfo = "0.29.10"
167tempdir = { version = "0.3.7" }
168thiserror = { version = "1.0.29" }
169time = { version = "0.3", features = ["serde", "serde-well-known"] }
170toml = { version = "0.5" }
171tiktoken-rs = "0.5.7"
172tree-sitter = "0.20"
173unindent = { version = "0.1.7" }
174pretty_assertions = "1.3.0"
175git2 = { version = "0.15", default-features = false}
176uuid = { version = "1.1.2", features = ["v4"] }
177
178tree-sitter-bash = { git = "https://github.com/tree-sitter/tree-sitter-bash", rev = "7331995b19b8f8aba2d5e26deb51d2195c18bc94" }
179tree-sitter-c = "0.20.1"
180tree-sitter-cpp = { git = "https://github.com/tree-sitter/tree-sitter-cpp", rev="f44509141e7e483323d2ec178f2d2e6c0fc041c1" }
181tree-sitter-css = { git = "https://github.com/tree-sitter/tree-sitter-css", rev = "769203d0f9abe1a9a691ac2b9fe4bb4397a73c51" }
182tree-sitter-elixir = { git = "https://github.com/elixir-lang/tree-sitter-elixir", rev = "a2861e88a730287a60c11ea9299c033c7d076e30" }
183tree-sitter-elm = { git = "https://github.com/elm-tooling/tree-sitter-elm", rev = "692c50c0b961364c40299e73c1306aecb5d20f40"}
184tree-sitter-embedded-template = "0.20.0"
185tree-sitter-glsl = { git = "https://github.com/theHamsta/tree-sitter-glsl", rev = "2a56fb7bc8bb03a1892b4741279dd0a8758b7fb3" }
186tree-sitter-go = { git = "https://github.com/tree-sitter/tree-sitter-go", rev = "aeb2f33b366fd78d5789ff104956ce23508b85db" }
187tree-sitter-heex = { git = "https://github.com/phoenixframework/tree-sitter-heex", rev = "2e1348c3cf2c9323e87c2744796cf3f3868aa82a" }
188tree-sitter-json = { git = "https://github.com/tree-sitter/tree-sitter-json", rev = "40a81c01a40ac48744e0c8ccabbaba1920441199" }
189tree-sitter-rust = "0.20.3"
190tree-sitter-markdown = { git = "https://github.com/MDeiml/tree-sitter-markdown", rev = "330ecab87a3e3a7211ac69bbadc19eabecdb1cca" }
191tree-sitter-php = { git = "https://github.com/tree-sitter/tree-sitter-php", rev = "d43130fd1525301e9826f420c5393a4d169819fc" }
192tree-sitter-python = "0.20.2"
193tree-sitter-toml = { git = "https://github.com/tree-sitter/tree-sitter-toml", rev = "342d9be207c2dba869b9967124c679b5e6fd0ebe" }
194tree-sitter-typescript = { git = "https://github.com/tree-sitter/tree-sitter-typescript", rev = "5d20856f34315b068c41edaee2ac8a100081d259" }
195tree-sitter-ruby = "0.20.0"
196tree-sitter-html = "0.19.0"
197tree-sitter-scheme = { git = "https://github.com/6cdh/tree-sitter-scheme", rev = "af0fd1fa452cb2562dc7b5c8a8c55551c39273b9"}
198tree-sitter-svelte = { git = "https://github.com/Himujjal/tree-sitter-svelte", rev = "697bb515471871e85ff799ea57a76298a71a9cca"}
199tree-sitter-racket = { git = "https://github.com/zed-industries/tree-sitter-racket", rev = "eb010cf2c674c6fd9a6316a84e28ef90190fe51a"}
200tree-sitter-yaml = { git = "https://github.com/zed-industries/tree-sitter-yaml", rev = "f545a41f57502e1b5ddf2a6668896c1b0620f930"}
201tree-sitter-lua = "0.0.14"
202tree-sitter-nix = { git = "https://github.com/nix-community/tree-sitter-nix", rev = "66e3e9ce9180ae08fc57372061006ef83f0abde7" }
203tree-sitter-nu = { git = "https://github.com/nushell/tree-sitter-nu", rev = "786689b0562b9799ce53e824cb45a1a2a04dc673"}
204tree-sitter-vue = {git = "https://github.com/zed-industries/tree-sitter-vue", rev = "9b6cb221ccb8d0b956fcb17e9a1efac2feefeb58"}
205tree-sitter-uiua = {git = "https://github.com/shnarazk/tree-sitter-uiua", rev = "9260f11be5900beda4ee6d1a24ab8ddfaf5a19b2"}
206
207[patch.crates-io]
208tree-sitter = { git = "https://github.com/tree-sitter/tree-sitter", rev = "b5f461a69bf3df7298b1903574d506179e6390b0" }
209async-task = { git = "https://github.com/zed-industries/async-task", rev = "341b57d6de98cdfd7b418567b8de2022ca993a6e" }
210
211# TODO - Remove when a version is released with this PR: https://github.com/servo/core-foundation-rs/pull/457
212cocoa = { git = "https://github.com/servo/core-foundation-rs", rev = "079665882507dd5e2ff77db3de5070c1f6c0fb85" }
213cocoa-foundation = { git = "https://github.com/servo/core-foundation-rs", rev = "079665882507dd5e2ff77db3de5070c1f6c0fb85" }
214core-foundation = { git = "https://github.com/servo/core-foundation-rs", rev = "079665882507dd5e2ff77db3de5070c1f6c0fb85" }
215core-foundation-sys = { git = "https://github.com/servo/core-foundation-rs", rev = "079665882507dd5e2ff77db3de5070c1f6c0fb85" }
216core-graphics = { git = "https://github.com/servo/core-foundation-rs", rev = "079665882507dd5e2ff77db3de5070c1f6c0fb85" }
217
218[profile.dev]
219split-debuginfo = "unpacked"
220debug = "limited"
221
222[profile.dev.package.taffy]
223opt-level = 3
224
225[profile.release]
226debug = "limited"
227lto = "thin"
228codegen-units = 1