fiatjaf
ff5655ac55
schema: tests passing.
2025-11-23 17:52:29 -03:00
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