Big release for #python nostr-relay today!
* Added full-text index, compatible with NIP-50
* Added the purple server – the fastest way to serve nostr websockets...
* Added validator to limit "hellthreads"
* Enabled NIP-05 identity provider for LMDB backend
* Made many micro-optimizations to the LMDB backend and json handling.
* Improved compatibility with python < 3.11
* Consolidated and improved query validation
Changelog: https://code.pobblelabs.org/fossil/nostr_relay/doc/tip/docs/CHANGELOG.md
And a new document on performance tuning tips: https://code.pobblelabs.org/fossil/nostr_relay/doc/tip/docs/performance.md
Hot on the heals of 1.12, I hacked up a demo mode that will run a relay using a tuned config file:
pip install -U nostr-relay
nostr-relay --try-fast
And in another terminal:
aionostr bench -c 4
Let me know what results you get!
Big release for #python nostr-relay today!
* Added full-text index, compatible with NIP-50
* Added the purple server – the fastest way to serve nostr websockets...
* Added validator to limit "hellthreads"
* Enabled NIP-05 identity provider for LMDB backend
* Made many micro-optimizations to the LMDB backend and json handling.
* Improved compatibility with python < 3.11
* Consolidated and improved query validation
Changelog: https://code.pobblelabs.org/fossil/nostr_relay/doc/tip/docs/CHANGELOG.md
And a new document on performance tuning tips: https://code.pobblelabs.org/fossil/nostr_relay/doc/tip/docs/performance.md
An strfry plugin most people should be applying: https://gitlab.com/soapbox-pub/strfry-policies/-/blob/develop/hellthread-policy.ts
Also implemented here: https://code.pobblelabs.org/fossil/nostr_relay/info/a78d8cf73becb166
That’s a neat idea. One issue is that everyone would know that you’ve communicated with the bot, because DM metadata is not private.
I would think so. I started aionostr because I wanted an async API that was also easy to use and understand. Async seems to be the better choice for nostr use cases.
As a result, with nostr_bot, it's easy to write all sorts of bots, and run them simultaneously.
nostr_bot would be the more appropriate tool to extend.
I've already written a bot that will mirror events from people you follow. If someone wants to make it more generic, the framework allows for easy extensibility.
https://github.com/davestgermain/nostr_bot/blob/master/nostr_bot/examples/mirror.py
It only mirrors an individual query. It doesn't attempt to page through to the beginning of time.
Would that be useful?
New version of aionostr supports the `naddr` type.
So you can run this to retrieve the event:
aionostr get naddr1qqqqzxrhwden5te0wfjkccte9eekummjwsh8xmmrd9skcq3qljxdldrq885zamfkn82k7zcjs4lrsf9wykrh9e3hq4thh89vlzxsxpqqqp65wyu9u7v
But they can't force anybody to see the ads, as long as clients only show you pubkeys you follow.
#python nostr-relay 1.11.5 released:
* Support prefix id and author searches
* Several micro-optimizations in the LMDB backend
* Configurable max_limit to limit the number of events returned per REQ. (default: 6000)
* Made Homeserver more reliable
* Simplified storage of verification status
London is the same latitude as northern Newfoundland. Pretty wild.
What would that look like?
Yes, all relevant NIPs are supported.
The maximum size of a SQLite database depends on the size of your server — hundreds of gigabytes should be possible (though probably not recommended. You can always switch to PostgreSQL)
"The medium is the message"
It's important to be attuned to how this medium affects what/how we communicate.
On twitter, you can see how the corporation has crafted the medium to encourage or prevent all sorts of things.
Nostr isn't beholden to corporations, but the medium is still being formed by group consensus. At least we have some input into this formation.
There’s going to be a server involved somewhere, right? Even if you could look up a NIP-05 identifier using dns, the dns provider could cancel you.
#python nostr-relay is killer. Supports SQLite, Postgres, and LMDB. 😎
https://code.pobblelabs.org/fossil/nostr_relay/doc/tip/docs/lmdb.md
Is it the bandwidth or the VPS that is expensive?
You can get an enormous dedicated server for 120 euros/month: https://www.hetzner.com/dedicated-rootserver/matrix-px
