All notable changes to this project will be documented in this file. See Conventional Commits for commit guidelines.
0.17.0 (2024-10-08)
- make NostrFetcher disposeable (16ba9af)
0.16.0 (2024-10-04)
- allow async-iter fetchers do clean up on early return/break (f79e6ef)
- change default value for webSocketConstructor to
globalThis.WebSocket
so that correct error message is shown (d587d2b) - event ordering; event with lower id comes first if two events have the same created_at (70626e5)
- make Filter type compatible with NDK (d9fb6f4)
- remove dependency to NodeJS.Timeout type (986f6ae)
- Revert "fix: respect NIP-01's note on reconnections to relays" (c3d2586)
- timer leak on aborting fetch (707b9bd)
- use Abortsignal.timeout instead (bc55b11)
- use specified verifier for reduced verification (6dc2e22)
- use specified verifier for reduced verification (37f53d1)
- add
webSocketConstructor
to option for NostrFetcher.init() (6335b4d) - add eventVerifier to FetcherOptions, to make the event verification logic customizable (75810b3)
- add noopVerifier to exports (72cbc17)
- allow async verifier (dfebbd5)
- change option name: "abortSignal" -> "signal" (3d5e8f8)
- deprecate eventKind constants (edbcc08)
- deprecate skipVerification & reduceVerification options (6a43d71)
- give up checking tag query key syntax statically (aa9d893)
0.15.1 (2024-03-20)
Note: Version bump only for package nostr-fetch-root
0.15.0 (2024-01-05)
- use AbstractSimplePool as type of internal pool to accept arbitrary SimplePool impls (6ebe08f)
- add adapter for nostr-tools v2 (b6092df)
0.14.1 (2023-12-14)
- adapter-ndk: bump minimum supported NDK version to 1.0.0 (1138901)
0.14.0 (2023-12-14)
- add handling of subscription close by relay to default fetcher backend (193bfa5)
- add R2C CLOSED message handling (6bdc45e)
- make adapters aware of the skipFilterMatching option (461431c)
- simplify event go-backing algorithm (9c2781e)
- support CLOSED R2C message (316b99c)
- check if events match the filters by default (d6ce40d)
0.13.1 (2023-10-30)
Note: Version bump only for package nostr-fetch-root
0.13.0 (2023-09-01)
- add standardized event kinds (NIP-52) (34875c2)
- add standardized event kinds (NIP-72) (e867ba7)
- type of timeout ID (87c5063)
- type of timeout ID (1dbebe3)
- add abiility to fetch latest events as of specified time (98ed306)
0.12.2 (2023-07-24)
0.12.1 (2023-07-17)
- unsubscribe observers on EOSE (f777959)
0.12.0 (2023-07-17)
- change type of NOTICE message, fix broken tests (09ed97f)
- ignore NOTICE if it doesn't have to do with REQs by fetcher (08c6545)
- use @noble/curves instead of @noble/secp256k1 (2d64ac8)
- fetchLatestEventsPerKey (cbc544f)
- rename normalizeRelayUrls -> normalizeRelayUrlSet (f2b5d2a)
- rx-nostr adapter (7cdd6a3)
0.11.2 (2023-07-09)
- tsconfig for examples (e5e5c92)
0.11.1 (2023-07-09)
- tsconfig for adapter-nostr-relaypool (be8edbc)
0.11.0 (2023-07-09)
- bug in counting runnigSubs (1f4185d)
- make adapters' fetchTillEose conform to new requirement of interface (2e9a17e)
- per-relay fetch stats (fc37872)
0.10.1 (2023-07-05)
- ensure connection to relays every time fetchers open new subscription (75c230b)
- respect NIP-01's note on reconnections to relays (d004560)
0.10.0 (2023-07-04)
- add tests for default RelayPool (d5ab10b)
- add unit tests for default Relay/Subscription (239964f)
- bug in subscription auto abortion of SimplePool/NDK adapter (4fd8879)
- bugs in querying supported NIPs (4950841)
- close subscription on notice received in SimplePool adapter (2a26b4f)
- handle error from sub.req/close (e84a060)
- make tag query field optional (71a56a6)
- mitigate test flakiness (cedbca2)
- move "immediate abortion check" after the line that sends REQ etc (a05e6d4)
- pass subId option correctly in SimplePool adapter (1a157b0)
- remove unnecessary codes from RelayPool impl (b74da61)
- separate interface of relay capability checking for testing (2b1ca1f)
- throw error if time range is invalid (528268c)
- write tests for adapter-ndk (6327ee5)
- write tests for adapter-nostr-tools (1a851e9)
- write tests for DefaultFetcherBase (e2f7f19)
- write tests for fetcher helpers (bc67fbf)
- write tests for nostr-relaypool adapter (b0aae57)
- write tests for NostrFetcher based on fakes (ed06ef6)
- add buffered events count to stats (8093106)
- add fetch progress tracking (9a51bc1)
- add means to know on which relay an event was seen (f70042b)
- add newly standardized event kinds (68252a4)
- add search example (07b6a7f)
- add support for search filter (d145de6)
- basic fetch statistics (ccf60b9)
- change semantics of fetchers which return an async iterable (1f08e59)
- export type
NostrFecthError
from nostr-fetch (6da4515) - rename NostrFetcherBase to NostrFetcherBackend (0a36def)
0.9.0 (2023-06-16)
- add backpressure feature to Channel (1ef5596)
- add option for enabling backpressure to allEventsIterator (ba4c126)
- relax assertion of args to fetchers (16ad322)
- separate relay set for each authors (41b2291)
0.8.0 (2023-06-11)
- add periodic auto re-connection to the default relay pool (c974d0e)
- change default debug log level (none -> warn) (6d14042)
- fetchTillEose impls (ab4d6a5)
- make format specs available in DebugLogger with prefix (ff69d0f)
- reduct CloseEvent being passed to relay event lister (e214729)
- replace all logForDebug with DebugLogger (807e110)
- use subloggers for scoped log (297e8e4)
- use subloggers for scoped log (adapters) (8c2bd9a)
- add adapter for NDK (6eaaf82)
- add DebugLogger class with minimum log level support (086b139)
- add NDK adapter example (f8891bb)
- fetchers now allow only single filters per request (dbceb8d)
- improve ergonomics of initializing fetchers (2a2070e)
- rename closeAll -> shutdown (7c625e3)
0.7.0 (2023-06-02)
- move responsibility of relay URL normalization to
ensureRelays
(c0e747d) - options for fetchLastEvent is now reflected properly (2009e2a)
0.6.1 (2023-05-31)
- adapter-nostr-relaypool: add kernel as dependency (ae22ff2)
- adapter-nostr-relaypool: configure exports in package.json (43b02d7)
0.6.0 (2023-05-31)
- bug in getRelayIfConnected (9fc0afb)
- build config for adapter-nostr-relaypool (3e66a6d)
- initiate sub auto abortion timer (0fce069)
- make adapter work correctly (619dbd2)
- adapter-nostr-tools: rewrite adapter (4cc577a)
- add adapter for nostr-relaypool (4ac6bca)
- add example for nostr-relaypool interop (bf09918)
- nostr-fetch: reimplement Fetcher based on new abstractions (97369e6)
0.5.4 (2023-05-31)
- problem with import from ESM enabled node (0589d6b)
- specify files for module/types conditions in exports (56e14c5)
0.5.3 (2023-05-18)
- adapter-nostr-tools: bug in auto subscription abortion (d3453b4)
0.5.2 (2023-05-15)
- adapter-nostr-tools: add means to log irregular events for debug to SimplePoolAdapter (6ba741d)
- adapter-nostr-tools: minimize nostr-tools version as peer dep (68ed56f)
- adapter-nostr-tools: subs from SimplePoolAdapter now support auto abortion (06e8110)
- SimplePoolAdapter now respects connenctTimeoutMs (15034c8)