Greg Heartsfield
2af5f9fbe8
fix: correct schema upgrade logic (and refactor)
...
Schema upgrades were buggy from 4->5 (the v5 would be skipped). This
change also refactors the logic slightly so that future additions can
be clearer (no need to have if and else-if combinations).
2022-10-09 08:24:01 -05:00
Greg Heartsfield
6633f8b472
feat: replace logging with tracing
2022-09-28 07:19:59 -05:00
Greg Heartsfield
baeb77af99
test: dynamically find open port for test relay
2022-09-17 14:36:05 -05:00
Greg Heartsfield
4fa8616c73
feat: enable use of tokio-console with diagnostics.tracing setting
...
View real-time tokio diagnostics by setting the configuration option
"diagnostics.tracing" to true.
2022-09-11 12:44:45 -05:00
Greg Heartsfield
4d983dd1e0
improvement: upgrade uuid dependency
2022-09-02 12:37:11 -05:00
Greg Heartsfield
11c33582ef
improvement: remove useless carats from Cargo.toml deps
2022-09-02 12:35:02 -05:00
Greg Heartsfield
8da6f6555a
build: bump version to 0.6.2
2022-08-18 17:52:16 -07:00
Kirill Kovalenko
2b4b17dbda
fix: windows compilation with bundled sqlite3
...
Using 'bundled' is recommended by
https://github.com/rusqlite/rusqlite#usage to avoid common build
issues
2022-08-07 10:35:36 -05:00
Greg Heartsfield
f4ecd43708
build: bump version to 0.6.1
2022-07-04 17:41:16 -05:00
Greg Heartsfield
23f7730fea
build: bump version to 0.6.0
2022-05-10 21:19:21 -05:00
Greg Heartsfield
048199e30b
build: bump version to 0.5.2
2022-02-26 11:22:16 -06:00
Greg Heartsfield
225c8f762e
improvement: upgrade dependencies; config, tungstenite, tokio
2022-02-26 09:55:12 -06:00
Greg Heartsfield
f2001dc34a
build: bump version to 0.5.1
2022-02-13 09:38:45 -06:00
Greg Heartsfield
bc68cd0c74
build: bump version to 0.5.0
2022-02-12 14:10:44 -06:00
Greg Heartsfield
97589006fa
improvement: upgrade dependencies
2022-02-12 14:10:03 -06:00
Greg Heartsfield
234a8ba0ac
feat: limit event publishing to NIP-05 verified users
...
This adds a new configurable feature to restrict event publishing to
only users with NIP-05 verified metadata. Domains can be whitelisted
or blacklisted. Verification expiration and schedules are
configurable.
This upgrades the database to add a table for tracking verification
records.
2022-02-12 09:29:25 -06:00
Greg Heartsfield
f679fa0893
build: bump version to 0.4.2
2022-01-30 15:19:41 -06:00
Greg Heartsfield
6ca3e3ffea
build: bump version to 0.4.1
2022-01-26 21:48:44 -06:00
Greg Heartsfield
699489ebaf
build: bump version to 0.4.0
2022-01-25 20:56:00 -06:00
Greg Heartsfield
f1206e76f2
feat: database reader connection pooling
...
Added connection pooling for queries, as well as basic configuration
options for min/max connections.
2022-01-25 20:39:24 -06:00
Greg Heartsfield
2d28a95ff7
feat: allow arbitrary tag queries
...
This is an experimental feature, outside of any NIP, that demonstrates
generic tag queries.
Instead of limiting subscription filters to just querying only "e" or
"p" tags (via `#e` or `#p` attributes), any tag can be queried.
As an example, consider an event which uses a tag "url". With this
modification, a subscription filter could add a top-level field
"#url", with an array of strings as the key. Exact matches would be
returned.
A NIP is forthcoming to formalize this.
2022-01-22 21:29:15 -06:00
Greg Heartsfield
d78bbfc290
build: bump version to 0.3.3
2022-01-03 22:07:15 -05:00
Greg Heartsfield
3024e9fba4
build: bump version to 0.3.2
2022-01-03 18:43:17 -05:00
Greg Heartsfield
d3da4eb009
feat: implementation of proposed NIP-11 (server metadata)
2022-01-03 18:42:24 -05:00
Greg Heartsfield
19637d612e
build: bump version to 0.3.1
2022-01-01 19:26:15 -06:00
Greg Heartsfield
3d56262386
build: bump version to 0.3.0
2022-01-01 18:40:57 -06:00
Greg Heartsfield
850957213e
build: bump version to 0.2.3
2022-01-01 09:13:13 -06:00
Greg Heartsfield
1aa5a5458d
improvement: event signature validation is 100x faster
...
Switched to latest (git) release of secp256k1, which has more
efficient verification-only context for Schnorr. Switched to single
pre-instantiated instance of the verifier.
2022-01-01 09:08:19 -06:00
Greg Heartsfield
620e227699
fix: connection issues with Firefox
...
This adds Hyper, and a 200 response code. Prior to this, Firefox
would fail to connect. There is also a text document displayed at the
root URL to indicate this is a Nostr relay.
Fixes https://todo.sr.ht/~gheartsfield/nostr-rs-relay/15
2022-01-01 08:11:20 -06:00
Greg Heartsfield
14e59ed278
build: bump version to 0.2.2
2021-12-31 16:34:52 -06:00
Greg Heartsfield
9710ea27aa
build: bump version to 0.2.1
2021-12-31 15:38:58 -06:00
Greg Heartsfield
f7f12a7984
build: bump version to 0.2.0
2021-12-30 21:27:48 -06:00
Greg Heartsfield
20ee5a054c
feat: rate limit event creation
...
A configuration option, `messages_per_sec`, imposes a global limit on
the rate for which new events can be stored.
Fixes https://todo.sr.ht/~gheartsfield/nostr-rs-relay/6
2021-12-30 21:07:21 -06:00
Greg Heartsfield
d730bf0c59
feat: add configuration through file
...
A file named `config.toml` can now be used to load the address, port,
and some websocket configuration settings.
Fixes https://todo.sr.ht/~gheartsfield/nostr-rs-relay/3
2021-12-29 22:13:02 -06:00
Greg Heartsfield
2e2e01203b
build: bump version to 0.1.6
2021-12-23 21:44:12 -06:00
Greg Heartsfield
8a8ee5c425
build: bump version to 0.1.5
2021-12-19 16:45:17 -06:00
Greg Heartsfield
9b959e1012
build: bump version to 0.1.4
2021-12-16 19:00:46 -06:00
Greg Heartsfield
acf6231277
build: bump version to 0.1.3
2021-12-15 07:56:34 -06:00
Greg Heartsfield
54e6e0e5ce
build: bump version to 0.1.2
2021-12-12 20:36:11 -06:00
Greg Heartsfield
04850506a8
build: upgrade dependencies
2021-12-11 16:58:18 -06:00
Greg Heartsfield
65969a4121
feat: store events in SQLite and allow querying
...
Events are persisted in a local database, and can be queried through
subscriptions.
2021-12-11 15:48:59 -06:00
Greg Heartsfield
d0c2b242cd
feat: cargo build files and expected dependencies
2021-12-05 08:42:28 -06:00