diff --git a/Cargo.lock b/Cargo.lock index 7195a14..cee3696 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1845,6 +1845,7 @@ version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "084b6e5bfcc186781b71257d636b660f20e94bb588c3ba52393fd9faf7a7bfda" dependencies = [ + "base32", "document-features", "getrandom", "httpdate", diff --git a/pkarr/Cargo.toml b/pkarr/Cargo.toml index 73e93e1..33fc7d5 100644 --- a/pkarr/Cargo.toml +++ b/pkarr/Cargo.toml @@ -30,7 +30,7 @@ tokio = { version = "1.41.1", optional = true, default-features = false } sha1_smol = { version = "1.0.1", optional = true } # feat: serde dependencies -serde = { version = "1.0.215", features = ["derive"], optional = true } +serde = { version = "1.0.215", features = ["derive"] } # feat: endpoints dependencies futures-lite = { version = "2.5.0", default-features = false, features= ["std"], optional = true } @@ -40,7 +40,7 @@ genawaiter = { version = "0.99.1", default-features = false, features = ["future webpki-roots = { version = "0.26.7", optional = true } [target.'cfg(not(target_arch = "wasm32"))'.dependencies] -pubky-timestamp = { version = "0.2.0", default-features = false } +pubky-timestamp = { version = "0.2.0", features = ["full"] } # feat: dht dependencies mainline = { git = "https://github.com/pubky/mainline", branch="v5", optional = true } @@ -86,9 +86,6 @@ dht = ["dep:mainline", "dep:flume"] ## Use [client::relay::Client] relay = ["dep:reqwest", "dep:tokio", "dep:sha1_smol", "dep:flume"] -## Derive serde Serialize/Deserialize for PublicKey -serde = ["dep:serde", "pubky-timestamp/serde", "pubky-timestamp/httpdate"] - # Extra ## Use [crate::extra::lmdb-cache::LmdbCache] lmdb-cache = ["dep:heed", "dep:byteorder", "dep:page_size"] @@ -102,7 +99,7 @@ tls = ["rustls", "ed25519-dalek/pkcs8", "dep:webpki"] reqwest-builder = ["tls", "reqwest-resolve"] ## Use all features -full = ["dht", "relay", "serde", "endpoints", "lmdb-cache", "reqwest-resolve", "tls", "reqwest-builder"] +full = ["dht", "relay", "endpoints", "lmdb-cache", "reqwest-resolve", "tls", "reqwest-builder"] default = ["full"] diff --git a/pkarr/src/keys.rs b/pkarr/src/keys.rs index 12ca9c7..f908ddc 100644 --- a/pkarr/src/keys.rs +++ b/pkarr/src/keys.rs @@ -16,7 +16,6 @@ use std::{ hash::Hash, }; -#[cfg(feature = "serde")] use serde::{Deserialize, Serialize}; #[derive(Clone, PartialEq, Eq)] @@ -305,7 +304,6 @@ impl Debug for PublicKey { } } -#[cfg(feature = "serde")] impl Serialize for PublicKey { fn serialize(&self, serializer: S) -> Result where @@ -316,7 +314,6 @@ impl Serialize for PublicKey { } } -#[cfg(feature = "serde")] impl<'de> Deserialize<'de> for PublicKey { fn deserialize(deserializer: D) -> Result where @@ -510,7 +507,6 @@ mod tests { assert_eq!(public_key.verifying_key().as_bytes(), &expected); } - #[cfg(feature = "serde")] #[test] fn serde() { let str = "yg4gxe7z1r7mr6orids9fh95y7gxhdsxjqi6nngsxxtakqaxr5no"; diff --git a/pkarr/src/lib.rs b/pkarr/src/lib.rs index 9abad71..5a8eec6 100644 --- a/pkarr/src/lib.rs +++ b/pkarr/src/lib.rs @@ -3,6 +3,8 @@ #![doc = document_features::document_features!()] //! +// TODO: once we merge udp and relay clients, we should have a "client" feature + // Modules #[cfg(any(target_arch = "wasm32", feature = "relay", feature = "dht"))] pub mod client; diff --git a/pkarr/src/signed_packet.rs b/pkarr/src/signed_packet.rs index 3b1c6a3..40deea7 100644 --- a/pkarr/src/signed_packet.rs +++ b/pkarr/src/signed_packet.rs @@ -14,7 +14,6 @@ use std::{ net::{IpAddr, Ipv4Addr, Ipv6Addr}, }; -#[cfg(feature = "serde")] use serde::{Deserialize, Serialize}; use pubky_timestamp::Timestamp; @@ -664,7 +663,6 @@ impl Display for SignedPacket { // === Serialization === -#[cfg(feature = "serde")] impl Serialize for SignedPacket { /// Serialize a [SignedPacket] for persistent storage. fn serialize(&self, serializer: S) -> Result @@ -675,7 +673,6 @@ impl Serialize for SignedPacket { } } -#[cfg(feature = "serde")] impl<'de> Deserialize<'de> for SignedPacket { /// Deserialize a [SignedPacket] from persistent storage. fn deserialize(deserializer: D) -> Result @@ -1066,7 +1063,6 @@ mod tests { ); } - #[cfg(feature = "serde")] #[test] fn serde() { use postcard::{from_bytes, to_allocvec};