1
0
mirror of https://github.com/BLAKE3-team/BLAKE3 synced 2024-09-27 09:50:52 +02:00
Commit Graph

584 Commits

Author SHA1 Message Date
Joel Rosdahl
2dd4e57f68 Fix typos 2023-05-23 14:39:27 -07:00
Jean-Philippe Aumasson
71a2646180
B3 users 2023-05-01 19:54:49 +02:00
Jack O'Connor
e6e32bc2b1 small doc tweak 2023-05-01 01:28:01 -07:00
Eduardo Leegwater Simões
8176a2202d add from_bytes for conversions from [u8; 32]
The function is `const`, so it is fundamentally different from the
`From` trait implementation by allowing compile-time instantiation of a
`Hash`.
2023-05-01 03:23:16 -05:00
Eduardo Leegwater Simões
ce48d79f38 make Hash::as_bytes const 2023-05-01 03:23:16 -05:00
SteveGremory
3f65cabb7d Fixed CI for CMake. 2023-05-01 01:01:01 -07:00
SteveGremory
d7f43a339a Added CI Support for the CMake build, Linux/macOS only (for now) 2023-05-01 01:00:59 -07:00
SteveGremory
b0a3863c06 Minor changes to CMake, added SSE support. Added options to only make either static or shared libs. 2023-05-01 00:59:56 -07:00
SteveGremory
3d8a673f59 Fixed on macOS 2023-05-01 00:59:56 -07:00
SteveGremory
b494d215e5 Hotfix CMakeLists.txt 2023-05-01 00:59:56 -07:00
SteveGremory
1569e34555 Added CMake support, CMakeLists.txt taken from issue 102 2023-05-01 00:59:56 -07:00
Samuel Neves
9ac0a9b896 correct SSSE3 detection; fixes #300
SSSE3 is indicated by bit 9 of ECX, not bit 0, which indicates the
presence of SSE3.

There are very few CPUs in use affected by this bug; SSE3 was part of
the Prescott new instructions, introduced in the later Pentium 4 chips,
whereas SSSE3 was introduced in Intel's Core 2 and AMD's Bulldozer. This
leaves a few Pentium 4 and Athlon 64 models that will potentially run an
illegal pshufb or pblendw.
2023-04-21 21:28:01 +01:00
Jack O'Connor
a9750c7fec upgrade all Cargo.toml files to edition=2021
The MSRV is already 1.60, so this doesn't affect much. The only impact
to other code is that we no longer need to explicitly import TryInto.
2023-03-25 16:36:37 -07:00
Jack O'Connor
64747d48ff do another saturating_add for consistency
This one is less security/correctness-critical than the other one I just
added, but I might as well be consistent.
2023-02-04 10:35:59 -08:00
Jack O'Connor
697ca13550 suppress expected stderr prints in b3sum tests 2023-02-04 10:16:08 -08:00
Jack O'Connor
4c51c06008 add a colon to the b3sum warning format
This matches what md5sum does.
2023-02-04 10:15:25 -08:00
Jack O'Connor
f1dcbeadc2 do a saturating_add for files_failed 2023-02-04 10:15:25 -08:00
joveian
98135307bf Use u64 instead of i64 2023-02-04 10:14:52 -08:00
joveian
4c819d01bc Add --check summary of failures
Add a warning to stderr at the end similar to other *sum utilities when --check is used and some files failed verification.

At least the last part of the comment above check_one_checkfile seemed to be incorrect so I removed that comment.

Fixes #283
2023-02-04 10:14:52 -08:00
namazso
c303437aab Correct section names on Windows GNU assembly 2023-01-23 11:19:19 -08:00
Alberto González Palomo
606a5825d9 Make sign conversion explicit. Fix #287.
Implicit sign conversions cause warnings when using -Wsign-conversion
but that is easy to avoid by making the conversions explicit.
2023-01-19 13:13:32 -08:00
Jack O'Connor
e366618d22 test b3sum --keyed with bad key lengths 2022-12-13 15:56:08 -08:00
Jack O'Connor
2465e0a935 expand the short description of b3sum --keyed 2022-12-13 15:50:30 -08:00
Jack O'Connor
67e4d04a3c version 1.3.3
Changes since 1.3.2:
- Fix incorrect output from AVX-512 intrinsics under GCC 5.4 and 6.1 in
  debug mode. This bug was found in unit tests and probably doesn't
  affect the public API in practice. See
  https://github.com/BLAKE3-team/BLAKE3/issues/271.
2022-11-26 00:31:40 -05:00
Jack O'Connor
342f9f8067 fix incorrect output from AVX-512 intrinsics in debug mode under GCC 5.4 and 6.1
Fixes https://github.com/BLAKE3-team/BLAKE3/issues/271.

The `_mm512_cmp_epu32_mask` intrinsic is broken under GCC 5.4 and 6.1.
This led to incorrect output in the AVX-512 implementation when building
with intrinsics instead of assembly. This fix is a simplified version of
Samuel's proposed fix here:
f10816e857 (commitcomment-90742995)
2022-11-23 14:14:19 -08:00
Jack O'Connor
5dad698d3f test multiple initial counter values for hash_many
I'm adding the i32::MAX test case here because I personally screwed it
up while I was working on
https://github.com/BLAKE3-team/BLAKE3/issues/271. The correct
implementation of the carry bit is the ANDNOT of old high bit (1) and
the new high bit (0). Using XOR instead of ANDNOT gives the correct
answer in the overflow case, but it also reports an incorrect "extra"
overflow when the high bit goes from 0 to 1.
2022-11-22 23:31:29 -08:00
Jack O'Connor
62772b2d04 add GCC 5.4 to CI 2022-11-22 23:22:14 -08:00
Jack O'Connor
8b9608ba17 grammar fix in b3sum help output 2022-11-20 17:24:58 -08:00
Jack O'Connor
56b72b1738 add another retry loop to upload_github_release_asset.py
While we're at it, black format the .py files in this directory.
2022-11-20 17:18:35 -08:00
Jack O'Connor
537e96747a version 1.3.2:
Changes since 1.3.1:
- Dependency updates only. This includes updating Clap to v4, which
  changes the format of the `b3sum --help` output. The new MSRV is
  1.59.0 for `blake3` and 1.60.0 for `b3sum`. Note that this project
  doesn't have any particular MSRV policy, and we don't consider MSRV
  bumps to be breaking changes.
2022-11-20 15:29:45 -08:00
Jack O'Connor
afa717caf5 downgrade os_str_bytes to v6.3.1 in b3sum/Cargo.lock
v6.4.0 has a bug where invalid UTF-16 filenames fail a debug_assert on
Windows. See https://github.com/dylni/os_str_bytes/issues/14. The vast
majority of b3sum users should be running a binary built in release mode
and shouldn't be affected by this. This lockfile change fixes our CI,
but note that `cargo install` doesn't respect lockfiles by default
(without --locked), so anyone running a debug binary against invalid
Windows filepaths (very rare) will still need to wait for an upstream
patch release.
2022-11-20 15:11:41 -08:00
Jack O'Connor
fa127b2030 small update to release.md 2022-11-20 13:23:35 -08:00
Jack O'Connor
e067e7f498 add the MSRV toolchain (currently 1.60.0) to CI 2022-11-20 12:45:11 -08:00
Jack O'Connor
c6a25d7c97 clean up b3sum help strings and increase max_term_width to 100 2022-11-20 12:40:57 -08:00
Jack O'Connor
f10d41924a regenerate b3sum/Cargo.lock 2022-11-20 12:20:57 -08:00
Jack O'Connor
245ac798ce upgrade constant_time_eq to v0.2 and page_size to v0.5 2022-11-20 12:20:00 -08:00
Jack O'Connor
62bba46342
Merge pull request #259 from sorairolake/rewrite-cli
Rewrite CLI using Derive API
2022-11-20 12:15:50 -08:00
Jack O'Connor
f84636e59c
Merge pull request #261 from wargio/pure-portable
Support portable build without intrinsics
2022-10-12 03:40:58 -04:00
Giovanni
9abc602848
Add missing sudo in ci.yml 2022-10-12 00:27:22 +02:00
wargio
cf5d59cd43 Support portable build without intrinsics 2022-10-03 11:24:18 +02:00
Shun Sakai
cf9edb090b Split short summary from full help text 2022-10-03 13:28:52 +09:00
Shun Sakai
e4dfb96b41 Bump clap to v4.0 2022-10-03 12:07:33 +09:00
Shun Sakai
df7136837a Rewrite CLI using Derive API 2022-09-14 19:53:05 +09:00
Jean-Philippe Aumasson
7e15c5314e
alephium 2022-09-03 19:59:01 +02:00
Jack O'Connor
e733e5ac98 fix another instance of the same typo 2022-07-28 14:15:13 -07:00
Ricardo Fernández Serrata
0fb6410c90 Fix doc typo 2022-07-28 14:14:39 -07:00
Jack O'Connor
09df11731e replace a copy-pasted Rust API reference in the C docs 2022-07-22 10:48:33 -07:00
Ricardo Fernández Serrata
79d270283f Fix and shorten link 2022-07-19 09:45:19 -07:00
Ricardo Fernández Serrata
b5bd5bc3c9 Add direct link to multithreading section 2022-07-19 09:45:19 -07:00
Jack O'Connor
49a04ca23d clarify unstable Cargo features 2022-06-23 10:07:53 -07:00