-
Notifications
You must be signed in to change notification settings - Fork 73
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
Conversation
@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. |
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. |
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. |
@SamWhited sorry for the late review, this PR fell through the cracks... |
Signed-off-by: Sam Whited <sam@samwhited.com>
Not to worry; thanks for the followup! |
👍 Thanks, everyone! |
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>
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>
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
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>
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.