- Remove custom
toStackString
, a function was added to nim-stack-strings with the same purpose.
- Fix
fromBytes(T: typedesc[NNote])
accidently accepting aseq[byte]
address instead ofopenArray[byte]
. - Correct using
rangeCheck
for bounds checks, useassert
instead.
- Bump dependencies' versions.
- Split single tests file into multiple files.
- Replace the nim-secp256k1/secp256k1 wrapper with our own.
Previously, nmostr wrapped the keys from that module in container types to hide the{.requiresInit.}
pragma, working around initialization in jsony when parsing objects as JSON. - Refactor public keys, event IDs, and schnorr signatures to store their hex in their objects as stack strings.
- REUSE compliance and a workflow to track it.
Adapt for changes to NIP-01
- Remove
recommendedServer
. filter.matches
only checks for exact public key/event ID matches instead of matching prefixes.
- Raise a
ValueError
when parsing an invalid hex, such as from an uninitialized event serialized to JSON. - Re-order
init(T: Event)
to be consistent withnote
and other similar procs.
- Fix
hrpExpand
bug when encoding bech32 caused by incorrect use ofnewSeqOfCap
. - Fix Event.init's default
created_at
containing nanoseconds. - Rewrite
filters.matches
.
- Add
getParameterizedID
function to get the firstd
value of an event.
- Bump union dependency version.