Closed
Description
Migrating to 2018 edition is a long overdue and since it's a good chance to introduce breaking changes, I propose to use this issue to discuss them. Right now I have the following list of changes:
- Migrate to 2018 edition and bump MSRV to
1.361.41 (needed forgeneric-array
v0.14) - Update
generic-array
tov0.13v0.14. - Release
crypto-mac v0.8
which usessubtle v2
. (see Release a 0.8.0 version? #35) - Rename
crypto_mac::Mac::input
anddigest::Digest::input
methods toupdate
. - Rename
digest::Input
todigest::Update
. - Remove
digest::Reset
trait in favor of reworkedFixedResult
trait. See this comment. - Deprecate
block-cipher-trait
and useblock-cipher
crate instead Rename block-cipher-trait to block-cipher on the next breaking change #28. - Introduce a new
NewBlockCipher
trait (stream-cipher: add FromBlockCipher trait (fixes #32) #164). - Add
stream_cipher::FromBlockCipher
trait. - Add
impl_write!
macro tocrypto-mac
. Find solution for buffer-to-buffer cipher operations Consider supporting buffer-to-buffer cipher operations #31Add(closed as wontfix, see *::new to should return Result<T, E> #47)try_new
methods- Rename
MacResult
type to something likeCode
/Output
and renamecode
method tointo_bytes
for consistency with theuniversal-hash
crate. Add macro for implementing(dup of above)io::Write
tocrypto-mac
similarly to thedigest
crate.- Bump
opaque-debug
to v0.2 Support variable length AEAD Nonces aead: support variable-length nonces #65(EDIT: solved by making ciphers generic over theirNonceSize
)- Rename
crypto_mac::Mac::result
,digest::Digest::result
, anduniversal_hash::UniversalHash::result
to::finalize
or::finish
I may have forgotten some changes I had in mind. Feel free to suggest other public API changes.
Metadata
Metadata
Assignees
Labels
No labels