Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

x/pkgsite: package removal request for github.com/google/gnostic/cmd/* #50514

Closed
timburks opened this issue Jan 8, 2022 · 6 comments
Closed

Comments

@timburks
Copy link

timburks commented Jan 8, 2022

What is the path of the package that you would like to have removed?

github.com/google/gnostic/cmd/disco
github.com/google/gnostic/cmd/parse-linter-output
github.com/google/gnostic/cmd/petstore-builder
github.com/google/gnostic/cmd/protoc-gen-jsonschema
github.com/google/gnostic/cmd/protoc-gen-openapi
github.com/google/gnostic/cmd/report
github.com/google/gnostic/cmd/report-messages
github.com/google/gnostic/cmd/vocabulary-operations

Based on the above, it would be equivalent to remove all packages with this prefix:
github.com/google/gnostic/cmd

Are you the owner of this package?

yes - see https://github.com/google/gnostic

What is the reason that you could not retract this package instead?

These packages were created with new go.mod files that were introduced to explore a multimodule configuration for our project.
After finding problems with our configuration, we decided to revert to a single-module configuration and found that retracting the version of the main repo that introduced the multimodule go.mod files wasn't enough to get these child modules out of the package cache.

https://github.com/google/gnostic/releases/tag/v0.6.0 introduced the multimodule configuration
https://github.com/google/gnostic/releases/tag/v0.6.1 removed the multimodule configuration
https://github.com/google/gnostic/releases/tag/v0.6.2 retracted v0.6.0 but did not seem to retract the child modules.

We may have missed an ability to retract the child modules in our main go.mod - we didn't see that capability documented and didn't try it.

@gopherbot gopherbot added this to the pkgsite/unplanned milestone Jan 8, 2022
@timburks timburks changed the title x/pkgsite: package removal request for [type path here] x/pkgsite: package removal request for github.com/google/gnostic/cmd/* Jan 8, 2022
@seankhliao
Copy link
Member

note removal here only applies to the documentation site, it doesn't affect the cache

@morphar
Copy link

morphar commented Jan 9, 2022

Thanks @seankhliao.
How does the cache work? Will it automatically drop the cache for e.g. github.com/google/gnostic/cmd/protoc-gen-openapi@latestat some point?
Or is there someway to ask for it to drop this as well?

@seankhliao
Copy link
Member

No, it's permanent (to not break any existing builds).
retract (in the modules you want to remove) can affect the version selected by go for new dependencies/upgrades.

@morphar
Copy link

morphar commented Jan 9, 2022

I see. So for all future calls to github.com/google/gnostic/cmd/protoc-gen-openapi@latest, I will get the broken version (v0.6.0), unless we add a new go.mod in github.com/google/gnostic/cmd/protoc-gen-openapi/. Is that correctly understood?

@seankhliao
Copy link
Member

yes,
To prevent the module defined in github.com/google/gnostic/cmd/protoc-gen-openapi/ from being used, you can create a go.mod in that directory with:

module github.com/google/gnostic/cmd/protoc-gen-openapi

go 1.17

// all psuedoversions representing commits and real versions up to the retraction version
retract [v0.0.0-00000000000000-000000000000, v0.6.1]

and tag it with cmd/protoc-gen-openapi/v0.6.1

This doesn't have to be on the main branch, as long as the the highest tagged version of the module has the retraction it will be effective.

@morphar
Copy link

morphar commented Jan 9, 2022

Perfect! Thank you so much for your help and advice @seankhliao 👍

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

5 participants