Repository navigation
Releases
v1.7.0
Changelog
- bfb3a06 Merge pull request #33 from cozystack/feat/name-schema
- bee724f Merge pull request #32 from magic-peach/fix/immutable-before-param-warning
- f8efc44 fix: reject char (@name) declarations that would not be enforced
- ebbe95f feat: add char (@name) directive for resource-name constraints
- a2202d4 Warn when Immutable (@immutable) has no preceding param to attach to
v1.6.0
v1.5.0
What's Changed
Features
- feat: add
@immutableannotation emitting CEL XValidation rule by Aleksei Sviridkin (@lexfrei) in #24
A new ## @immutable flag annotation in values.yaml marks a chart field as immutable-after-creation. cozyvalues-gen lowers it into:
- a kubebuilder validation marker (
+kubebuilder:validation:XValidation:rule="self == oldSelf",message="<field> is immutable") on the generated Go field; - an
x-kubernetes-validations: [{rule: "self == oldSelf"}]entry onvalues.schema.json; - the same entry on the CRD (via
controller-genpassthrough).
Schema-aware consumers — notably the Cozystack UI — render annotated fields read-only on edit forms. The Kubernetes apiserver also enforces the rule on CRDs; on aggregated apiservers without CEL evaluation the annotation is informational until enforcement lands (see cozystack/cozystack#2657).
Diagnostics
The PR also adds a sitewide warning for constraint placement: any constraint annotation (@minimum, @maximum, @pattern, @immutable, …) appearing after the YAML value line of its parent @param/@field still attaches as before (no behaviour change), but cozyvalues-gen prints a warning: line to stderr so the misplacement is observable instead of silent. The warning never fails the build.
Downstream
- cozystack/cozystack#2639 — apply
@immutabletostorageClassacross every stateful Cozystack app. - cozystack/cozystack-ui#6 — UI consumes the rule to render the field grey-out on edit forms.
Full Changelog: v1.4.0...v1.5.0
v1.4.0
What's Changed
- feat: add intOrString type alias for map[string]intOrString annotations by IvanHunters in #25
New Contributors
- IvanHunters made their first contribution in #25
Full Changelog: v1.3.0...v1.4.0
v1.3.0
What's Changed
- Added groupname and verison parameters by myasnikovdaniil in #22
Full Changelog: v1.2.1...v1.3.0
v1.2.1
v1.2.0
What's Changed
- Implement ordering for parameters — preserves original parameter order in generated code
- Fix non-deterministic Go type generation output — stable sorted output across builds
- Fix empty struct types generation — properly emit empty struct typedefs
v1.1.0
Changelog
- 13b97fa Merge pull request #18 from lexfrei/feat/nested-dotted-paths
- cdb9ca6 revert: remove dotted paths support
- ad6f183 docs(examples): add typedef variant of umbrella chart example
- 98d82d4 docs(readme): add Homebrew installation instructions
- cf75b5c feat(parser): add support for JSON Schema validation constraints
- 47a71ca feat(parser): add support for dotted paths in PARAM annotations
v1.0.6
Changelog
- d476741 Fix enums with dots
v1.0.5
Changelog
- 7ed7bbc Add defaults for empty strings