Crossplane
v2.4.0Orchestration & ManagementACTION 15CHECK 4PLAN 1OTHER 33
A release with breaking operational changes, new runtime behavior, and correctness fixes. It also updates the Go toolchain and dependencies for security fixes, including changes that affect CLI publication, package operation, and resource deletion.
Action needed (15)
security
Goversion and dependency security updatesCrossplane now builds and runs with a newer
Goversion to include standard library CVE fixes. The release also includes security updates to Crossplane'sGodependencies.security
Go1.25. 10 Gowas updated to1.to fix standard library CVEs.25. 10 security
golang.org/x/crypto v0.52. 0 The
golang.module was updated toorg/x/crypto v0.for security fixes.52. 0 security
golang.org/x/sys v0.44. 0 The
golang.module was updated toorg/x/sys v0.for security fixes.44. 0 security
golang.org/x/net v0.55. 0 The
golang.module was updated toorg/x/net v0.for security fixes.55. 0 security
github.com/sigstore/cosign/v3 v3.0. 6 The
github.module was updated tocom/sigstore/cosign/v3 v3.for security fixes.0. 6 security
github.com/sigstore/rekor v1.5. 2 The
github.module was updated tocom/sigstore/rekor v1.for security fixes.5. 2 security
github.com/sigstore/timestamp-authority/v2 v2.1. 0 The
github.module was updated tocom/sigstore/timestamp-authority/v2 v2.for security fixes.1. 0 security
github.com/sigstore/sigstore-go v1.2. 0 The
github.module was updated tocom/sigstore/sigstore-go v1.for security fixes.2. 0 securityCombined
grpc,x/net, andx/textsecurity updatesCombined security updates were applied to
grpc,x/net, andx/text.security
golang.org/x/net v0.56. 0 The
golang.module was updated toorg/x/net v0.for security fixes.56. 0 security
golang.org/x/text v0.39. 0 The
golang.module was updated toorg/x/text v0.for security fixes.39. 0 securityVulnerable dependency updates
Vulnerable dependencies were updated for security fixes.
security
github.com/sigstore/sigstore-go v1.2. 1 The
github.module was updated tocom/sigstore/sigstore-go v1.for security fixes.2. 1 security
golang.org/x/mod v0.40. 0 The
golang.module was updated toorg/x/mod v0.for security fixes.40. 0
Check if affected (4)
breaking
Crossplane CLIpublication location and binary nameApplies if you use the
Crossplane CLI.The
Crossplane CLIis no longer published toreleases.. New releases are published only tocrossplane. io cli., with the binary namecrossplane. io crossplaneinstead ofcrank.breaking
spec.behavior inreplicas DeploymentRuntimeConfigApplies if
DeploymentRuntimeConfigconfiguresspec..replicas Scaling to zero takes precedence over an explicit
spec.in areplicas DeploymentRuntimeConfig. The field now specifies how many replicas to run while the runtime is active rather than requiring it to remain running.breakingNarrowed composed resource garbage collection
Applicability is not stated in the release notes.
The composed resource garbage collector now deletes only resources whose controller reference points back to the XR.
breakingXR machinery fields in claim to XR synchronization
Applies if you run claim to XR syncers.
The claim to XR syncers now remove XR machinery fields such as
resourceRefsand thecrossplanestanza.
Plan ahead (1)
deprecated
Crossplane v1.support endremoval planned in v2.5 (Nov 2026)20 Applies when v2.5 is released in Nov 2026 and
Crossplane v1.runs.20 When v2.5 is released in Nov 2026,
Crossplane v1.reaches EOL and no longer receives support or maintenance from the Crossplane project.20
All 33 other recorded changessecurity fixes 1 · value changes 19 · fixes 6 · additions 4 · renames 2 · defaults 1
security fixes (1)
- Now Crossplane and its complete set of dependencies are visible to security scanner tools.
value changes (19)
- chore(deps): bump crossplane-runtime to …×3
- Additions that Crossplane doesn't declare are left alone rather than replaced along with the array that held them, e.g. an injected sidecar container or an extra volume added out of band now survives a reconcile.
- The
typelabel on theengine_watches_started_totalandengine_watches_stopped_totalmetrics changed fromComposedResourcetoDependency - redact secret stringData before emitting to pipeline inspector
- fix(deps): update module github.com/google/go-containerregistry to …×2
- fix(deps): update module github.com/alecthomas/kong to …×2
- fix(deps): update module github.com/crossplane/crossplane/apis/v2 to …×2
- fix(deps): update module github.com/aws/smithy-go to …×2
- fix(deps): update module golang.org/x/sync to v0.21.0
- fix(deps): update module google.golang.org/grpc to v1.81.1
- fix(deps): update module github.com/masterminds/semver/v3 to v3.5.0
- Don't overwrite the input XR's UID if it has one and validate observed resources
- drop secret last-applied annotation from pipeline inspector output
fixes (6)
- a field you remove from a
DeploymentRuntimeConfigis now actually removed from the liveDeploymentinstead of lingering (#7563, fixing #4817) - Deactivating a revision also no longer deletes a runtime
Deploymentthat another revision controls - The
sha256files published with release binaries are now calculated after Nix strips the binary, so amd64 checksums match what you download. - A composed
Usageno longer gets a redundant owner update on every reconcile - The deletion protection field index now uses a separator that can't appear in a group, kind, name, or namespace
- Sorting of
spec.now includes the namespaceresourceRefs
additions (4)
- we have released a v2 readiness checker tool in the v1.20 Crossplane CLI that can be invoked via
crossplane beta upgrade check - a new
RUNTIME-ACTIVEcolumn was added - A change to a required resource now reconciles the XRs that required it the same way a change to a composed resource does.
- A new
RuntimeActivecondition onProviderRevisionandFunctionRevisionmakes this visible.
renames (2)
- Package revision names are now derived from both the package digest and the package's
metadata., so any change to a package's spec produces a newgeneration PackageRevision. - The
RUNTIMEprinter column onProviderRevisionandFunctionRevisionwas renamed toRUNTIME-HEALTHY
defaults (1)
- Crossplane now creates such a provider's runtime
Deploymentwith zero replicas and scales it up once its first MRD becomes active
A weekly email arrives when a release needs action. Like the security patches and breaking changes in this release.