Skip to content

Bump Erlang/OTP to 27.3.4.12#120

Merged
ericmj merged 1 commit into
mainfrom
bump-erlang-27.3.4.12
May 31, 2026
Merged

Bump Erlang/OTP to 27.3.4.12#120
ericmj merged 1 commit into
mainfrom
bump-erlang-27.3.4.12

Conversation

@ericmj
Copy link
Copy Markdown
Member

@ericmj ericmj commented May 31, 2026

OTP 27.2 rejects the new Let's Encrypt "Gen Y" certificate chain served by hex.pm with a TLS key_usage_mismatch error, caused by an over-strict extended-key-usage check on intermediate CA certificates. Once hex.pm rotated onto the new chain (2026-05-31), every docs upload crashed in Hexdocs.Hexpm.Impl.get_package/2 — surfacing in Sentry as HEXDOCS-1F (CaseClauseError) and HEXDOCS-1E (ArgumentError).

The fix shipped in OTP 27.2.2 (public_key OTP-19240, GH-9208); 27.3.4.12 is the latest 27.x patch.

Verified empirically: a verify_peer TLS handshake to hex.pm:443 from the exact hexpm/elixir:1.18.1-erlang-27.2-... image reproduces unsupported_certificate / key_usage_mismatch byte-for-byte, while 27.3.4.12 succeeds.

The Debian base date is bumped to bookworm-20260518 to match an available image tag for the new OTP patch.

OTP 27.2 rejects the new Let's Encrypt "Gen Y" certificate chain served
by hex.pm with a TLS key_usage_mismatch error, due to an over-strict
extended key usage check on intermediate CA certs. This crashed the docs
upload pipeline (Hexpm.get_package/2) on every package release once
hex.pm rotated onto the new chain. The fix shipped in OTP 27.2.2
(public_key OTP-19240, GH-9208); 27.3 is the latest multi-arch base
image tag carrying it. Bump the Debian base date to match.
@ericmj ericmj force-pushed the bump-erlang-27.3.4.12 branch from ebc5bbe to 30c04c9 Compare May 31, 2026 19:24
@ericmj ericmj merged commit 0b5597e into main May 31, 2026
12 checks passed
@ericmj ericmj deleted the bump-erlang-27.3.4.12 branch May 31, 2026 19:59
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant