From 7e4d42b9672769a974e98bc64a40fe6cbc9a8af3 Mon Sep 17 00:00:00 2001 From: reya Date: Fri, 13 Feb 2026 14:00:43 +0700 Subject: [PATCH] . --- Cargo.lock | 178 ++++++++++++++++++------------------- crates/state/src/gossip.rs | 107 ---------------------- crates/state/src/lib.rs | 44 +++++++-- 3 files changed, 125 insertions(+), 204 deletions(-) delete mode 100644 crates/state/src/gossip.rs diff --git a/Cargo.lock b/Cargo.lock index f7e54a6..6c09b18 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -173,7 +173,7 @@ checksum = "0ae92a5119aa49cdbcf6b9f893fe4e1d98b04ccbf82ee0584ad948a44a734dea" dependencies = [ "proc-macro2", "quote", - "syn 2.0.114", + "syn 2.0.115", ] [[package]] @@ -407,7 +407,7 @@ checksum = "3b43422f69d8ff38f95f1b2bb76517c91589a924d1559a0e935d7c8ce0274c11" dependencies = [ "proc-macro2", "quote", - "syn 2.0.114", + "syn 2.0.115", ] [[package]] @@ -483,7 +483,7 @@ checksum = "9035ad2d096bed7955a320ee7e2230574d28fd3c3a0f186cbea1ff3c7eed5dbb" dependencies = [ "proc-macro2", "quote", - "syn 2.0.114", + "syn 2.0.115", ] [[package]] @@ -680,7 +680,7 @@ dependencies = [ "regex", "rustc-hash 2.1.1", "shlex", - "syn 2.0.114", + "syn 2.0.115", ] [[package]] @@ -797,7 +797,7 @@ source = "git+https://github.com/kvark/blade?rev=e3cf011ca18a6dfd907d1dedd93e85e dependencies = [ "proc-macro2", "quote", - "syn 2.0.114", + "syn 2.0.115", ] [[package]] @@ -902,7 +902,7 @@ checksum = "f9abbd1bc6865053c427f7198e6af43bfdedc55ab791faed4fbd361d789575ff" dependencies = [ "proc-macro2", "quote", - "syn 2.0.114", + "syn 2.0.115", ] [[package]] @@ -970,7 +970,7 @@ dependencies = [ "quote", "serde", "serde_json", - "syn 2.0.114", + "syn 2.0.115", "tempfile", "toml 0.8.23", ] @@ -1171,7 +1171,7 @@ dependencies = [ "heck 0.5.0", "proc-macro2", "quote", - "syn 2.0.114", + "syn 2.0.115", ] [[package]] @@ -1263,7 +1263,7 @@ dependencies = [ [[package]] name = "collections" version = "0.1.0" -source = "git+https://github.com/zed-industries/zed#ee3f40fe25d206ca363b753e5b86e09ac6181eca" +source = "git+https://github.com/zed-industries/zed#20ed14254df868f20983554be8aa9d27d76e649f" dependencies = [ "indexmap", "rustc-hash 2.1.1", @@ -1702,17 +1702,17 @@ dependencies = [ "proc-macro2", "quote", "rustc_version", - "syn 2.0.114", + "syn 2.0.115", ] [[package]] name = "derive_refineable" version = "0.1.0" -source = "git+https://github.com/zed-industries/zed#ee3f40fe25d206ca363b753e5b86e09ac6181eca" +source = "git+https://github.com/zed-industries/zed#20ed14254df868f20983554be8aa9d27d76e649f" dependencies = [ "proc-macro2", "quote", - "syn 2.0.114", + "syn 2.0.115", ] [[package]] @@ -1809,7 +1809,7 @@ checksum = "97369cbbc041bc366949bc74d34658d6cda5621039731c6310521892a3a20ae0" dependencies = [ "proc-macro2", "quote", - "syn 2.0.114", + "syn 2.0.115", ] [[package]] @@ -1960,7 +1960,7 @@ checksum = "67c78a4d8fdf9953a5c9d458f9efe940fd97a0cab0941c075a813ac594733827" dependencies = [ "proc-macro2", "quote", - "syn 2.0.114", + "syn 2.0.115", ] [[package]] @@ -1980,7 +1980,7 @@ checksum = "44f23cf4b44bfce11a86ace86f8a73ffdec849c9fd00a386a53d278bd9e81fb3" dependencies = [ "proc-macro2", "quote", - "syn 2.0.114", + "syn 2.0.115", ] [[package]] @@ -2103,7 +2103,7 @@ checksum = "a0aca10fb742cb43f9e7bb8467c91aa9bcb8e3ffbc6a6f7389bb93ffc920577d" dependencies = [ "proc-macro2", "quote", - "syn 2.0.114", + "syn 2.0.115", ] [[package]] @@ -2291,7 +2291,7 @@ checksum = "1a5c6c585bc94aaf2c7b51dd4c2ba22680844aba4c687be581871a6f518c5742" dependencies = [ "proc-macro2", "quote", - "syn 2.0.114", + "syn 2.0.115", ] [[package]] @@ -2445,7 +2445,7 @@ checksum = "162ee34ebcb7c64a8abebc059ce0fee27c2262618d7b60ed8faf72fef13c3650" dependencies = [ "proc-macro2", "quote", - "syn 2.0.114", + "syn 2.0.115", ] [[package]] @@ -2639,7 +2639,7 @@ dependencies = [ [[package]] name = "gpui" version = "0.2.2" -source = "git+https://github.com/zed-industries/zed#ee3f40fe25d206ca363b753e5b86e09ac6181eca" +source = "git+https://github.com/zed-industries/zed#20ed14254df868f20983554be8aa9d27d76e649f" dependencies = [ "anyhow", "as-raw-xcb-connection", @@ -2741,18 +2741,18 @@ dependencies = [ [[package]] name = "gpui_macros" version = "0.1.0" -source = "git+https://github.com/zed-industries/zed#ee3f40fe25d206ca363b753e5b86e09ac6181eca" +source = "git+https://github.com/zed-industries/zed#20ed14254df868f20983554be8aa9d27d76e649f" dependencies = [ "heck 0.5.0", "proc-macro2", "quote", - "syn 2.0.114", + "syn 2.0.115", ] [[package]] name = "gpui_tokio" version = "0.1.0" -source = "git+https://github.com/zed-industries/zed#ee3f40fe25d206ca363b753e5b86e09ac6181eca" +source = "git+https://github.com/zed-industries/zed#20ed14254df868f20983554be8aa9d27d76e649f" dependencies = [ "anyhow", "gpui", @@ -2987,7 +2987,7 @@ dependencies = [ [[package]] name = "http_client" version = "0.1.0" -source = "git+https://github.com/zed-industries/zed#ee3f40fe25d206ca363b753e5b86e09ac6181eca" +source = "git+https://github.com/zed-industries/zed#20ed14254df868f20983554be8aa9d27d76e649f" dependencies = [ "anyhow", "async-compression", @@ -3012,7 +3012,7 @@ dependencies = [ [[package]] name = "http_client_tls" version = "0.1.0" -source = "git+https://github.com/zed-industries/zed#ee3f40fe25d206ca363b753e5b86e09ac6181eca" +source = "git+https://github.com/zed-industries/zed#20ed14254df868f20983554be8aa9d27d76e649f" dependencies = [ "rustls", "rustls-platform-verifier", @@ -3330,7 +3330,7 @@ checksum = "c34819042dc3d3971c46c2190835914dfbe0c3c13f61449b2997f4e9722dfa60" dependencies = [ "proc-macro2", "quote", - "syn 2.0.114", + "syn 2.0.115", ] [[package]] @@ -3780,7 +3780,7 @@ dependencies = [ [[package]] name = "media" version = "0.1.0" -source = "git+https://github.com/zed-industries/zed#ee3f40fe25d206ca363b753e5b86e09ac6181eca" +source = "git+https://github.com/zed-industries/zed#20ed14254df868f20983554be8aa9d27d76e649f" dependencies = [ "anyhow", "bindgen", @@ -3935,9 +3935,9 @@ dependencies = [ [[package]] name = "native-tls" -version = "0.2.14" +version = "0.2.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "87de3442987e9dbec73158d5c715e7ad9072fda936bb03d19d7fa10e00520f0e" +checksum = "6cdede44f9a69cab2899a2049e2c3bd49bf911a157f6a3353d4a91c61abbce44" dependencies = [ "libc", "log", @@ -4020,7 +4020,7 @@ checksum = "0676bb32a98c1a483ce53e500a81ad9c3d5b3f7c920c28c24e9cb0980d0b5bc8" [[package]] name = "nostr" version = "0.44.1" -source = "git+https://github.com/rust-nostr/nostr#b968620ae4b8c31ee1cbcdb8ef8ec9ccd87e1fc6" +source = "git+https://github.com/rust-nostr/nostr#d5be9e6eb4b6385b42770a95b12c6e1146581932" dependencies = [ "aes", "base64", @@ -4045,7 +4045,7 @@ dependencies = [ [[package]] name = "nostr-connect" version = "0.44.0" -source = "git+https://github.com/rust-nostr/nostr#b968620ae4b8c31ee1cbcdb8ef8ec9ccd87e1fc6" +source = "git+https://github.com/rust-nostr/nostr#d5be9e6eb4b6385b42770a95b12c6e1146581932" dependencies = [ "async-utility", "futures-core", @@ -4058,7 +4058,7 @@ dependencies = [ [[package]] name = "nostr-database" version = "0.44.0" -source = "git+https://github.com/rust-nostr/nostr#b968620ae4b8c31ee1cbcdb8ef8ec9ccd87e1fc6" +source = "git+https://github.com/rust-nostr/nostr#d5be9e6eb4b6385b42770a95b12c6e1146581932" dependencies = [ "btreecap", "flatbuffers", @@ -4070,7 +4070,7 @@ dependencies = [ [[package]] name = "nostr-gossip" version = "0.44.0" -source = "git+https://github.com/rust-nostr/nostr#b968620ae4b8c31ee1cbcdb8ef8ec9ccd87e1fc6" +source = "git+https://github.com/rust-nostr/nostr#d5be9e6eb4b6385b42770a95b12c6e1146581932" dependencies = [ "nostr", ] @@ -4078,7 +4078,7 @@ dependencies = [ [[package]] name = "nostr-gossip-memory" version = "0.44.0" -source = "git+https://github.com/rust-nostr/nostr#b968620ae4b8c31ee1cbcdb8ef8ec9ccd87e1fc6" +source = "git+https://github.com/rust-nostr/nostr#d5be9e6eb4b6385b42770a95b12c6e1146581932" dependencies = [ "indexmap", "lru", @@ -4090,7 +4090,7 @@ dependencies = [ [[package]] name = "nostr-lmdb" version = "0.44.0" -source = "git+https://github.com/rust-nostr/nostr#b968620ae4b8c31ee1cbcdb8ef8ec9ccd87e1fc6" +source = "git+https://github.com/rust-nostr/nostr#d5be9e6eb4b6385b42770a95b12c6e1146581932" dependencies = [ "async-utility", "flume", @@ -4104,7 +4104,7 @@ dependencies = [ [[package]] name = "nostr-sdk" version = "0.44.1" -source = "git+https://github.com/rust-nostr/nostr#b968620ae4b8c31ee1cbcdb8ef8ec9ccd87e1fc6" +source = "git+https://github.com/rust-nostr/nostr#d5be9e6eb4b6385b42770a95b12c6e1146581932" dependencies = [ "async-utility", "async-wsocket", @@ -4196,7 +4196,7 @@ checksum = "ed3955f1a9c7c0c15e092f9c887db08b1fc683305fdf6eb6684f22555355e202" dependencies = [ "proc-macro2", "quote", - "syn 2.0.114", + "syn 2.0.115", ] [[package]] @@ -4479,7 +4479,7 @@ checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c" dependencies = [ "proc-macro2", "quote", - "syn 2.0.114", + "syn 2.0.115", ] [[package]] @@ -4638,7 +4638,7 @@ checksum = "9b4f627cb1b25917193a259e49bdad08f671f8d9708acfd5fe0a8c1455d87220" [[package]] name = "perf" version = "0.1.0" -source = "git+https://github.com/zed-industries/zed#ee3f40fe25d206ca363b753e5b86e09ac6181eca" +source = "git+https://github.com/zed-industries/zed#20ed14254df868f20983554be8aa9d27d76e649f" dependencies = [ "collections", "serde", @@ -4705,7 +4705,7 @@ dependencies = [ "phf_shared", "proc-macro2", "quote", - "syn 2.0.114", + "syn 2.0.115", ] [[package]] @@ -4740,7 +4740,7 @@ checksum = "6e918e4ff8c4549eb882f14b3a4bc8c8bc93de829416eacf579f1207a8fbf861" dependencies = [ "proc-macro2", "quote", - "syn 2.0.114", + "syn 2.0.115", ] [[package]] @@ -4871,7 +4871,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "479ca8adacdd7ce8f1fb39ce9ecccbfe93a3f1344b3d0d97f20bc0196208f62b" dependencies = [ "proc-macro2", - "syn 2.0.114", + "syn 2.0.115", ] [[package]] @@ -4902,7 +4902,7 @@ dependencies = [ "proc-macro-error-attr2", "proc-macro2", "quote", - "syn 2.0.114", + "syn 2.0.115", ] [[package]] @@ -4930,7 +4930,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "52717f9a02b6965224f95ca2a81e2e0c5c43baacd28ca057577988930b6c3d5b" dependencies = [ "quote", - "syn 2.0.114", + "syn 2.0.115", ] [[package]] @@ -5293,13 +5293,13 @@ checksum = "b7186006dcb21920990093f30e3dea63b7d6e977bf1256be20c3563a5db070da" dependencies = [ "proc-macro2", "quote", - "syn 2.0.114", + "syn 2.0.115", ] [[package]] name = "refineable" version = "0.1.0" -source = "git+https://github.com/zed-industries/zed#ee3f40fe25d206ca363b753e5b86e09ac6181eca" +source = "git+https://github.com/zed-industries/zed#20ed14254df868f20983554be8aa9d27d76e649f" dependencies = [ "derive_refineable", ] @@ -5398,7 +5398,7 @@ dependencies = [ [[package]] name = "reqwest_client" version = "0.1.0" -source = "git+https://github.com/zed-industries/zed#ee3f40fe25d206ca363b753e5b86e09ac6181eca" +source = "git+https://github.com/zed-industries/zed#20ed14254df868f20983554be8aa9d27d76e649f" dependencies = [ "anyhow", "bytes", @@ -5453,7 +5453,7 @@ dependencies = [ [[package]] name = "rope" version = "0.1.0" -source = "git+https://github.com/zed-industries/zed#ee3f40fe25d206ca363b753e5b86e09ac6181eca" +source = "git+https://github.com/zed-industries/zed#20ed14254df868f20983554be8aa9d27d76e649f" dependencies = [ "arrayvec", "log", @@ -5491,7 +5491,7 @@ dependencies = [ "proc-macro2", "quote", "rust-embed-utils", - "syn 2.0.114", + "syn 2.0.115", "walkdir", ] @@ -5715,7 +5715,7 @@ dependencies = [ [[package]] name = "scheduler" version = "0.1.0" -source = "git+https://github.com/zed-industries/zed#ee3f40fe25d206ca363b753e5b86e09ac6181eca" +source = "git+https://github.com/zed-industries/zed#20ed14254df868f20983554be8aa9d27d76e649f" dependencies = [ "async-task", "backtrace", @@ -5749,7 +5749,7 @@ dependencies = [ "proc-macro2", "quote", "serde_derive_internals", - "syn 2.0.114", + "syn 2.0.115", ] [[package]] @@ -5903,7 +5903,7 @@ checksum = "d540f220d3187173da220f885ab66608367b6574e925011a9353e4badda91d79" dependencies = [ "proc-macro2", "quote", - "syn 2.0.114", + "syn 2.0.115", ] [[package]] @@ -5914,7 +5914,7 @@ checksum = "18d26a20a969b9e3fdf2fc2d9f21eda6c40e2de84c9408bb5d3b05d499aae711" dependencies = [ "proc-macro2", "quote", - "syn 2.0.114", + "syn 2.0.115", ] [[package]] @@ -5961,7 +5961,7 @@ checksum = "175ee3e80ae9982737ca543e96133087cbd9a485eecc3bc4de9c1a37b47ea59c" dependencies = [ "proc-macro2", "quote", - "syn 2.0.114", + "syn 2.0.115", ] [[package]] @@ -6230,7 +6230,7 @@ checksum = "172175341049678163e979d9107ca3508046d4d2a7c6682bee46ac541b17db69" dependencies = [ "proc-macro-error2", "quote", - "syn 2.0.114", + "syn 2.0.115", ] [[package]] @@ -6306,7 +6306,7 @@ dependencies = [ "proc-macro2", "quote", "rustversion", - "syn 2.0.114", + "syn 2.0.115", ] [[package]] @@ -6318,7 +6318,7 @@ dependencies = [ "heck 0.5.0", "proc-macro2", "quote", - "syn 2.0.114", + "syn 2.0.115", ] [[package]] @@ -6330,7 +6330,7 @@ checksum = "13c2bddecc57b384dee18652358fb23172facb8a2c51ccc10d74c157bdea3292" [[package]] name = "sum_tree" version = "0.1.0" -source = "git+https://github.com/zed-industries/zed#ee3f40fe25d206ca363b753e5b86e09ac6181eca" +source = "git+https://github.com/zed-industries/zed#20ed14254df868f20983554be8aa9d27d76e649f" dependencies = [ "arrayvec", "log", @@ -6457,9 +6457,9 @@ dependencies = [ [[package]] name = "syn" -version = "2.0.114" +version = "2.0.115" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d4d107df263a3013ef9b1879b0df87d706ff80f65a86ea879bd9c31f9b307c2a" +checksum = "6e614ed320ac28113fa64972c4262d5dbc89deacdfd00c34a3e4cea073243c12" dependencies = [ "proc-macro2", "quote", @@ -6492,7 +6492,7 @@ checksum = "728a70f3dbaf5bab7f0c4b1ac8d7ae5ea60a4b5549c8a5914361c99147a709d2" dependencies = [ "proc-macro2", "quote", - "syn 2.0.114", + "syn 2.0.115", ] [[package]] @@ -6653,7 +6653,7 @@ checksum = "4fee6c4efc90059e10f81e6d42c60a18f76588c3d74cb83a0b242a2b6c7504c1" dependencies = [ "proc-macro2", "quote", - "syn 2.0.114", + "syn 2.0.115", ] [[package]] @@ -6664,7 +6664,7 @@ checksum = "ebc4ee7f67670e9b64d05fa4253e753e016c6c95ff35b89b7941d6b856dec1d5" dependencies = [ "proc-macro2", "quote", - "syn 2.0.114", + "syn 2.0.115", ] [[package]] @@ -6788,7 +6788,7 @@ checksum = "af407857209536a95c8e56f8231ef2c2e2aff839b22e07a1ffcbc617e9db9fa5" dependencies = [ "proc-macro2", "quote", - "syn 2.0.114", + "syn 2.0.115", ] [[package]] @@ -6937,9 +6937,9 @@ dependencies = [ [[package]] name = "toml_parser" -version = "1.0.7+spec-1.1.0" +version = "1.0.8+spec-1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "247eaa3197818b831697600aadf81514e577e0cba5eab10f7e064e78ae154df1" +checksum = "0742ff5ff03ea7e67c8ae6c93cac239e0d9784833362da3f9a9c1da8dfefcbdc" dependencies = [ "winnow", ] @@ -7021,7 +7021,7 @@ checksum = "7490cfa5ec963746568740651ac6781f701c9c5ea257c58e057f3ba8cf69e8da" dependencies = [ "proc-macro2", "quote", - "syn 2.0.114", + "syn 2.0.115", ] [[package]] @@ -7297,7 +7297,7 @@ checksum = "06abde3611657adf66d383f00b093d7faecc7fa57071cce2578660c9f1010821" [[package]] name = "util" version = "0.1.0" -source = "git+https://github.com/zed-industries/zed#ee3f40fe25d206ca363b753e5b86e09ac6181eca" +source = "git+https://github.com/zed-industries/zed#20ed14254df868f20983554be8aa9d27d76e649f" dependencies = [ "anyhow", "async-fs", @@ -7335,11 +7335,11 @@ dependencies = [ [[package]] name = "util_macros" version = "0.1.0" -source = "git+https://github.com/zed-industries/zed#ee3f40fe25d206ca363b753e5b86e09ac6181eca" +source = "git+https://github.com/zed-industries/zed#20ed14254df868f20983554be8aa9d27d76e649f" dependencies = [ "perf", "quote", - "syn 2.0.114", + "syn 2.0.115", ] [[package]] @@ -7541,7 +7541,7 @@ dependencies = [ "bumpalo", "proc-macro2", "quote", - "syn 2.0.114", + "syn 2.0.115", "wasm-bindgen-shared", ] @@ -7933,7 +7933,7 @@ checksum = "9107ddc059d5b6fbfbffdfa7a7fe3e22a226def0b2608f72e9d552763d3e1ad7" dependencies = [ "proc-macro2", "quote", - "syn 2.0.114", + "syn 2.0.115", ] [[package]] @@ -7944,7 +7944,7 @@ checksum = "053e2e040ab57b9dc951b72c264860db7eb3b0200ba345b4e4c3b14f67855ddf" dependencies = [ "proc-macro2", "quote", - "syn 2.0.114", + "syn 2.0.115", ] [[package]] @@ -7955,7 +7955,7 @@ checksum = "29bee4b38ea3cde66011baa44dba677c432a78593e202392d1e9070cf2a7fca7" dependencies = [ "proc-macro2", "quote", - "syn 2.0.114", + "syn 2.0.115", ] [[package]] @@ -7966,7 +7966,7 @@ checksum = "3f316c4a2570ba26bbec722032c4099d8c8bc095efccdc15688708623367e358" dependencies = [ "proc-macro2", "quote", - "syn 2.0.114", + "syn 2.0.115", ] [[package]] @@ -8448,7 +8448,7 @@ dependencies = [ "heck 0.5.0", "indexmap", "prettyplease", - "syn 2.0.114", + "syn 2.0.115", "wasm-metadata", "wit-bindgen-core", "wit-component", @@ -8464,7 +8464,7 @@ dependencies = [ "prettyplease", "proc-macro2", "quote", - "syn 2.0.114", + "syn 2.0.115", "wit-bindgen-core", "wit-bindgen-rust", ] @@ -8661,7 +8661,7 @@ checksum = "b659052874eb698efe5b9e8cf382204678a0086ebf46982b79d6ca3182927e5d" dependencies = [ "proc-macro2", "quote", - "syn 2.0.114", + "syn 2.0.115", "synstructure", ] @@ -8709,7 +8709,7 @@ dependencies = [ "proc-macro-crate", "proc-macro2", "quote", - "syn 2.0.114", + "syn 2.0.115", "zbus_names", "zvariant", "zvariant_utils", @@ -8856,7 +8856,7 @@ checksum = "4122cd3169e94605190e77839c9a40d40ed048d305bfdc146e7df40ab0f3e517" dependencies = [ "proc-macro2", "quote", - "syn 2.0.114", + "syn 2.0.115", ] [[package]] @@ -8876,7 +8876,7 @@ checksum = "d71e5d6e06ab090c67b5e44993ec16b72dcbaabc526db883a360057678b48502" dependencies = [ "proc-macro2", "quote", - "syn 2.0.114", + "syn 2.0.115", "synstructure", ] @@ -8897,7 +8897,7 @@ checksum = "85a5b4158499876c763cb03bc4e49185d3cccbabb15b33c627f7884f43db852e" dependencies = [ "proc-macro2", "quote", - "syn 2.0.114", + "syn 2.0.115", ] [[package]] @@ -8930,13 +8930,13 @@ checksum = "eadce39539ca5cb3985590102671f2567e659fca9666581ad3411d59207951f3" dependencies = [ "proc-macro2", "quote", - "syn 2.0.114", + "syn 2.0.115", ] [[package]] name = "zlog" version = "0.1.0" -source = "git+https://github.com/zed-industries/zed#ee3f40fe25d206ca363b753e5b86e09ac6181eca" +source = "git+https://github.com/zed-industries/zed#20ed14254df868f20983554be8aa9d27d76e649f" dependencies = [ "anyhow", "chrono", @@ -8946,14 +8946,14 @@ dependencies = [ [[package]] name = "zmij" -version = "1.0.20" +version = "1.0.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4de98dfa5d5b7fef4ee834d0073d560c9ca7b6c46a71d058c48db7960f8cfaf7" +checksum = "b8848ee67ecc8aedbaf3e4122217aff892639231befc6a1b58d29fff4c2cabaa" [[package]] name = "ztracing" version = "0.1.0" -source = "git+https://github.com/zed-industries/zed#ee3f40fe25d206ca363b753e5b86e09ac6181eca" +source = "git+https://github.com/zed-industries/zed#20ed14254df868f20983554be8aa9d27d76e649f" dependencies = [ "tracing", "tracing-subscriber", @@ -8964,7 +8964,7 @@ dependencies = [ [[package]] name = "ztracing_macro" version = "0.1.0" -source = "git+https://github.com/zed-industries/zed#ee3f40fe25d206ca363b753e5b86e09ac6181eca" +source = "git+https://github.com/zed-industries/zed#20ed14254df868f20983554be8aa9d27d76e649f" [[package]] name = "zune-core" @@ -9029,7 +9029,7 @@ dependencies = [ "proc-macro-crate", "proc-macro2", "quote", - "syn 2.0.114", + "syn 2.0.115", "zvariant_utils", ] @@ -9042,6 +9042,6 @@ dependencies = [ "proc-macro2", "quote", "serde", - "syn 2.0.114", + "syn 2.0.115", "winnow", ] diff --git a/crates/state/src/gossip.rs b/crates/state/src/gossip.rs deleted file mode 100644 index 1399827..0000000 --- a/crates/state/src/gossip.rs +++ /dev/null @@ -1,107 +0,0 @@ -use std::collections::{HashMap, HashSet}; - -use nostr_sdk::prelude::*; - -/// Gossip -#[derive(Debug, Clone, Default)] -pub struct Gossip { - /// Gossip relays for each public key - relays: HashMap)>>, - /// Messaging relays for each public key - messaging_relays: HashMap>, -} - -impl Gossip { - /// Get read relays for a given public key - pub fn read_relays(&self, public_key: &PublicKey) -> Vec { - self.relays - .get(public_key) - .map(|relays| { - relays - .iter() - .filter_map(|(url, metadata)| { - if metadata.is_none() || metadata == &Some(RelayMetadata::Read) { - Some(url.to_owned()) - } else { - None - } - }) - .collect() - }) - .unwrap_or_default() - } - - /// Get write relays for a given public key - pub fn write_relays(&self, public_key: &PublicKey) -> Vec { - self.relays - .get(public_key) - .map(|relays| { - relays - .iter() - .filter_map(|(url, metadata)| { - if metadata.is_none() || metadata == &Some(RelayMetadata::Write) { - Some(url.to_owned()) - } else { - None - } - }) - .collect() - }) - .unwrap_or_default() - } - - /// Insert gossip relays for a public key - pub fn insert_relays(&mut self, event: &Event) { - self.relays.entry(event.pubkey).or_default().extend( - event - .tags - .iter() - .filter_map(|tag| { - if let Some(TagStandard::RelayMetadata { - relay_url, - metadata, - }) = tag.clone().to_standardized() - { - Some((relay_url, metadata)) - } else { - None - } - }) - .take(3), - ); - - log::info!("Updating gossip relays for: {}", event.pubkey); - } - - /// Get messaging relays for a given public key - pub fn messaging_relays(&self, public_key: &PublicKey) -> Vec { - self.messaging_relays - .get(public_key) - .cloned() - .unwrap_or_default() - .into_iter() - .collect() - } - - /// Insert messaging relays for a public key - pub fn insert_messaging_relays(&mut self, event: &Event) { - self.messaging_relays - .entry(event.pubkey) - .or_default() - .extend( - event - .tags - .iter() - .filter_map(|tag| { - if let Some(TagStandard::Relay(url)) = tag.as_standardized() { - Some(url.to_owned()) - } else { - None - } - }) - .take(3), - ); - - log::info!("Updating messaging relays for: {}", event.pubkey); - } -} diff --git a/crates/state/src/lib.rs b/crates/state/src/lib.rs index 45031b2..49d73ad 100644 --- a/crates/state/src/lib.rs +++ b/crates/state/src/lib.rs @@ -107,9 +107,16 @@ impl NostrRegistry { let client = ClientBuilder::default() .signer(signer.clone()) .gossip(NostrGossipMemory::unbounded()) + .gossip_config( + GossipConfig::default() + .fetch_timeout(Duration::from_secs(TIMEOUT)) + .sync_initial_timeout(Duration::from_secs(2)) + .sync_idle_timeout(Duration::from_secs(TIMEOUT)), + ) .database(lmdb) .automatic_authentication(false) .verify_subscriptions(false) + .connect_timeout(Duration::from_secs(TIMEOUT)) .sleep_when_idle(SleepWhenIdle::Enabled { timeout: Duration::from_secs(600), }) @@ -174,6 +181,15 @@ impl NostrRegistry { // Update the state this.update(cx, |this, cx| { this.set_connected(cx); + })?; + + // Small delay + cx.background_executor() + .timer(Duration::from_millis(200)) + .await; + + // Update the state + this.update(cx, |this, cx| { this.get_signer(cx); })?; @@ -655,8 +671,11 @@ impl NostrRegistry { // Publish relay list event let event = EventBuilder::relay_list(relay_list).sign(signer).await?; - let output = client.send_event(&event).broadcast().await?; - log::info!("Published relay list event: {:?}", output.id()); + client + .send_event(&event) + .broadcast() + .ok_timeout(Duration::from_secs(TIMEOUT)) + .await?; // Construct the default metadata let name = petname::petname(2, "-").unwrap_or("Cooper".to_string()); @@ -665,24 +684,33 @@ impl NostrRegistry { // Publish metadata event let event = EventBuilder::metadata(&metadata).sign(signer).await?; - let output = client.send_event(&event).broadcast().await?; - log::info!("Published metadata event: {:?}", output.id()); + client + .send_event(&event) + .broadcast() + .ok_timeout(Duration::from_secs(TIMEOUT)) + .await?; // Construct the default contact list let contacts = vec![Contact::new(PublicKey::parse(COOP_PUBKEY).unwrap())]; // Publish contact list event let event = EventBuilder::contact_list(contacts).sign(signer).await?; - let output = client.send_event(&event).broadcast().await?; - log::info!("Published contact list event: {:?}", output.id()); + client + .send_event(&event) + .broadcast() + .ok_timeout(Duration::from_secs(TIMEOUT)) + .await?; // Construct the default messaging relay list let relays = default_messaging_relays(); // Publish messaging relay list event let event = EventBuilder::nip17_relay_list(relays).sign(signer).await?; - let output = client.send_event(&event).to_nip65().await?; - log::info!("Published messaging relay list event: {:?}", output.id()); + client + .send_event(&event) + .to_nip65() + .ok_timeout(Duration::from_secs(TIMEOUT)) + .await?; // Write user's credentials to the system keyring write_credential.await?;