You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
A linter to enforce importing certain packages consistently.
What is this for?
Ideally, go imports should avoid aliasing. Sometimes though, especially with
Kubernetes API code, it becomes unavoidable, because many packages are imported
as e.g. "[package]/v1alpha1" and you end up with lots of collisions if you use
"v1alpha1".
This linter lets you enforce that whenever (for example)
"pkg/apis/serving/v1alpha1" is aliased, it is aliased as "servingv1alpha1".
By default, importas allows non-aliased imports, even when the package is specified by -alias flag.
With -no-unaliased option, importas does not allow this.
By default, importas allows aliases which are not specified by -alias flags.
With -no-extra-aliases option, importas does not allow any unspecified aliases.
$1 represents the text of the first submatch. See detail.
So it will enforce that
"knative.dev/serving/pkg/apis/autoscaling/v1alpha1" is aliased by "autoscalingv1alpha1", and
"knative.dev/serving/pkg/apis/serving/v1" is aliased by "servingv1"