Commit Graph

74 Commits

Author SHA1 Message Date
fiatjaf
98959e73e7 eventstore: replace bluge with bleve.
bluge seems to be abandoned and bleve should work better, who knows.
2025-11-23 06:57:54 -03:00
fiatjaf
55a43e46b7 use xhex everywhere. 2025-11-23 06:57:54 -03:00
fiatjaf
4a5983a17c grasp: fix all the issues with info-refs, force-pushes, checked-out repos etc, and .Log() 2025-11-19 16:37:20 -03:00
fiatjaf
5efd8c6485 grasp: better git error messages and get rid of stdout printing. 2025-11-18 23:18:49 -03:00
fiatjaf
8ea2a00037 grasp: temporary OnRead and OnWrite hooks. 2025-11-18 16:28:05 -03:00
fiatjaf
f5fb294efa blossom: add an alternative BlobIndex implementation in memory. 2025-11-18 16:04:37 -03:00
fiatjaf
078e9b4cc2 khatru: grasp server. 2025-11-17 08:10:08 -03:00
fiatjaf
98dbe7b9e9 improve and make nip77 api nicer so it could be better used in nak. 2025-11-12 20:21:02 -03:00
fiatjaf
43fabbeb2a eventstore: more consistent ErrDupEvent firing. 2025-11-12 16:10:50 -03:00
fiatjaf
db835ef3c4 khatru: add policies to validate event tags by kind and replace reactions. 2025-11-11 16:34:17 -03:00
fiatjaf
637de481e5 khatru: fix bug that caused a query with limit zero to bypass request filtering.
spotted by hodlbod.
2025-11-04 21:19:56 -03:00
fiatjaf
b87bc0ede4 khatru: store and broadcast kind:5 deletion events.
by insistence of @staab
2025-10-31 16:36:46 -03:00
fiatjaf
32bbff615a khatru: ForceBroadcastEvent() 2025-10-31 13:05:19 -03:00
fiatjaf
13c44a4644 khatru: PreventBroadcast() also gets passed the filter. 2025-10-30 16:30:34 -03:00
fiatjaf
e34ce6aa94 khatru: fix an argument name. 2025-10-30 09:41:37 -03:00
fiatjaf
8ae530b163 nip42/khatru: clearer AUTH error messages. 2025-10-28 11:42:38 -03:00
fiatjaf
309bab0048 khatru: router AnyEvent() and AnyReq(). 2025-10-28 11:10:45 -03:00
fiatjaf
131093388d khatru: reduce default max number of authenticated clients. 2025-10-26 17:00:35 -03:00
fiatjaf
6ee0d090e3 khatru: deploy docs to netlify. 2025-10-20 18:37:21 -03:00
fiatjaf
8cf120c08f khatru: update docs again, now it seems to be mostly up to date. 2025-10-20 18:22:08 -03:00
fiatjaf
d85bb8aa1b khatru: fix for panics when expiration manager is nil. 2025-10-14 01:52:10 +00:00
fiatjaf
afa5e5bc0e khatru: fix test for expiration manager, skip it unless code is manually adjusted for the test. 2025-10-01 12:22:01 -03:00
fiatjaf
46f28203ed khatru: expiration manager takes query and delete methods, which are given automatically by .UseEventstore() 2025-10-01 12:08:08 -03:00
fiatjaf
8957144c77 khatru: expiration manager is only started automatically when .UseEventstore() is called. 2025-10-01 11:57:32 -03:00
fiatjaf
79f1a9c636 fix sqlite mention. 2025-09-23 19:02:09 -03:00
fiatjaf
8b8693f4bf other useless quibbles. 2025-09-23 12:29:55 -03:00
fiatjaf
04e095eb1b "a" deletions split only 3.
see https://github.com/fiatjaf/khatru/pull/60
2025-09-22 16:46:38 -03:00
fiatjaf
805003b39b khatru: fix policy that requires nostr-prefix references. 2025-09-15 08:27:29 -03:00
fiatjaf
e8456dab70 khatru/policies: RejectUnprefixedNostrReferences 2025-09-10 10:40:06 -03:00
fiatjaf
9933bb7865 khatru: fix multi-user auth stupid bug. 2025-09-06 23:26:55 -03:00
fiatjaf
fd53d7309f khatru: support multi-user auth. 2025-09-06 10:11:31 -03:00
Anthony Accioly
8750197ea7 khatru/blossom: blossom ext updates.
see https://github.com/fiatjaf/khatru/pull/59
2025-09-05 11:18:51 -03:00
fiatjaf
5f8b069f5d khatru: nip86 "u" tag checking normalization fix. 2025-09-05 11:06:17 -03:00
fiatjaf
0770f217a5 khatru: prevent large indexable tags doesn't make any sense anymore as we don't index tags verbatim, only hashes. 2025-09-04 10:13:08 -03:00
fiatjaf
aec2dc318d actually it's better if nip11 pubkey is a pointer. 2025-09-04 00:35:46 -03:00
fiatjaf
cd398b94b5 get rid of badger everywhere, including as an sdk/hints backend. 2025-09-04 00:35:17 -03:00
fiatjaf
a09429236e khatru: disable ratelimit for local ipv6 too. 2025-09-03 21:32:17 -03:00
fiatjaf
d036b2f8d5 khatru: fix nip86 method field names. 2025-08-29 22:42:36 -03:00
fiatjaf
7ac9e6290b khatru: replace useless ApplySaneDefaults() with a set of pluggable "strict" defaults. 2025-08-28 17:18:22 -03:00
fiatjaf
926ed0830a khatru: don't ratelimit localhost connections. 2025-08-25 07:32:05 -03:00
fiatjaf
6bda63de17 eventstore: delete badger, it's too buggy. 2025-08-04 15:16:25 -03:00
fiatjaf
88096fbd84 khatru: allow disabling expiration manager. 2025-07-28 22:06:12 -03:00
fiatjaf
24060da1dd khatru: better error on nip86 "u" tag mismatch. 2025-07-28 09:35:22 -03:00
fiatjaf
68b0caf2ab khatru: improve ephemeral ok message when handled internally. 2025-07-19 11:51:44 -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
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
027d016d97 khatru: the accioly blossom redirect patch, reworked. 2025-06-10 16:43:30 -03:00
fiatjaf
50a753504d khatru: hodlbod's nip86 fixes. 2025-06-10 16:43:30 -03:00
fiatjaf
96125dd6f0 khatru: SendNotice() util. 2025-06-08 07:15:02 -03:00