Open jgalliers opened 3 months ago
Thanks for reporting this @jgalliers
@vladimirvivien @cpanato I see there is some work happening on the client-go
for the clientcmd
that is intended to remove this package entirely. Until then, shall we add a replace
directive to help avoid this complication for others ?
I did some quick check to see if we can get rid of the cliendcmd
use entirely, but that was not a small one and had to re-do a bunch of what is being done by the clientcmd
. Not sure if that is worth it for short duration fix.
@harshanarayana I think for now, let's do a package replace to keep it simple. Once clientcmd is completley removed, then we can revisit (not sure how soon that will be).
What happened?
The module author of mergo renamed their module as described in their readme from
github.com/imdario/mergo
todario.cat/mergo
. A similar issue has been filed with kubernetes.This change breaks transitive dependencies because
replace
directives do not apply to modules outside the current codebase. For eg, the below is usually what you would do to address this scenario:What did you expect to happen?
After running
go get -u
and using the above replace statement,go mod tidy
should succeed. Unfortunately this results in the following error:The result of
go mod why
shows the followingHow can we reproduce it (as minimally and precisely as possible)?
Referencing the e2e framework in a new module and then attempting to update/tidy should be sufficient to trigger a warning, if not the error
Anything elese we need to know?
Ideally the replace statement mentioned above could be added to the e2e framework
go.mod
to ensure upstream consumers are not presented with errors or warnings about conflicting package imports.E2E Provider Used
kind
e2e-framework
Versionv0.4.0
OS version