Commit Graph

1016 Commits

Author SHA1 Message Date
fiatjaf
f0c95d6860 more tweaks to kinds schema. 2025-08-22 18:02:19 -03:00
fiatjaf
6737398375 eventstore: cli "count" command. 2025-08-22 14:08:24 -03:00
fiatjaf
3eaf02ff6a schema: add many more kinds. 2025-08-21 17:40:25 -03:00
fiatjaf
cd82cd7ce7 event typechecker. 2025-08-21 16:17:53 -03:00
fiatjaf
c8d5aa703f update gonuts dependency (following go-nostr 6de0bc60). 2025-08-18 20:51:02 -03:00
fiatjaf
0f8a586593 lmdb: do the initial pull immediately, no need for a secondary loop. 2025-08-12 14:42:24 -03:00
fiatjaf
5d42b2f857 nest okcallbacks so they're called one by one. 2025-08-06 15:13:55 -03:00
fiatjaf
960312bd74 eliminate duplicates in PublishMany() 2025-08-06 00:37:39 -03:00
fiatjaf
24b10ba2a5 eventstore: up limit to 10 on ReplaceEvent() 2025-08-06 00:28:21 -03:00
fiatjaf
92f6f75388 eventstore: fix yield() usage on ReplaceEvent() 2025-08-05 23:58:13 -03:00
fiatjaf
4c459d70ba eventstore: add basic ReplaceEvent() test. 2025-08-05 23:57:38 -03:00
fiatjaf
4a7e893b80 eventstore: add boltdb support to cli. 2025-08-05 23:40:23 -03:00
fiatjaf
414e836eaa eventstore: more fuzz test false alarms. 2025-08-05 23:02:04 -03:00
fiatjaf
030cad168d eventstore: fuzz testing found us a bug! 2025-08-05 22:56:55 -03:00
fiatjaf
47ca205e9e boltdb: it works! 2025-08-05 16:25:55 -03:00
fiatjaf
144f4a4740 eventstore: fix migrations annoyingly rerunning. 2025-08-05 13:09:50 -03:00
fiatjaf
d79793c0f4 eventstore: boltdb (copied from lmdb) 2025-08-05 13:02:07 -03:00
fiatjaf
34225e5dfe mmm: run it on the eventstore/test suite and fix id query logic. 2025-08-05 07:36:20 -03:00
fiatjaf
17c3d19a98 eventstore: remove useless sanity checking since event fields are already typed. 2025-08-05 00:04:27 -03:00
fiatjaf
7e6a0eb614 mmm: copy new lmdb querying mechanism because it's so much more elegant. 2025-08-05 00:03:57 -03:00
fiatjaf
e87e5a3fb8 lmdb: some random fuzz test samples. 2025-08-04 23:21:16 -03:00
fiatjaf
0291836eb7 lmdb: various fixes so query works. 2025-08-04 23:13:25 -03:00
fiatjaf
a4ebd32477 lmdb: implement simple query by id part. 2025-08-04 17:39:59 -03:00
fiatjaf
1cd48343d6 fix quickselect. 2025-08-04 17:29:12 -03:00
fiatjaf
2750ae3751 lmdb: new querying mechanism. 2025-08-04 15:20:10 -03:00
fiatjaf
6bda63de17 eventstore: delete badger, it's too buggy. 2025-08-04 15:16:25 -03:00
fiatjaf
50c9ea3867 nip23: the renderer is not goroutine-safe so it can't be reused. 2025-08-04 12:01:02 -03:00
fiatjaf
83c34daa8b OK callbacks that still work even if the same event is published twice. 2025-07-30 15:06:30 -03:00
fiatjaf
788225b902 fix emitting duplicate events in pool.SubMany() 2025-07-30 07:09:14 -03:00
fiatjaf
88096fbd84 khatru: allow disabling expiration manager. 2025-07-28 22:06:12 -03:00
fiatjaf
a4d8491d2d nip46: AuthorizeSigning returns an error for better debuggability. 2025-07-28 17:31:13 -03:00
fiatjaf
9a15d220b0 nip46: reword invalid pubkey hex messages. 2025-07-28 09:36:31 -03:00
fiatjaf
bb72af908f nip53: typed participant pubkey. 2025-07-28 09:35:37 -03:00
fiatjaf
24060da1dd khatru: better error on nip86 "u" tag mismatch. 2025-07-28 09:35:22 -03:00
fiatjaf
0bc8e159ff slightly better readme. 2025-07-27 14:15:05 -03:00
fiatjaf
0816e89b32 nip65 helpers. 2025-07-25 09:50:00 -03:00
fiatjaf
2875648ee3 handle wot filter error. 2025-07-24 13:25:08 -03:00
fiatjaf
ae076a7be2 nip46: hopefully fix "send on closed channel" cases on client responses. 2025-07-21 17:26:34 -03:00
fiatjaf
e164b49aad nip46: ParseBunkerInput() for allowing NewBunker() to be used without calling "connect". 2025-07-19 11:52:09 -03:00
fiatjaf
68b0caf2ab khatru: improve ephemeral ok message when handled internally. 2025-07-19 11:51:44 -03:00
fiatjaf
9f0376692b nip46: dynamic bunker can't rely on a secret to be persistent or "connect" to be always sent, that's a job for the implementor. 2025-07-18 14:37:18 -03:00
fiatjaf
7cbca5f040 nip46: dynamic signer to store sessions associated with the handler pubkey to prevent stupid bugs when the same client try to use two different bunkers. 2025-07-18 14:36:42 -03:00
fiatjaf
33838a4801 khatru: optional ChallengePrefix. 2025-07-17 16:46:44 -03:00
fiatjaf
840e2846ed khatru: fix eose waitgroup count for multiple filters. 2025-07-15 13:14:59 -03:00
fiatjaf
6592319774 stop exposing connection, more debugLog calls and properly fail subscriptions when a relay dies. 2025-07-13 14:21:15 -03:00
fiatjaf
9f8b810882 fix main relay context being canceled instead of just the dial context. 2025-07-11 13:01:04 -03:00
fiatjaf
dcd505712a fix one nip19 test bug. 2025-07-10 23:01:36 -03:00
fiatjaf
7289da9c72 improve/refactor websocket connections hoping this will fix the undetected disconnections we're seeing.
this commit also remove all the sonic envelope parsing and reintroduces filters in REQ as a slice instead of as a singleton.

why? well, the sonic stuff wasn't really that fast, it was a little bit but only got fast enough once I introduced unsafe conversions between []byte and string and did weird unsafe reuse of []byte in order to save the values of tags, which would definitely cause issues in the future if the caller wasn't aware of it (and even if they were, like myself).

and the filters stuff is because we abandoned the idea of changing NIP-01 to only accept one filter per REQ.
2025-07-10 22:58:37 -03:00
fiatjaf
9dc89517ee nip44: remove size limits.
implements https://github.com/nostr-protocol/nips/pull/1907
2025-07-07 21:25:41 -03:00
fiatjaf
5e04ad692d get rid of useless justfile. 2025-07-07 18:48:38 -03:00