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

Support Go Modules #31

Merged
merged 1 commit into from
Jan 29, 2019
Merged

Support Go Modules #31

merged 1 commit into from
Jan 29, 2019

Conversation

SamWhited
Copy link
Contributor

@SamWhited SamWhited commented Jan 21, 2019

Hello,

Please consider supporting Go Modules for tracking the version of the protobuf library used. There are several old issues about users having incorrect versions of the tool or how to handle versioning (eg. #26, #25, #24, #18, #10). A few of them the response was "we need an official solution before we standardize on versioning". Now that Prometheus has started using Modules, minimal support has been backported to all supported versions of Go and one older one, and they will be the default in Go 1.12 (next month sometime), I think that time may have finally come.

Note that I picked Go 1.9 as the minimum supported version because anything older than Go 1.9.7 won't read the go.mod file anyways, and the generated code appears to build under 1.9.7 just fine. I also pinned to the latest version of the protobuf library which appeared to generate the file correctly, but please let me know if there's a different version you prefer to use and I'll change the dependency.

Please consider merging this PR and then making a semver compatible tag that consumers of this library can pin to, eg. v0.0.3. Thank you for your time and consideration.

@beorn7
Copy link
Member

beorn7 commented Jan 21, 2019

@simonpasquier (who converted most of the other repos to Go modules): Do you think this makes sense for this repo, too? I guess yes, but I'd better ask you.

@beorn7
Copy link
Member

beorn7 commented Jan 21, 2019

WRT version tags: I expect this repo to be graveyarded in the not too far future. Fewer and fewer repositories within the Prometheus ecosystem depend on this one, and once OpenMetrics is finalized, this will be legacy anyway. I don't expect any changes happening in this repo. It will sit around as long as it is needed for backwards compatibility.

@SamWhited
Copy link
Contributor Author

Gentle ping; especially if this is going to be graveyarded soon, it would be nice to add a mod file and tag before then so people who are still using it until they move off can have a proper version to pin to. Thanks.

go.mod Outdated Show resolved Hide resolved
@simonpasquier
Copy link
Member

simonpasquier commented Jan 29, 2019

@SamWhited sorry for the late review, this PR fell through the cracks...

Signed-off-by: Sam Whited <sam@samwhited.com>
@SamWhited
Copy link
Contributor Author

Not to worry; thanks for the followup!

@beorn7
Copy link
Member

beorn7 commented Jan 29, 2019

👍 Thanks, everyone!

@beorn7 beorn7 merged commit fd36f42 into prometheus:master Jan 29, 2019
@SamWhited SamWhited deleted the support_modules branch January 29, 2019 23:36
thaJeztah added a commit to thaJeztah/containerd that referenced this pull request Jan 13, 2020
full diff: prometheus/client_model@99fa1f4...v0.1.0

- prometheus/client_model#22 add `go_package`, regenerate Go binding file
- prometheus/client_model#31 Support Go Modules
- prometheus/client_model#38 Remove all languages but Go and add a deprecation note

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
thaJeztah added a commit to thaJeztah/docker that referenced this pull request Jan 16, 2020
full diff: prometheus/client_model@6f38060...v0.1.0

- prometheus/client_model#22 add `go_package`, regenerate Go binding file
- prometheus/client_model#31 Support Go Modules
- prometheus/client_model#38 Remove all languages but Go and add a deprecation note

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
docker-jenkins pushed a commit to docker-archive/docker-ce that referenced this pull request Jan 17, 2020
full diff: prometheus/client_model@6f38060...v0.1.0

- prometheus/client_model#22 add `go_package`, regenerate Go binding file
- prometheus/client_model#31 Support Go Modules
- prometheus/client_model#38 Remove all languages but Go and add a deprecation note

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
Upstream-commit: 9c99f8b9b3d16e1975f07ae08f418949f76e4a02
Component: engine
tussennet pushed a commit to tussennet/containerd that referenced this pull request Sep 11, 2020
full diff: prometheus/client_model@99fa1f4...v0.1.0

- prometheus/client_model#22 add `go_package`, regenerate Go binding file
- prometheus/client_model#31 Support Go Modules
- prometheus/client_model#38 Remove all languages but Go and add a deprecation note

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
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