Skip to content

Releases: hristogochev/merkle_hash

3.7.0

02 Aug 03:41
Compare
Choose a tag to compare

Highlights

  • No longer depends on anyhow.

Breaking changes

  • The error returned by the library when indexing a MerkleTree is no longer an anyhow::Error but a custom IndexingError variant.

3.6.0

27 Jan 18:40
Compare
Choose a tag to compare

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 for Vec<u8> and &[u8].
  • The bytes_to_hex and to_hex_string functions are now hidden behind the encode feature, which is enabled by default.

3.5.0

24 Mar 11:13
Compare
Choose a tag to compare

Breaking changes

  • Renamed the main node in MerkleTree from main_node to root.

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

21 Mar 12:31
Compare
Choose a tag to compare

External changes

  • Renamed the sha2-hash feature to simply sha

3.3.1

21 Mar 02:40
Compare
Choose a tag to compare

External changes

  • Made the SHA-256 and SHA-512 hashes an optional feature, use the sha2-hash feature to add them to your project.

3.2.0

27 Feb 18:31
Compare
Choose a tag to compare

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

31 Jan 04:55
Compare
Choose a tag to compare

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

20 Nov 13:33
Compare
Choose a tag to compare

Breaking changes

  • Switched from internal to external iteration of directory trees.
  • Added the ability to specify whether to include the names of files and directories in their hashes.
  • Removed the collapse and traverse functions as they are now obsolete.
  • Updated the hashing algorithm to include the hashes of empty directories instead of ignoring them.