fiatjaf
0b6543e1a8
use setInterval() instead of nested setTimeout()s for pingpong.
...
prevent call stacks from building up
2025-12-05 21:46:16 -03:00
fiatjaf
693b262b7c
CLOSED answers to dummyReq are also ok.
2025-12-05 21:03:34 -03:00
fiatjaf
85c964be3d
enableReconnect() always update the filters to the time of the last received event on each subscription.
2025-12-05 13:24:49 -03:00
fiatjaf
de7d459f6f
only transform filters with enableReconnect() when we're actually reconnecting.
2025-12-05 09:22:33 -03:00
fiatjaf
21ec5bb2dc
allow automatically performing AUTH against all relays.
2025-12-05 09:12:59 -03:00
fiatjaf
c45e861493
fire subscriptions.
...
this was broken during the negentropy stuff.
fixes https://github.com/nbd-wtf/nostr-tools/issues/517
2025-11-19 14:53:24 -03:00
fiatjaf
66cc55c7f0
nip77: negentropy implementation and nip77 interface.
...
supersedes https://github.com/nbd-wtf/nostr-tools/pull/516
2025-11-18 09:33:11 -03:00
fiatjaf
5841b0936b
throw when subscription is created without filters.
...
fixes https://github.com/nbd-wtf/nostr-tools/pull/497
2025-11-18 08:09:45 -03:00
max-gy
e19db61bec
nip77: adds wrapper for negentropy and fallback for yieldThread MessageChannel
2025-11-18 08:06:26 -03:00
Chris McCormick
1bec9fa365
Ping pong memory leak fix for #511 ( #512 )
...
* New test for pingpong memory leak (failing).
* Shim once in relay ping mem test.
* Fix pong memory leak with .once.
Fixes #511 .
* Fix missing global WebSocket on Node.
* Lint fix.
* Remove overkill WebSocket impl check.
2025-10-26 23:33:38 -03:00
Chris McCormick
bc1294e4e6
Reconnect with exponential backoff flag: enableReconnect ( #507 )
...
https://github.com/nbd-wtf/nostr-tools/pull/507
2025-09-30 10:01:07 -03:00
codytseng
8866042edf
relay: ensure onclose callback is triggered
2025-08-24 22:22:38 -03:00
fiatjaf
86235314c4
deduplicate relay URLs in pool.subscribe() and pool.subscribeMany()
2025-08-06 10:37:36 -03:00
Chris McCormick
87f2c74bb3
Get pingpong working in the browser with dummy REQ ( #499 )
2025-07-24 11:22:15 -03:00
fiatjaf
4b6cc19b9c
cleanup.
2025-07-23 16:22:25 -03:00
Chris McCormick
6ec19b618c
WIP: pingpong with logging.
2025-07-23 16:16:12 -03:00
Chris McCormick
b3cc9f50e5
WIP: hack in pingpong #495
...
TypeScript does not like the duck typing of .on and .ping (only valid on Node ws).
2025-07-23 16:16:12 -03:00
fiatjaf
d706ef961f
pool: closed relays must be eliminated.
2025-07-17 23:39:16 -03:00
fiatjaf
f0357805c3
catch errors on function passed to auth() and log them.
2025-06-10 10:20:20 -03:00
fiatjaf
ffa7fb926e
remove deprecated unused _onauth hook.
2025-06-10 10:16:11 -03:00
fiatjaf
5b78a829c7
ignore error when sending on a CLOSE to a closed connection.
2025-05-31 12:29:24 -03:00
fiatjaf
de26ee98c5
failed to connect to a websocket should reject the promise.
2025-05-31 11:16:22 -03:00
codytseng
c015b6e794
fix bug where concurrent auth calls returned only one response
2025-05-09 08:43:53 -03:00
fiatjaf
dd603e47d8
some small bugs codebuff found.
2025-04-03 23:31:34 -03:00
codytseng
6b39de04d7
Fix auth() not returning on consecutive calls
2025-03-17 13:31:24 -03:00
fiatjaf
05eb62da5b
support subscription label, not only an absolute id.
2025-03-02 01:25:39 -03:00
im-adithya
9c50b2c655
fix: clear timeout in publish and auth
2024-12-03 11:09:11 -03:00
Asai Toshiya
d062ab8afd
make publish() timeout.
2024-10-30 11:55:04 -03:00
Callum Macdonald
0b5b35714c
Add subscription id to relay.subscribe().
...
fix #439
2024-10-17 09:30:49 -03:00
fiatjaf
753ff323ea
specify websocket error as close reason when no message is available.
...
fixes https://github.com/nbd-wtf/nostr-tools/issues/411
2024-06-06 15:32:27 -03:00
fiatjaf
87a91c2daf
fix useWebSocketImplementation so it works with pool on nodejs esm.
2024-05-29 13:39:00 -03:00
hzrd149
e217f751da
fix count request in anstract relay
2024-05-02 11:37:50 -03:00
fiatjaf
1d7620a057
temporary _onauth handler until we figure stuff out.
2024-04-05 07:22:17 -03:00
fiatjaf
564c9bca17
don't try to send a ["CLOSE"] after the websocket is closed.
...
addresses https://github.com/nbd-wtf/nostr-tools/pull/387
2024-03-16 13:40:02 -03:00
fiatjaf
0190ae94a7
Revert "fix: error thrown on ws close"
...
This reverts commit e1bde08ff3 .
2024-03-16 13:32:33 -03:00
Jeffrey Ko
e1bde08ff3
fix: error thrown on ws close
2024-03-16 13:29:24 -03:00
Alex Gleason
9c0ade1329
Fix (most) slow types by adding explicit return types
2024-03-07 07:22:44 -03:00
fiatjaf
01f13292bb
useWebSocketImplementation() on relay.ts
2024-02-14 13:19:48 -03:00
fiatjaf
1cfe705baf
auth() returns a promise that resolves on OK.
...
fixes https://github.com/nbd-wtf/nostr-tools/issues/336
2023-12-26 07:56:55 -03:00
fiatjaf
703c29a311
fix things so relays tests work.
2023-12-22 11:38:35 -03:00
fiatjaf
f719d99a11
rename this._push to this._onmessage and use it internally.
2023-12-22 10:54:03 -03:00
fiatjaf
7adbd30799
streamline and improve benchmarks.
2023-12-22 06:57:23 -03:00
fiatjaf
7f11c0c618
unsplit, backwards-compatibility, wasm relay and pool must be configured manually from the abstract classes.
2023-12-21 19:57:28 -03:00