Skip to content

Commit d229ad3

Browse files
committed
Rotate release notes as part of the 2.0.0 release
1 parent 26425db commit d229ad3

2 files changed

Lines changed: 25 additions & 25 deletions

File tree

.release-notes/2.0.0.md

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
## Add first-class LibreSSL support
2+
3+
LibreSSL users previously had to build with `-Dopenssl_0.9.0`, which forced LibreSSL through a code path designed for ancient OpenSSL. This silently disabled ALPN negotiation, PBKDF2 key derivation, and the modern EVP/init APIs that LibreSSL supports.
4+
5+
LibreSSL now has its own define. Projects that build against LibreSSL should switch from `-Dopenssl_0.9.0` to `-Dlibressl`.
6+
7+
## SSLConnection ignores _notify.received value
8+
9+
Previously, when a `TCPConnectionNotify` wrapped by `SSLConnection` returned `false` from its `received` callback to request yielding to other actors, `SSLConnection` discarded the return value and always told `TCPConnection` to continue reading. This meant backpressure signaling through SSL connections had no effect.
10+
11+
`SSLConnection` now properly propagates the wrapped notify's `received` return value to `TCPConnection`, allowing the backpressure/yield mechanism to work through SSL connections.
12+
13+
## Add variable-length output support to SHAKE digests
14+
15+
The `shake128` and `shake256` constructors on `Digest` now accept an optional `size` parameter that controls the output length in bytes. The defaults match the previous fixed sizes (16 bytes for SHAKE128, 32 for SHAKE256), so existing code is unaffected.
16+
17+
Variable-length output requires OpenSSL 3.0.x. On OpenSSL 1.1.x, the default size is always used regardless of the parameter value.
18+
19+
```pony
20+
// 64-byte SHAKE256 digest (OpenSSL 3.0.x)
21+
let d = Digest.shake256(64)
22+
d.append("input data")?
23+
let hash: Array[U8] val = d.final() // 64 bytes
24+
```
25+

.release-notes/next-release.md

Lines changed: 0 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -1,25 +0,0 @@
1-
## Add first-class LibreSSL support
2-
3-
LibreSSL users previously had to build with `-Dopenssl_0.9.0`, which forced LibreSSL through a code path designed for ancient OpenSSL. This silently disabled ALPN negotiation, PBKDF2 key derivation, and the modern EVP/init APIs that LibreSSL supports.
4-
5-
LibreSSL now has its own define. Projects that build against LibreSSL should switch from `-Dopenssl_0.9.0` to `-Dlibressl`.
6-
7-
## SSLConnection ignores _notify.received value
8-
9-
Previously, when a `TCPConnectionNotify` wrapped by `SSLConnection` returned `false` from its `received` callback to request yielding to other actors, `SSLConnection` discarded the return value and always told `TCPConnection` to continue reading. This meant backpressure signaling through SSL connections had no effect.
10-
11-
`SSLConnection` now properly propagates the wrapped notify's `received` return value to `TCPConnection`, allowing the backpressure/yield mechanism to work through SSL connections.
12-
13-
## Add variable-length output support to SHAKE digests
14-
15-
The `shake128` and `shake256` constructors on `Digest` now accept an optional `size` parameter that controls the output length in bytes. The defaults match the previous fixed sizes (16 bytes for SHAKE128, 32 for SHAKE256), so existing code is unaffected.
16-
17-
Variable-length output requires OpenSSL 3.0.x. On OpenSSL 1.1.x, the default size is always used regardless of the parameter value.
18-
19-
```pony
20-
// 64-byte SHAKE256 digest (OpenSSL 3.0.x)
21-
let d = Digest.shake256(64)
22-
d.append("input data")?
23-
let hash: Array[U8] val = d.final() // 64 bytes
24-
```
25-

0 commit comments

Comments
 (0)