Skip to content
This repository has been archived by the owner on May 23, 2024. It is now read-only.

Support Go Modules (add go.mod file) #382

Closed
tylerchr opened this issue Mar 19, 2019 · 11 comments · Fixed by #424
Closed

Support Go Modules (add go.mod file) #382

tylerchr opened this issue Mar 19, 2019 · 11 comments · Fixed by #424

Comments

@tylerchr
Copy link

Requirement - what kind of business use case are you trying to solve?

Would like to be able to reliably build binaries that use release versions of jaeger-client-go when Go modules are enabled.

Problem - what in Jaeger blocks you from solving the requirement?

The lack of a go.mod file results in fetching the latest version of dependencies. Because module-aware Go commands use the newest tagged versions, jaeger-client-go v2.15.0 is chosen and in at least one case (jaeger-lib; see #363 for details) the latest version (v2.0.0) is incompatible and results in a broken build.

Proposal - what do you suggest to solve the problem or improve the existing situation?

Add a go.mod file to the jaeger-client-go repository that lists a working set of dependencies and release a new version.

Note that jaeger-lib v2.0.0 is in fact compatible with the latest master of jaeger-client-go, so it wouldn't be necessary to pin an older version of anything.

Any open questions to address

  • Other than adding go.mod, what needs to be considered/verified/implemented to support Go modules?
  • Should jaeger-lib become module-aware too? Should jaeger-lib become module aware first?
  • Would adding a go.mod file necessitate a major version bump, or would a minor version bump suffice?
@mrxliu
Copy link

mrxliu commented Jun 9, 2019

Why not support go module?

@Nalum
Copy link

Nalum commented Jul 26, 2019

I'm just starting to look at Jaeger and use go mod in all my services. It would be great to see this.

Should jaeger-lib become module-aware too? Should jaeger-lib become module aware first?

IMHO anything that is controlled by the jaeger team should be updated to support go mod, it makes sense to me that the packages imported into other packages are done first (jaeger-lib in this case) but understand that would be a longer term approach.

@yurishkuro
Copy link
Member

For the time being, we need to keep Gopkg.toml, so if we add support for go mod, we need to manually keep it in sync w/ Gopkg.toml and add a new build to the Travis matrix.

@yurishkuro
Copy link
Member

yurishkuro commented Sep 5, 2019

jaeger-lib has been updated to support Go modules (while keeping Dep compatibility) - reverted due to v2 issue.

@andig
Copy link

andig commented Oct 18, 2019

Would adding a go.mod file necessitate a major version bump, or would a minor version bump suffice?

See golang/go#34165 (comment) for an authoritative comment:

adding a go.mod file is “adding functionality”, not a “backwards compatible bug fix”, so it should be at least a minor release...

@yurishkuro
Copy link
Member

@andig we've already established that we would need a major version, not because it's a "significant change", but because it also requires rewriting the paths of sub-packages to .../v2

@vtolstov
Copy link

so what the next ?

@ylz-at
Copy link

ylz-at commented Aug 2, 2020

Any update?

@liuchintao
Copy link

hello? Any update?

@blanet
Copy link

blanet commented Mar 31, 2021

Still not making any progress?

@Nerzal
Copy link

Nerzal commented May 11, 2021

I have opened a PR, which adds go module functionality

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

Successfully merging a pull request may close this issue.

10 participants