zig/lib/std/crypto
Andrew Kelley 0e37ff0d59 std.fmt: breaking API changes
added adapter to AnyWriter and GenericWriter to help bridge the gap
between old and new API

make std.testing.expectFmt work at compile-time

std.fmt no longer has a dependency on std.unicode. Formatted printing
was never properly unicode-aware. Now it no longer pretends to be.

Breakage/deprecations:
* std.fs.File.reader -> std.fs.File.deprecatedReader
* std.fs.File.writer -> std.fs.File.deprecatedWriter
* std.io.GenericReader -> std.io.Reader
* std.io.GenericWriter -> std.io.Writer
* std.io.AnyReader -> std.io.Reader
* std.io.AnyWriter -> std.io.Writer
* std.fmt.format -> std.fmt.deprecatedFormat
* std.fmt.fmtSliceEscapeLower -> std.ascii.hexEscape
* std.fmt.fmtSliceEscapeUpper -> std.ascii.hexEscape
* std.fmt.fmtSliceHexLower -> {x}
* std.fmt.fmtSliceHexUpper -> {X}
* std.fmt.fmtIntSizeDec -> {B}
* std.fmt.fmtIntSizeBin -> {Bi}
* std.fmt.fmtDuration -> {D}
* std.fmt.fmtDurationSigned -> {D}
* {} -> {f} when there is a format method
* format method signature
  - anytype -> *std.io.Writer
  - inferred error set -> error{WriteFailed}
  - options -> (deleted)
* std.fmt.Formatted
  - now takes context type explicitly
  - no fmt string
2025-07-07 22:43:51 -07:00
..
25519 std.fmt: breaking API changes 2025-07-07 22:43:51 -07:00
aes std.Target: Introduce Cpu convenience functions for feature tests. 2025-06-05 06:12:00 +02:00
Certificate std.crypto.Certificate.Bundle: haiku support 2025-06-05 13:45:52 +01:00
codecs std.io: deprecated Reader/Writer; introduce new API 2025-07-07 22:43:51 -07:00
pcurves std: fix compile errors in std.crypto.ecc (#23797) 2025-05-05 18:50:25 +00:00
tls std.fmt: breaking API changes 2025-07-07 22:43:51 -07:00
aegis.zig std.io: deprecated Reader/Writer; introduce new API 2025-07-07 22:43:51 -07:00
aes.zig std.Target: Introduce Cpu convenience functions for feature tests. 2025-06-05 06:12:00 +02:00
aes_gcm.zig std.crypto: better names for everything in utils 2024-08-09 19:47:06 -07:00
aes_ocb.zig std.Target: Introduce Cpu convenience functions for feature tests. 2025-06-05 06:12:00 +02:00
argon2.zig std: eradicate u29 and embrace std.mem.Alignment 2025-04-13 02:20:32 -04:00
ascon.zig crypto.ascon: support up to 16 rounds, and update links (#21953) 2024-11-10 20:43:09 +00:00
bcrypt.zig crypto.pwhash.bcrypt: make silently_truncate_password a member of Params (#22792) 2025-02-19 22:37:51 +01:00
benchmark.zig std.fmt: breaking API changes 2025-07-07 22:43:51 -07:00
blake2.zig std.io: deprecated Reader/Writer; introduce new API 2025-07-07 22:43:51 -07:00
blake3.zig std.io: deprecated Reader/Writer; introduce new API 2025-07-07 22:43:51 -07:00
Certificate.zig x86_64: implement integer @reduce(.Add) 2025-05-28 15:10:22 -04:00
chacha20.zig std.fmt: breaking API changes 2025-07-07 22:43:51 -07:00
cmac.zig std: update std.builtin.Type fields to follow naming conventions 2024-08-28 08:39:59 +01:00
codecs.zig fixed codecs.zig (#23706) 2025-04-29 22:07:30 +00:00
ecdsa.zig crypto.ecdsa: add the ability to sign/verify prehashed messages (#23607) 2025-04-20 04:27:10 +02:00
errors.zig crypto.edwards25519: add the ability to check for group membership (#20175) 2024-06-04 10:11:05 +02:00
ff.zig std: update std.builtin.Type fields to follow naming conventions 2024-08-28 08:39:59 +01:00
ghash_polyval.zig std.Target: Introduce Cpu convenience functions for feature tests. 2025-06-05 06:12:00 +02:00
hash_composition.zig x86_64: implement enough to pass unicode tests 2023-10-23 22:42:18 -04:00
hkdf.zig closes #21824 (#21832) 2024-10-28 14:54:02 +00:00
hmac.zig Remove redundant test name prefixes now that test names are fully qualified 2024-02-26 15:18:31 -08:00
isap.zig std.crypto: better names for everything in utils 2024-08-09 19:47:06 -07:00
keccak_p.zig crypto.keccak.State: add checks to prevent insecure transitions (#22020) 2024-11-20 11:16:09 +01:00
md5.zig Remove redundant test name prefixes now that test names are fully qualified 2024-02-26 15:18:31 -08:00
ml_kem.zig std.fmt: breaking API changes 2025-07-07 22:43:51 -07:00
modes.zig update codebase to use @memset and @memcpy 2023-04-28 13:24:43 -07:00
pbkdf2.zig lib: correct unnecessary uses of 'var' 2023-11-19 09:55:07 +00:00
phc_encoding.zig crypto/phc-encoding: forbid parameters named 'v' (#22569) 2025-02-06 16:37:42 +01:00
poly1305.zig std: avoid field/decl name conflicts 2024-08-29 20:39:11 +01:00
salsa20.zig std.crypto.salsa20: Disable some tests on RISC-V with vector support 2025-07-01 23:03:15 +02:00
scrypt.zig std: eradicate u29 and embrace std.mem.Alignment 2025-04-13 02:20:32 -04:00
sha1.zig std.io: deprecated Reader/Writer; introduce new API 2025-07-07 22:43:51 -07:00
sha2.zig std.io: deprecated Reader/Writer; introduce new API 2025-07-07 22:43:51 -07:00
sha3.zig std.io: deprecated Reader/Writer; introduce new API 2025-07-07 22:43:51 -07:00
siphash.zig std.io: deprecated Reader/Writer; introduce new API 2025-07-07 22:43:51 -07:00
test.zig update std lib and compiler sources to new for loop syntax 2023-02-18 19:17:21 -07:00
timing_safe.zig x86_64: rewrite bitwise @reduce 2025-05-28 15:10:22 -04:00
tlcsprng.zig std.crypto.tlcsprng: Fix hardcoded use of defaultRandomSeed() 2025-02-22 22:39:40 -05:00
tls.zig std.crypto.tls: advertise all supported signature algorithms 2024-11-07 20:25:26 -05:00