diff --git a/CHANGELOG.md b/CHANGELOG.md index 5aa98cd0..febaa32c 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,6 +7,7 @@ - [x] Add log in as user - [x] Add multi-account support - [x] Remove authors limit of 256 +- [x] Improve relay hints and selection # 0.3.0 diff --git a/src/app/state.ts b/src/app/state.ts index 83ccc3a6..15b1184f 100644 --- a/src/app/state.ts +++ b/src/app/state.ts @@ -95,7 +95,7 @@ setInterval(() => { // Prune connections we haven't used in a while for (const [url, socket] of Network.pool.data.entries()) { if (socket.meta.last_activity < now() - 60) { - Network.pool.remove(url) + Network.pool.get(url).disconnect() } else if (userRelays.has(url) && socket.meta.quality < 0.3) { $slowConnections.push(url) } diff --git a/src/engine/components/Network.ts b/src/engine/components/Network.ts index fa4b2abe..aa312627 100644 --- a/src/engine/components/Network.ts +++ b/src/engine/components/Network.ts @@ -52,7 +52,7 @@ export class Network { pool = new Pool() authHandler: (url: string, challenge: string) => void - relayIsLowQuality = (url: string) => this.pool.get(url, {autoConnect: false})?.meta?.quality < 0.5 + relayIsLowQuality = (url: string) => this.pool.get(url, {autoConnect: false})?.meta?.quality < 0.6 getExecutor = (urls: string[], {bypassBoot = false} = {}) => { if (this.engine.Env.FORCE_RELAYS?.length > 0) {