From 76e95201383e3cc17333c98496220aa29e34a90e Mon Sep 17 00:00:00 2001 From: nazeh Date: Mon, 7 Oct 2024 17:17:58 +0300 Subject: [PATCH] feat(pubky): return cached packets if nothing else is available --- pubky/src/native.rs | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/pubky/src/native.rs b/pubky/src/native.rs index 81924ba..2b04804 100644 --- a/pubky/src/native.rs +++ b/pubky/src/native.rs @@ -11,7 +11,7 @@ use reqwest::{RequestBuilder, Response}; use tokio::sync::oneshot; use url::Url; -use pkarr::{Keypair, PkarrClientAsync}; +use pkarr::{mainline::MutableItem, Keypair, PkarrClientAsync}; use ::pkarr::{mainline::dht::Testnet, PkarrClient, PublicKey, SignedPacket}; @@ -240,7 +240,10 @@ impl PubkyClient { &self, public_key: &PublicKey, ) -> Result> { - Ok(self.pkarr.resolve(public_key).await?) + Ok(self.pkarr.resolve(public_key).await?.or(self + .pkarr + .cache() + .get(&MutableItem::target_from_key(public_key.as_bytes(), &None)))) } pub(crate) async fn pkarr_publish(&self, signed_packet: &SignedPacket) -> Result<()> {