v0.8.0 - api : stabilize XXH3 - cli : xxhsum can parse BSD-style --check lines, by @WayneD - cli : `xxhsum -` accepts console input, requested by @jaki - cli : xxhsum accepts -- separator, by @jaki - cli : fix : print correct default algo for symlinked helpers, by @martinetd - install: improved pkgconfig script, allowing custom install locations, requested by @ellert v0.7.4 - perf: automatic vector detection and selection at runtime (`xxh_x86dispatch.h`), initiated by @easyaspi314 - perf: added AVX512 support, by @gzm55 - api : new: secret generator `XXH_generateSecret()`, suggested by @koraa - api : fix: XXH3_state_t is movable, identified by @koraa - api : fix: state is correctly aligned in AVX mode (unlike `malloc()`), by @easyaspi314 - api : fix: streaming generated wrong values in some combination of random ingestion lengths, reported by @WayneD - cli : fix unicode print on Windows, by @easyaspi314 - cli : can `-c` check file generated by sfv - build: `make DISPATCH=1` generates `xxhsum` and `libxxhash` with runtime vector detection (x86/x64 only) - install: cygwin installation support - doc : Cryptol specification of XXH32 and XXH64, by @weaversa v0.7.3 - perf: improved speed for large inputs (~+20%) - perf: improved latency for small inputs (~10%) - perf: s390x Vectorial code, by @easyaspi314 - cli: improved support for Unicode filenames on Windows, thanks to @easyaspi314 and @t-mat - api: `xxhash.h` can now be included in any order, with and without `XXH_STATIC_LINKING_ONLY` and `XXH_INLINE_ALL` - build: xxHash's implementation transferred into `xxhash.h`. No more need to have `xxhash.c` in the `/include` directory for `XXH_INLINE_ALL` to work - install: created pkg-config file, by @bket - install: VCpkg installation instructions, by @LilyWangL - doc: Highly improved code documentation, by @easyaspi314 - misc: New test tool in `/tests/collisions`: brute force collision tester for 64-bit hashes v0.7.2 - Fixed collision ratio of `XXH128` for some specific input lengths, reported by @svpv - Improved `VSX` and `NEON` variants, by @easyaspi314 - Improved performance of scalar code path (`XXH_VECTOR=0`), by @easyaspi314 - `xxhsum`: can generate 128-bit hashes with the `-H2` option (note: for experimental purposes only! `XXH128` is not yet frozen) - `xxhsum`: option `-q` removes status notifications v0.7.1 - Secret first: the algorithm computation can be altered by providing a "secret", which is any blob of bytes, of size >= `XXH3_SECRET_SIZE_MIN`. - `seed` is still available, and acts as a secret generator - updated `ARM NEON` variant by @easyaspi314 - Streaming implementation is available - Improve compatibility and performance with Visual Studio, with help from @aras-p - Better integration when using `XXH_INLINE_ALL`: do not pollute host namespace, use its own macros, such as `XXH_ASSERT()`, `XXH_ALIGN`, etc. - 128-bit variant provides helper functions for comparison of hashes. - Better `clang` generation of `rotl` instruction, thanks to @easyaspi314 - `XXH_REROLL` build macro to reduce binary size, by @easyaspi314 - Improved `cmake` script, by @Mezozoysky - Full benchmark program provided in `/tests/bench`