| Age | Commit message (Collapse) | Author |
|
Changes since 1.8.2:
- Add `Hash::as_slice`.
- Update to the 2024 Edition and bump the MSRV to 1.85.
- Fix a set of Miri failures in the intrinsics implementations. We were
computing (though not dereferencing) an out-of-bounds pointer using
`add` rather than `wrapping_add`. I'm not aware of any observable
consequences of this bug. See https://github.com/BLAKE3-team/BLAKE3/pull/507.
- CPU feature detection on x86/x86-64 no longer requires the `std` Cargo
feature in the `blake3` crate.
- Build fixes in the C implementation for macOS and Cygwin, and various
improvements to the CMake build.
|
|
While we're taking this MSRV bump, we can also update
`constant_time_eq`, which uses the 2024 edition in its most recent
versions.
|
|
|
|
Temporarily skip blake3_xof_many_avx512 on Cygwin, as is already done for _WIN32.
This workaround should be removed when blake3_xof_many_avx512 is implemented in blake3_avx512_x86-64_windows_gnu.S .
fixes https://github.com/BLAKE3-team/BLAKE3/issues/494
|
|
`Hash::as_bytes()` returns the hash as an array of bytes. However,
sometimes it's useful to have the hash as a slice of bytes instead, such
as for serialization via an API that takes `&[u8]`. While
`.as_bytes().as_slice()` works for this, it'd be more convenient to have
a direct `.as_slice()` on hashes.
|
|
Upstream `crypto-common` now does the pin itself:
https://github.com/RustCrypto/traits/issues/2036#issuecomment-3522196740
|
|
This is a temporary hack to fix warnings in CI. Upstream tracking issue:
https://github.com/RustCrypto/traits/issues/2036
|
|
|
|
|
|
|
|
|
|
cmake 3.31.6 prints a warning when configuring projects
that specify a minimum version of < 3.10. This updates
the version range to suppress the warning.
We chose CMake 3.18 as the upper bound as the vast majority of users
should be using newer CMake versions--CMake 3.18 is shipped in the
current LTS version of Debian (11). Furthermore it precludes some of the
more significant policy changes introduced with CMake 3.19, i.e. we
should get away with not testing the build with every CMake version.
|
|
|
|
|
|
These blocks silence warnings that we'll see when we eventually turn on
the 2024 edition. I used Claude to make these changes.
|
|
The current driver is `rayon-core` v1.13.0.
|
|
|
|
* Mark blake3_hash_neon as static
This is an implementation detail, which should not be exported.
This avoids unnecessary symbol conflicts with vendored copies
of blake3.
* style: fix formatting of `blake3_hash4_neon`
---------
Co-authored-by: Henrik Gaßmann <[email protected]>
|
|
the #endif was in the wrong place, causing the error
/Users/runner/work/php-src/php-src/ext/hash/blake3/upstream_blake3/c/blake3_dispatch.c:112:5: error: unused function 'get_cpu_features' [-Werror,-Wunused-function]
full compiler log https://github.com/php/php-src/actions/runs/7762643678/job/21173438425?pr=13194
|
|
|
|
|
|
|
|
This started emitting warnings recently, and in the future those will be
hard errors. See https://github.com/rust-lang/rust/issues/141848. The
i586 target triple still works, and it's sufficient for exercising the
non-SSE2 case.
Fixes https://github.com/BLAKE3-team/BLAKE3/issues/489.
|
|
the old link isn't working and visiting it starts with a security warning from the browser...
|
|
|
|
|
|
This allows Clang frontend variant detection to work better in more
scenarios such as when compiling with cross-compilers with platform
prefixes.
|
|
|
|
|
|
Previously "std" enabled runtime CPU feature detection on x86, but as of
https://github.com/BLAKE3-team/BLAKE3/pull/469 that's always on.
|
|
|
|
Changes since 1.8.1:
- Fixes to the CMake build, particularly around the new TBB feature.
|
|
|
|
|
|
|
|
|
|
Compilation may work with other configurations such as MinGW under the right circumstances.
|
|
|
|
|
|
|
|
Windows newline escaping was added in b3sum v1.5.5 last year
(1170f023bf459ea3d0bedd285d6ae32309ee348c), and this commit updates the check
doc to reflect that. Note that Coreutils added \r escaping in v9.0 in 2021
(https://github.com/coreutils/coreutils/commit/ed1c58427d574fb4ff0cb8f915eb0d554000ceeb),
a year after the original check doc was written.
|
|
|
|
|
|
Changes since 1.8.0:
- [CMake] Fix transitive dependencies for TBB when libblake3 is built
with BLAKE3_USE_TBB=1 (#460 and #461).
|
|
|
|
The `join_pkg_config_requires` function would misbehave in a few edge cases. Though these edge cases aren't triggered by our current usage.
|
|
|
|
|
|
Changes since 1.7.0:
- The Rust crate now provides the `blake3::hazmat` module, which
replaces the undocumented and now deprecated `blake3::guts` module.
This is intended for advanced use cases like Bao and Iroh, which need
to manipulate chunk and subtree "chaining values" directly. See the
module docs for more: https://docs.rs/blake3/1.8.0/blake3/hazmat
|
|
https://github.com/BLAKE3-team/BLAKE3/pull/458
|