Skip to content

Version 0.2.16: "The End of the Line 2"

Choose a tag to compare

@a4lg a4lg released this 19 Jan 03:10
· 409 commits to main since this release

To focus to the version 0.3 line, the version 0.2 will be
the end of the line.

  • API (Deprecation)
    • From dual fuzzy hash type (FuzzyHashDualData), initialization methods from "the contents of raw fuzzy hash" will be removed.
  • API (New)
    • On fuzzy hash type (FuzzyHashData), object creation from "near raw contents of a fuzzy hash" methods are added.
    • On dual fuzzy hash type (FuzzyHashDualData), object creation from "near raw contents of a fuzzy hash" or "contents of a fuzzy hash" methods are added. This is in parity with the normal fuzzy hash type (FuzzyHashData).
  • API (Compatible)
    • Some FuzzyHashData methods (related to normalization) are no longer inherent (no two implementations for raw and normalized variants but just one implementation) and easier to be used by generic functions (it also makes the manual less confusing).
  • Performance
    • Fix invariants for better chances of higher level optimizations.
      It applies to invariants that precede slice accesses.
    • Optimized FuzzyHashDualData::is_normalized() considering the constraints of the "reverse normalization" data.
  • Documentation
    • This crate is decided to be "safe by default".
    • Clarification to naturally provide the file name part of the fuzzy hash later on the next version (v0.3.x).
  • Tests
    • Usual enhancements.

Crates.io: https://crates.io/crates/ffuzzy/0.2.16
Docs.rs: https://docs.rs/ffuzzy/0.2.16/ssdeep/

Full Changelog: v0.2.15...v0.2.16