-
Story
-
Resolution: Done
-
Major
-
None
-
None
-
None
-
Future Sustainability
-
False
-
-
False
-
2
-
None
-
None
-
XMen OLM Sprint 258, YellowJacket OLM Sprint 259
As outlined in the [Pointers subsection of the OpenShift API Conventions](https://github.com/openshift/enhancements/blob/master/dev-guide/api-conventions.md#pointers), in configuration APIs, pointers should only be used when there is an explicit need to distinguish between a zero value and a nil value. An exception here is pointers in the Status subresource since a nil value has a different meaning in the Status subresource than the Spec.
We propose that the following fields, not having the explicit need to distinguish between the zero and nil values, should be updated to no longer be pointers:
The following fields do not have the explicit need to distinguish between the zero and nil values, meaning they should be updated to no longer be pointers based on the OpenShift API Conventions:
- `ClusterExtension.Spec.Preflight`: https://github.com/operator-framework/operator-controller/blob/baac660980549ef68329cd72b45906ddefa7f3c2/api/v1alpha1/clusterextension_types.go#L84-L85
- `ClusterExtension.Spec.Preflight.CRDUpgradeSafety`: https://github.com/operator-framework/operator-controller/blob/baac660980549ef68329cd72b45906ddefa7f3c2/api/v1alpha1/clusterextension_types.go#L103-L105