From d4a320987627c34b04cbc938d62662b0aca1bc8d Mon Sep 17 00:00:00 2001 From: Jack O'Connor Date: Thu, 21 Oct 2021 16:41:08 -0400 Subject: [PATCH] version 1.1.0 Changes since 1.0.0: - The NEON implementation is now enabled by default on AArch64 targets. Previously it was disabled without the "neon" Cargo feature in Rust or the "BLAKE3_USE_NEON=1" preprocessor flag in C. This is still the case on ARM targets other than AArch64, because of the lack of dynamic CPU feature detection on ARM. Contributed by @rsdy. - The previous change leads to some build incompatibilities, particularly in C. If you build the C implementation for AArch64 targets, you now need to include blake3_neon.c, or else you'll get a linker error like "undefined reference to `blake3_hash_many_neon'". If you don't want the NEON implementation, you need to explicitly set "BLAKE3_USE_NEON=0". On the Rust side, AArch64 targets now require the C toolchain by default. build.rs includes workarounds for missing or very old C compilers for x86, but it doesn't currently include such workarounds for AArch64. If we hear about build breaks related to this, we can add more workarounds as appropriate. - C-specific Git tags ("c-0.3.7" etc.) have been removed, and all the projects in this repo (Rust "blake3", Rust "b3sum", and the C implementation) will continue to be versioned in lockstep for the foreseeable future. --- blake3.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/blake3.h b/blake3.h index 5eacf180..74a96c0a 100644 --- a/blake3.h +++ b/blake3.h @@ -8,7 +8,7 @@ extern "C" { #endif -#define BLAKE3_VERSION_STRING "1.0.0" +#define BLAKE3_VERSION_STRING "1.1.0" #define BLAKE3_KEY_LEN 32 #define BLAKE3_OUT_LEN 32 #define BLAKE3_BLOCK_LEN 64