diff --git a/Cargo.lock b/Cargo.lock index cd9230a9c7..601c2bb982 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -47,22 +47,11 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b169f7a6d4742236a0a00c541b845991d0ac43e546831af1249753ab4c3aa3a0" dependencies = [ "cfg-if 1.0.0", - "cipher 0.4.4", + "cipher", "cpufeatures", "zeroize", ] -[[package]] -name = "ahash" -version = "0.7.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fcb51a0695d8f838b1ee009b3fbf66bda078cd64590202a864a8f3e8c4315c47" -dependencies = [ - "getrandom 0.2.10", - "once_cell", - "version_check", -] - [[package]] name = "ahash" version = "0.8.8" @@ -70,7 +59,6 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "42cd52102d3df161c77a887b608d7a4897d7cc112886a9537b738a887a03aaff" dependencies = [ "cfg-if 1.0.0", - "getrandom 0.2.10", "once_cell", "version_check", "zerocopy", @@ -98,7 +86,7 @@ dependencies = [ "language", "log", "matrixmultiply", - "ordered-float 2.10.0", + "ordered-float", "parking_lot 0.11.2", "parse_duration", "postage", @@ -134,12 +122,6 @@ dependencies = [ "windows-sys 0.48.0", ] -[[package]] -name = "aliasable" -version = "0.1.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "250f629c0161ad8107cf89319e990051fae62832fd343083bea452d93e2205fd" - [[package]] name = "allocator-api2" version = "0.2.16" @@ -189,54 +171,6 @@ dependencies = [ "libc", ] -[[package]] -name = "anstream" -version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b1f58811cfac344940f1a400b6e6231ce35171f614f26439e80f8c1465c5cc0c" -dependencies = [ - "anstyle", - "anstyle-parse", - "anstyle-query", - "anstyle-wincon", - "colorchoice", - "utf8parse", -] - -[[package]] -name = "anstyle" -version = "1.0.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b84bf0a05bbb2a83e5eb6fa36bb6e87baa08193c35ff52bbf6b38d8af2890e46" - -[[package]] -name = "anstyle-parse" -version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "938874ff5980b03a87c5524b3ae5b59cf99b1d6bc836848df7bc5ada9643c333" -dependencies = [ - "utf8parse", -] - -[[package]] -name = "anstyle-query" -version = "1.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5ca11d4be1bab0c8bc8734a9aa7bf4ee8316d462a08c6ac5052f888fef5b494b" -dependencies = [ - "windows-sys 0.48.0", -] - -[[package]] -name = "anstyle-wincon" -version = "2.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "58f54d10c6dfa51283a066ceab3ec1ab78d13fae00aa49243a45e4571fb79dfd" -dependencies = [ - "anstyle", - "windows-sys 0.48.0", -] - [[package]] name = "anyhow" version = "1.0.75" @@ -354,7 +288,7 @@ dependencies = [ "log", "menu", "multi_buffer", - "ordered-float 2.10.0", + "ordered-float", "project", "rand 0.8.5", "regex", @@ -715,28 +649,6 @@ dependencies = [ "wasm-bindgen-futures", ] -[[package]] -name = "async-stream" -version = "0.3.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cd56dd203fef61ac097dd65721a419ddccb106b2d2b70ba60a6b529f03961a51" -dependencies = [ - "async-stream-impl", - "futures-core", - "pin-project-lite", -] - -[[package]] -name = "async-stream-impl" -version = "0.3.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "16e62a023e7c117e27523144c5d2459f4397fcc3cab0085af8e2224f643a0193" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.48", -] - [[package]] name = "async-tar" version = "0.4.2" @@ -780,16 +692,7 @@ dependencies = [ "futures-util", "log", "pin-project-lite", - "tungstenite 0.16.0", -] - -[[package]] -name = "atoi" -version = "2.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f28d99ec8bfea296261ca1af174f24225171fea9664ba9003cbebee704810528" -dependencies = [ - "num-traits", + "tungstenite", ] [[package]] @@ -859,442 +762,6 @@ version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa" -[[package]] -name = "aws-config" -version = "1.1.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7af266887e24cd5f6d2ea7433cacd25dcd4773b7f70e488701968a7cdf51df57" -dependencies = [ - "aws-credential-types", - "aws-runtime", - "aws-sdk-sso", - "aws-sdk-ssooidc", - "aws-sdk-sts", - "aws-smithy-async", - "aws-smithy-http", - "aws-smithy-json", - "aws-smithy-runtime", - "aws-smithy-runtime-api", - "aws-smithy-types", - "aws-types", - "bytes 1.5.0", - "fastrand 2.0.0", - "hex", - "http 0.2.9", - "hyper", - "ring 0.17.7", - "time", - "tokio", - "tracing", - "zeroize", -] - -[[package]] -name = "aws-credential-types" -version = "1.1.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2d56f287a9e65e4914bfedb5b22c056b65e4c232fca512d5509a9df36386759f" -dependencies = [ - "aws-smithy-async", - "aws-smithy-runtime-api", - "aws-smithy-types", - "zeroize", -] - -[[package]] -name = "aws-runtime" -version = "1.1.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2d6a29eca8ea8982028a4df81883e7001e250a21d323b86418884b5345950a4b" -dependencies = [ - "aws-credential-types", - "aws-sigv4", - "aws-smithy-async", - "aws-smithy-eventstream", - "aws-smithy-http", - "aws-smithy-runtime-api", - "aws-smithy-types", - "aws-types", - "bytes 1.5.0", - "fastrand 2.0.0", - "http 0.2.9", - "http-body", - "percent-encoding", - "pin-project-lite", - "tracing", - "uuid", -] - -[[package]] -name = "aws-sdk-s3" -version = "1.15.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c977e92277652aefb9a76a0fca652b26757d6845dce0d7bf4426da80f13d85b0" -dependencies = [ - "aws-credential-types", - "aws-runtime", - "aws-sigv4", - "aws-smithy-async", - "aws-smithy-checksums", - "aws-smithy-eventstream", - "aws-smithy-http", - "aws-smithy-json", - "aws-smithy-runtime", - "aws-smithy-runtime-api", - "aws-smithy-types", - "aws-smithy-xml", - "aws-types", - "bytes 1.5.0", - "http 0.2.9", - "http-body", - "once_cell", - "percent-encoding", - "regex-lite", - "tracing", - "url", -] - -[[package]] -name = "aws-sdk-sso" -version = "1.13.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e2d7f527c7b28af1a641f7d89f9e6a4863e8ec00f39d2b731b056fc5ec5ce829" -dependencies = [ - "aws-credential-types", - "aws-runtime", - "aws-smithy-async", - "aws-smithy-http", - "aws-smithy-json", - "aws-smithy-runtime", - "aws-smithy-runtime-api", - "aws-smithy-types", - "aws-types", - "bytes 1.5.0", - "http 0.2.9", - "once_cell", - "regex-lite", - "tracing", -] - -[[package]] -name = "aws-sdk-ssooidc" -version = "1.13.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0d0be3224cd574ee8ab5fd7c32087876f25c134c27ac603fcb38669ed8d346b0" -dependencies = [ - "aws-credential-types", - "aws-runtime", - "aws-smithy-async", - "aws-smithy-http", - "aws-smithy-json", - "aws-smithy-runtime", - "aws-smithy-runtime-api", - "aws-smithy-types", - "aws-types", - "bytes 1.5.0", - "http 0.2.9", - "once_cell", - "regex-lite", - "tracing", -] - -[[package]] -name = "aws-sdk-sts" -version = "1.13.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5b3167c60d82a13bbaef569da06041644ff41e85c6377e5dad53fa2526ccfe9d" -dependencies = [ - "aws-credential-types", - "aws-runtime", - "aws-smithy-async", - "aws-smithy-http", - "aws-smithy-json", - "aws-smithy-query", - "aws-smithy-runtime", - "aws-smithy-runtime-api", - "aws-smithy-types", - "aws-smithy-xml", - "aws-types", - "http 0.2.9", - "once_cell", - "regex-lite", - "tracing", -] - -[[package]] -name = "aws-sigv4" -version = "1.1.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "54b1cbe0eee57a213039088dbdeca7be9352f24e0d72332d961e8a1cb388f82d" -dependencies = [ - "aws-credential-types", - "aws-smithy-eventstream", - "aws-smithy-http", - "aws-smithy-runtime-api", - "aws-smithy-types", - "bytes 1.5.0", - "crypto-bigint 0.5.5", - "form_urlencoded", - "hex", - "hmac 0.12.1", - "http 0.2.9", - "http 1.0.0", - "once_cell", - "p256", - "percent-encoding", - "ring 0.17.7", - "sha2 0.10.7", - "subtle", - "time", - "tracing", - "zeroize", -] - -[[package]] -name = "aws-smithy-async" -version = "1.1.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "426a5bc369ca7c8d3686439e46edc727f397a47ab3696b13f3ae8c81b3b36132" -dependencies = [ - "futures-util", - "pin-project-lite", - "tokio", -] - -[[package]] -name = "aws-smithy-checksums" -version = "0.60.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6ee554133eca2611b66d23548e48f9b44713befdb025ab76bc00185b878397a1" -dependencies = [ - "aws-smithy-http", - "aws-smithy-types", - "bytes 1.5.0", - "crc32c", - "crc32fast", - "hex", - "http 0.2.9", - "http-body", - "md-5", - "pin-project-lite", - "sha1", - "sha2 0.10.7", - "tracing", -] - -[[package]] -name = "aws-smithy-eventstream" -version = "0.60.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e6363078f927f612b970edf9d1903ef5cef9a64d1e8423525ebb1f0a1633c858" -dependencies = [ - "aws-smithy-types", - "bytes 1.5.0", - "crc32fast", -] - -[[package]] -name = "aws-smithy-http" -version = "0.60.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "85d6a0619f7b67183067fa3b558f94f90753da2df8c04aeb7336d673f804b0b8" -dependencies = [ - "aws-smithy-eventstream", - "aws-smithy-runtime-api", - "aws-smithy-types", - "bytes 1.5.0", - "bytes-utils", - "futures-core", - "http 0.2.9", - "http-body", - "once_cell", - "percent-encoding", - "pin-project-lite", - "pin-utils", - "tracing", -] - -[[package]] -name = "aws-smithy-json" -version = "0.60.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a1c1b5186b6f5c579bf0de1bcca9dd3d946d6d51361ea1d18131f6a0b64e13ae" -dependencies = [ - "aws-smithy-types", -] - -[[package]] -name = "aws-smithy-query" -version = "0.60.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1c0a2ce65882e788d2cf83ff28b9b16918de0460c47bf66c5da4f6c17b4c9694" -dependencies = [ - "aws-smithy-types", - "urlencoding", -] - -[[package]] -name = "aws-smithy-runtime" -version = "1.1.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b4cb6b3afa5fc9825a75675975dcc3e21764b5476bc91dbc63df4ea3d30a576e" -dependencies = [ - "aws-smithy-async", - "aws-smithy-http", - "aws-smithy-runtime-api", - "aws-smithy-types", - "bytes 1.5.0", - "fastrand 2.0.0", - "h2", - "http 0.2.9", - "http-body", - "hyper", - "hyper-rustls", - "once_cell", - "pin-project-lite", - "pin-utils", - "rustls", - "tokio", - "tracing", -] - -[[package]] -name = "aws-smithy-runtime-api" -version = "1.1.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "23165433e80c04e8c09cee66d171292ae7234bae05fa9d5636e33095eae416b2" -dependencies = [ - "aws-smithy-async", - "aws-smithy-types", - "bytes 1.5.0", - "http 0.2.9", - "pin-project-lite", - "tokio", - "tracing", - "zeroize", -] - -[[package]] -name = "aws-smithy-types" -version = "1.1.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c94a5bec34850b92c9a054dad57b95c1d47f25125f55973e19f6ad788f0381ff" -dependencies = [ - "base64-simd", - "bytes 1.5.0", - "bytes-utils", - "futures-core", - "http 0.2.9", - "http-body", - "itoa", - "num-integer", - "pin-project-lite", - "pin-utils", - "ryu", - "serde", - "time", - "tokio", - "tokio-util", -] - -[[package]] -name = "aws-smithy-xml" -version = "0.60.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d16f94c9673412b7a72e3c3efec8de89081c320bf59ea12eed34c417a62ad600" -dependencies = [ - "xmlparser", -] - -[[package]] -name = "aws-types" -version = "1.1.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0ff7e122ee50ca962e9de91f5850cc37e2184b1219611eef6d44aa85929b54f6" -dependencies = [ - "aws-credential-types", - "aws-smithy-async", - "aws-smithy-runtime-api", - "aws-smithy-types", - "http 0.2.9", - "rustc_version", - "tracing", -] - -[[package]] -name = "axum" -version = "0.6.20" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3b829e4e32b91e643de6eafe82b1d90675f5874230191a4ffbc1b336dec4d6bf" -dependencies = [ - "async-trait", - "axum-core", - "base64 0.21.4", - "bitflags 1.3.2", - "bytes 1.5.0", - "futures-util", - "headers", - "http 0.2.9", - "http-body", - "hyper", - "itoa", - "matchit", - "memchr", - "mime", - "percent-encoding", - "pin-project-lite", - "rustversion", - "serde", - "serde_json", - "serde_path_to_error", - "serde_urlencoded", - "sha1", - "sync_wrapper", - "tokio", - "tokio-tungstenite", - "tower", - "tower-layer", - "tower-service", -] - -[[package]] -name = "axum-core" -version = "0.3.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "759fa577a247914fd3f7f76d62972792636412fbfd634cd452f6a385a74d2d2c" -dependencies = [ - "async-trait", - "bytes 1.5.0", - "futures-util", - "http 0.2.9", - "http-body", - "mime", - "rustversion", - "tower-layer", - "tower-service", -] - -[[package]] -name = "axum-extra" -version = "0.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f9a320103719de37b7b4da4c8eb629d4573f6bcfd3dfe80d3208806895ccf81d" -dependencies = [ - "axum", - "bytes 1.5.0", - "futures-util", - "http 0.2.9", - "mime", - "pin-project-lite", - "serde", - "serde_json", - "tokio", - "tower", - "tower-http 0.3.5", - "tower-layer", - "tower-service", -] - [[package]] name = "backtrace" version = "0.3.69" @@ -1310,12 +777,6 @@ dependencies = [ "rustc-demangle", ] -[[package]] -name = "base16ct" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "349a06037c7bf932dd7e7d1f653678b2038b9ad46a74102f1fc7bd7872678cce" - [[package]] name = "base64" version = "0.13.1" @@ -1328,33 +789,6 @@ version = "0.21.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9ba43ea6f343b788c8764558649e08df62f86c6ef251fdaeb1ffd010a9ae50a2" -[[package]] -name = "base64-simd" -version = "0.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "339abbe78e73178762e23bea9dfd08e697eb3f3301cd4be981c0f78ba5859195" -dependencies = [ - "outref", - "vsimd", -] - -[[package]] -name = "base64ct" -version = "1.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8c3c1a368f70d6cf7302d78f8f7093da241fb8e8807c05cc9e51a125895a6d5b" - -[[package]] -name = "bigdecimal" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a6773ddc0eafc0e509fb60e48dff7f450f8e674a0686ae8605e8d9901bd5eefa" -dependencies = [ - "num-bigint 0.4.4", - "num-integer", - "num-traits", -] - [[package]] name = "bincode" version = "1.3.3" @@ -1437,18 +871,6 @@ dependencies = [ "serde", ] -[[package]] -name = "bitvec" -version = "1.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1bc2832c24239b0141d5674bb9174f9d68a8b5b3f2753311927c172ca46f7e9c" -dependencies = [ - "funty", - "radium", - "tap", - "wyz", -] - [[package]] name = "blade-graphics" version = "0.3.0" @@ -1538,51 +960,6 @@ dependencies = [ "tracing", ] -[[package]] -name = "borsh" -version = "0.10.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4114279215a005bc675e386011e594e1d9b800918cea18fcadadcce864a2046b" -dependencies = [ - "borsh-derive", - "hashbrown 0.13.2", -] - -[[package]] -name = "borsh-derive" -version = "0.10.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0754613691538d51f329cce9af41d7b7ca150bc973056f1156611489475f54f7" -dependencies = [ - "borsh-derive-internal", - "borsh-schema-derive-internal", - "proc-macro-crate 0.1.5", - "proc-macro2", - "syn 1.0.109", -] - -[[package]] -name = "borsh-derive-internal" -version = "0.10.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "afb438156919598d2c7bad7e1c0adf3d26ed3840dbc010db1a882a65583ca2fb" -dependencies = [ - "proc-macro2", - "quote", - "syn 1.0.109", -] - -[[package]] -name = "borsh-schema-derive-internal" -version = "0.10.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "634205cc43f74a1b9046ef87c4540ebda95696ec0f315024860cad7c5b0f5ccd" -dependencies = [ - "proc-macro2", - "quote", - "syn 1.0.109", -] - [[package]] name = "breadcrumbs" version = "0.1.0" @@ -1624,28 +1001,6 @@ version = "3.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7f30e7476521f6f8af1a1c4c0b8cc94f0bee37d91763d0ca2665f299b6cd8aec" -[[package]] -name = "bytecheck" -version = "0.6.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8b6372023ac861f6e6dc89c8344a8f398fb42aaba2b5dbc649ca0c0e9dbcb627" -dependencies = [ - "bytecheck_derive", - "ptr_meta", - "simdutf8", -] - -[[package]] -name = "bytecheck_derive" -version = "0.6.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a7ec4c6f261935ad534c0c22dbef2201b45918860eb1c574b972bd213a76af61" -dependencies = [ - "proc-macro2", - "quote", - "syn 1.0.109", -] - [[package]] name = "bytemuck" version = "1.14.0" @@ -1688,16 +1043,6 @@ version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a2bd12c1caf447e69cd4528f47f94d203fd2582878ecb9e9465484c4148a8223" -[[package]] -name = "bytes-utils" -version = "0.1.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7dafe3a8757b027e2be6e4e5601ed563c55989fcf1546e933c66c8eb3a058d35" -dependencies = [ - "bytes 1.5.0", - "either", -] - [[package]] name = "call" version = "0.1.0" @@ -1836,7 +1181,7 @@ version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "26b52a9543ae338f279b96b0b9fed9c8093744685043739079ce85cd58f289a6" dependencies = [ - "cipher 0.4.4", + "cipher", ] [[package]] @@ -1845,7 +1190,7 @@ version = "0.26.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "da6bc11b07529f16944307272d5bd9b22530bc7d05751717c9d416586cedab49" dependencies = [ - "clap 3.2.25", + "clap", "heck 0.4.1", "indexmap 1.9.3", "log", @@ -1937,15 +1282,6 @@ version = "1.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "cca491388666e04d7248af3f60f0c40cfb0991c72205595d7c396e3510207d1a" -[[package]] -name = "cipher" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7ee52072ec15386f770805afd189a01c8841be8696bed250fa2f13c4c0d6dfb7" -dependencies = [ - "generic-array", -] - [[package]] name = "cipher" version = "0.4.4" @@ -1976,8 +1312,8 @@ checksum = "4ea181bf566f71cb9a5d17a59e1871af638180a18fb0035c92ae62b705207123" dependencies = [ "atty", "bitflags 1.3.2", - "clap_derive 3.2.25", - "clap_lex 0.2.4", + "clap_derive", + "clap_lex", "indexmap 1.9.3", "once_cell", "strsim", @@ -1985,28 +1321,6 @@ dependencies = [ "textwrap", ] -[[package]] -name = "clap" -version = "4.4.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b1d7b8d5ec32af0fadc644bf1fd509a688c2103b185644bb1e29d164e0703136" -dependencies = [ - "clap_builder", - "clap_derive 4.4.2", -] - -[[package]] -name = "clap_builder" -version = "4.4.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5179bb514e4d7c2051749d8fcefa2ed6d06a9f4e6d69faf3805f5d80b8cf8d56" -dependencies = [ - "anstream", - "anstyle", - "clap_lex 0.5.1", - "strsim", -] - [[package]] name = "clap_derive" version = "3.2.25" @@ -2020,18 +1334,6 @@ dependencies = [ "syn 1.0.109", ] -[[package]] -name = "clap_derive" -version = "4.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0862016ff20d69b84ef8247369fabf5c008a7417002411897d40ee1f4532b873" -dependencies = [ - "heck 0.4.1", - "proc-macro2", - "quote", - "syn 2.0.48", -] - [[package]] name = "clap_lex" version = "0.2.4" @@ -2041,18 +1343,12 @@ dependencies = [ "os_str_bytes", ] -[[package]] -name = "clap_lex" -version = "0.5.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cd7cc57abe963c6d3b9d8be5b06ba7c8957a930305ca90304f24ef040aa6f961" - [[package]] name = "cli" version = "0.1.0" dependencies = [ "anyhow", - "clap 3.2.25", + "clap", "core-foundation", "core-services", "ipc-channel", @@ -2061,49 +1357,6 @@ dependencies = [ "util", ] -[[package]] -name = "clickhouse" -version = "0.11.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a0875e527e299fc5f4faba42870bf199a39ab0bb2dbba1b8aef0a2151451130f" -dependencies = [ - "bstr", - "bytes 1.5.0", - "clickhouse-derive", - "clickhouse-rs-cityhash-sys", - "futures 0.3.28", - "hyper", - "hyper-tls", - "lz4", - "sealed", - "serde", - "static_assertions", - "thiserror", - "tokio", - "url", -] - -[[package]] -name = "clickhouse-derive" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "18af5425854858c507eec70f7deb4d5d8cec4216fcb086283a78872387281ea5" -dependencies = [ - "proc-macro2", - "quote", - "serde_derive_internals", - "syn 1.0.109", -] - -[[package]] -name = "clickhouse-rs-cityhash-sys" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4baf9d4700a28d6cb600e17ed6ae2b43298a5245f1f76b4eab63027ebfd592b9" -dependencies = [ - "cc", -] - [[package]] name = "client" version = "0.1.0" @@ -2129,7 +1382,7 @@ dependencies = [ "serde", "serde_json", "settings", - "sha2 0.10.7", + "sha2", "smol", "sysinfo", "telemetry_events", @@ -2210,85 +1463,6 @@ dependencies = [ "unicode-width", ] -[[package]] -name = "collab" -version = "0.44.0" -dependencies = [ - "anyhow", - "async-trait", - "async-tungstenite", - "audio", - "aws-config", - "aws-sdk-s3", - "axum", - "axum-extra", - "base64 0.13.1", - "call", - "channel", - "chrono", - "clickhouse", - "client", - "clock", - "collab_ui", - "collections", - "ctor", - "dashmap", - "editor", - "env_logger", - "envy", - "file_finder", - "fs", - "futures 0.3.28", - "git", - "gpui", - "hex", - "indoc", - "language", - "lazy_static", - "live_kit_client", - "live_kit_server", - "log", - "lsp", - "menu", - "nanoid", - "node_runtime", - "notifications", - "parking_lot 0.11.2", - "pretty_assertions", - "project", - "prometheus", - "prost 0.8.0", - "rand 0.8.5", - "release_channel", - "reqwest", - "rpc", - "rustc-demangle", - "scrypt", - "sea-orm", - "semver", - "serde", - "serde_derive", - "serde_json", - "settings", - "sha2 0.10.7", - "sqlx", - "subtle", - "telemetry_events", - "text", - "theme", - "time", - "tokio", - "toml 0.8.10", - "tower", - "tower-http 0.4.4", - "tracing", - "tracing-subscriber", - "unindent", - "util", - "uuid", - "workspace", -] - [[package]] name = "collab_ui" version = "0.1.0" @@ -2357,12 +1531,6 @@ version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3d7b894f5411737b7867f4827955924d7c254fc9f4d91a6aad6b097804b1018b" -[[package]] -name = "colorchoice" -version = "1.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "acbf1af155f9b9ef647e42cdc158db4b64a1b61f743629225fde6f3e0be2a7c7" - [[package]] name = "combine" version = "4.6.6" @@ -2418,31 +1586,12 @@ dependencies = [ "crossbeam-utils", ] -[[package]] -name = "console" -version = "0.15.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c926e00cc70edefdc64d3a5ff31cc65bb97a3460097762bd23afb4d8145fccf8" -dependencies = [ - "encode_unicode", - "lazy_static", - "libc", - "unicode-width", - "windows-sys 0.45.0", -] - [[package]] name = "const-cstr" version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ed3d0b5ff30645a68f35ece8cea4556ca14ef8a1651455f789a099a0513532a6" -[[package]] -name = "const-oid" -version = "0.9.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "28c122c3980598d243d63d9a704629a2d748d101f278052ff068be5a4423ab6f" - [[package]] name = "convert_case" version = "0.4.0" @@ -2774,30 +1923,6 @@ dependencies = [ "wasmtime-types", ] -[[package]] -name = "crc" -version = "3.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "86ec7a15cbe22e59248fc7eadb1907dab5ba09372595da4d73dd805ed4417dfe" -dependencies = [ - "crc-catalog", -] - -[[package]] -name = "crc-catalog" -version = "2.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9cace84e55f07e7301bae1c519df89cdad8cc3cd868413d3fdbdeca9ff3db484" - -[[package]] -name = "crc32c" -version = "0.6.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "89254598aa9b9fa608de44b3ae54c810f0f06d755e24c50177f1f8f31ff50ce2" -dependencies = [ - "rustc_version", -] - [[package]] name = "crc32fast" version = "1.3.2" @@ -2860,28 +1985,6 @@ dependencies = [ "cfg-if 1.0.0", ] -[[package]] -name = "crypto-bigint" -version = "0.4.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ef2b4b23cddf68b89b8f8069890e8c270d54e2d5fe1b143820234805e4cb17ef" -dependencies = [ - "generic-array", - "rand_core 0.6.4", - "subtle", - "zeroize", -] - -[[package]] -name = "crypto-bigint" -version = "0.5.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0dc92fb57ca44df6db8059111ab3af99a63d5d0f8375d9972e319a379c6bab76" -dependencies = [ - "rand_core 0.6.4", - "subtle", -] - [[package]] name = "crypto-common" version = "0.1.6" @@ -2893,16 +1996,6 @@ dependencies = [ "typenum", ] -[[package]] -name = "crypto-mac" -version = "0.11.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "25fab6889090c8133f3deb8f73ba3c65a7f456f66436fc012a1b1e272b1e103e" -dependencies = [ - "generic-array", - "subtle", -] - [[package]] name = "ctor" version = "0.2.6" @@ -2913,16 +2006,6 @@ dependencies = [ "syn 2.0.48", ] -[[package]] -name = "ctrlc" -version = "3.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b467862cc8610ca6fc9a1532d7777cee0804e678ab45410897b9396495994a0b" -dependencies = [ - "nix 0.27.1", - "windows-sys 0.52.0", -] - [[package]] name = "curl" version = "0.4.44" @@ -2959,31 +2042,12 @@ version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "96a6ac251f4a2aca6b3f91340350eab87ae57c3f127ffeb585e92bd336717991" -[[package]] -name = "dashmap" -version = "5.5.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "978747c1d849a7d2ee5e8adc0159961c48fb7e5db2f06af6723b80123bb53856" -dependencies = [ - "cfg-if 1.0.0", - "hashbrown 0.14.0", - "lock_api", - "once_cell", - "parking_lot_core 0.9.8", -] - [[package]] name = "dasp_sample" version = "0.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0c87e182de0887fd5361989c677c4e8f5000cd9491d6d563161a8f3a5519fc7f" -[[package]] -name = "data-encoding" -version = "2.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7e962a19be5cfc3f3bf6dd8f61eb50107f356ad6270fbb3ed41476571db78be5" - [[package]] name = "data-url" version = "0.1.1" @@ -3020,27 +2084,6 @@ dependencies = [ "byteorder", ] -[[package]] -name = "der" -version = "0.6.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f1a467a65c5e759bce6e65eaf91cc29f466cdc57cb65777bd646872a8a1fd4de" -dependencies = [ - "const-oid", - "zeroize", -] - -[[package]] -name = "der" -version = "0.7.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fffa369a668c8af7dbf8b5e56c9f744fbd399949ed171606040001947de40b1c" -dependencies = [ - "const-oid", - "pem-rfc7468", - "zeroize", -] - [[package]] name = "deranged" version = "0.3.8" @@ -3108,20 +2151,6 @@ dependencies = [ "workspace", ] -[[package]] -name = "dialoguer" -version = "0.11.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "658bce805d770f407bc62102fca7c2c64ceef2fbcb2b8bd19d2765ce093980de" -dependencies = [ - "console", - "fuzzy-matcher", - "shell-words", - "tempfile", - "thiserror", - "zeroize", -] - [[package]] name = "diff" version = "0.1.13" @@ -3144,7 +2173,6 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292" dependencies = [ "block-buffer 0.10.4", - "const-oid", "crypto-common", "subtle", ] @@ -3208,12 +2236,6 @@ dependencies = [ "libloading 0.8.0", ] -[[package]] -name = "dotenvy" -version = "0.15.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1aaf95b3e5c8f23aa320147307562d361db0ae0d51242340f558153b4eb2439b" - [[package]] name = "downcast-rs" version = "1.2.0" @@ -3238,18 +2260,6 @@ version = "1.0.14" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "23d2f3407d9a573d666de4b5bdf10569d73ca9478087346697dcbae6244bfbcd" -[[package]] -name = "ecdsa" -version = "0.14.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "413301934810f597c1d19ca71c8710e99a3f1ba28a0d2ebc01551a2daeea3c5c" -dependencies = [ - "der 0.6.1", - "elliptic-curve", - "rfc6979", - "signature 1.6.4", -] - [[package]] name = "editor" version = "0.1.0" @@ -3277,7 +2287,7 @@ dependencies = [ "log", "lsp", "multi_buffer", - "ordered-float 2.10.0", + "ordered-float", "parking_lot 0.11.2", "project", "rand 0.8.5", @@ -3308,29 +2318,6 @@ name = "either" version = "1.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a26ae43d7bcc3b814de94796a5e736d4029efb0ee900c12e2d54c993ad1a1e07" -dependencies = [ - "serde", -] - -[[package]] -name = "elliptic-curve" -version = "0.12.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e7bb888ab5300a19b8e5bceef25ac745ad065f3c9f7efc6de1b91958110891d3" -dependencies = [ - "base16ct", - "crypto-bigint 0.4.9", - "der 0.6.1", - "digest 0.10.7", - "ff", - "generic-array", - "group", - "pkcs8 0.9.0", - "rand_core 0.6.4", - "sec1", - "subtle", - "zeroize", -] [[package]] name = "emojis" @@ -3341,12 +2328,6 @@ dependencies = [ "phf", ] -[[package]] -name = "encode_unicode" -version = "0.3.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a357d28ed41a50f9c765dbfe56cbc04a64e53e5fc58ba79fbc34c10ef3df831f" - [[package]] name = "encoding_rs" version = "0.8.33" @@ -3396,15 +2377,6 @@ dependencies = [ "termcolor", ] -[[package]] -name = "envy" -version = "0.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3f47e0157f2cb54f5ae1bd371b30a2ae4311e1c028f575cd4e81de7353215965" -dependencies = [ - "serde", -] - [[package]] name = "equivalent" version = "1.0.1" @@ -3440,17 +2412,6 @@ dependencies = [ "svg_fmt", ] -[[package]] -name = "etcetera" -version = "0.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "136d1b5283a1ab77bd9257427ffd09d8667ced0570b6f938942bc7568ed5b943" -dependencies = [ - "cfg-if 1.0.0", - "home", - "windows-sys 0.48.0", -] - [[package]] name = "euclid" version = "0.22.9" @@ -3540,7 +2501,7 @@ dependencies = [ "wasmparser", "wasmtime", "wasmtime-wasi", - "wit-component 0.20.3", + "wit-component", ] [[package]] @@ -3658,16 +2619,6 @@ dependencies = [ "workspace", ] -[[package]] -name = "ff" -version = "0.12.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d013fc25338cc558c5c2cfbad646908fb23591e2404481826742b651c9af7160" -dependencies = [ - "rand_core 0.6.4", - "subtle", -] - [[package]] name = "file_finder" version = "0.1.0" @@ -3704,12 +2655,6 @@ dependencies = [ "windows-sys 0.48.0", ] -[[package]] -name = "finl_unicode" -version = "1.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8fcfdc7a0362c9f4444381a9e697c79d435fe65b52a37466fc2c1184cee9edc6" - [[package]] name = "fixedbitset" version = "0.4.2" @@ -3977,12 +2922,6 @@ version = "0.3.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3dcaa9ae7725d12cdb85b3ad99a434db70b468c09ded17e012d86b5c1010f7a7" -[[package]] -name = "funty" -version = "2.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e6d5a32815ae3f33302d95fdcb2ce17862f8c65363dcfd29360480ba1001fc9c" - [[package]] name = "futf" version = "0.1.5" @@ -4041,17 +2980,6 @@ dependencies = [ "futures-util", ] -[[package]] -name = "futures-intrusive" -version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1d930c203dd0b6ff06e0201a4a2fe9149b43c684fd4420555b26d21b1a02956f" -dependencies = [ - "futures-core", - "lock_api", - "parking_lot 0.12.1", -] - [[package]] name = "futures-io" version = "0.3.30" @@ -4137,15 +3065,6 @@ dependencies = [ "util", ] -[[package]] -name = "fuzzy-matcher" -version = "0.3.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "54614a3312934d066701a80f20f15fa3b56d67ac7722b39eea5b4c9dd1d66c94" -dependencies = [ - "thread_local", -] - [[package]] name = "generic-array" version = "0.14.7" @@ -4254,7 +3173,7 @@ dependencies = [ "bstr", "log", "regex-automata 0.4.5", - "regex-syntax 0.8.2", + "regex-syntax", ] [[package]] @@ -4427,17 +3346,6 @@ version = "0.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1df00eed8d1f0db937f6be10e46e8072b0671accb504cf0f959c5c52c679f5b9" -[[package]] -name = "group" -version = "0.12.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5dfbfb3a6cfbd390d5c9564ab283a0349b9b9fcd46a706c1eb10e0db70bfbac7" -dependencies = [ - "ff", - "rand_core 0.6.4", - "subtle", -] - [[package]] name = "h2" version = "0.3.21" @@ -4449,7 +3357,7 @@ dependencies = [ "futures-core", "futures-sink", "futures-util", - "http 0.2.9", + "http", "indexmap 1.9.3", "slab", "tokio", @@ -4462,9 +3370,6 @@ name = "hashbrown" version = "0.12.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888" -dependencies = [ - "ahash 0.7.6", -] [[package]] name = "hashbrown" @@ -4472,7 +3377,7 @@ version = "0.13.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "43a3c133739dddd0d2990f9a4bdf8eb4b21ef50e4851ca85ab661199821d510e" dependencies = [ - "ahash 0.8.8", + "ahash", ] [[package]] @@ -4481,7 +3386,7 @@ version = "0.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2c6201b9ff9fd90a5a3bac2e56a830d0caa509576f0e503818ee82c181b3437a" dependencies = [ - "ahash 0.8.8", + "ahash", "allocator-api2", ] @@ -4494,30 +3399,6 @@ dependencies = [ "hashbrown 0.14.0", ] -[[package]] -name = "headers" -version = "0.3.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "06683b93020a07e3dbcf5f8c0f6d40080d725bea7936fc01ad345c01b97dc270" -dependencies = [ - "base64 0.21.4", - "bytes 1.5.0", - "headers-core", - "http 0.2.9", - "httpdate", - "mime", - "sha1", -] - -[[package]] -name = "headers-core" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e7f66481bfee273957b1f20485a4ff3362987f85b2c236580d81b4eb7a326429" -dependencies = [ - "http 0.2.9", -] - [[package]] name = "heck" version = "0.3.3" @@ -4532,9 +3413,6 @@ name = "heck" version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8" -dependencies = [ - "unicode-segmentation", -] [[package]] name = "hermit-abi" @@ -4580,17 +3458,7 @@ version = "0.12.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "791a029f6b9fc27657f6f188ec6e5e43f6911f6f878e0dc5501396e09809d437" dependencies = [ - "hmac 0.12.1", -] - -[[package]] -name = "hmac" -version = "0.11.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2a2a2320eb7ec0ebe8da8f744d7812d9fc4cb4d09344ac01898dbcb6a20ae69b" -dependencies = [ - "crypto-mac", - "digest 0.9.0", + "hmac", ] [[package]] @@ -4628,17 +3496,6 @@ dependencies = [ "itoa", ] -[[package]] -name = "http" -version = "1.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b32afd38673a8016f7c9ae69e5af41a58f81b1d31689040f2f1959594ce194ea" -dependencies = [ - "bytes 1.5.0", - "fnv", - "itoa", -] - [[package]] name = "http-body" version = "0.4.5" @@ -4646,16 +3503,10 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d5f38f16d184e36f2408a55281cd658ecbd3ca05cce6d6510a176eca393e26d1" dependencies = [ "bytes 1.5.0", - "http 0.2.9", + "http", "pin-project-lite", ] -[[package]] -name = "http-range-header" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "add0ab9360ddbd88cfeb3bd9574a1d85cfdfa14db10b3e21d3700dbc4328758f" - [[package]] name = "httparse" version = "1.8.0" @@ -4691,7 +3542,7 @@ dependencies = [ "futures-core", "futures-util", "h2", - "http 0.2.9", + "http", "http-body", "httparse", "httpdate", @@ -4704,22 +3555,6 @@ dependencies = [ "want", ] -[[package]] -name = "hyper-rustls" -version = "0.24.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ec3efd23720e2049821a693cbc7e65ea87c72f1c58ff2f9522ff332b1491e590" -dependencies = [ - "futures-util", - "http 0.2.9", - "hyper", - "log", - "rustls", - "rustls-native-certs", - "tokio", - "tokio-rustls", -] - [[package]] name = "hyper-tls" version = "0.5.0" @@ -4835,17 +3670,6 @@ version = "1.0.9" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bfa799dd5ed20a7e349f3b4639aa80d74549c81716d9ec4f994c9b5815598306" -[[package]] -name = "inherent" -version = "1.0.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ce243b1bfa62ffc028f1cc3b6034ec63d649f3031bc8a4fbbb004e1ac17d1f68" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.48", -] - [[package]] name = "inotify" version = "0.9.6" @@ -4989,7 +3813,7 @@ dependencies = [ "encoding_rs", "event-listener 2.5.3", "futures-lite 1.13.0", - "http 0.2.9", + "http", "log", "mime", "once_cell", @@ -5103,10 +3927,10 @@ dependencies = [ "base64 0.13.1", "crypto-common", "digest 0.10.7", - "hmac 0.12.1", + "hmac", "serde", "serde_json", - "sha2 0.10.7", + "sha2", ] [[package]] @@ -5511,7 +4335,7 @@ dependencies = [ "postage", "serde", "serde_json", - "sha2 0.10.7", + "sha2", "simplelog", ] @@ -5521,7 +4345,7 @@ version = "0.1.0" dependencies = [ "anyhow", "async-trait", - "hmac 0.12.1", + "hmac", "jwt", "log", "prost 0.8.0", @@ -5529,7 +4353,7 @@ dependencies = [ "prost-types 0.8.0", "reqwest", "serde", - "sha2 0.10.7", + "sha2", ] [[package]] @@ -5586,26 +4410,6 @@ dependencies = [ "url", ] -[[package]] -name = "lz4" -version = "1.24.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7e9e2dd86df36ce760a60f6ff6ad526f7ba1f14ba0356f8254fb6905e6494df1" -dependencies = [ - "libc", - "lz4-sys", -] - -[[package]] -name = "lz4-sys" -version = "1.9.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "57d27b317e207b10f69f5e75494119e391a96f48861ae870d1da6edac98ca900" -dependencies = [ - "cc", - "libc", -] - [[package]] name = "mac" version = "0.1.1" @@ -5653,27 +4457,12 @@ dependencies = [ "workspace", ] -[[package]] -name = "matchers" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8263075bb86c5a1b1427b5ae862e8889656f126e9f77c484496e8b47cf5c5558" -dependencies = [ - "regex-automata 0.1.10", -] - [[package]] name = "matches" version = "0.1.10" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2532096657941c2fea9c289d370a250971c689d4f143798ff67113ec042024a5" -[[package]] -name = "matchit" -version = "0.7.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0e7465ac9959cc2b1404e8e2367b43684a6d13790fe23056cc8c6c5a6b7bcb94" - [[package]] name = "matrixmultiply" version = "0.3.8" @@ -5690,15 +4479,6 @@ version = "0.3.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4facc753ae494aeb6e3c22f839b158aebd4f9270f55cd3c79906c45476c47ab4" -[[package]] -name = "md-5" -version = "0.10.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6365506850d44bff6e2fbcb5176cf63650e48bd45ef2fe2665ae1570e0f4b9ca" -dependencies = [ - "digest 0.10.7", -] - [[package]] name = "media" version = "0.1.0" @@ -6149,16 +4929,6 @@ dependencies = [ "winapi 0.3.9", ] -[[package]] -name = "nu-ansi-term" -version = "0.46.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "77a8165726e8236064dbb45459242600304b42a5ea24ee2948e18e023bf7ba84" -dependencies = [ - "overload", - "winapi 0.3.9", -] - [[package]] name = "num" version = "0.2.1" @@ -6478,18 +5248,18 @@ dependencies = [ "async-lock 3.3.0", "blocking", "cbc", - "cipher 0.4.4", + "cipher", "digest 0.10.7", "futures-lite 2.2.0", "futures-util", "hkdf", - "hmac 0.12.1", + "hmac", "num 0.4.1", "num-bigint-dig 0.8.4", - "pbkdf2 0.12.2", + "pbkdf2", "rand 0.8.5", "serde", - "sha2 0.10.7", + "sha2", "zbus 4.0.1", "zeroize", "zvariant 4.0.2", @@ -6565,15 +5335,6 @@ dependencies = [ "num-traits", ] -[[package]] -name = "ordered-float" -version = "3.9.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2a54938017eacd63036332b4ae5c8a49fc8c0c1d6d629893057e4f13609edd06" -dependencies = [ - "num-traits", -] - [[package]] name = "ordered-stream" version = "0.2.0" @@ -6590,30 +5351,6 @@ version = "6.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4d5d9eb14b174ee9aa2ef96dc2b94637a2d4b6e7cb873c7e171f0c20c6cf3eac" -[[package]] -name = "ouroboros" -version = "0.17.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e2ba07320d39dfea882faa70554b4bd342a5f273ed59ba7c1c6b4c840492c954" -dependencies = [ - "aliasable", - "ouroboros_macro", - "static_assertions", -] - -[[package]] -name = "ouroboros_macro" -version = "0.17.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ec4c6225c69b4ca778c0aea097321a64c421cf4577b331c61b229267edabb6f8" -dependencies = [ - "heck 0.4.1", - "proc-macro-error", - "proc-macro2", - "quote", - "syn 2.0.48", -] - [[package]] name = "outline" version = "0.1.0" @@ -6624,7 +5361,7 @@ dependencies = [ "indoc", "language", "menu", - "ordered-float 2.10.0", + "ordered-float", "picker", "project", "rope", @@ -6639,29 +5376,6 @@ dependencies = [ "workspace", ] -[[package]] -name = "outref" -version = "0.5.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4030760ffd992bef45b0ae3f10ce1aba99e33464c90d14dd7c039884963ddc7a" - -[[package]] -name = "overload" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b15813163c1d831bf4a13c3610c05c0d03b39feb07f7e09fa234dac9b15aaf39" - -[[package]] -name = "p256" -version = "0.11.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "51f44edd08f51e2ade572f141051021c5af22677e42b7dd28a88155151c33594" -dependencies = [ - "ecdsa", - "elliptic-curve", - "sha2 0.10.7", -] - [[package]] name = "palette" version = "0.7.5" @@ -6763,17 +5477,6 @@ dependencies = [ "regex", ] -[[package]] -name = "password-hash" -version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c1a5d4e9c205d2c1ae73b84aab6240e98218c0e72e63b50422cfb2d1ca952282" -dependencies = [ - "base64ct", - "rand_core 0.6.4", - "subtle", -] - [[package]] name = "paste" version = "1.0.14" @@ -6804,15 +5507,6 @@ dependencies = [ "rustc_version", ] -[[package]] -name = "pbkdf2" -version = "0.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d95f5254224e617595d2cc3cc73ff0a5eaf2637519e25f03388154e9378b6ffa" -dependencies = [ - "crypto-mac", -] - [[package]] name = "pbkdf2" version = "0.12.2" @@ -6820,7 +5514,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f8ed6a7761f76e3b9f92dfb0a60a6a6477c61024b775147ff0973a02653abaf2" dependencies = [ "digest 0.10.7", - "hmac 0.12.1", + "hmac", ] [[package]] @@ -6840,15 +5534,6 @@ dependencies = [ "regex", ] -[[package]] -name = "pem-rfc7468" -version = "0.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "88b39c9bfcfc231068454382784bb460aae594343fb030d46e9f50a645418412" -dependencies = [ - "base64ct", -] - [[package]] name = "percent-encoding" version = "2.3.0" @@ -6947,37 +5632,6 @@ dependencies = [ "futures-io", ] -[[package]] -name = "pkcs1" -version = "0.7.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c8ffb9f10fa047879315e6625af03c164b16962a5368d724ed16323b68ace47f" -dependencies = [ - "der 0.7.8", - "pkcs8 0.10.2", - "spki 0.7.2", -] - -[[package]] -name = "pkcs8" -version = "0.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9eca2c590a5f85da82668fa685c09ce2888b9430e83299debf1f34b65fd4a4ba" -dependencies = [ - "der 0.6.1", - "spki 0.6.0", -] - -[[package]] -name = "pkcs8" -version = "0.10.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f950b2377845cebe5cf8b5165cb3cc1a5e0fa5cfa3e1f7f55707d8fd82e0a7b7" -dependencies = [ - "der 0.7.8", - "spki 0.7.2", -] - [[package]] name = "pkg-config" version = "0.3.27" @@ -7107,15 +5761,6 @@ dependencies = [ "syn 2.0.48", ] -[[package]] -name = "proc-macro-crate" -version = "0.1.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1d6ea3c4595b96363c13943497db34af4460fb474a95c43f4446ad341b8c9785" -dependencies = [ - "toml 0.5.11", -] - [[package]] name = "proc-macro-crate" version = "1.3.1" @@ -7233,7 +5878,7 @@ dependencies = [ "serde", "serde_json", "settings", - "sha2 0.10.7", + "sha2", "similar", "smol", "task", @@ -7316,7 +5961,7 @@ dependencies = [ "gpui", "language", "lsp", - "ordered-float 2.10.0", + "ordered-float", "picker", "project", "release_channel", @@ -7327,21 +5972,6 @@ dependencies = [ "workspace", ] -[[package]] -name = "prometheus" -version = "0.13.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "449811d15fbdf5ceb5c1144416066429cf82316e2ec8ce0c1f6f8a02e7bbcf8c" -dependencies = [ - "cfg-if 1.0.0", - "fnv", - "lazy_static", - "memchr", - "parking_lot 0.12.1", - "protobuf", - "thiserror", -] - [[package]] name = "prost" version = "0.8.0" @@ -7428,12 +6058,6 @@ dependencies = [ "prost 0.9.0", ] -[[package]] -name = "protobuf" -version = "2.28.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "106dd99e98437432fed6519dedecfade6a06a73bb7b2a1e019fdd2bee5778d94" - [[package]] name = "psm" version = "0.1.21" @@ -7443,26 +6067,6 @@ dependencies = [ "cc", ] -[[package]] -name = "ptr_meta" -version = "0.1.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0738ccf7ea06b608c10564b31debd4f5bc5e197fc8bfe088f68ae5ce81e7a4f1" -dependencies = [ - "ptr_meta_derive", -] - -[[package]] -name = "ptr_meta_derive" -version = "0.1.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "16b845dbfca988fa33db069c0e230574d15a3088f147a87b64c7589eb662c9ac" -dependencies = [ - "proc-macro2", - "quote", - "syn 1.0.109", -] - [[package]] name = "pulldown-cmark" version = "0.10.0" @@ -7514,12 +6118,6 @@ dependencies = [ "proc-macro2", ] -[[package]] -name = "radium" -version = "0.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dc33ff2d4973d518d823d61aa239014831e521c75da58e3df4840d3f47749d09" - [[package]] name = "rand" version = "0.7.3" @@ -7671,7 +6269,7 @@ dependencies = [ "gpui", "language", "menu", - "ordered-float 2.10.0", + "ordered-float", "picker", "project", "serde", @@ -7749,16 +6347,7 @@ dependencies = [ "aho-corasick", "memchr", "regex-automata 0.4.5", - "regex-syntax 0.8.2", -] - -[[package]] -name = "regex-automata" -version = "0.1.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6c230d73fb8d8c1b9c0b3135c5142a8acee3a0558fb8db5cf1cb65f8d7862132" -dependencies = [ - "regex-syntax 0.6.29", + "regex-syntax", ] [[package]] @@ -7775,21 +6364,9 @@ checksum = "5bb987efffd3c6d0d8f5f89510bb458559eab11e4f869acb20bf845e016259cd" dependencies = [ "aho-corasick", "memchr", - "regex-syntax 0.8.2", + "regex-syntax", ] -[[package]] -name = "regex-lite" -version = "0.1.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "30b661b2f27137bdbc16f00eda72866a92bb28af1753ffbd56744fb6e2e9cd8e" - -[[package]] -name = "regex-syntax" -version = "0.6.29" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f162c6dd7b008981e4d40210aca20b4bd0f9b60ca9271061b07f78537722f2e1" - [[package]] name = "regex-syntax" version = "0.8.2" @@ -7804,15 +6381,6 @@ dependencies = [ "once_cell", ] -[[package]] -name = "rend" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "581008d2099240d37fb08d77ad713bcaec2c4d89d50b5b21a8bb1996bbab68ab" -dependencies = [ - "bytecheck", -] - [[package]] name = "reqwest" version = "0.11.20" @@ -7825,7 +6393,7 @@ dependencies = [ "futures-core", "futures-util", "h2", - "http 0.2.9", + "http", "http-body", "hyper", "hyper-tls", @@ -7866,17 +6434,6 @@ dependencies = [ "usvg", ] -[[package]] -name = "rfc6979" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7743f17af12fa0b03b803ba12cd6a8d9483a587e89c69445e3909655c0b9fabb" -dependencies = [ - "crypto-bigint 0.4.9", - "hmac 0.12.1", - "zeroize", -] - [[package]] name = "rgb" version = "0.8.36" @@ -7900,63 +6457,6 @@ dependencies = [ "util", ] -[[package]] -name = "ring" -version = "0.16.20" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3053cf52e236a3ed746dfc745aa9cacf1b791d846bdaf412f60a8d7d6e17c8fc" -dependencies = [ - "cc", - "libc", - "once_cell", - "spin 0.5.2", - "untrusted 0.7.1", - "web-sys", - "winapi 0.3.9", -] - -[[package]] -name = "ring" -version = "0.17.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "688c63d65483050968b2a8937f7995f443e27041a0f7700aa59b0822aedebb74" -dependencies = [ - "cc", - "getrandom 0.2.10", - "libc", - "spin 0.9.8", - "untrusted 0.9.0", - "windows-sys 0.48.0", -] - -[[package]] -name = "rkyv" -version = "0.7.42" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0200c8230b013893c0b2d6213d6ec64ed2b9be2e0e016682b7224ff82cff5c58" -dependencies = [ - "bitvec", - "bytecheck", - "hashbrown 0.12.3", - "ptr_meta", - "rend", - "rkyv_derive", - "seahash", - "tinyvec", - "uuid", -] - -[[package]] -name = "rkyv_derive" -version = "0.7.42" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b2e06b915b5c230a17d7a736d1e2e63ee753c256a8614ef3f5147b13a4f5541d" -dependencies = [ - "proc-macro2", - "quote", - "syn 1.0.109", -] - [[package]] name = "rmp" version = "0.8.12" @@ -8032,7 +6532,7 @@ dependencies = [ "prost 0.8.0", "prost-build", "rand 0.8.5", - "rsa 0.4.0", + "rsa", "serde", "serde_json", "strum", @@ -8061,28 +6561,6 @@ dependencies = [ "zeroize", ] -[[package]] -name = "rsa" -version = "0.9.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6ab43bb47d23c1a631b4b680199a45255dce26fa9ab2fa902581f624ff13e6a8" -dependencies = [ - "byteorder", - "const-oid", - "digest 0.10.7", - "num-bigint-dig 0.8.4", - "num-integer", - "num-iter", - "num-traits", - "pkcs1", - "pkcs8 0.10.2", - "rand_core 0.6.4", - "signature 2.1.0", - "spki 0.7.2", - "subtle", - "zeroize", -] - [[package]] name = "rusqlite" version = "0.29.0" @@ -8128,26 +6606,10 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8cb0a25bfbb2d4b4402179c2cf030387d9990857ce08a32592c6238db9fa8665" dependencies = [ "globset", - "sha2 0.10.7", + "sha2", "walkdir", ] -[[package]] -name = "rust_decimal" -version = "1.32.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a4c4216490d5a413bc6d10fa4742bd7d4955941d062c0ef873141d6b0e7b30fd" -dependencies = [ - "arrayvec 0.7.4", - "borsh", - "bytes 1.5.0", - "num-traits", - "rand 0.8.5", - "rkyv", - "serde", - "serde_json", -] - [[package]] name = "rustc-demangle" version = "0.1.23" @@ -8209,49 +6671,6 @@ dependencies = [ "rustix 0.38.30", ] -[[package]] -name = "rustls" -version = "0.21.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f9d5a6813c0759e4609cd494e8e725babae6a2ca7b62a5536a13daaec6fcb7ba" -dependencies = [ - "log", - "ring 0.17.7", - "rustls-webpki", - "sct", -] - -[[package]] -name = "rustls-native-certs" -version = "0.6.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a9aace74cb666635c918e9c12bc0d348266037aa8eb599b5cba565709a8dff00" -dependencies = [ - "openssl-probe", - "rustls-pemfile", - "schannel", - "security-framework", -] - -[[package]] -name = "rustls-pemfile" -version = "1.0.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2d3987094b1d07b653b7dfdc3f70ce9a1da9c51ac18c1b06b662e4f9a0e9f4b2" -dependencies = [ - "base64 0.21.4", -] - -[[package]] -name = "rustls-webpki" -version = "0.101.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8b6275d1ee7a1cd780b64aca7726599a1dbc893b1e64144529e55c3c2f745765" -dependencies = [ - "ring 0.17.7", - "untrusted 0.9.0", -] - [[package]] name = "rustversion" version = "1.0.14" @@ -8312,15 +6731,6 @@ version = "0.3.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ef703b7cb59335eae2eb93ceb664c0eb7ea6bf567079d843e09420219668e072" -[[package]] -name = "salsa20" -version = "0.8.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ecbd2eb639fd7cab5804a0837fe373cc2172d15437e804c054a9fb885cb923b0" -dependencies = [ - "cipher 0.3.0", -] - [[package]] name = "same-file" version = "1.0.6" @@ -8382,136 +6792,12 @@ version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49" -[[package]] -name = "scrypt" -version = "0.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "879588d8f90906e73302547e20fffefdd240eb3e0e744e142321f5d49dea0518" -dependencies = [ - "base64ct", - "hmac 0.11.0", - "password-hash", - "pbkdf2 0.8.0", - "salsa20", - "sha2 0.9.9", -] - -[[package]] -name = "sct" -version = "0.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d53dcdb7c9f8158937a7981b48accfd39a43af418591a5d008c7b22b5e1b7ca4" -dependencies = [ - "ring 0.16.20", - "untrusted 0.7.1", -] - -[[package]] -name = "sea-bae" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3bd3534a9978d0aa7edd2808dc1f8f31c4d0ecd31ddf71d997b3c98e9f3c9114" -dependencies = [ - "heck 0.4.1", - "proc-macro-error", - "proc-macro2", - "quote", - "syn 2.0.48", -] - -[[package]] -name = "sea-orm" -version = "0.12.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "da5b2d70c255bc5cbe1d49f69c3c8eadae0fbbaeb18ee978edbf2f75775cb94d" -dependencies = [ - "async-stream", - "async-trait", - "bigdecimal", - "chrono", - "futures 0.3.28", - "log", - "ouroboros", - "rust_decimal", - "sea-orm-macros", - "sea-query", - "sea-query-binder", - "serde", - "serde_json", - "sqlx", - "strum", - "thiserror", - "time", - "tracing", - "url", - "uuid", -] - -[[package]] -name = "sea-orm-macros" -version = "0.12.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d7c8d455fad40194fb9774fdc4810c0f2700ff0dc0e93bd5ce9d641cc3f5dd75" -dependencies = [ - "heck 0.4.1", - "proc-macro2", - "quote", - "sea-bae", - "syn 2.0.48", - "unicode-ident", -] - -[[package]] -name = "sea-query" -version = "0.30.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fb3e6bba153bb198646c8762c48414942a38db27d142e44735a133cabddcc820" -dependencies = [ - "bigdecimal", - "chrono", - "derivative", - "inherent", - "ordered-float 3.9.1", - "rust_decimal", - "serde_json", - "time", - "uuid", -] - -[[package]] -name = "sea-query-binder" -version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "36bbb68df92e820e4d5aeb17b4acd5cc8b5d18b2c36a4dd6f4626aabfa7ab1b9" -dependencies = [ - "bigdecimal", - "chrono", - "rust_decimal", - "sea-query", - "serde_json", - "sqlx", - "time", - "uuid", -] - [[package]] name = "seahash" version = "4.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1c107b6f4780854c8b126e228ea8869f4d7b71260f962fefb57b996b8959ba6b" -[[package]] -name = "sealed" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6b5e421024b5e5edfbaa8e60ecf90bda9dbffc602dbb230e6028763f85f0c68c" -dependencies = [ - "heck 0.3.3", - "proc-macro2", - "quote", - "syn 1.0.109", -] - [[package]] name = "search" version = "0.1.0" @@ -8539,20 +6825,6 @@ dependencies = [ "workspace", ] -[[package]] -name = "sec1" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3be24c1842290c45df0a7bf069e0c268a747ad05a192f2fd7dcfdbc1cba40928" -dependencies = [ - "base16ct", - "der 0.6.1", - "generic-array", - "pkcs8 0.9.0", - "subtle", - "zeroize", -] - [[package]] name = "security-framework" version = "2.9.2" @@ -8597,7 +6869,7 @@ dependencies = [ "lazy_static", "log", "ndarray", - "ordered-float 2.10.0", + "ordered-float", "parking_lot 0.11.2", "postage", "pretty_assertions", @@ -8704,16 +6976,6 @@ dependencies = [ "serde", ] -[[package]] -name = "serde_path_to_error" -version = "0.1.15" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ebd154a240de39fdebcf5775d2675c204d7c13cf39a4c697be6493c8e734337c" -dependencies = [ - "itoa", - "serde", -] - [[package]] name = "serde_repr" version = "0.1.16" @@ -8796,19 +7058,6 @@ dependencies = [ "digest 0.10.7", ] -[[package]] -name = "sha2" -version = "0.9.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4d58a1e1bf39749807d89cf2d98ac2dfa0ff1cb3faa38fbb64dd88ac8013d800" -dependencies = [ - "block-buffer 0.9.0", - "cfg-if 1.0.0", - "cpufeatures", - "digest 0.9.0", - "opaque-debug", -] - [[package]] name = "sha2" version = "0.10.7" @@ -8820,21 +7069,6 @@ dependencies = [ "digest 0.10.7", ] -[[package]] -name = "sharded-slab" -version = "0.1.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "900fba806f70c630b0a382d0d825e17a0f19fcd059a2ade1ff237bcddf446b31" -dependencies = [ - "lazy_static", -] - -[[package]] -name = "shell-words" -version = "1.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "24188a676b6ae68c3b2cb3a01be17fbf7240ce009799bb56d5b1409051e78fde" - [[package]] name = "shellexpand" version = "2.1.2" @@ -8869,32 +7103,6 @@ dependencies = [ "libc", ] -[[package]] -name = "signature" -version = "1.6.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "74233d3b3b2f6d4b006dc19dee745e73e2a6bfb6f93607cd3b02bd5b00797d7c" -dependencies = [ - "digest 0.10.7", - "rand_core 0.6.4", -] - -[[package]] -name = "signature" -version = "2.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5e1788eed21689f9cf370582dfc467ef36ed9c707f073528ddafa8d83e3b8500" -dependencies = [ - "digest 0.10.7", - "rand_core 0.6.4", -] - -[[package]] -name = "simdutf8" -version = "0.1.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f27f6278552951f1f2b8cf9da965d10969b2efdea95a6ec47987ab46edfe263a" - [[package]] name = "similar" version = "1.3.0" @@ -9101,26 +7309,6 @@ dependencies = [ "num-traits", ] -[[package]] -name = "spki" -version = "0.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "67cf02bbac7a337dc36e4f5a693db6c21e7863f45070f7064577eb4367a3212b" -dependencies = [ - "base64ct", - "der 0.6.1", -] - -[[package]] -name = "spki" -version = "0.7.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9d1e996ef02c474957d681f1b05213dfb0abab947b446a62d37770b23500184a" -dependencies = [ - "base64ct", - "der 0.7.8", -] - [[package]] name = "sptr" version = "0.3.2" @@ -9165,223 +7353,6 @@ dependencies = [ "unicode_categories", ] -[[package]] -name = "sqlx" -version = "0.7.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0e50c216e3624ec8e7ecd14c6a6a6370aad6ee5d8cfc3ab30b5162eeeef2ed33" -dependencies = [ - "sqlx-core", - "sqlx-macros", - "sqlx-mysql", - "sqlx-postgres", - "sqlx-sqlite", -] - -[[package]] -name = "sqlx-core" -version = "0.7.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8d6753e460c998bbd4cd8c6f0ed9a64346fcca0723d6e75e52fdc351c5d2169d" -dependencies = [ - "ahash 0.8.8", - "atoi", - "bigdecimal", - "byteorder", - "bytes 1.5.0", - "chrono", - "crc", - "crossbeam-queue", - "dotenvy", - "either", - "event-listener 2.5.3", - "futures-channel", - "futures-core", - "futures-intrusive", - "futures-io", - "futures-util", - "hashlink", - "hex", - "indexmap 2.0.0", - "log", - "memchr", - "once_cell", - "paste", - "percent-encoding", - "rust_decimal", - "rustls", - "rustls-pemfile", - "serde", - "serde_json", - "sha2 0.10.7", - "smallvec", - "sqlformat", - "thiserror", - "time", - "tokio", - "tokio-stream", - "tracing", - "url", - "uuid", - "webpki-roots", -] - -[[package]] -name = "sqlx-macros" -version = "0.7.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9a793bb3ba331ec8359c1853bd39eed32cdd7baaf22c35ccf5c92a7e8d1189ec" -dependencies = [ - "proc-macro2", - "quote", - "sqlx-core", - "sqlx-macros-core", - "syn 1.0.109", -] - -[[package]] -name = "sqlx-macros-core" -version = "0.7.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0a4ee1e104e00dedb6aa5ffdd1343107b0a4702e862a84320ee7cc74782d96fc" -dependencies = [ - "dotenvy", - "either", - "heck 0.4.1", - "hex", - "once_cell", - "proc-macro2", - "quote", - "serde", - "serde_json", - "sha2 0.10.7", - "sqlx-core", - "sqlx-mysql", - "sqlx-postgres", - "sqlx-sqlite", - "syn 1.0.109", - "tempfile", - "tokio", - "url", -] - -[[package]] -name = "sqlx-mysql" -version = "0.7.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "864b869fdf56263f4c95c45483191ea0af340f9f3e3e7b4d57a61c7c87a970db" -dependencies = [ - "atoi", - "base64 0.21.4", - "bigdecimal", - "bitflags 2.4.2", - "byteorder", - "bytes 1.5.0", - "chrono", - "crc", - "digest 0.10.7", - "dotenvy", - "either", - "futures-channel", - "futures-core", - "futures-io", - "futures-util", - "generic-array", - "hex", - "hkdf", - "hmac 0.12.1", - "itoa", - "log", - "md-5", - "memchr", - "once_cell", - "percent-encoding", - "rand 0.8.5", - "rsa 0.9.2", - "rust_decimal", - "serde", - "sha1", - "sha2 0.10.7", - "smallvec", - "sqlx-core", - "stringprep", - "thiserror", - "time", - "tracing", - "uuid", - "whoami", -] - -[[package]] -name = "sqlx-postgres" -version = "0.7.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eb7ae0e6a97fb3ba33b23ac2671a5ce6e3cabe003f451abd5a56e7951d975624" -dependencies = [ - "atoi", - "base64 0.21.4", - "bigdecimal", - "bitflags 2.4.2", - "byteorder", - "chrono", - "crc", - "dotenvy", - "etcetera", - "futures-channel", - "futures-core", - "futures-io", - "futures-util", - "hex", - "hkdf", - "hmac 0.12.1", - "home", - "itoa", - "log", - "md-5", - "memchr", - "num-bigint 0.4.4", - "once_cell", - "rand 0.8.5", - "rust_decimal", - "serde", - "serde_json", - "sha1", - "sha2 0.10.7", - "smallvec", - "sqlx-core", - "stringprep", - "thiserror", - "time", - "tracing", - "uuid", - "whoami", -] - -[[package]] -name = "sqlx-sqlite" -version = "0.7.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d59dc83cf45d89c555a577694534fcd1b55c545a816c816ce51f20bbe56a4f3f" -dependencies = [ - "atoi", - "chrono", - "flume", - "futures-channel", - "futures-core", - "futures-executor", - "futures-intrusive", - "futures-util", - "libsqlite3-sys", - "log", - "percent-encoding", - "serde", - "sqlx-core", - "time", - "tracing", - "url", - "uuid", -] - [[package]] name = "stable_deref_trait" version = "1.2.0" @@ -9403,43 +7374,6 @@ dependencies = [ "smallvec", ] -[[package]] -name = "storybook" -version = "0.1.0" -dependencies = [ - "anyhow", - "clap 4.4.4", - "collab_ui", - "ctrlc", - "dialoguer", - "editor", - "fuzzy", - "gpui", - "indoc", - "language", - "log", - "menu", - "picker", - "rust-embed", - "settings", - "simplelog", - "story", - "strum", - "theme", - "ui", -] - -[[package]] -name = "stringprep" -version = "0.1.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bb41d74e231a107a1b4ee36bd1214b11285b77768d2e3824aedafa988fd36ee6" -dependencies = [ - "finl_unicode", - "unicode-bidi", - "unicode-normalization", -] - [[package]] name = "strsim" version = "0.10.0" @@ -9623,12 +7557,6 @@ dependencies = [ "unicode-ident", ] -[[package]] -name = "sync_wrapper" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2047c6ded9c721764247e62cd3b03c09ffc529b2ba5b10ec482ae507a4a70160" - [[package]] name = "sys-locale" version = "0.3.1" @@ -9686,12 +7614,6 @@ version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8bdb6fa0dfa67b38c1e66b7041ba9dcf23b99d8121907cd31c807a332f7a0bbb" -[[package]] -name = "tap" -version = "1.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "55937e1799185b12863d447f42597ed69d9928686b8d88a1df17376a097d8369" - [[package]] name = "target-lexicon" version = "0.12.13" @@ -9887,27 +7809,6 @@ dependencies = [ "uuid", ] -[[package]] -name = "theme_importer" -version = "0.1.0" -dependencies = [ - "anyhow", - "clap 4.4.4", - "gpui", - "indexmap 1.9.3", - "log", - "palette", - "rust-embed", - "schemars", - "serde", - "serde_json", - "serde_json_lenient", - "simplelog", - "strum", - "theme", - "vscode_theme", -] - [[package]] name = "theme_selector" version = "0.1.0" @@ -10114,39 +8015,6 @@ dependencies = [ "tokio", ] -[[package]] -name = "tokio-rustls" -version = "0.24.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c28327cf380ac148141087fbfb9de9d7bd4e84ab5d2c28fbc911d753de8a7081" -dependencies = [ - "rustls", - "tokio", -] - -[[package]] -name = "tokio-stream" -version = "0.1.14" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "397c988d37662c7dda6d2208364a706264bf3d6138b11d436cbac0ad38832842" -dependencies = [ - "futures-core", - "pin-project-lite", - "tokio", -] - -[[package]] -name = "tokio-tungstenite" -version = "0.20.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "212d5dcb2a1ce06d81107c3d0ffa3121fe974b73f068c8282cb1c32328113b6c" -dependencies = [ - "futures-util", - "log", - "tokio", - "tungstenite 0.20.1", -] - [[package]] name = "tokio-util" version = "0.7.9" @@ -10227,65 +8095,6 @@ dependencies = [ "winnow 0.6.1", ] -[[package]] -name = "tower" -version = "0.4.13" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b8fa9be0de6cf49e536ce1851f987bd21a43b771b09473c3549a6c853db37c1c" -dependencies = [ - "futures-core", - "futures-util", - "pin-project", - "pin-project-lite", - "tokio", - "tower-layer", - "tower-service", - "tracing", -] - -[[package]] -name = "tower-http" -version = "0.3.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f873044bf02dd1e8239e9c1293ea39dad76dc594ec16185d0a1bf31d8dc8d858" -dependencies = [ - "bitflags 1.3.2", - "bytes 1.5.0", - "futures-core", - "futures-util", - "http 0.2.9", - "http-body", - "http-range-header", - "pin-project-lite", - "tower-layer", - "tower-service", -] - -[[package]] -name = "tower-http" -version = "0.4.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "61c5bb1d698276a2443e5ecfabc1008bf15a36c12e6a7176e7bf089ea9131140" -dependencies = [ - "bitflags 2.4.2", - "bytes 1.5.0", - "futures-core", - "futures-util", - "http 0.2.9", - "http-body", - "http-range-header", - "pin-project-lite", - "tower-layer", - "tower-service", - "tracing", -] - -[[package]] -name = "tower-layer" -version = "0.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c20c8dbed6283a09604c3e69b4b7eeb54e298b8a600d4d5ecb5ad39de609f1d0" - [[package]] name = "tower-service" version = "0.3.2" @@ -10323,7 +8132,6 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0955b8137a1df6f1a2e9a37d8a6656291ff0297c1a97c24e0d8425fe2312f79a" dependencies = [ "once_cell", - "valuable", ] [[package]] @@ -10336,48 +8144,6 @@ dependencies = [ "tracing", ] -[[package]] -name = "tracing-log" -version = "0.1.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "78ddad33d2d10b1ed7eb9d1f518a5674713876e97e5bb9b7345a7984fbb4f922" -dependencies = [ - "lazy_static", - "log", - "tracing-core", -] - -[[package]] -name = "tracing-serde" -version = "0.1.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bc6b213177105856957181934e4920de57730fc69bf42c37ee5bb664d406d9e1" -dependencies = [ - "serde", - "tracing-core", -] - -[[package]] -name = "tracing-subscriber" -version = "0.3.17" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "30a651bc37f915e81f087d86e62a18eec5f79550c7faff886f7090b4ea757c77" -dependencies = [ - "matchers", - "nu-ansi-term", - "once_cell", - "regex", - "serde", - "serde_json", - "sharded-slab", - "smallvec", - "thread_local", - "tracing", - "tracing-core", - "tracing-log", - "tracing-serde", -] - [[package]] name = "tree-sitter" version = "0.20.100" @@ -10834,7 +8600,7 @@ dependencies = [ "base64 0.13.1", "byteorder", "bytes 1.5.0", - "http 0.2.9", + "http", "httparse", "log", "native-tls", @@ -10845,25 +8611,6 @@ dependencies = [ "utf-8", ] -[[package]] -name = "tungstenite" -version = "0.20.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9e3dac10fd62eaf6617d3a904ae222845979aec67c615d1c842b4002c7666fb9" -dependencies = [ - "byteorder", - "bytes 1.5.0", - "data-encoding", - "http 0.2.9", - "httparse", - "log", - "rand 0.8.5", - "sha1", - "thiserror", - "url", - "utf-8", -] - [[package]] name = "typenum" version = "1.17.0" @@ -10998,18 +8745,6 @@ version = "0.1.11" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e1766d682d402817b5ac4490b3c3002d91dfa0d22812f341609f97b08757359c" -[[package]] -name = "untrusted" -version = "0.7.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a156c684c91ea7d62626509bce3cb4e1d9ed5c4d978f7b4352658f96a4c26b4a" - -[[package]] -name = "untrusted" -version = "0.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8ecb6da28b8a351d773b68d5825ac39017e680750f980f3a1a85cd8dd28a47c1" - [[package]] name = "url" version = "2.4.1" @@ -11102,15 +8837,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "79daa5ed5740825c40b389c5e50312b9c86df53fccd33f281df655642b43869d" dependencies = [ "getrandom 0.2.10", - "serde", ] -[[package]] -name = "valuable" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "830b7e5d4d90034032940e4ace0d9a9a057e7a45cd94e6c007832e39edb82f6d" - [[package]] name = "value-bag" version = "1.4.1" @@ -11207,21 +8935,6 @@ dependencies = [ "zed_actions", ] -[[package]] -name = "vscode_theme" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8b3666211944f2e6ba2c359bc9efc1891157e910b1b11c3900892ea9f18179d2" -dependencies = [ - "serde", -] - -[[package]] -name = "vsimd" -version = "0.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5c3082ca00d5a5ef149bb8b555a72ae84c9c59f7250f013ac822ac2e49b19c64" - [[package]] name = "vte" version = "0.13.0" @@ -11502,7 +9215,7 @@ dependencies = [ "syn 2.0.48", "wasmtime-component-util", "wasmtime-wit-bindgen", - "wit-parser 0.13.2", + "wit-parser", ] [[package]] @@ -11716,7 +9429,7 @@ dependencies = [ "anyhow", "heck 0.4.1", "indexmap 2.0.0", - "wit-parser 0.13.2", + "wit-parser", ] [[package]] @@ -11840,15 +9553,6 @@ dependencies = [ "wasm-bindgen", ] -[[package]] -name = "webpki-roots" -version = "0.24.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b291546d5d9d1eab74f069c77749f2cb8504a12caa20f0f2de93ddbf6f411888" -dependencies = [ - "rustls-webpki", -] - [[package]] name = "weezl" version = "0.1.7" @@ -11904,12 +9608,6 @@ dependencies = [ "windows-sys 0.52.0", ] -[[package]] -name = "whoami" -version = "1.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "22fc3756b8a9133049b26c7f61ab35416c130e8c09b660f5b3958b446f52cc50" - [[package]] name = "wiggle" version = "18.0.2" @@ -12082,15 +9780,6 @@ dependencies = [ "windows-targets 0.52.4", ] -[[package]] -name = "windows-sys" -version = "0.45.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "75283be5efb2831d37ea142365f009c02ec203cd29a3ebecbc093d52315b66d0" -dependencies = [ - "windows-targets 0.42.2", -] - [[package]] name = "windows-sys" version = "0.48.0" @@ -12327,53 +10016,6 @@ dependencies = [ "winapi 0.3.9", ] -[[package]] -name = "wit-bindgen" -version = "0.18.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5408d742fcdf418b766f23b2393f0f4d9b10b72b7cd96d9525626943593e8cc0" -dependencies = [ - "bitflags 2.4.2", - "wit-bindgen-rust-macro", -] - -[[package]] -name = "wit-bindgen-core" -version = "0.18.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7146725463d08ccf9c6c5357a7a6c1fff96185d95d6e84e7c75c92e5b1273c93" -dependencies = [ - "anyhow", - "wit-parser 0.14.0", -] - -[[package]] -name = "wit-bindgen-rust" -version = "0.18.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eb5fefcf93ff2ea03c8fe9b9db2caee3096103c0e3cd62ed54f6f9493aa6b405" -dependencies = [ - "anyhow", - "heck 0.4.1", - "wasm-metadata", - "wit-bindgen-core", - "wit-component 0.21.0", -] - -[[package]] -name = "wit-bindgen-rust-macro" -version = "0.18.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ce4059a1adc671e4457f457cb638ed2f766a1a462bb7daa3b638c6fb1fda156e" -dependencies = [ - "anyhow", - "proc-macro2", - "quote", - "syn 2.0.48", - "wit-bindgen-core", - "wit-bindgen-rust", -] - [[package]] name = "wit-component" version = "0.20.3" @@ -12390,26 +10032,7 @@ dependencies = [ "wasm-encoder", "wasm-metadata", "wasmparser", - "wit-parser 0.13.2", -] - -[[package]] -name = "wit-component" -version = "0.21.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "be60cd1b2ff7919305301d0c27528d4867bd793afe890ba3837743da9655d91b" -dependencies = [ - "anyhow", - "bitflags 2.4.2", - "indexmap 2.0.0", - "log", - "serde", - "serde_derive", - "serde_json", - "wasm-encoder", - "wasm-metadata", - "wasmparser", - "wit-parser 0.14.0", + "wit-parser", ] [[package]] @@ -12429,24 +10052,6 @@ dependencies = [ "unicode-xid", ] -[[package]] -name = "wit-parser" -version = "0.14.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1ee4ad7310367bf272507c0c8e0c74a80b4ed586b833f7c7ca0b7588f686f11a" -dependencies = [ - "anyhow", - "id-arena", - "indexmap 2.0.0", - "log", - "semver", - "serde", - "serde_derive", - "serde_json", - "unicode-xid", - "wasmparser", -] - [[package]] name = "witx" version = "0.9.1" @@ -12507,15 +10112,6 @@ dependencies = [ "winapi-build", ] -[[package]] -name = "wyz" -version = "0.5.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "05f360fc0b24296329c78fda852a1e9ae82de9cf7b27dae4b7f62f118f77b9ed" -dependencies = [ - "tap", -] - [[package]] name = "x11-clipboard" version = "0.9.2" @@ -12610,14 +10206,6 @@ version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ec7a2a501ed189703dba8b08142f057e887dfc4b2cc4db2d343ac6376ba3e0b9" -[[package]] -name = "xtask" -version = "0.1.0" -dependencies = [ - "anyhow", - "clap 4.4.4", -] - [[package]] name = "yansi" version = "0.5.1" @@ -12860,27 +10448,6 @@ dependencies = [ "serde", ] -[[package]] -name = "zed_extension_api" -version = "0.1.0" -dependencies = [ - "wit-bindgen", -] - -[[package]] -name = "zed_gleam" -version = "0.0.1" -dependencies = [ - "zed_extension_api", -] - -[[package]] -name = "zed_uiua" -version = "0.0.1" -dependencies = [ - "zed_extension_api", -] - [[package]] name = "zeno" version = "0.2.3" diff --git a/Cargo.toml b/Cargo.toml index ae8d2c5247..1a6f1a158d 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,102 +1,102 @@ [workspace] members = [ - "crates/activity_indicator", - "crates/ai", - "crates/assets", - "crates/assistant", - "crates/audio", - "crates/auto_update", - "crates/breadcrumbs", - "crates/call", - "crates/channel", - "crates/cli", - "crates/client", - "crates/clock", - "crates/collab", - "crates/collab_ui", - "crates/collections", - "crates/command_palette", - "crates/command_palette_hooks", - "crates/copilot", - "crates/copilot_ui", - "crates/db", - "crates/diagnostics", - "crates/editor", - "crates/extension", - "crates/extension_api", - "crates/extensions_ui", - "crates/feature_flags", - "crates/feedback", - "crates/file_finder", - "crates/fs", - "crates/fsevent", - "crates/fuzzy", - "crates/git", - "crates/go_to_line", - "crates/gpui", - "crates/gpui_macros", - "crates/install_cli", - "crates/journal", - "crates/language", - "crates/language_selector", - "crates/language_tools", - "crates/languages", - "crates/live_kit_client", - "crates/live_kit_server", - "crates/lsp", - "crates/markdown_preview", - "crates/media", - "crates/menu", - "crates/multi_buffer", - "crates/node_runtime", - "crates/notifications", - "crates/outline", - "crates/picker", - "crates/prettier", - "crates/project", - "crates/project_core", - "crates/project_panel", - "crates/project_symbols", - "crates/quick_action_bar", - "crates/recent_projects", - "crates/refineable", - "crates/refineable/derive_refineable", - "crates/release_channel", - "crates/rich_text", - "crates/rope", - "crates/rpc", - "crates/task", - "crates/tasks_ui", - "crates/search", - "crates/semantic_index", - "crates/settings", - "crates/snippet", - "crates/sqlez", - "crates/sqlez_macros", - "crates/story", - "crates/storybook", - "crates/sum_tree", - "crates/terminal", - "crates/terminal_view", - "crates/text", - "crates/theme", - "crates/theme_importer", - "crates/theme_selector", - "crates/telemetry_events", - "crates/time_format", - "crates/ui", - "crates/util", - "crates/vcs_menu", - "crates/vim", - "crates/welcome", + # "crates/activity_indicator", + # "crates/ai", + # "crates/assets", + # "crates/assistant", + # "crates/audio", + # "crates/auto_update", + # "crates/breadcrumbs", + # "crates/call", + # "crates/channel", + # "crates/cli", + # "crates/client", + # "crates/clock", + # "crates/collab", + # "crates/collab_ui", + # "crates/collections", + # "crates/command_palette", + # "crates/command_palette_hooks", + # "crates/copilot", + # "crates/copilot_ui", + # "crates/db", + # "crates/diagnostics", + # "crates/editor", + # "crates/extension", + # "crates/extension_api", + # "crates/extensions_ui", + # "crates/feature_flags", + # "crates/feedback", + # "crates/file_finder", + # "crates/fs", + # "crates/fsevent", + # "crates/fuzzy", + # "crates/git", + # "crates/go_to_line", + # "crates/gpui", + # "crates/gpui_macros", + # "crates/install_cli", + # "crates/journal", + # "crates/language", + # "crates/language_selector", + # "crates/language_tools", + # "crates/languages", + # "crates/live_kit_client", + # "crates/live_kit_server", + # "crates/lsp", + # "crates/markdown_preview", + # "crates/media", + # "crates/menu", + # "crates/multi_buffer", + # "crates/node_runtime", + # "crates/notifications", + # "crates/outline", + # "crates/picker", + # "crates/prettier", + # "crates/project", + # "crates/project_core", + # "crates/project_panel", + # "crates/project_symbols", + # "crates/quick_action_bar", + # "crates/recent_projects", + # "crates/refineable", + # "crates/refineable/derive_refineable", + # "crates/release_channel", + # "crates/rich_text", + # "crates/rope", + # "crates/rpc", + # "crates/task", + # "crates/tasks_ui", + # "crates/search", + # "crates/semantic_index", + # "crates/settings", + # "crates/snippet", + # "crates/sqlez", + # "crates/sqlez_macros", + # "crates/story", + # "crates/storybook", + # "crates/sum_tree", + # "crates/terminal", + # "crates/terminal_view", + # "crates/text", + # "crates/theme", + # "crates/theme_importer", + # "crates/theme_selector", + # "crates/telemetry_events", + # "crates/time_format", + # "crates/ui", + # "crates/util", + # "crates/vcs_menu", + # "crates/vim", + # "crates/welcome", "crates/workspace", "crates/zed", - "crates/zed_actions", + # "crates/zed_actions", - "extensions/gleam", - "extensions/uiua", + # "extensions/gleam", + # "extensions/uiua", - "tooling/xtask", + # "tooling/xtask", ] default-members = ["crates/zed"] resolver = "2" diff --git a/crates/cli/src/cli.rs b/crates/cli/src/cli.rs index 3a0abbaec7..03201a1ddf 100644 --- a/crates/cli/src/cli.rs +++ b/crates/cli/src/cli.rs @@ -9,12 +9,11 @@ pub struct IpcHandshake { #[derive(Debug, Serialize, Deserialize)] pub enum CliRequest { - // The filed is named `path` for compatibility, but now CLI can request - // opening a path at a certain row and/or column: `some/path:123` and `some/path:123:456`. - // - // Since Zed CLI has to be installed separately, there can be situations when old CLI is - // querying new Zed editors, support both formats by using `String` here and parsing it on Zed side later. - Open { paths: Vec, wait: bool }, + Open { + paths: Vec, + wait: bool, + open_new_workspace: Option, + }, } #[derive(Debug, Serialize, Deserialize)] diff --git a/crates/cli/src/main.rs b/crates/cli/src/main.rs index e6ec1e559d..25e88dc6d7 100644 --- a/crates/cli/src/main.rs +++ b/crates/cli/src/main.rs @@ -1,10 +1,11 @@ #![cfg_attr(target_os = "linux", allow(dead_code))] use anyhow::{anyhow, Context, Result}; -use clap::Parser; +use clap::{Error, ErrorKind, Parser}; use cli::{CliRequest, CliResponse}; use serde::Deserialize; use std::{ + env, ffi::OsStr, fs::{self, OpenOptions}, io, @@ -12,12 +13,18 @@ use std::{ }; use util::paths::PathLikeWithPosition; -#[derive(Parser)] +#[derive(Parser, Debug)] #[clap(name = "zed", global_setting(clap::AppSettings::NoAutoVersion))] struct Args { /// Wait for all of the given paths to be opened/closed before exiting. #[clap(short, long)] wait: bool, + /// Add files to the currently open workspace + #[clap(short, long, overrides_with = "new")] + add: bool, + /// Create a new workspace + #[clap(short, long, overrides_with = "add")] + new: bool, /// A sequence of space-separated paths that you want to open. /// /// Use `path:line:row` syntax to open a file at a specific location. @@ -56,32 +63,54 @@ fn main() -> Result<()> { return Ok(()); } - for path in args - .paths_with_position - .iter() - .map(|path_with_position| &path_with_position.path_like) - { - if !path.exists() { - touch(path.as_path())?; - } - } + // for path in args + // .paths_with_position + // .iter() + // .map(|path_with_position| &path_with_position.path_like) + // { + // if !path.exists() { + // touch(path.as_path())?; + // } + // } let (tx, rx) = bundle.launch()?; + let open_new_workspace = if args.new { + Some(true) + } else if args.add { + Some(false) + } else { + None + }; - tx.send(CliRequest::Open { + tx.send(dbg!(CliRequest::Open { paths: args .paths_with_position .into_iter() .map(|path_with_position| { - let path_with_position = path_with_position.map_path_like(|path| { - fs::canonicalize(&path) - .with_context(|| format!("path {path:?} canonicalization")) - })?; + let path_with_position = + path_with_position.map_path_like(|path| match fs::canonicalize(&path) { + Ok(path) => Ok(path), + Err(e) => { + if let Some(mut parent) = path.parent() { + let curdir = env::current_dir()?; + if parent == Path::new("") { + parent = &curdir; + } + match fs::canonicalize(parent) { + Ok(parent) => Ok(parent.join(path.file_name().unwrap())), + Err(_) => Err(e), + } + } else { + Err(e) + } + } + })?; Ok(path_with_position.to_string(|path| path.display().to_string())) }) .collect::>()?, wait: args.wait, - })?; + open_new_workspace, + }))?; while let Ok(response) = rx.recv() { match response { diff --git a/crates/fs/src/fs.rs b/crates/fs/src/fs.rs index 88f77da608..8e41204228 100644 --- a/crates/fs/src/fs.rs +++ b/crates/fs/src/fs.rs @@ -500,7 +500,12 @@ impl FakeFsState { fn read_path(&self, target: &Path) -> Result>> { Ok(self .try_read_path(target, true) - .ok_or_else(|| anyhow!("path does not exist: {}", target.display()))? + .ok_or_else(|| { + anyhow!(io::Error::new( + io::ErrorKind::NotFound, + format!("not found: {}", target.display()) + )) + })? .0) } diff --git a/crates/journal/src/journal.rs b/crates/journal/src/journal.rs index a78d74a55d..43191817bf 100644 --- a/crates/journal/src/journal.rs +++ b/crates/journal/src/journal.rs @@ -102,7 +102,14 @@ pub fn new_journal_entry(app_state: Arc, cx: &mut WindowContext) { cx.spawn(|mut cx| async move { let (journal_dir, entry_path) = create_entry.await?; let (workspace, _) = cx - .update(|cx| workspace::open_paths(&[journal_dir], app_state, None, cx))? + .update(|cx| { + workspace::open_paths( + &[journal_dir], + app_state, + workspace::OpenOptions::default(), + cx, + ) + })? .await?; let opened = workspace diff --git a/crates/project/src/project.rs b/crates/project/src/project.rs index 733590709a..f15a88de7a 100644 --- a/crates/project/src/project.rs +++ b/crates/project/src/project.rs @@ -74,7 +74,7 @@ use std::{ env, ffi::OsStr, hash::Hash, - mem, + io, mem, num::NonZeroU32, ops::Range, path::{self, Component, Path, PathBuf}, @@ -1136,18 +1136,24 @@ impl Project { .map(|worktree| worktree.read(cx).id()) } - pub fn contains_paths(&self, paths: &[PathBuf], cx: &AppContext) -> bool { - paths.iter().all(|path| self.contains_path(path, cx)) + pub fn visibility_for_paths(&self, paths: &[PathBuf], cx: &AppContext) -> Option { + paths + .iter() + .map(|path| self.visibility_for_path(path, cx)) + .max() + .flatten() } - pub fn contains_path(&self, path: &Path, cx: &AppContext) -> bool { - for worktree in self.worktrees() { - let worktree = worktree.read(cx).as_local(); - if worktree.map_or(false, |w| w.contains_abs_path(path)) { - return true; - } - } - false + pub fn visibility_for_path(&self, path: &Path, cx: &AppContext) -> Option { + self.worktrees() + .filter_map(|worktree| { + let worktree = worktree.read(cx); + worktree + .as_local()? + .contains_abs_path(path) + .then(|| worktree.is_visible()) + }) + .max() } pub fn create_entry( @@ -1822,12 +1828,28 @@ impl Project { cx: &mut ModelContext, ) -> Task>> { let buffer_id = self.next_buffer_id.next(); + let path2 = path.clone(); let load_buffer = worktree.update(cx, |worktree, cx| { let worktree = worktree.as_local_mut().unwrap(); worktree.load_buffer(buffer_id, path, cx) }); cx.spawn(move |this, mut cx| async move { - let buffer = load_buffer.await?; + let buffer = match load_buffer.await { + Ok(buffer) => Ok(buffer), + Err(error) => { + dbg!(&path2, error.root_cause()); + // if let Some(io_error) = error.root_cause().downcast_ref::() { + // if io_error.kind() == io::ErrorKind::NotFound { + let text_buffer = text::Buffer::new(0, buffer_id, "".into()); + cx.new_model(|_| Buffer::build(text_buffer, None, None, Capability::ReadWrite)) + // } else { + // Err(error) + // } + // } else { + // Err(error) + // } + } + }?; this.update(&mut cx, |this, cx| this.register_buffer(&buffer, cx))??; Ok(buffer) }) diff --git a/crates/recent_projects/src/recent_projects.rs b/crates/recent_projects/src/recent_projects.rs index a5e8c2df32..0be20c0f43 100644 --- a/crates/recent_projects/src/recent_projects.rs +++ b/crates/recent_projects/src/recent_projects.rs @@ -493,9 +493,16 @@ mod tests { }), ) .await; - cx.update(|cx| open_paths(&[PathBuf::from("/dir/main.ts")], app_state, None, cx)) - .await - .unwrap(); + cx.update(|cx| { + open_paths( + &[PathBuf::from("/dir/main.ts")], + app_state, + workspace::OpenOptions::default(), + cx, + ) + }) + .await + .unwrap(); assert_eq!(cx.update(|cx| cx.windows().len()), 1); let workspace = cx.update(|cx| cx.windows()[0].downcast::().unwrap()); diff --git a/crates/workspace/src/workspace.rs b/crates/workspace/src/workspace.rs index 432d0f2f01..d8184b84d0 100644 --- a/crates/workspace/src/workspace.rs +++ b/crates/workspace/src/workspace.rs @@ -262,7 +262,8 @@ pub fn init(app_state: Arc, cx: &mut AppContext) { cx.spawn(move |cx| async move { if let Some(paths) = paths.await.log_err().flatten() { cx.update(|cx| { - open_paths(&paths, app_state, None, cx).detach_and_log_err(cx) + open_paths(&paths, app_state, OpenOptions::default(), cx) + .detach_and_log_err(cx) }) .ok(); } @@ -794,6 +795,7 @@ impl Workspace { app_state.fs.clone(), cx, ); + dbg!("new_local", &abs_paths); cx.spawn(|mut cx| async move { let serialized_workspace: Option = @@ -813,12 +815,15 @@ impl Workspace { .await .log_err() { + dbg!("got project_path_for_path"); worktree_roots.extend(worktree.update(&mut cx, |tree, _| tree.abs_path()).ok()); project_paths.push((path, Some(project_entry))); } else { + dbg!("NO project_path_for_path"); project_paths.push((path, None)); } } + dbg!(&project_paths); let workspace_id = if let Some(serialized_workspace) = serialized_workspace.as_ref() { serialized_workspace.id @@ -1414,8 +1419,18 @@ impl Workspace { let app_state = self.app_state.clone(); cx.spawn(|_, mut cx| async move { - cx.update(|cx| open_paths(&paths, app_state, window_to_replace, cx))? - .await?; + cx.update(|cx| { + open_paths( + &paths, + app_state, + OpenOptions { + replace_window: window_to_replace, + ..Default::default() + }, + cx, + ) + })? + .await?; Ok(()) }) } @@ -3729,19 +3744,21 @@ fn open_items( let fs = app_state.fs.clone(); async move { let file_project_path = project_path?; - if fs.is_file(&abs_path).await { - Some(( - ix, - workspace - .update(&mut cx, |workspace, cx| { - workspace.open_path(file_project_path, None, true, cx) - }) - .log_err()? - .await, - )) - } else { - None - } + // if fs.metadata(&abs_path).await.is_ok_and(|metadata| { + // metadata.is_none() || !metadata.unwrap().is_dir + // }) { + Some(( + ix, + workspace + .update(&mut cx, |workspace, cx| { + workspace.open_path(file_project_path, None, true, cx) + }) + .log_err()? + .await, + )) + // } else { + // None + // } } }) }); @@ -4360,6 +4377,13 @@ pub async fn get_any_active_workspace( fn activate_any_workspace_window(cx: &mut AsyncAppContext) -> Option> { cx.update(|cx| { + if let Some(workspace_window) = cx + .active_window() + .and_then(|window| window.downcast::()) + { + return Some(workspace_window); + } + for window in cx.windows() { if let Some(workspace_window) = window.downcast::() { workspace_window @@ -4374,11 +4398,17 @@ fn activate_any_workspace_window(cx: &mut AsyncAppContext) -> Option, + pub replace_window: Option>, +} + #[allow(clippy::type_complexity)] pub fn open_paths( abs_paths: &[PathBuf], app_state: Arc, - requesting_window: Option>, + open_options: OpenOptions, cx: &mut AppContext, ) -> Task< anyhow::Result<( @@ -4387,24 +4417,62 @@ pub fn open_paths( )>, > { let abs_paths = abs_paths.to_vec(); - // Open paths in existing workspace if possible - let existing = activate_workspace_for_project(cx, { - let abs_paths = abs_paths.clone(); - move |project, cx| project.contains_paths(&abs_paths, cx) - }); + let mut existing = None; + let mut best_match = None; + let mut open_visible = OpenVisible::All; + + if open_options.open_new_workspace.unwrap_or(true) { + for window in cx.windows() { + let Some(handle) = window.downcast::() else { + continue; + }; + if let Ok(workspace) = handle.read(cx) { + let m = workspace + .project() + .read(cx) + .visibility_for_paths(&abs_paths, cx); + if m > best_match { + existing = Some(handle); + best_match = m; + } else if best_match.is_none() && open_options.open_new_workspace == Some(true) { + existing = Some(handle) + } + } + } + } + cx.spawn(move |mut cx| async move { + if open_options.open_new_workspace.is_none() && existing.is_none() { + let all_files = abs_paths.iter().map(|path| app_state.fs.metadata(path)); + if futures::future::join_all(all_files) + .await + .into_iter() + .filter_map(|result| result.ok().flatten()) + .all(|file| !file.is_dir) + { + existing = activate_any_workspace_window(&mut cx); + open_visible = OpenVisible::None; + } + } + if let Some(existing) = existing { Ok(( existing, existing .update(&mut cx, |workspace, cx| { - workspace.open_paths(abs_paths, OpenVisible::All, None, cx) + cx.activate_window(); + workspace.open_paths(abs_paths, open_visible, None, cx) })? .await, )) } else { cx.update(move |cx| { - Workspace::new_local(abs_paths, app_state.clone(), requesting_window, cx) + Workspace::new_local( + abs_paths, + app_state.clone(), + open_options.replace_window, + cx, + ) })? .await } diff --git a/crates/zed/src/main.rs b/crates/zed/src/main.rs index d42fadb69c..adfc0fd60d 100644 --- a/crates/zed/src/main.rs +++ b/crates/zed/src/main.rs @@ -264,24 +264,14 @@ fn main() { cx.set_menus(app_menus()); initialize_workspace(app_state.clone(), cx); - if stdout_is_a_pty() { - // todo(linux): unblock this - #[cfg(not(target_os = "linux"))] - upload_panics_and_crashes(http.clone(), cx); - cx.activate(true); - let urls = collect_url_args(cx); - if !urls.is_empty() { - listener.open_urls(urls) - } - } else { - upload_panics_and_crashes(http.clone(), cx); - // TODO Development mode that forces the CLI mode usually runs Zed binary as is instead - // of an *app, hence gets no specific callbacks run. Emulate them here, if needed. - if std::env::var(FORCE_CLI_MODE_ENV_VAR_NAME).ok().is_some() - && !listener.triggered.load(Ordering::Acquire) - { - listener.open_urls(collect_url_args(cx)) - } + // todo(linux): unblock this + upload_panics_and_crashes(http.clone(), cx); + + cx.activate(true); + + let urls = collect_url_args(cx); + if !urls.is_empty() { + listener.open_urls(urls) } let mut triggered_authentication = false; @@ -339,8 +329,13 @@ fn handle_open_request( if !request.open_paths.is_empty() { let app_state = app_state.clone(); task = Some(cx.spawn(|mut cx| async move { - let (_window, results) = - open_paths_with_positions(&request.open_paths, app_state, &mut cx).await?; + let (_window, results) = open_paths_with_positions( + &request.open_paths, + app_state, + workspace::OpenOptions::default(), + &mut cx, + ) + .await?; for result in results.into_iter().flatten() { if let Err(err) = result { log::error!("Error opening path: {err}",); @@ -441,9 +436,16 @@ async fn installation_id() -> Result<(String, bool)> { async fn restore_or_create_workspace(app_state: Arc, cx: AsyncAppContext) { async_maybe!({ if let Some(location) = workspace::last_opened_workspace_paths().await { - cx.update(|cx| workspace::open_paths(location.paths().as_ref(), app_state, None, cx))? - .await - .log_err(); + cx.update(|cx| { + workspace::open_paths( + location.paths().as_ref(), + app_state, + workspace::OpenOptions::default(), + cx, + ) + })? + .await + .log_err(); } else if matches!(KEY_VALUE_STORE.read_kvp(FIRST_OPEN), Ok(None)) { cx.update(|cx| show_welcome_view(app_state, cx)).log_err(); } else { @@ -901,7 +903,7 @@ fn collect_url_args(cx: &AppContext) -> Vec { .filter_map(|arg| match std::fs::canonicalize(Path::new(&arg)) { Ok(path) => Some(format!("file://{}", path.to_string_lossy())), Err(error) => { - if arg.starts_with("file://") { + if arg.starts_with("file://") || arg.starts_with("zed-cli://") { Some(arg) } else if let Some(_) = parse_zed_link(&arg, cx) { Some(arg) diff --git a/crates/zed/src/open_listener.rs b/crates/zed/src/open_listener.rs index a119623b0a..a820f0cc4b 100644 --- a/crates/zed/src/open_listener.rs +++ b/crates/zed/src/open_listener.rs @@ -11,11 +11,10 @@ use futures::{FutureExt, SinkExt, StreamExt}; use gpui::{AppContext, AsyncAppContext, Global, WindowHandle}; use language::{Bias, Point}; use std::path::Path; -use std::sync::atomic::Ordering; +use std::path::PathBuf; use std::sync::Arc; use std::thread; use std::time::Duration; -use std::{path::PathBuf, sync::atomic::AtomicBool}; use util::paths::PathLikeWithPosition; use util::ResultExt; use workspace::item::ItemHandle; @@ -89,7 +88,6 @@ impl OpenRequest { pub struct OpenListener { tx: UnboundedSender>, - pub triggered: AtomicBool, } struct GlobalOpenListener(Arc); @@ -107,17 +105,10 @@ impl OpenListener { pub fn new() -> (Self, UnboundedReceiver>) { let (tx, rx) = mpsc::unbounded(); - ( - OpenListener { - tx, - triggered: AtomicBool::new(false), - }, - rx, - ) + (OpenListener { tx }, rx) } pub fn open_urls(&self, urls: Vec) { - self.triggered.store(true, Ordering::Release); self.tx .unbounded_send(urls) .map_err(|_| anyhow!("no listener for open requests")) @@ -157,6 +148,7 @@ fn connect_to_cli( pub async fn open_paths_with_positions( path_likes: &Vec>, app_state: Arc, + open_options: workspace::OpenOptions, cx: &mut AsyncAppContext, ) -> Result<( WindowHandle, @@ -180,7 +172,7 @@ pub async fn open_paths_with_positions( .collect::>(); let (workspace, items) = cx - .update(|cx| workspace::open_paths(&paths, app_state, None, cx))? + .update(|cx| workspace::open_paths(&paths, app_state, open_options, cx))? .await?; for (item, path) in items.iter().zip(&paths) { @@ -215,22 +207,30 @@ pub async fn handle_cli_connection( ) { if let Some(request) = requests.next().await { match request { - CliRequest::Open { paths, wait } => { + CliRequest::Open { + paths, + wait, + open_new_workspace, + } => { let paths = if paths.is_empty() { - workspace::last_opened_workspace_paths() - .await - .map(|location| { - location - .paths() - .iter() - .map(|path| PathLikeWithPosition { - path_like: path.clone(), - row: None, - column: None, - }) - .collect::>() - }) - .unwrap_or_default() + if open_new_workspace == Some(true) { + vec![] + } else { + workspace::last_opened_workspace_paths() + .await + .map(|location| { + location + .paths() + .iter() + .map(|path| PathLikeWithPosition { + path_like: path.clone(), + row: None, + column: None, + }) + .collect::>() + }) + .unwrap_or_default() + } } else { paths .into_iter() @@ -250,7 +250,17 @@ pub async fn handle_cli_connection( let mut errored = false; - match open_paths_with_positions(&paths, app_state, &mut cx).await { + match open_paths_with_positions( + &paths, + app_state, + workspace::OpenOptions { + open_new_workspace, + ..Default::default() + }, + &mut cx, + ) + .await + { Ok((workspace, items)) => { let mut item_release_futures = Vec::new(); diff --git a/crates/zed/src/zed.rs b/crates/zed/src/zed.rs index 04481dd0be..371bc4cf11 100644 --- a/crates/zed/src/zed.rs +++ b/crates/zed/src/zed.rs @@ -877,6 +877,41 @@ mod tests { WorkspaceHandle, }; + #[gpui::test] + async fn test_open_non_existing_file(cx: &mut TestAppContext) { + let app_state = init_test(cx); + app_state + .fs + .as_fake() + .insert_tree( + "/root", + json!({ + "a": { + }, + }), + ) + .await; + + cx.update(|cx| { + open_paths( + &[PathBuf::from("/root/a/new")], + app_state.clone(), + workspace::OpenOptions::default(), + cx, + ) + }) + .await + .unwrap(); + assert_eq!(cx.read(|cx| cx.windows().len()), 1); + + let workspace = cx.windows()[0].downcast::().unwrap(); + workspace + .update(cx, |workspace, cx| { + assert!(workspace.active_item_as::(cx).is_some()) + }) + .unwrap(); + } + #[gpui::test] async fn test_open_paths_action(cx: &mut TestAppContext) { let app_state = init_test(cx); @@ -910,7 +945,7 @@ mod tests { open_paths( &[PathBuf::from("/root/a"), PathBuf::from("/root/b")], app_state.clone(), - None, + workspace::OpenOptions::default(), cx, ) }) @@ -918,9 +953,16 @@ mod tests { .unwrap(); assert_eq!(cx.read(|cx| cx.windows().len()), 1); - cx.update(|cx| open_paths(&[PathBuf::from("/root/a")], app_state.clone(), None, cx)) - .await - .unwrap(); + cx.update(|cx| { + open_paths( + &[PathBuf::from("/root/a")], + app_state.clone(), + workspace::OpenOptions::default(), + cx, + ) + }) + .await + .unwrap(); assert_eq!(cx.read(|cx| cx.windows().len()), 1); let workspace_1 = cx .read(|cx| cx.windows()[0].downcast::()) @@ -941,7 +983,7 @@ mod tests { open_paths( &[PathBuf::from("/root/b"), PathBuf::from("/root/c")], app_state.clone(), - None, + workspace::OpenOptions::default(), cx, ) }) @@ -957,7 +999,10 @@ mod tests { open_paths( &[PathBuf::from("/root/c"), PathBuf::from("/root/d")], app_state, - Some(window), + workspace::OpenOptions { + replace_window: Some(window), + ..Default::default() + }, cx, ) }) @@ -983,6 +1028,123 @@ mod tests { .unwrap(); } + #[gpui::test] + async fn test_open_add_new(cx: &mut TestAppContext) { + let app_state = init_test(cx); + app_state + .fs + .as_fake() + .insert_tree("/root", json!({"a": "hey", "b": "", "dir": {"c": "f"}})) + .await; + + cx.update(|cx| { + open_paths( + &[PathBuf::from("/root/dir")], + app_state.clone(), + workspace::OpenOptions::default(), + cx, + ) + }) + .await + .unwrap(); + assert_eq!(cx.update(|cx| cx.windows().len()), 1); + + cx.update(|cx| { + open_paths( + &[PathBuf::from("/root/a")], + app_state.clone(), + workspace::OpenOptions { + open_new_workspace: Some(false), + ..Default::default() + }, + cx, + ) + }) + .await + .unwrap(); + assert_eq!(cx.update(|cx| cx.windows().len()), 1); + + cx.update(|cx| { + open_paths( + &[PathBuf::from("/root/dir/c")], + app_state.clone(), + workspace::OpenOptions { + open_new_workspace: Some(true), + ..Default::default() + }, + cx, + ) + }) + .await + .unwrap(); + assert_eq!(cx.update(|cx| cx.windows().len()), 2); + } + + #[gpui::test] + async fn test_open_file_in_many_spaces(cx: &mut TestAppContext) { + let app_state = init_test(cx); + app_state + .fs + .as_fake() + .insert_tree("/root", json!({"dir1": {"a": "b"}, "dir2": {"c": "d"}})) + .await; + + cx.update(|cx| { + open_paths( + &[PathBuf::from("/root/dir1/a")], + app_state.clone(), + workspace::OpenOptions::default(), + cx, + ) + }) + .await + .unwrap(); + assert_eq!(cx.update(|cx| cx.windows().len()), 1); + let window1 = cx.update(|cx| cx.active_window().unwrap()); + + cx.update(|cx| { + open_paths( + &[PathBuf::from("/root/dir2/c")], + app_state.clone(), + workspace::OpenOptions::default(), + cx, + ) + }) + .await + .unwrap(); + assert_eq!(cx.update(|cx| cx.windows().len()), 1); + + cx.update(|cx| { + open_paths( + &[PathBuf::from("/root/dir2")], + app_state.clone(), + workspace::OpenOptions::default(), + cx, + ) + }) + .await + .unwrap(); + assert_eq!(cx.update(|cx| cx.windows().len()), 2); + let window2 = cx.update(|cx| cx.active_window().unwrap()); + assert!(window1 != window2); + cx.update_window(window1, |_, cx| cx.activate_window()) + .unwrap(); + + cx.update(|cx| { + open_paths( + &[PathBuf::from("/root/dir2/c")], + app_state.clone(), + workspace::OpenOptions::default(), + cx, + ) + }) + .await + .unwrap(); + assert_eq!(cx.update(|cx| cx.windows().len()), 2); + // should have opened in window2 because that has dir2 visibly open (window1 has it open, but not in the project panel) + assert!(cx.update(|cx| cx.active_window().unwrap()) == window2); + } + #[gpui::test] async fn test_window_edit_state(cx: &mut TestAppContext) { let executor = cx.executor(); @@ -993,9 +1155,16 @@ mod tests { .insert_tree("/root", json!({"a": "hey"})) .await; - cx.update(|cx| open_paths(&[PathBuf::from("/root/a")], app_state.clone(), None, cx)) - .await - .unwrap(); + cx.update(|cx| { + open_paths( + &[PathBuf::from("/root/a")], + app_state.clone(), + workspace::OpenOptions::default(), + cx, + ) + }) + .await + .unwrap(); assert_eq!(cx.update(|cx| cx.windows().len()), 1); // When opening the workspace, the window is not in a edited state. @@ -1060,9 +1229,16 @@ mod tests { assert!(!window_is_edited(window, cx)); // Opening the buffer again doesn't impact the window's edited state. - cx.update(|cx| open_paths(&[PathBuf::from("/root/a")], app_state, None, cx)) - .await - .unwrap(); + cx.update(|cx| { + open_paths( + &[PathBuf::from("/root/a")], + app_state, + workspace::OpenOptions::default(), + cx, + ) + }) + .await + .unwrap(); let editor = window .read_with(cx, |workspace, cx| { workspace @@ -1289,9 +1465,16 @@ mod tests { ) .await; - cx.update(|cx| open_paths(&[PathBuf::from("/dir1/")], app_state, None, cx)) - .await - .unwrap(); + cx.update(|cx| { + open_paths( + &[PathBuf::from("/dir1/")], + app_state, + workspace::OpenOptions::default(), + cx, + ) + }) + .await + .unwrap(); assert_eq!(cx.update(|cx| cx.windows().len()), 1); let window = cx.update(|cx| cx.windows()[0].downcast::().unwrap()); let workspace = window.root(cx).unwrap(); @@ -1523,7 +1706,14 @@ mod tests { Path::new("/root/excluded_dir/ignored_subdir").to_path_buf(), ]; let (opened_workspace, new_items) = cx - .update(|cx| workspace::open_paths(&paths_to_open, app_state, None, cx)) + .update(|cx| { + workspace::open_paths( + &paths_to_open, + app_state, + workspace::OpenOptions::default(), + cx, + ) + }) .await .unwrap();