github kubernetes-sigs/kro v0.6.2

15 hours ago

🔆 Highlights

Improved Unknown Fields Handling

Enhanced support for schemas with x-kubernetes-preserve-unknown-fields by migrating to a more lenient type provider implementation. KRO now properly handles CRDs that allow unknown properties without breaking validation. This makes KRO more accurante in enforcing field validation, improving compatibility with dynamic schemas. (#823)

Structural Type Compatibility for CEL Validation

Resolved false positive type errors in CEL expression validation by implementing structural type compatibility checking. Previously, CEL's nominal type checking would reject structurally identical types with different names (e.g pod.spec.containers vs deployment.spec.template.spec.containers), causing validation failures even when the underlying structures matched perfectly. The new implementation performs deep structural comparison, enabling cross resource references like copying entire structs between resources (#813)

CRD Adoption for Recreated RGDs

Removed the RGD owner ID check that prevented ResourceGraphDefinitions from adopting CRDs after being deleted and recreated. When an RGD with the same name is recreated, it can now properly adopt the CRD left behind by the previous instance, with appropriate logging when ownership changes occur. (#826)

✨ Features

  • fix: remove RGD owner ID check to allow RGDs to adopt their CRD by @michaelhtm in #826

🐛 Bugfixes

  • fix: loosen up static type checker unknown field handling by @jakobmoellerdev in #823
  • fix: Add structural type compatibility checking for CEL validation by @a-hilaly in #813

🌱 Other

Full Changelog: v0.6.1...v0.6.2

Don't miss a new kro release

NewReleases is sending notifications on new releases.