Commit Graph
49 Commits
Author SHA1 Message Date
fiatjaf 87a91c2daf fix useWebSocketImplementation so it works with pool on nodejs esm. 2024-05-29 13:39:00 -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
fiatjaf a4ae964ee6 split relay and pool into pure and wasm modules. 2023-12-21 17:27:42 -03:00
fiatjaf 1f7378ca49 import from core.ts instead of pure.ts whenever possible. 2023-12-21 17:27:32 -03:00
Shusui MOYATANIandfiatjaf_ ef12a451be fix ensureRelay 2023-12-21 16:42:00 -03:00
fiatjaf fe87529646 change tests and nips to use the new api. 2023-12-19 13:58:37 -03:00
fiatjaf 8840c4d8e2 final adjustments and now even the flaky tests that depend on others's relay should pass most of the time. 2023-12-19 10:01:52 -03:00
fiatjaf 804403f574 change the way eose and connection timeouts work. 2023-12-18 17:11:16 -03:00
fiatjaf c54fd95b3e decrease default eoseTimeout to 3400ms. 2023-12-18 10:18:34 -03:00
fiatjaf 9e4911160a make pool.subscribe_ methods return synchronously. 2023-12-18 09:53:06 -03:00
fiatjaf f56f2ae709 pool tests and pool.ts tweaks. 2023-12-17 22:19:28 -03:00
fiatjaf a0cb2eecae get rid of RelayTrackingPool, merge it into SimplePool. 2023-12-17 19:15:27 -03:00
fiatjaf 3bfb50e267 rewrite pool.ts to be much simpler. 2023-12-17 11:19:50 -03:00
fiatjaf 6a07e7c1cc remove the kind type parameter from events and filters. 2023-12-16 10:10:37 -03:00
fiatjaf 6874f58c0a apply prettier. 2023-09-26 12:19:01 -03:00
Sepehr Safariandfiatjaf_ e899cc32b7 edit batchedList and add mergeFilters to it 2023-09-24 20:49:45 -03:00
fiatjaf 13bc2ad5a8 trick typescript into accepting our types. 2023-09-10 15:44:22 -03:00
Alex Gleason 8325d4351e just format 2023-09-02 17:40:00 -05:00
EggeandGitHub e9eac28bab Added eoseSubTimeout to pool's SubscriptionOptions (#284)
* added timeout sub option

* made eoseSubTimeout optional
2023-09-01 07:50:12 -03:00
Alex Gleason 718032022c just format 2023-08-31 13:42:15 -05:00
Alex Gleason 2a70bb18ff pool: use triple-equals 2023-08-31 13:41:40 -05:00
Sepehr Safariandfiatjaf_ 0925f5db81 add batchedList method to SimplePool 2023-08-21 10:44:33 -03:00
fiatjaf 9d690814ca turn .publish() into a normal async function returning a promise.
this simplifies the code and makes the API more intuitive.

we used to need the event emitter thing because we were subscribing to the same relay
to check if the event had been published, but that is not necessary now that we assume
an OK response will always come.

closes https://github.com/nbd-wtf/nostr-tools/issues/262
2023-07-30 18:23:05 -03:00
futpibandfiatjaf_ 0041008b22 Add an option to disable seenOn 2023-07-06 16:38:30 -03:00
Alex Gleasonandfiatjaf_ 08885ab8da Refactor imports: use file extension, improve tree shaking, update tests 2023-05-12 17:03:41 -03:00
Alex Gleasonandfiatjaf_ d0bd599ce8 Infer relay event types from filter 2023-05-06 20:59:39 -03:00
fiatjaf bf7e00d32a hotfix types. 2023-04-18 15:29:28 -03:00
fiatjaf 9ee58bd6c7 fix async race condition that caused pool.publish() callbacks to not be called.
fixes https://github.com/nbd-wtf/nostr-tools/issues/169
2023-04-04 10:26:23 -03:00
Steve Perkinsandfiatjaf_ f1eb9a3bc7 Reuse connectionPromise for relay connect. 2023-04-04 08:10:51 -03:00
fiatjaf 24d885aaeb Revert "earlier .add() on pool _knownIds."
This reverts commit 687f387385.
2023-03-27 10:27:42 -03:00
fiatjaf 687f387385 earlier .add() on pool _knownIds. 2023-03-26 07:10:41 -03:00
BilligsterUserandGitHub 6b73bbf8a3 Type sub event handler (#156)
* RelayEvent allow Promises

* type Sub EventHandler

* Update relay.ts
2023-03-12 08:51:38 -03:00
BilligsterUserandfiatjaf_ b00af9a30a call ensurerelay() before calling pool.publish()
fixes #153
2023-03-11 14:22:11 -03:00
BilligsterUserandfiatjaf_ 5539e5cf89 Pool: Sub use provided alreadyHaveEvent Fn 2023-03-06 13:27:24 -03:00
Eggeandfiatjaf_ 73decbc8e0 added connect to ensureRelay if status != 1 2023-03-06 11:13:08 -03:00
fiatjaf 9d345a8f01 configurable list and get timeout on relay. 2023-02-26 21:23:09 -03:00
fiatjaf c362212778 make pool.publish() return a single Pub object. 2023-02-26 17:44:51 -03:00
fiatjaf a21329da3f make timeouts configurable for pool. 2023-02-26 16:50:49 -03:00
fiatjaf 63f4a49a69 increase pool timeouts. 2023-02-26 15:05:26 -03:00
fiatjaf b8aa75b6e1 change a map to a forEach. 2023-02-24 09:41:26 -03:00
fiatjaf 344762820c handle connection failure on pool according to @chmac.
fixes https://github.com/nbd-wtf/nostr-tools/issues/130
2023-02-24 09:34:23 -03:00
BilligsterUserandfiatjaf 7bfd23af3c update close() usage
Signed-off-by: BilligsterUser <billigsteruser@protonmail.com>
2023-02-17 21:07:59 -03:00
fiatjaf 9bcaed6e60 fix tests, .seenOn() method for pools. 2023-02-09 22:01:01 -03:00
fiatjaf ff3bf4a51c improvements and fixes on pool. 2023-02-09 12:05:31 -03:00
fiatjaf 7ff97b5488 list() and get() methods. 2023-02-08 16:37:53 -03:00
fiatjaf b2d1dd2110 a better way to do pubs and subs with SimplePool. 2023-02-08 14:15:54 -03:00
fiatjaf 75d7be5a54 use per-subscription alreadyHaveEvent handler instead of per-relay.
now pools are much smarter.
2023-02-08 14:15:54 -03:00
fiatjaf da59e3ce90 when in pool, automatically and efficiently deduplicate. 2023-02-08 09:46:05 -03:00
fiatjaf cc8e34163d most simple relay pool. 2023-02-08 08:39:59 -03:00