Kubernetes 1.37 ships kyaml output to fix a YAML bug that deletes data
Kubernetes 1.37 stabilized KYAML (KEP-5295), a stricter quoted dialect of YAML available via kubectl get -o kyaml and accepted by kubectl apply. Testing against a live 1.37 API server showed that values like NO, Yes, OFF, 1.0 and 010 are rejected outright, while null and ~ silently drop the key from a ConfigMap — and --dry-run=server does not catch it.
- KYAML (KEP-5295) is stable in Kubernetes 1.37, targeting the YAML 1.1 Norway problem
- 12 of 13 test ConfigMap values broke; only a plain hello survived
- null and ~ create the object with the key silently missing, no error logged
- client-go yaml.Unmarshal turns 010 into the string 8 and NO into false
Read next
Software