Skip to content

Comments

UPSTREAM: 1299: 🐛 Change sort to slices package#35

Merged
JoelSpeed merged 1 commit intoopenshift:masterfrom
jaypoulz:stable-sort
Jan 20, 2026
Merged

UPSTREAM: 1299: 🐛 Change sort to slices package#35
JoelSpeed merged 1 commit intoopenshift:masterfrom
jaypoulz:stable-sort

Conversation

@jaypoulz
Copy link

No description provided.

@openshift-ci openshift-ci bot requested a review from JoelSpeed January 19, 2026 19:00
@jaypoulz jaypoulz changed the title upstream 1299: Change sort to slices package UPSTREAM 1299: 🐛 Change sort to slices package Jan 19, 2026
jaypoulz added a commit to jaypoulz/api that referenced this pull request Jan 19, 2026
Update controller-tools to jaypoulz/controller-tools fork which includes
a fix for deterministic XValidation rule ordering. This ensures CRD
generation produces consistent output.

Changes included:
- tools/go.mod: Point replace directive to jaypoulz/controller-tools
- tools/Makefile: Fix openapi-gen path (moved from code-generator to
  kube-openapi upstream)
- tools/codegen/pkg/crdify/generator.go: Ignore 'type' validation for
  allOf→enum schema simplification
- tools/codegen/pkg/schemacheck/generator.go: Disable NoDataTypeChange
  comparator for the same schema simplification

The new controller-tools generates simpler enum schemas without allOf
wrappers when both type and field have enum markers. This is functionally
equivalent but structurally different, requiring the crdify and
schemacheck adjustments to avoid false positive violations.

Upstream fix: kubernetes-sigs/controller-tools#1299
OpenShift carry: openshift/kubernetes-sigs-controller-tools#35

The OpenShift carry is a temporary backport until we can bump to Go 1.25,
which is required by the upstream controller-tools version with this fix.

Created with support from Claude Opus 4 (Anthropic)
jaypoulz added a commit to jaypoulz/api that referenced this pull request Jan 20, 2026
Update controller-tools to jaypoulz/controller-tools fork which includes
a fix for deterministic XValidation rule ordering. This ensures CRD
generation produces consistent output.

Changes included:
- tools/go.mod: Point replace directive to jaypoulz/controller-tools
- tools/Makefile: Fix openapi-gen path (moved from code-generator to
  kube-openapi upstream)
- tools/codegen/pkg/crdify/generator.go: Ignore 'type' validation for
  allOf→enum schema simplification
- tools/codegen/pkg/schemacheck/generator.go: Disable NoDataTypeChange
  comparator for the same schema simplification

The new controller-tools generates simpler enum schemas without allOf
wrappers when both type and field have enum markers. This is functionally
equivalent but structurally different, requiring the crdify and
schemacheck adjustments to avoid false positive violations.

Upstream fix: kubernetes-sigs/controller-tools#1299
OpenShift carry: openshift/kubernetes-sigs-controller-tools#35

The OpenShift carry is a temporary backport until we can bump to Go 1.25,
which is required by the upstream controller-tools version with this fix.

Created with support from Claude Opus 4 (Anthropic)
@jaypoulz jaypoulz force-pushed the stable-sort branch 2 times, most recently from c37ed5a to 5d5c4e4 Compare January 20, 2026 14:15
Signed-off-by: dongjiang <dongjiang1989@126.com>
@jaypoulz jaypoulz changed the title UPSTREAM 1299: 🐛 Change sort to slices package UPSTREAM: 1299: 🐛 Change sort to slices package Jan 20, 2026
@JoelSpeed JoelSpeed merged commit b086577 into openshift:master Jan 20, 2026
jaypoulz added a commit to jaypoulz/api that referenced this pull request Jan 20, 2026
Update controller-tools to jaypoulz/controller-tools fork which includes
a fix for deterministic XValidation rule ordering. This ensures CRD
generation produces consistent output.

Changes included:
- tools/go.mod: Point replace directive to jaypoulz/controller-tools
- tools/Makefile: Fix openapi-gen path (moved from code-generator to
  kube-openapi upstream)
- tools/codegen/pkg/crdify/generator.go: Ignore 'type' validation for
  allOf→enum schema simplification
- tools/codegen/pkg/schemacheck/generator.go: Disable NoDataTypeChange
  comparator for the same schema simplification

The new controller-tools generates simpler enum schemas without allOf
wrappers when both type and field have enum markers. This is functionally
equivalent but structurally different, requiring the crdify and
schemacheck adjustments to avoid false positive violations.

Upstream fix: kubernetes-sigs/controller-tools#1299
OpenShift carry: openshift/kubernetes-sigs-controller-tools#35

The OpenShift carry is a temporary backport until we can bump to Go 1.25,
which is required by the upstream controller-tools version with this fix.

Created with support from Claude Opus 4 (Anthropic)
jaypoulz added a commit to jaypoulz/api that referenced this pull request Jan 20, 2026
Update controller-tools to openshift/kubernetes-sigs-controller-tools which
includes a fix for deterministic XValidation rule ordering. This ensures CRD
generation produces consistent output.

Changes included:
- tools/go.mod: Point replace directive to openshift fork with stable sort fix
- tools/Makefile: Fix openapi-gen path (moved from code-generator to
  kube-openapi upstream)
- tools/codegen/pkg/schemacheck/generator.go: Disable NoDataTypeChange
  comparator for allOf→enum schema simplification

The new controller-tools generates simpler enum schemas without allOf
wrappers when both type and field have enum markers. This is functionally
equivalent but structurally different, requiring the schemacheck adjustment
to avoid false positive violations.

Upstream fix: kubernetes-sigs/controller-tools#1299
OpenShift carry: openshift/kubernetes-sigs-controller-tools#35

Created with support from Claude Opus 4 (Anthropic)
jaypoulz added a commit to jaypoulz/api that referenced this pull request Jan 20, 2026
Update controller-tools to openshift/kubernetes-sigs-controller-tools which
includes a fix for deterministic XValidation rule ordering. This ensures CRD
generation produces consistent output.

Changes included:
- tools/go.mod: Point replace directive to openshift fork with stable sort fix
- tools/Makefile: Fix openapi-gen path (moved from code-generator to
  kube-openapi upstream)
- tools/codegen/pkg/schemacheck/generator.go: Disable NoDataTypeChange
  comparator for allOf→enum schema simplification

The new controller-tools generates simpler enum schemas without allOf
wrappers when both type and field have enum markers. This is functionally
equivalent but structurally different, requiring the schemacheck adjustment
to avoid false positive violations.

Upstream fix: kubernetes-sigs/controller-tools#1299
OpenShift carry: openshift/kubernetes-sigs-controller-tools#35

Created with support from Claude Opus 4 (Anthropic)
jaypoulz added a commit to jaypoulz/api that referenced this pull request Jan 20, 2026
Update controller-tools to openshift/kubernetes-sigs-controller-tools which
includes a fix for deterministic XValidation rule ordering. This ensures CRD
generation produces consistent output.

Changes included:
- tools/go.mod: Point replace directive to openshift fork with stable sort fix
- tools/Makefile: Fix openapi-gen path (moved from code-generator to
  kube-openapi upstream)
- tools/codegen/pkg/schemacheck/generator.go: Disable NoDataTypeChange
  comparator for allOf→enum schema simplification

The new controller-tools generates simpler enum schemas without allOf
wrappers when both type and field have enum markers. This is functionally
equivalent but structurally different, requiring the schemacheck adjustment
to avoid false positive violations.

Upstream fix: kubernetes-sigs/controller-tools#1299
OpenShift carry: openshift/kubernetes-sigs-controller-tools#35

Created with support from Claude Opus 4 (Anthropic)
fonta-rh pushed a commit to fonta-rh/api that referenced this pull request Feb 9, 2026
Update controller-tools to openshift/kubernetes-sigs-controller-tools which
includes a fix for deterministic XValidation rule ordering. This ensures CRD
generation produces consistent output.

Changes included:
- tools/go.mod: Point replace directive to openshift fork with stable sort fix
- tools/Makefile: Fix openapi-gen path (moved from code-generator to
  kube-openapi upstream)
- tools/codegen/pkg/schemacheck/generator.go: Disable NoDataTypeChange
  comparator for allOf→enum schema simplification

The new controller-tools generates simpler enum schemas without allOf
wrappers when both type and field have enum markers. This is functionally
equivalent but structurally different, requiring the schemacheck adjustment
to avoid false positive violations.

Upstream fix: kubernetes-sigs/controller-tools#1299
OpenShift carry: openshift/kubernetes-sigs-controller-tools#35

Created with support from Claude Opus 4 (Anthropic)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants