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
As part of #1074 (specifically, 3515ac0), we put the ed25519_consensus::SigningKey behind a newtype wrapper, mainly to avoid having its Debug impl exposed.
We want to wrap all the types from ed25519-consensus which we consume in a similar way, partly for consistency, but mainly since it's good practice to not include dependencies' types in a crate's public API.
The text was updated successfully, but these errors were encountered:
## Summary
The `ed25519-consensus` types not already wrapped in newtypes are
wrapped in this PR.
## Background
This is partly for consistency (we recently provided a newtype for the
signing key), partly to avoid having third party types in our core
crate's public API, and partly to support memoizing the address of the
verification key.
## Changes
- Provided newtypes in the `crypto` module of `astria-core` for
`VerificationKey`, `Signature` and `Error`.
- Replaced all usages of the naked `ed25519-consensus` types with the
newtypes.
- Replaced `Address::from_verification_key` with
`VerificationKey::address`.
## Testing
Provided unit tests for the `VerificationKey` to ensure the `PartialEq`,
`Eq`, `PartialOrd`, `Ord` and `Hash` impls are correct given that
they're hand-rolled in order to exclude the memoized address field.
## Related Issues
Closes#1079.
As part of #1074 (specifically, 3515ac0), we put the
ed25519_consensus::SigningKey
behind a newtype wrapper, mainly to avoid having itsDebug
impl exposed.We want to wrap all the types from
ed25519-consensus
which we consume in a similar way, partly for consistency, but mainly since it's good practice to not include dependencies' types in a crate's public API.The text was updated successfully, but these errors were encountered: