You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Our implementation of NIP-01 is not very complete, the following list of items is missing (at least).
Filtering is only implemented to match on kind in filter_events (in src/clienthandler.rs), spec says “at least one of the array’s values must match the relevant field in an event for the condition itself to be considered a match” so we should match all filter attributes (ids, authors, kinds, #e, #p, since, until).
The spec says “all conditions of a filter that are specified must match for an event for it to pass the filter, i.e., multiple conditions are interpreted as && conditions”, so when we parse an Event against Filter the event should satisfy the concatenation of all the attributes.
We do not enforce the limit property, this can be done at reception of ClientMessage::Req though here we might need a notion of a store first, see "TODO: replay stored events when there is a store”
There is no implementation of metadata assigned to our NostrClient (in src/clienthandler.rs) as a result of calling setmetadata in the sample.
There is no implementation of recommendation assigned to our NostrClient (in src/clienthandler.rs) as a result of calling recommendserver in the sample.
Our opensubscription command in the sample do not take as argument all the filter attributes (ids, authors, kinds, #e, #p, since, until), neither can accept an array of filters.
Can be splitted in multiple PRs as some of the items might be buffy.
The text was updated successfully, but these errors were encountered:
Our implementation of NIP-01 is not very complete, the following list of items is missing (at least).
Filtering is only implemented to match on kind in
filter_events
(insrc/clienthandler.rs
), spec says “at least one of the array’s values must match the relevant field in an event for the condition itself to be considered a match” so we should match all filter attributes (ids
,authors
,kinds
,#e
,#p
,since
,until
).The spec says “all conditions of a filter that are specified must match for an event for it to pass the filter, i.e., multiple conditions are interpreted as
&&
conditions”, so when we parse anEvent
againstFilter
the event should satisfy the concatenation of all the attributes.We do not enforce the
limit
property, this can be done at reception ofClientMessage::Req
though here we might need a notion of a store first, see "TODO: replay stored events when there is a store”There is no implementation of metadata assigned to our
NostrClient
(insrc/clienthandler.rs
) as a result of callingsetmetadata
in the sample.There is no implementation of recommendation assigned to our
NostrClient
(insrc/clienthandler.rs
) as a result of callingrecommendserver
in the sample.Our
opensubscription
command in the sample do not take as argument all the filter attributes (ids
,authors
,kinds
,#e
,#p
,since
,until
), neither can accept an array of filters.Can be splitted in multiple PRs as some of the items might be buffy.
The text was updated successfully, but these errors were encountered: