v3.1.0
Breaking Changes📦 docker-registryView on GitHub →
⚠ 1 breaking✨ 6 features🐛 15 fixes🔧 9 symbols
Summary
This stable release introduces tag pagination support and addresses critical security vulnerabilities (CVE-2026-35172, CVE-2026-33540). It also mandates upgrading the minimum required Go version to 1.25.
⚠️ Breaking Changes
- Support for go1.23 and go1.24 has been dropped; users must now use go1.25 or newer.
Migration Steps
- Ensure your build environment uses Go 1.25 or newer, as support for go1.23 and go1.24 has been removed.
✨ New Features
- Added support for tag pagination.
- Extracted redis configuration to a separate struct.
- Switched UUIDs to use UUIDv7.
- Made graceful shutdown test more robust.
- Exposed `useFIPSEndpoint` option for the S3 storage driver.
- Added Cloudfleet Container Registry to the list of adopters.
🐛 Bug Fixes
- Fixed security vulnerabilities related to CVE-2026-35172 and CVE-2026-33540.
- Fixed default credentials issue in the Azure storage provider.
- Implemented JWK thumbprint generation for Ed25519 public keys.
- Resolved issue #4478 by using a temporary file for non-append writes.
- Set OpenTelemetry (OTEL) traces to be disabled by default.
- Fixed build for S3 driver on the 386 architecture.
- Fixed loglevel parameter for the S3 driver.
- Fixed a data race condition found in the TestSchedule test.
- Fixed thumbprint calculation for ecdsa keys, using X/Y instead of Gx/Gy.
- Fixed broken link to the Docker Hub fair use policy in documentation.
- Fixed redis CAs configuration in `registry/handlers/app`.
- Corrected log formatting for upstream challenge responses.
- Fixed a logging regression affecting manifest HEAD requests.
- Fixed notification filtering to correctly handle cases where mediatypes is empty when using actions.
- Fixed broken Azure e2e storage tests in CI.