diff --git a/e2e/src/tests/http.rs b/e2e/src/tests/http.rs index e47d5d4..22907d7 100644 --- a/e2e/src/tests/http.rs +++ b/e2e/src/tests/http.rs @@ -24,7 +24,7 @@ async fn http_get_icann() { let client = testnet.pubky_client_builder().build().unwrap(); let response = client - .request(Method::GET, "https://example.com/") + .request(Method::GET, "https://google.com/") .send() .await .unwrap(); diff --git a/pubky-client/pkg/test/http.js b/pubky-client/pkg/test/http.js index 2119bca..da088cd 100644 --- a/pubky-client/pkg/test/http.js +++ b/pubky-client/pkg/test/http.js @@ -9,7 +9,7 @@ test("basic fetch", async (t) => { // Normal TLD { - let response = await client.fetch(`https://relay.pkarr.org/`); + let response = await client.fetch(`https://google.com/`); t.equal(response.status, 200); } diff --git a/pubky-client/src/native.rs b/pubky-client/src/native.rs index 79bf52a..b8cfe97 100644 --- a/pubky-client/src/native.rs +++ b/pubky-client/src/native.rs @@ -18,6 +18,8 @@ use std::time::Duration; static DEFAULT_USER_AGENT: &str = concat!("pubky.org", "@", env!("CARGO_PKG_VERSION"),); +static DEFAULT_RELAYS: &[&str] = &["https://pkarr.pubky.org/", "https://pkarr.pubky.app/"]; + #[macro_export] macro_rules! handle_http_error { ($res:expr) => { @@ -168,7 +170,9 @@ pub struct Client { impl Client { /// Returns a builder to edit settings before creating [Client]. pub fn builder() -> ClientBuilder { - ClientBuilder::default() + let mut builder = ClientBuilder::default(); + builder.pkarr(|pkarr| pkarr.relays(DEFAULT_RELAYS).expect("infallible")); + builder } // === Getters === @@ -178,3 +182,15 @@ impl Client { &self.pkarr } } + +#[cfg(test)] +mod test { + use super::*; + + #[tokio::test] + async fn test_fetch() { + let client = Client::builder().build().unwrap(); + let response = client.get("https://google.com/").send().await.unwrap(); + assert_eq!(response.status(), 200); + } +} diff --git a/pubky-homeserver/config.sample.toml b/pubky-homeserver/config.sample.toml index 9e4d4a5..e97bbdb 100644 --- a/pubky-homeserver/config.sample.toml +++ b/pubky-homeserver/config.sample.toml @@ -103,7 +103,7 @@ dht_bootstrap_nodes = [ # Relay node urls for the DHT. # Improves the availability of pkarr packets. # If not set and no bootstrap nodes are set, the default pkarr relay nodes will be used. -dht_relay_nodes = ["https://relay.pkarr.org", "https://pkarr.pubky.org"] +dht_relay_nodes = ["https://pkarr.pubky.app", "https://pkarr.pubky.org"] # Default UDP request timeout for the DHT dht_request_timeout_ms = 2000 diff --git a/pubky-homeserver/src/data_directory/config.default.toml b/pubky-homeserver/src/data_directory/config.default.toml index 23f2cc8..e277241 100644 --- a/pubky-homeserver/src/data_directory/config.default.toml +++ b/pubky-homeserver/src/data_directory/config.default.toml @@ -17,9 +17,11 @@ admin_password = "admin" public_ip = "127.0.0.1" icann_domain = "localhost" user_keys_republisher_interval = 14400 # 4 hours in seconds +dht_relay_nodes = ["https://pkarr.pubky.app", "https://pkarr.pubky.org"] + + # The following params exist, but the default value is None. # See ./sample.config.toml for usage # public_icann_http_port = # dht_bootstrap_nodes = -# dht_relay_nodes = # dht_request_timeout_ms = diff --git a/pubky-homeserver/src/data_directory/config_toml.rs b/pubky-homeserver/src/data_directory/config_toml.rs index 9d8a479..3949551 100644 --- a/pubky-homeserver/src/data_directory/config_toml.rs +++ b/pubky-homeserver/src/data_directory/config_toml.rs @@ -166,6 +166,7 @@ impl ConfigToml { config.admin.listen_socket = SocketAddr::from(([127, 0, 0, 1], 0)); config.pkdns.icann_domain = Some(Domain::from_str("localhost").expect("localhost is a valid domain")); + config.pkdns.dht_relay_nodes = None; config } } @@ -214,7 +215,6 @@ mod tests { assert_eq!(c.pkdns.public_icann_http_port, None); assert_eq!(c.pkdns.user_keys_republisher_interval, 14400); assert_eq!(c.pkdns.dht_bootstrap_nodes, None); - assert_eq!(c.pkdns.dht_relay_nodes, None); assert_eq!(c.pkdns.dht_request_timeout_ms, None); assert_eq!(c.drive.rate_limits, vec![]); }