1
0
mirror of https://github.com/BLAKE3-team/BLAKE3 synced 2024-11-08 12:59:17 +01:00
Commit Graph

629 Commits

Author SHA1 Message Date
Jack O'Connor
acaeabeff3 version 1.5.3
Changes since 1.5.2:
- Revert the serialization change. It was intended to be backwards
  compatible, but that didn't hold for non-self-describing serialization
  formats like bincode. See #414.
1.5.3
2024-07-14 22:01:46 -07:00
Jack O'Connor
2ce9b51993 update Cargo.lock 2024-07-14 21:54:30 -07:00
Jack O'Connor
43ce639d13 Revert "serialize Hash with serde_bytes"
This mostly reverts commits 8416b1658c2690dc6351bdc7e0975b0d5f1a5282 and
dd0afd640ad97b5ebcf887107162009a23ffdca0.

Changing the serialization of Hash can only be backwards-compatible in
self-describing formats like CBOR. In non-self-describing formats like
bincode, the deserializer has to know in advance which serialization
format was used.

Fixes https://github.com/BLAKE3-team/BLAKE3/issues/414.

Reopens https://github.com/BLAKE3-team/BLAKE3/issues/412.
2024-07-14 19:44:45 -07:00
Jack O'Connor
fc2f7e4206 --dry-run is no longer needed in the release checklist 2024-07-12 10:01:14 -07:00
Jack O'Connor
27cbd6bdd5 version 1.5.2
Changes since 1.5.1:
- `build.rs` sets `cc::Build::emit_rerun_if_env_changed(false)` to
  prevent some unnecessary rebuilds, particularly when the `PATH`
  changes on Windows. See #324.
- Serializing a `Hash` produces a bytestring instead of an array in
  formats that support bytestrings (like CBOR). Deserialization is
  backwards-compatible with the array format.
- Cleanup and edge case fixes in the C and CMake builds.
1.5.2
2024-07-12 09:50:13 -07:00
Jack O'Connor
0c456b7f49 update b3sum/Cargo.lock 2024-07-12 09:46:03 -07:00
Jack O'Connor
f021579d18 update b3sum license symlinks 2024-07-12 09:45:09 -07:00
Michael Hinton
eaf7eb97bf Do not let cc-rs trigger a rebuild any time the env changes 2024-07-12 09:34:19 -07:00
Jack O'Connor
8416b1658c update CBOR tests per @BurningEnlightenment's suggestions
https://github.com/BLAKE3-team/BLAKE3/issues/412#issuecomment-2220970998
2024-07-10 10:00:19 -07:00
Jack O'Connor
15e21c924f bump the MSRV in CI
This is currently driven by dependencies of ciborium, which is itself a
dev dependency. It's not really a crate MSRV bump.
2024-07-09 22:52:10 -07:00
Jack O'Connor
dd0afd640a serialize Hash with serde_bytes
Closes #412.
2024-07-09 19:20:48 -07:00
Jack O'Connor
7ff69443d0 bump the MSRV to 1.67.1
This is the current MSRV of `cc`.
2024-07-09 10:54:47 -07:00
Henrik S. Gaßmann
524ce1cc3e build(CMake): Add basic CMake presets for MSVC 2024-07-09 13:20:22 -04:00
Henrik S. Gaßmann
330af75f5b build(CMake): Fix SIMD type detection
Refs: #402
2024-07-09 13:20:22 -04:00
Henrik S. Gaßmann
73d0ffacc9 build(CMake): Add CLI overrides for SIMD detection
Refs: #402
2024-07-09 13:20:22 -04:00
wangcundashang
1ce8099896 chore: fix some comments
Signed-off-by: wangcundashang <wangcundashang@qq.com>
2024-07-03 12:32:24 -04:00
Jack O'Connor
4b3fdf51e4 add a comment about depending on rayon-core 2024-07-03 09:27:41 -07:00
silvanshade
648a06043a Switch to rayon-core for faster build 2024-07-03 12:27:14 -04:00
Tom Stellard
c8834c24a6 Remove some dead stores
These were caught by the clang static analyzer.
2024-06-11 14:26:39 -04:00
Jack O'Connor
454ee5a7c7 add check-cfg directives in build.rs to silence nightly warnings
See https://blog.rust-lang.org/2024/05/06/check-cfg.html.
2024-06-01 12:06:25 -07:00
Jack O'Connor
b5c6017ea7 update the license field in Cargo.toml 2024-06-01 11:10:23 -07:00
Jack O'Connor
05c60141a8 update CC0 text to current upstream
https://creativecommons.org/publicdomain/zero/1.0/legalcode.txt
2024-06-01 11:05:46 -07:00
Jack O'Connor
4d69ab417f clean up the licenses section of the readme 2024-06-01 11:00:54 -07:00
Jack O'Connor
0bb4e3bddb fill in the template line for LICENSE_A2LLVM 2024-06-01 10:56:13 -07:00
JP
0b2c630cc5 licences 2024-05-31 18:11:45 +02:00
JP
bb8761256a multilicensing for LLVM 2024-05-31 18:10:50 +02:00
Javier Blazquez
0816badf3a fix Windows ARM64 build and detect ARM64EC as ARM64 2024-04-07 11:48:02 -04:00
Jack O'Connor
4ec3be8bfa format the state matrix better in reference_impl.rs 2024-03-20 15:44:05 -07:00
Benjamin A. Beasley
d99ad871a6 Fix missing LICENSE file in b3sum crate
Add a symbolic link to the top-level license file; this is dereferenced
by cargo publish, and the LICENSE appears as a regular file in the
published crate.
2024-03-12 14:47:39 -07:00
Jack O'Connor
54930c9522 version 1.5.1
Changes since 1.5.0:
- The Rust crate is now compatible with Miri.
- ~1% performance improvement on Arm NEON contributed by @divinity76 (#384).
- Various fixes and improvements in the CMake build.
- The MSRV of b3sum is now 1.74.1. (The MSRV of the library crate is
  unchanged, 1.66.1.)
1.5.1
2024-03-12 00:34:53 -07:00
divinity76
58bea0bcbb
optimize neon loadu_128/storeu_128 (#384)
vld1q_u8 and vst1q_u8 has no alignment requirements.

This improves performance on Oracle Cloud's VM.Standard.A1.Flex by 1.15% on a 16*1024 input, from 13920 nanoseconds down to 13800 nanoseconds (approx)
2024-03-12 03:21:51 -04:00
Jack O'Connor
5b9af1c347 test_miri_smoketest 2024-03-10 09:54:03 -07:00
Jack O'Connor
d57818afdc avoid using NamedTempFile under Miri 2024-03-09 16:57:14 -08:00
Jack O'Connor
2435e29dbe avoid using constant_time_eq under Miri 2024-03-09 16:57:14 -08:00
Ryo Onodera
e6e7f27336 Support running inside miri 2024-03-09 16:56:59 -08:00
Jack O'Connor
8fc36186b8 comment cleanup 2024-02-04 13:32:30 -08:00
divinity76
2918c51bc6 silenc gcc Werror=logical-op
```
/home/travis/build/php/php-src/ext/hash/blake3/upstream_blake3/c/blake3.c: In function ‘compress_subtree_to_parent_node’:
/home/travis/build/php/php-src/ext/hash/blake3/upstream_blake3/c/blake3.c:354:22: error: logical ‘and’ of mutually exclusive tests is always false [-Werror=logical-op]
  354 |   while (num_cvs > 2 && num_cvs <= MAX_SIMD_DEGREE_OR_2) {
      |                      ^~
cc1: all warnings being treated as errors
make: *** [Makefile:1910: ext/hash/blake3/upstream_blake3/c/blake3.lo] Error 1
```

Fixes https://github.com/BLAKE3-team/BLAKE3/issues/379.
Closes https://github.com/BLAKE3-team/BLAKE3/pull/380.
2024-02-04 13:31:55 -08:00
JP
a65fcf63ee Tekken 8 https://twitter.com/rodarmor/status/1751567502050771189 2024-01-28 23:31:19 -08:00
Jack O'Connor
5558fa4623 add a guts docs example guts_0.0.0 2024-01-21 20:10:46 -08:00
Jack O'Connor
1a6c1e2037 guts readme updates 2024-01-21 19:43:07 -08:00
Jack O'Connor
1ca383ba9b add guts testing to CI 2024-01-21 18:38:06 -08:00
Jack O'Connor
6e519ea6b7 configure no_std for guts, but not for testing 2024-01-21 18:38:06 -08:00
Jack O'Connor
fc75227170 factor out just the portable parts of the guts_api branch 2024-01-21 18:38:06 -08:00
Jack O'Connor
6f3e6fc86c update memmap2 to v0.9 2024-01-21 18:37:01 -08:00
Dirk Stolle
4d32708f51 replace unmaintained actions-rs/toolchain action in CI
Basically all of the `actions-rs/*` actions are unmaintained. See
<https://github.com/actions-rs/toolchain/issues/216> for more
information. Due to their age they generate several warnings in
CI runs.

To get rid of those warnings the occurrences of
`actions-rs/toolchain` are replaced by `dtolnay/rust-toolchain`.
2023-12-30 02:28:33 -05:00
Dirk Stolle
5306464d03 update actions/checkout in GitHub Actions to v4 2023-12-28 10:46:51 +01:00
Jack O'Connor
c0ea395cf9 add Bazel to the list of users in the readme 2023-12-08 10:23:30 -08:00
Henrik S. Gaßmann
7ce2aa41e9 build(CMake): Require C99 mode
Specify language requirement as a [compile-feature] and force compiler
extensions off ensuring portability problems are detected early on.
Note that we do not use the `C_STANDARD` property, because it doesn't
propagate to dependent targets and would prohibit users from compiling
their code base with consistent flags / language configuations if they
were to target a newer C standard. Similarly we do not configure
`C_STANDARD_REQUIRED` as [compile-features] do not interact with
it--they are enforced regardless.

[compile-feature]: https://cmake.org/cmake/help/latest/manual/cmake-compile-features.7.html#compile-feature-requirements
2023-12-02 11:11:10 -08:00
Jack O'Connor
92e4cd71be add the compiler name to CMake CI jobs 2023-11-05 09:18:39 -08:00
Viacheslav H
1930721c50
Fix CMake target include directories if library is used with add_subdirectory or FetchContent 2023-11-05 12:16:48 -05:00