Releases: hristogochev/merkle_hash
Releases · hristogochev/merkle_hash
3.7.0
3.6.0
Breaking changes
- The duplication of children paths for directories is now hidden behind the
retain
feature. This is due to the fact that that feature was only useful when you collapsed a tree into a linear collection and wanted to check the children paths of a directory. Hiding this behind a non-default feature flag leads to performance improvements.
New features
- Added the
to_hex_string
trait function forVec<u8>
and&[u8]
. - The
bytes_to_hex
andto_hex_string
functions are now hidden behind theencode
feature, which is enabled by default.
3.5.0
Breaking changes
- Renamed the main node in
MerkleTree
frommain_node
toroot
.
External changes
- Added the
parallel
cargo feature, enabled by default, allows the crate to utilize all available threads. bytes_to_hex
now accepts any type that can be converted to a[u8]
slice.
3.4.0
External changes
- Renamed the
sha2-hash
feature to simplysha
3.3.1
External changes
- Made the
SHA-256
andSHA-512
hashes an optional feature, use thesha2-hash
feature to add them to your project.
3.2.0
New features
- Added SHA-512 as a hashing algorithm.
External changes
- Switched to using Vec for the hash results.
- Switched from a Vec to a BTreeSet for the children paths of directories.
3.1.0
New features
- Added the ability to add more hashing algorithms in the future.
- Added SHA-256 as a hashing algorithm.
External changes
- Switched from constructors to a builder pattern for the creation of merkle trees.
Internal changes
- Restructured the whole source code of the crate.
3.0.0
Breaking changes
- Switched from
internal
toexternal
iteration of directory trees. - Added the ability to specify whether to include the
names
of files and directories in their hashes. - Removed the
collapse
andtraverse
functions as they are now obsolete. - Updated the hashing algorithm to
include
the hashes of empty directories instead ofignoring
them.