not sure what i did different, but over the last few days i have been condensing all my stuff relating to #nostr #relay #dev
https://realy.lol
just now took the code i had reworked to use my codecs and much of my protocol helpers and lo and behold, here's the fails in the nostr:nprofile1qy88wumn8ghj7mn0wvhxcmmv9uq3xamnwvaz7tm0venxx6rpd9hzuur4vghszgrhwden5te0dehhxarj9ejkjmn4dej85ampdeaxjeewwdcxzcm99uq3yamnwvaz7tmwdaehgun4v5hxxmmd9uqzpms35h0lgrqe542lg8ly9dy0qrnp3jgjy43z4cmmds4mv7mkcnjf8w4luh relay test:
```
Supports EOSE: FAIL (Timed out without EOSE)
Keeps open incomplete subscriptions after EOSE: FAIL (Timed out without EOSE)
Keeps open incomplete subscriptions after EOSE: FAIL (Timed out without EOSE)
```
i will fix these errors shortly, they are probably very simple, it should be sending eose after it finds everything but probably it's because i made the filter API synchronous per websocket instead of the way fiatjaf did it, with a messy concurrent channel API
this is working with fiatjaf's new `relayer`, as it is from the base it uses almost exclusively my own original codec for everything, and including the filter matching functions, which i debugged with the help of Mikes testing tool previously, currently except for the nip-11 relay information document
i'm calling it `realy` because i keep on making that typo from the word relay, and i think it's kinda funny, probably many won't even get it... and just to point out that `strfry` means a C function that makes a random anagram out of a string (string fry)
it also has some other tools, a vanity npub miner and a reverse proxy tool but tbh i'm not sure if they are working as it is right now, but they are useful and related tools to the main relay and the library
i will be further polishing this up but it can be used as is
the main planned improvements are related to configuration of the database, and after that, a CLI interface that works over DM that enables potentially paying for relay subscriptions, and managing adding and removing access for npubs, removing them, probably adding advanced filtering controls for access so that paid users can have all of their chats and discussions posted to the relay without any additional configuration while preventing spammy replies from getting on the relay
#thoon
just a heads up, it's all a bit fluid still... i'm currently working on better encapsulation and adding nil guards to the tags types (i made them into pointers to structs so they have a valid "not present" state that is distinct from "zero length content"
well, i went through and added methods and nil guards everywhere and unexported the value fields in the structs and it broke a few of the tests, of course, related to tags, passes on a replaceable where it didn't before, and fails to recognise a newer replaceable event with an "a" tag, so a few bugs to get through yet
this will make sure that anyone who uses the library won't be slammed with panics when they wrongly bypass the use of constructors, as they can then easily fix such panics by using the provided methods... got a lot of documentation to add too, haven't done much really, some bare bits and pieces but really not polished yet
it all works mostly now, except for issues around replaceable events and deleting events though, so it's not long until i get all PASS and brown "NO" responses to everything in mike's relay tests
dunno what i'm gonna do about the since and until both being inclusive though, i spent 3 hours wasting my time trying to fix that and by changing it to conform with the spec in the nip01 it broke other tests so i actually think the spec is wrong and that since should be inclusive and until be exclusive, as is the convention across the entire edifice of computer programming and human languages, i have filed an issue to that effect, and i'm almost certain i will be able to, if i spent several hours doing so, track down exactly in what way allowing that wrong inclusive until to pass causes other filters to fail, i'm just gonna give zero fucks about passing that one because i just think it's wrong in principle
nostr:nevent1qyghwumn8ghj7mn0wd68ytnvv9hxgtcpzamhxue69uhk6mr9dd6jumn0wd68yvfwvdhk6tcpz4mhxue69uhkvun9deejuat50phjummwv5hszxrhwden5te0ve5kcar9wghxummnw3ezuamfdejj7qpqls8qle02we45yle3ws8ealzyurtgzx8whd8ewqlr7pg2md7ugvzsgs5vj4
Showing page 1 of
1 pages