Skip to content

Conversation

@renovate
Copy link
Contributor

@renovate renovate bot commented Dec 9, 2025

Note: This PR body was truncated due to platform limits.

This PR contains the following updates:

Package Change Age Adoption Passing Confidence
github.com/cert-manager/cert-manager v1.15.4 -> v1.19.2 age adoption passing confidence
github.com/miekg/dns v1.1.61 -> v1.1.69 age adoption passing confidence
github.com/stretchr/testify v1.9.0 -> v1.11.1 age adoption passing confidence

Release Notes

cert-manager/cert-manager (github.com/cert-manager/cert-manager)

v1.19.2

Compare Source

cert-manager is the easiest way to automatically manage certificates in Kubernetes and OpenShift clusters.

We updated Go to fix some vulnerabilities in the standard library.

📖 Read the full 1.19 release notes on the cert-manager.io website before upgrading.

Changes since v1.19.1

Bug or Regression
  • Address false positive vulnerabilities CVE-2025-47914 and CVE-2025-58181 which were reported by Trivy. (#​8283, @​SgtCoDFish)
  • Update Go to v1.25.5 to fix CVE-2025-61727 and CVE-2025-61729 (#​8294, @​wallrj-cyberark)
  • Update global.nodeSelector to helm chart to perform a merge and allow for a single nodeSelector to be set across all services. (#​8233, @​cert-manager-bot)
Other (Cleanup or Flake)

v1.19.1

Compare Source

cert-manager is the easiest way to automatically manage certificates in Kubernetes and OpenShift clusters.

We reverted the CRD-based API defaults for Certificate.Spec.IssuerRef and CertificateRequest.Spec.IssuerRef after they were found to cause unexpected certificate renewals after upgrading to 1.19.0. We will try re-introducing these API defaults in cert-manager 1.20.
We fixed a bug that caused certificates to be re-issued unexpectedly if the issuerRef kind or group was changed to one of the "runtime" default values.
We upgraded Go to 1.25.3 to address the following security vulnerabilities: CVE-2025-61724, CVE-2025-58187, CVE-2025-47912, CVE-2025-58183, CVE-2025-61723, CVE-2025-58186, CVE-2025-58185, CVE-2025-58188, and CVE-2025-61725.

📖 Read the full 1.19 release notes on the cert-manager.io website before upgrading.

Changes since v1.19.0:

Bug or Regression
  • BUGFIX: in case kind or group in the issuerRef of a Certificate was omitted, upgrading to 1.19.x incorrectly caused the certificate to be renewed (#​8175, @​cert-manager-bot)
  • Bump Go to 1.25.3 to fix a backwards incompatible change to the validation of DNS names in X.509 SAN fields which prevented the use of DNS names with a trailing dot (#​8177, @​wallrj-cyberark)
  • Revert API defaults for issuer reference kind and group introduced in 0.19.0 (#​8178, @​cert-manager-bot)

v1.19.0

Compare Source

cert-manager is the easiest way to automatically manage certificates in Kubernetes and OpenShift clusters.

⚠️ Known issues: The following known issues are fixed in v1.19.1:

This release focuses on expanding platform compatibility, improving deployment flexibility, enhancing observability, and addressing key reliability issues.

📖 Read the full release notes at cert-manager.io: https://cert-manager.io/docs/releases/release-notes/release-notes-1.19

Changes since v1.18.0:

Feature

  • Add IPv6 rules to the default network policy (#​7726, @​jcpunk)
  • Add global.nodeSelector to helm chart to allow for a single nodeSelector to be set across all services. (#​7818, @​StingRayZA)
  • Add a feature gate to default to Ingress pathType Exact in ACME HTTP01 Ingress challenge solvers. (#​7795, @​sspreitzer)
  • Add generated applyconfigurations allowing clients to make type-safe server-side apply requests for cert-manager resources. (#​7866, @​erikgb)
  • Added API defaults to issuer references group (cert-manager.io) and kind (Issuer). (#​7414, @​erikgb)
  • Added certmanager_certificate_challenge_status Prometheus metric. (#​7736, @​hjoshi123)
  • Added protocol field for rfc2136 DNS01 provider (#​7881, @​hjoshi123)
  • Added experimental field hostUsers flag to all pods. Not set by default. (#​7973, @​hjoshi123)
  • Support configurable resource requests and limits for ACME HTTP01 solver pods through ClusterIssuer and Issuer specifications, allowing granular resource management that overrides global --acme-http01-solver-resource-* settings. (#​7972, @​lunarwhite)
  • The CAInjectorMerging feature has been promoted to BETA and is now enabled by default (#​8017, @​ThatsMrTalbot)
  • The controller, webhook and ca-injector now log their version and git commit on startup for easier debugging and support. (#​8072, @​prasad89)
  • Updated certificate metrics to the collector approach. (#​7856, @​hjoshi123)

Bug or Regression

  • ACME: Increased challenge authorization timeout to 2 minutes to fix error waiting for authorization (#​7796, @​hjoshi123)
  • BUGFIX: permitted URI domains were incorrectly used to set the excluded URI domains in the CSR's name constraints (#​7816, @​kinolaev)
  • Enforced ACME HTTP-01 solver validation to properly reject configurations when multiple ingress options (class, ingressClassName, name) are specified simultaneously (#​8021, @​lunarwhite)
  • Increase maximum sizes of PEM certificates and chains which can be parsed in cert-manager, to handle leaf certificates with large numbers of DNS names or other identities (#​7961, @​SgtCoDFish)
  • Reverted adding the global.rbac.disableHTTPChallengesRole Helm option. (#​7836, @​inteon)
  • This change removes the path label of core ACME client metrics and will require users to update their monitoring dashboards and alerting rules if using those metrics. (#​8109, @​mladen-rusev-cyberark)
  • Use the latest version of ingress-nginx in E2E tests to ensure compatibility (#​7792, @​wallrj)

Other (Cleanup or Flake)

  • Helm: Fix naming template of tokenrequest RoleBinding resource to improve consistency (#​7761, @​lunarwhite)
  • Improve error messages when certificates, CRLs or private keys fail admission due to malformed or missing PEM data (#​7928, @​SgtCoDFish)
  • Major upgrade of Akamai SDK. NOTE: The new version has not been fully tested end-to-end due to the lack of cloud infrastructure. (#​8003, @​hjoshi123)
  • Update kind images to include the Kubernetes 1.33 node image (#​7786, @​wallrj)
  • Use maps.Copy for cleaner map handling (#​8092, @​quantpoet)
  • Vault: Migrate Vault E2E add-on tests from deprecated vault-client-go to the new vault/api client. (#​8059, @​armagankaratosun)

v1.18.4

Compare Source

cert-manager is the easiest way to automatically manage certificates in Kubernetes and OpenShift clusters.

We updated Go to fix some vulnerabilities in the standard library.

📖 Read the full 1.18 release notes on the cert-manager.io website before upgrading.

Changes since v1.18.3

Bug or Regression
Other (Cleanup or Flake)

v1.18.3

Compare Source

cert-manager is the easiest way to automatically manage certificates in Kubernetes and OpenShift clusters.

We fixed a bug which caused certificates to be re-issued unexpectedly, if the issuerRef kind or group was changed to one of the "runtime" default values. We increased the size limit when parsing PEM certificate chains to handle leaf certificates with large numbers of DNS named or other identities. We upgraded Go to 1.24.9 to fix various non-critical security vulnerabilities.

📖 Read the full 1.18 release notes on the cert-manager.io website before upgrading.

Changes since v1.18.2:

Bug or Regression
Other (Cleanup or Flake)

v1.18.2

Compare Source

cert-manager is the easiest way to automatically manage certificates in Kubernetes and OpenShift clusters.

We fixed a bug in the CSR's name constraints construction (only applies if you have enabled the NameConstraints feature gate).
We dropped the new global.rbac.disableHTTPChallengesRole Helm option due to a bug we found, this feature will be released in v1.19 instead.

Changes since v1.18.1:

Bug or Regression

v1.18.1

Compare Source

cert-manager is the easiest way to automatically manage certificates in Kubernetes and OpenShift clusters.

We have added a new feature gate ACMEHTTP01IngressPathTypeExact, to allow ingress-nginx users to turn off the new default Ingress PathType: Exact behavior, in ACME HTTP01 Ingress challenge solvers.
This change fixes the following issue: #​7791

We have increased the ACME challenge authorization timeout to two minutes, which we hope will fix a timeout error (error waiting for authorization), which has been reported by multiple users, since the release of cert-manager v1.16.0.
This change should fix the following issues: #​7337, #​7444, and #​7685.

ℹ️ Be sure to review all new features and changes below, and read the full release notes carefully before upgrading.

Changes since v1.18.0:

Feature
  • Added a new feature gate ACMEHTTP01IngressPathTypeExact, to allow ingress-nginx users to turn off the new default Ingress PathType: Exact behavior, in ACME HTTP01 Ingress challenge solvers. (#7810, @​sspreitzer)
Bug or Regression
  • ACME: Increased challenge authorization timeout to 2 minutes to fix error waiting for authorization. (#7801, @​hjoshi123)
Other (Cleanup or Flake)
  • Use the latest version of ingress-nginx in E2E tests to ensure compatibility (#7807, @​wallrj)

v1.18.0

Compare Source

cert-manager is the easiest way to automatically manage certificates in Kubernetes and OpenShift clusters.

cert-manager 1.18 introduces several new features and breaking changes. Highlights include support for ACME certificate profiles, a new default for Certificate.Spec.PrivateKey.RotationPolicy now set to Always (breaking change), and the default Certificate.Spec.RevisionHistoryLimit now set to 1 (potentially breaking).

ℹ️ Be sure to review all new features and changes below, and read the full release notes carefully before upgrading.

Known Issues
  • ACME HTTP01 challenge paths are rejected by the ingress-nginx validating webhook (#​7791)

Changes since v1.17.2:

Feature
  • Add config to the Vault issuer to allow the server-name to be specified when validating the certificates the Vault server presents. (#​7663, @​ThatsMrTalbot)
  • Added app.kubernetes.io/managed-by: cert-manager label to the created Let's Encrypt account keys (#​7577, @​terinjokes)
  • Added certificate issuance and expiration time metrics (certmanager_certificate_not_before_timestamp_seconds, certmanager_certificate_not_after_timestamp_seconds). (#​7612, @​solidDoWant)
  • Added ingress-shim option: --extra-certificate-annotations, which sets a list of annotation keys to be copied from Ingress-like to resulting Certificate object (#​7083, @​k0da)
  • Added the iss short name for the cert-manager Issuer resource. (#​7373, @​SgtCoDFish)
  • Added the ciss short name for the cert-manager ClusterIssuer resource (#​7373, @​SgtCoDFish)
  • Adds the global.rbac.disableHTTPChallengesRole helm value to disable HTTP-01 ACME challenges. This allows cert-manager to drop its permission to create pods, improving security when HTTP-01 challenges are not required. (#​7666, @​ali-hamza-noor)
  • Allow customizing signature algorithm (#​7591, @​tareksha)
  • Cache the full DNS response and handle TTL expiration in FindZoneByFqdn (#​7596, @​ThatsIvan)
  • Cert-manager now uses a local fork of the golang.org/x/crypto/acme package (#​7752, @​wallrj)
  • Add support for ACME profiles extension. (#​7777, @​wallrj)
  • Promote the UseDomainQualifiedFinalizer feature to GA. (#​7735, @​jsoref)
  • Switched service/servicemon definitions to use port names instead of numbers. (#​7727, @​jcpunk)
  • The default value of Certificate.Spec.PrivateKey.RotationPolicy changed from Never to Always. (#​7723, @​wallrj)
  • Potentially breaking: Set the default revisionHistoryLimit to 1 for the CertificateRequest revisions (#​7758, @​ali-hamza-noor)
Documentation
Bug or Regression
  • Bump go-jose dependency to address CVE-2025-27144. (#​7606, @​SgtCoDFish)
  • Bump golang.org/x/oauth2 to patch CVE-2025-22868. (#​7638, @​NicholasBlaskey)
  • Bump golang.org/x/crypto to patch GHSA-hcg3-q754-cr77. (#​7638, @​NicholasBlaskey)
  • Bump github.com/golang-jwt/jwt to patch GHSA-mh63-6h87-95cp. (#​7638, @​NicholasBlaskey)
  • Change of the Kubernetes Ingress pathType from ImplementationSpecific to Exact for a reliable handling of ingress controllers and enhanced security. (#​7767, @​sspreitzer)
  • Fix AWS Route53 error detection for not-found errors during deletion of DNS records. (#​7690, @​wallrj)
  • Fix behavior when running with --namespace=<namespace>: limit the scope of cert-manager to a single namespace and disable cluster-scoped controllers. (#​7678, @​tsaarni)
  • Fix handling of certificates with IP addresses in the commonName field; IP addresses are no longer added to the DNS subjectAlternativeName list and are instead added to the ipAddresses field as expected. (#​7081, @​johnjcool)
  • Fix issuing of certificates via DNS01 challenges on Cloudflare after a breaking change to the Cloudflare API (#​7549, @​LukeCarrier)
  • Fixed the certmanager_certificate_renewal_timestamp_seconds metric help text indicating that the metric is relative to expiration time, rather than Unix epoch time. (#​7609, @​solidDoWant)
  • Fixing the service account template to incorporate boolean values for the annotations. (#​7698, @​ali-hamza-noor)
  • Quote nodeSelector values in Helm Chart (#​7579, @​tobiasbp)
  • Skip Gateway TLS listeners in Passthrough mode. (#​6986, @​vehagn)
  • Upgrade golang.org/x/net fixing CVE-2025-22870. (#​7619, @​dependabot[bot])
Other (Cleanup or Flake)
  • ACME E2E Tests: Upgraded Pebble to v2.7.0 and modified the ACME tests to match latest Pebble behaviour. (#​7771, @​wallrj)
  • Patch the third_party/forked/acme package with support for the ACME profiles extension. (#​7776, @​wallrj)
  • Promote the AdditionalCertificateOutputFormats feature to GA, making additional formats always enabled. (#​7744, @​erikgb)
  • Remove deprecated feature gate ValidateCAA. Setting this feature gate is now a no-op which does nothing but print a warning log line (#​7553, @​SgtCoDFish)
  • Update kind images to include the Kubernetes 1.33 node image (#​7787, @​cert-manager-bot)
  • Upgrade Go to v1.24.4 (#​7785, @​wallrj)
  • Use slices.Contains to simplify code (#​7753, @​cuinix)

v1.17.4

Compare Source

cert-manager is the easiest way to automatically manage certificates in Kubernetes and OpenShift clusters.

We fixed a bug in the CSR's name constraints construction (only applies if you have enabled the NameConstraints feature gate).

Changes since v1.17.3:

Bug or Regression
  • BUGFIX: permitted URI domains were incorrectly used to set the excluded URI domains in the CSR's name constraints (#​7832, @​cert-manager-bot)

v1.17.3

Compare Source

cert-manager is the easiest way to automatically manage certificates in Kubernetes and OpenShift clusters.

This patch release addresses several vulnerabilities reported by the Trivy security scanner. It is built with the latest version of Go 1.23.

We have increased the ACME challenge authorization timeout to two minutes, which we hope will fix a timeout error (error waiting for authorization), which has been reported by multiple users, in: #​7337, #​7444, and #​7685.

ℹ️ Be sure to review all new features and changes below, and read the full release notes carefully before upgrading.

Changes since v1.17.2:

Bug or Regression
  • Bump Go to 1.23.10 to fix GO-2025-3749, GO-2025-3750, and GO-2025-3751 (#​7799, @​wallrj)
  • ACME: Increased challenge authorization timeout to 2 minutes to fix error waiting for authorization (#​7798, @​hjoshi123)
Other (Cleanup or Flake)
  • Use the latest version of ingress-nginx in E2E tests to ensure compatibility (#​7808, @​wallrj)

v1.17.2

Compare Source

cert-manager is the easiest way to automatically manage certificates in Kubernetes and OpenShift clusters.

This patch release addresses several vulnerabilities reported by the Trivy security scanner. It is built with the latest version of Go 1.23 and includes various dependency updates.

📖 Read the full cert-manager 1.17 release notes, before installing or upgrading.

Changes since v1.17.1

Bug or Regression

v1.17.1

Compare Source

cert-manager is the easiest way to automatically manage certificates in Kubernetes and OpenShift clusters.

This release is primarily intended to address a breaking change in Cloudflare's API which impacted ACME DNS-01 challenges using Cloudflare.

Many thanks to the community members who reported this issue!

Changes by Kind

Bug or Regression

v1.17.0

Compare Source

cert-manager is the easiest way to automatically manage certificates in Kubernetes and OpenShift clusters.

v1.17.0 is a feature release with several improvements, including:

  • A helpful compliance change to RSA signatures on certificates
  • An easier way to specify passwords for PKCS#12 and JKS keystores
  • A few feature flag promotions (and a deprecation)
  • Dependency bumps and other smaller improvements

Major Themes

RSA Certificate Compliance

The United States Department of Defense published a memo in 2022 which introduced some requirements on the kinds of cryptography they require to be supported in software they use.

In effect, the memo requires that software be able to support larger RSA keys (3072-bit and 4096-bit) and hashing algorithms (SHA-384 at a minimum).

cert-manager supported large RSA keys long before the memo was published, but a quirk in implementation meant that cert-manager always used SHA-256 when signing with RSA.

In v1.17.0, cert-manager will choose a hash algorithm based on the RSA key length: 3072-bit keys will use SHA-384, and 4096-bit keys will use SHA-512. This matches similar behavior already present for ECDSA signatures.

Our expectation is that this change will have minimal impact beyond a slight increase to security and better compliance; we're not aware of Kubernetes based environments which support RSA 2048 with SHA-256 but fail with RSA 4096 and SHA-512. However, if you're using larger RSA keys, you should be aware of the change.

Easier Keystore Passwords for PKCS#12 and JKS

Specifying passwords on PKCS#12 and JKS keystores is supported in cert-manager
for compatibility reasons with software which expects or requires passwords to be set; however, these passwords are not relevant to security and never have been in cert-manager.

The initial implementation of the keystores feature required these "passwords" to be stored in a Kubernetes secret, which would then be read by cert-manager when creating the keystore after a certificate was issued. This is cumbersome, especially when many passwords are set to default values such as changeit or password.

In cert-manager v1.17, it's now possible to set a keystore password using a literal string value inside the Certificate resource itself, making this process much easier with no change to security.

For example:

apiVersion: cert-manager.io/v1
kind: Certificate
metadata:
  name: my-cert-password
spec:
  secretName: my-cert-password
  issuerRef:
    name: my-issuer
    kind: ClusterIssuer
  keystores:
    jks:
      create: true
      password: "abc123"
    pkcs12:
      create: true
      password: "password"
  dnsNames:
  - example.com

The new password field is mutually exclusive with the passwordSecretRef field, so be sure to only set one.

Feature Flag Promotions / Deprecations

cert-manager's feature flags allow for easier testing and adoption of new features with a reduced risk of breaking changes. In cert-manager v1.17, two feature gates have been promoted to "beta", and as such are now enabled by default in all installations:

  • NameConstraints, allowing users to specify the name constraints extension which can be helpful when creating CA certificates for private PKI
  • UseDomainQualifiedFinalizer, which stops a Kubernetes warning from being printed in logs

In addition, we added a new feature gate: CAInjectorMerging, which intelligently combines certificates used by the CAInjector component, making it safer to use when issuing certificates are rotated. If you're making heavy use of the CA injector, you should consider enabling this feature gate.

Finally, we deprecated the ValidateCAA feature gate which will be removed entirely in cert-manager v1.18.0. This feature gate aimed to validate the CAA DNS record during ACME issuance, but has seen low adoption and limited testing since its introduction back in 2019.

Other Changes

There are many other PRs which were merged in this release cycle and we'd encourage you to read the release notes below. One PR that's worth highlighting is a change to add more structured logging information to certain log lines.

If you were previously filtering logs using grep or similar tools (which is highly discouraged!) be aware that some log lines have changed format.

Community

As always, we'd like to thank all of the community members who helped in this release cycle, including all below who merged a PR and anyone that helped by commenting on issues, testing, or getting involved in cert-manager meetings. We're lucky to have you involved.

A special thanks to:

for their contributions, comments and support!

Also, thanks to the cert-manager maintainer team for their help in this release:

And finally, thanks to the cert-manager steering committee for their feedback in this release cycle:

Changes by Kind

Feature
  • Potentially BREAKING: The CA and SelfSigned issuers now use SHA-512 when signing with RSA keys 4096 bits and above, and SHA-384 when signing with RSA keys 3072 bits and above. If you were previously using a larger RSA key as a CA, be sure to check that your systems support the new hash algorithms. (#​7368, @​SgtCoDFish)
  • Add CAInjectorMerging feature gate to the ca-injector, enabling this will change the behaviour of the ca-injector to merge in new CA certificates instead of outright replacing the existing one. (#​7469, @​ThatsMrTalbot)
  • Added image pull secrets to deployments when service accounts aren't created (#​7411, @​TheHenrick)
  • Added the ability to customize client ID when using username/password authentication for Venafi client (#​7484, @​ilyesAj)
  • Helm: New value webhook.extraEnv allows you to set custom environment variables in the webhook Pod.
    Helm: New value cainjector.extraEnv allows you to set custom environment variables in the cainjector Pod.
    Helm: New value startupapicheck.extraEnv allows you to set custom environment variables in the startupapicheck Pod. (#​7317, @​wallrj)
  • Increase the amount of PEM data pki.DecodeX509CertificateSetBytes is able to parse, to enable reading larger TLS trust bundles (#​7464, @​SgtCoDFish)
  • New configuration option tenantID for the AzureDNS provider when using managed identities with service principals. This enhancement allows users to specify the tenant ID when using managed identities, offering better flexibility in multi-tenant environments. (#​7376, @​jochenrichter)
  • Promote the UseDomainQualifiedFinalizer feature to Beta. (#​7488, @​jsoref)
  • Allow JKS/PKCS12 keystore passwords to be set as literal values in Certificate resources, mutually exclusive with the existing passwordSecretRef field (#​6657, @​rquinio1A)
  • Allow templating ServiceAccount annotations by running the built-in Helm tpl function on keys and values, to aid with workload identity configuration (#​7501, @​fcrespofastly)
  • Promote CA NameConstraints feature gate to Beta (enabled by default) (#​7494, @​tanujd11)
Documentation
Bug or Regression
  • BUGFIX: A change in v1.16.0 caused cert-manager's ACME ClusterIssuer to look in the wrong namespace for resources required for the issuance (eg. credential Secrets). This is now fixed in v1.16.1+ and v1.17.0+ (#​7339, @​inteon)
  • BUGFIX: Helm will now accept percentages for the podDisruptionBudget.minAvailable and podDisruptionBudget.maxAvailable values. (#​7343, @​inteon)
  • Fix ACME HTTP-01 solver for IPv6 endpoints (#​7391, @​Peac36)
  • Fix the behavior of renewBeforePercentage to comply with its spec (#​7421, @​adam-sroka)
  • Helm: allow enabled to be set as a value to toggle cert-manager as a dependency. (#​7350, @​inteon)
  • SECURITY (low risk): Limit maximum allowed PEM size to prevent potential DoS in cert-manager controller from attacker-controlled PEM. See GHSA-r4pg-vg54-wxx4 (#​7400, @​SgtCoDFish)
  • The Certificate object will no longer create CertificateRequest or Secret objects while being deleted (#​7361, @​ThatsMrTalbot)
  • The issuer will now more quickly retry when its linked Secret is updated to fix an issue that caused a high back-off timeout. (#​7455, @​inteon)
  • Upgrades Venafi vCert library fixing a bug which caused the RSA 3072 bit key size for TPP certificate enrollment to not work. (#​7498, @​inteon)
Other (Cleanup or Flake)
  • ⚠️ Potentially BREAKING: Log messages that were not structured have now been replaced with structured logs. If you were matching on specific log strings, this could break your setup. (#​7461, @​inteon)
  • DEPRECATION: The ValidateCAA feature gate is now deprecated, with removal scheduled for cert-manager 1.18. In 1.17, enabling this feature gate will print a warning. (#​7491, @​jsoref)
  • Remove Neither --kubeconfig nor --master was specified warning message when the controller and the webhook services boot (#​7457, @​Peac36)
  • Move 'live' DNS tests into a separate package to contain test flakiness and improve developer UX (#​7530, @​SgtCoDFish)

v1.16.5

Compare Source

cert-manager is the easiest way to automatically manage certificates in Kubernetes and OpenShift clusters.

This patch release addresses several vulnerabilities reported by the Trivy security scanner. It is built with the latest version of Go 1.23 and includes various dependency updates.

📖 Read the full cert-manager 1.16 release notes, before installing or upgrading.

Changes since v1.16.4:

Bug or Regression

v1.16.4

Compare Source

cert-manager is the easiest way to automatically manage certificates in Kubernetes and OpenShift clusters.

This release is primarily intended to address a breaking change in Cloudflare's API which impacted ACME DNS-01 challenges using Cloudflare.

Many thanks to the community members who reported this issue!

Changes by Kind

Bug or Regression

v1.16.3

Compare Source

cert-manager is the easiest way to automatically manage certificates in Kubernetes and OpenShift clusters.

v1.16.3 is a patch release mainly focused around bumping dependencies to address reported CVEs: CVE-2024-45337 and CVE-2024-45338.

We don't believe that cert-manager is actually vulnerable; this release is instead intended to satisfy vulnerability scanners.

It also includes a bug fix to the new renewBeforePercentage field. If you were using renewBeforePercentage, see PR #​7421 for more information.

Changes

Bug
Other

v1.16.2

Compare Source

cert-manager is the easiest way to automatically manage certificates in Kubernetes and OpenShift clusters.

This patch release of cert-manager 1.16 makes several changes to how PEM input is validated, adding maximum sizes appropriate to the type of PEM data which is being parsed.

This is to prevent an unacceptable slow-down in parsing specially crafted PEM data. The issue was found by Google's OSS-Fuzz project.

The issue is low severity; to exploit the PEM issue would require privileged access which would likely allow Denial-of-Service through other methods.

Note also that since most PEM data parsed by cert-manager comes from ConfigMap or Secret resources which have a max size limit of approximately 1MB, it's difficult to force cert-manager to parse large amounts of PEM data.

Further information is available in GHSA-r4pg-vg54-wxx4

In addition, the version of Go used to build cert-manager 1.16 was updated along with the base images.

Changes by Kind

Bug or Regression
  • Set a maximum size for PEM inputs which cert-manager will accept to remove possibility of taking a long time to process an input (#​7401, @​SgtCoDFish)
Other (Cleanup or Flake)

v1.16.1

Compare Source

cert-


Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

👻 Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@renovate renovate bot added dependencies Pull requests that update a dependency file ok-to-test labels Dec 9, 2025
@cert-manager-prow cert-manager-prow bot added the dco-signoff: yes Indicates that all commits in the pull request have the valid DCO sign-off message. label Dec 9, 2025
@cert-manager-prow
Copy link
Contributor

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by:
Once this PR has been reviewed and has the lgtm label, please assign wallrj for approval. For more information see the Code Review Process.

The full list of commands accepted by this bot can be found here.

Details Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@cert-manager-prow
Copy link
Contributor

Hi @renovate[bot]. Thanks for your PR.

I'm waiting for a cert-manager member to verify that this patch is reasonable to test. If it is, they should reply with /ok-to-test on its own line. Until that is done, I will not automatically test new commits in this PR, but the usual testing commands by org members will still work. Regular contributors should join the org to skip this step.

Once the patch is verified, the new status will be reflected by the ok-to-test label.

I understand the commands that are listed here.

Details

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository.

@cert-manager-prow cert-manager-prow bot added the size/XS Denotes a PR that changes 0-9 lines, ignoring generated files. label Dec 9, 2025
@renovate renovate bot force-pushed the renovate/misc-go-deps branch 2 times, most recently from 4f44ac3 to 0bef065 Compare December 11, 2025 21:43
Signed-off-by: Renovate Bot <renovate-bot@users.noreply.github.com>
@renovate renovate bot force-pushed the renovate/misc-go-deps branch from 0bef065 to b95a2cf Compare December 24, 2025 12:26
@renovate
Copy link
Contributor Author

renovate bot commented Dec 24, 2025

ℹ️ Artifact update notice

File name: go.mod

In order to perform the update(s) described in the table above, Renovate ran the go get command, which resulted in the following additional change(s):

  • 55 additional dependencies were updated
  • The go directive was updated for compatibility reasons

Details:

Package Change
go 1.24.0 -> 1.25.0
k8s.io/apiextensions-apiserver v0.30.2 -> v0.34.1
k8s.io/client-go v0.30.2 -> v0.34.1
github.com/emicklei/go-restful/v3 v3.12.0 -> v3.13.0
github.com/evanphx/json-patch/v5 v5.9.0 -> v5.9.11
github.com/fsnotify/fsnotify v1.7.0 -> v1.9.0
github.com/go-logr/logr v1.4.1 -> v1.4.3
github.com/go-openapi/jsonpointer v0.21.0 -> v0.22.1
github.com/go-openapi/jsonreference v0.21.0 -> v0.21.2
github.com/go-openapi/swag v0.23.0 -> v0.23.1
github.com/google/cel-go v0.17.8 -> v0.26.0
github.com/google/gnostic-models v0.6.8 -> v0.7.0
github.com/google/go-cmp v0.6.0 -> v0.7.0
github.com/grpc-ecosystem/grpc-gateway/v2 v2.20.0 -> v2.27.1
github.com/mailru/easyjson v0.7.7 -> v0.9.0
github.com/modern-go/reflect2 v1.0.2 -> v1.0.3-0.20250322232337-35a7c28c31ee
github.com/prometheus/client_golang v1.18.0 -> v1.23.2
github.com/prometheus/client_model v0.6.1 -> v0.6.2
github.com/prometheus/common v0.46.0 -> v0.66.1
github.com/prometheus/procfs v0.15.0 -> v0.17.0
github.com/spf13/cobra v1.8.0 -> v1.10.1
github.com/spf13/pflag v1.0.5 -> v1.0.10
github.com/stoewer/go-strcase v1.3.0 -> v1.3.1
go.etcd.io/etcd/api/v3 v3.5.13 -> v3.6.4
go.etcd.io/etcd/client/pkg/v3 v3.5.13 -> v3.6.4
go.etcd.io/etcd/client/v3 v3.5.13 -> v3.6.4
go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.51.0 -> v0.61.0
go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.51.0 -> v0.61.0
go.opentelemetry.io/otel v1.26.0 -> v1.37.0
go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.26.0 -> v1.37.0
go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.26.0 -> v1.37.0
go.opentelemetry.io/otel/metric v1.26.0 -> v1.37.0
go.opentelemetry.io/otel/sdk v1.26.0 -> v1.37.0
golang.org/x/exp v0.0.0-20240506185415-9bf2ced13842 -> v0.0.0-20250718183923-645b1fa84792
golang.org/x/mod v0.29.0 -> v0.30.0
golang.org/x/oauth2 v0.27.0 -> v0.31.0
golang.org/x/time v0.5.0 -> v0.13.0
golang.org/x/tools v0.38.0 -> v0.39.0
gomodules.xyz/jsonpatch/v2 v2.4.0 -> v2.5.0
google.golang.org/genproto/googleapis/api v0.0.0-20240515191416-fc5f0ca64291 -> v0.0.0-20250721164621-a45f3dfb1074
google.golang.org/genproto/googleapis/rpc v0.0.0-20240515191416-fc5f0ca64291 -> v0.0.0-20250929231259-57b25ae835d4
google.golang.org/grpc v1.64.1 -> v1.75.1
google.golang.org/protobuf v1.34.1 -> v1.36.9
k8s.io/api v0.30.2 -> v0.34.1
k8s.io/apimachinery v0.30.2 -> v0.34.1
k8s.io/apiserver v0.30.2 -> v0.34.1
k8s.io/component-base v0.30.2 -> v0.34.1
k8s.io/klog/v2 v2.120.1 -> v2.130.1
k8s.io/kms v0.30.2 -> v0.34.1
k8s.io/kube-openapi v0.0.0-20240430033511-f0e62f92d13f -> v0.0.0-20250910181357-589584f1c912
k8s.io/utils v0.0.0-20240502163921-fe8a2dddb1d0 -> v0.0.0-20250820121507-0af2bda4dd1d
sigs.k8s.io/apiserver-network-proxy/konnectivity-client v0.30.3 -> v0.33.0
sigs.k8s.io/controller-runtime v0.18.2 -> v0.22.3
sigs.k8s.io/gateway-api v1.1.0 -> v1.4.0
sigs.k8s.io/json v0.0.0-20221116044647-bc3834ca7abd -> v0.0.0-20250730193827-2d320260d730
sigs.k8s.io/yaml v1.4.0 -> v1.6.0

@cert-manager-prow cert-manager-prow bot added size/XL Denotes a PR that changes 500-999 lines, ignoring generated files. and removed size/XS Denotes a PR that changes 0-9 lines, ignoring generated files. labels Dec 24, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dco-signoff: yes Indicates that all commits in the pull request have the valid DCO sign-off message. dependencies Pull requests that update a dependency file ok-to-test size/XL Denotes a PR that changes 500-999 lines, ignoring generated files.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant