Add embedded tor client support, allow to open databases with a limited capacity (automatically discard old events when max capacity is reached), add Client::stream_events_of as alternative method to Client::get_events_of (stream events instead of waiting for EOSE and collect into a list), add search capability (NIP-50) support to Filter::match_event and databases, add NIP-31 and NIP-70 support, add option to autoconnect relay on Client::add_relay method call (currently disabled by default), rework the get_events_of methods behaviour for better consistency (RelayPool::get_events_of and Relay::get_events_of get events only from remote relay/s while Client::get_events_of allow to choose the source of events: database, relays or both), bugs fix and more!
Better outputs for send/batch/reconcile methods (ex. you can now easily know where a message/event is successfully published and where/why failed),
allow to change NIP-42 option after client initialization, increase max stack size for JS bindings to prevent "memory access out of bounds" error,
expose more objects/methods for JS bindings, dry run option for negentropy reconciliation, get NIP-46 relay from NIP-05 profile,
bug fixes (NIP-42 auth not works correctly, NIP-46 "ACK" message not handled, ...) and more!
Added async/future support to Python, Kotlin and Swift, added automatic authentication to relays (NIP-42, can be deactivated in client options), improvements to relay limits, many bug fixes (relays not auto reconnect, wrong query order for SQLite, tokio panic when using SQLite database in bindings) and more!
Note for kotlin devs: from this release the packages will be published at org.rust-nostr instead of io.github.rust-nostr.
Reworked Tag, added TagStandard enum, simplified the way to subscribe and/or reconcile to subset of relays
(respectively, client.subscribe_to and client.reconcile_with), added blacklist support to mute public keys or event IDs,
removed zap split from client.zap method, many improvements and more!
Adapted NIP46 to last changes, added NostrConnectRemoteSigner to easily build remote signers (just construct it and call serve method),
improved proxy options (allow to specify the proxy target: all relays or only .onion ones),
improvements to NWC client, fixed equality operator for bindings (Python, Kotlin and Swift),
added nostrdb storage backend, added NIP32 and completed NIP51 support and more!
Changed
Bump uniffi to v0.27 ([Yuki Kishimoto])
Adapted NIP46 to last changes ([Yuki Kishimoto])
nostr: change Tag::parse arg from Vec<S> to &[S] ([Yuki Kishimoto])
nostr: allow to parse public key from NIP21 uri with PublicKey::parse ([Yuki Kishimoto])
nostr: allow to parse event ID from NIP21 uri with EventId::parse ([Yuki Kishimoto])
nostr: construct GenericTagValue based on SingleLetterTag in deserialize_generic_tags ([Yuki Kishimoto])
nostr: set UnsignedEvent ID as optional ([Yuki Kishimoto])
Add embedded tor client support, allow to open databases with a limited capacity (automatically discard old events when max capacity is reached),
add Client::stream_events_of as alternative method to Client::get_events_of (stream events instead of waiting for EOSE and collect into a list),
add search capability (NIP-50) support to Filter::match_event and databases, add NIP-31 and NIP-70 support,
add option to autoconnect relay on Client::add_relay method call (currently disabled by default), rework the get_events_of methods behaviour for
better consistency (RelayPool::get_events_of and Relay::get_events_of get events only from remote relay/s while
Client::get_events_of allow to choose the source of events: database, relays or both), bugs fix and more!
Changed
Bump MSRV to v1.70.0 ([Yuki Kishimoto])
Bump toolchain channel to 1.80.1 ([Yuki Kishimoto])
nostr: deprecate Event::author_ref and Event::iter_tags ([Yuki Kishimoto])
nostr: calculate EventId in EventBuilder::to_unsigned_event_with_supplier ([Yuki Kishimoto])
nostr: ensure that NIP-59 rumor has EventId ([Yuki Kishimoto])
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
Bumps nostr-sdk from 0.29.0 to 0.34.0.
Release notes
Sourced from nostr-sdk's releases.
... (truncated)
Changelog
Sourced from nostr-sdk's changelog.
... (truncated)
Commits
8714d7e
Release v0.34.05c65e28
contrib: update release announcement template hashtags0c2597c
Bump to v0.34.0e4cafe6
pool: bumpasync-wsocket
tov0.7
a19c76a
sdk: allow to specify the source of events forClient::get_events_of
method5432771
pool: get events only from remote relay when callingget_events_of
or `get_...348c64c
sdk: addClient::stream_events_*
methods728630c
sdk: adjprelude
module63a2dbb
Bumptungstenite
patch to b66ab8a3eddd3260096cb7c4917d9884fab8b1f0bd9fd8a
nostr: avoidPublicKey
copy in NIP-05 moduleDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting
@dependabot rebase
.Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show