-
Notifications
You must be signed in to change notification settings - Fork 132
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
Pin versions with go.mod, similar to server #1060
Conversation
go.uber.org/atomic v1.5.1 | ||
go.uber.org/atomic v1.4.0 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This downgrade is a bit odd. Possibly it's not imported locally + transitive dependencies changed and this is the new minimum?
It's very likely safe / good to upgrade to latest. Latest does make a breaking change though, disallowing comparison between atomic wrappers (which is a good thing, as that's racy behavior).
While building github.com/cadence-workflow/cadence-go-client/pull/1060, I realized I kinda missed the out-of-date warnings. So here's something kinda similar. It may be worth adding e.g. a "nothing > 100 days" check to `make lint` and/or CI? Otherwise I tend to see dependencies go un-upgraded for huge lengths of time.
While building github.com/cadence-workflow/cadence-go-client/pull/1060, I realized I kinda missed the out-of-date warnings. So here's something kinda similar. It may be worth adding e.g. a "nothing > 100 days" check to `make lint` and/or CI? Otherwise I tend to see dependencies go un-upgraded for huge lengths of time.
While building github.com/cadence-workflow/cadence-go-client/pull/1060, I realized I kinda missed the out-of-date warnings. So here's something kinda similar. It may be worth adding e.g. a "nothing > 100 days" check to `make lint` and/or CI? Otherwise I tend to see dependencies go un-upgraded for huge lengths of time.
While building github.com/cadence-workflow/cadence-go-client/pull/1060, I realized I kinda missed the out-of-date warnings. So here's something kinda similar. It may be worth adding e.g. a "nothing > 100 days" check to `make lint` and/or CI? Otherwise I tend to see dependencies go un-upgraded for huge lengths of time.
While building github.com/cadence-workflow/cadence-go-client/pull/1060, I realized I kinda missed the out-of-date warnings. So here's something kinda similar. It may be worth adding e.g. a "nothing > 100 days" check to `make lint` and/or CI? Otherwise I tend to see dependencies go un-upgraded for huge lengths of time.
While building github.com/cadence-workflow/cadence-go-client/pull/1060, I realized I kinda missed the out-of-date warnings. So here's something kinda similar. It may be worth adding e.g. a "nothing > 100 days" check to `make lint` and/or CI? Otherwise I tend to see dependencies go un-upgraded for huge lengths of time.
While building github.com/cadence-workflow/cadence-go-client/pull/1060, I realized I kinda missed the out-of-date warnings. So here's something kinda similar. It may be worth adding e.g. a "nothing > 100 days" check to `make lint` and/or CI? Otherwise I tend to see dependencies go un-upgraded for huge lengths of time.
While building github.com/cadence-workflow/cadence-go-client/pull/1060, I realized I kinda missed the out-of-date warnings. So here's something kinda similar. It may be worth adding e.g. a "nothing > 100 days" check to `make lint` and/or CI? Otherwise I tend to see dependencies go un-upgraded for huge lengths of time.
While building github.com/cadence-workflow/cadence-go-client/pull/1060, I realized I kinda missed the out-of-date warnings. So here's something kinda similar. It may be worth adding e.g. a "nothing > 100 days" check to `make lint` and/or CI? Otherwise I tend to see dependencies go un-upgraded for huge lengths of time.
While building github.com/cadence-workflow/cadence-go-client/pull/1060, I realized I kinda missed the out-of-date warnings. So here's something kinda similar. It may be worth adding e.g. a "nothing > 100 days" check to `make lint` and/or CI? Otherwise I tend to see dependencies go un-upgraded for huge lengths of time.
While building github.com/cadence-workflow/cadence-go-client/pull/1060, I realized I kinda missed the out-of-date warnings. So here's something kinda similar. It may be worth adding e.g. a "nothing > 100 days" check to `make lint` and/or CI? Otherwise I tend to see dependencies go un-upgraded for huge lengths of time.
While building github.com/cadence-workflow/cadence-go-client/pull/1060, I realized I kinda missed the out-of-date warnings. So here's something kinda similar. It may be worth adding e.g. a "nothing > 100 days" check to `make lint` and/or CI? Otherwise I tend to see dependencies go un-upgraded for huge lengths of time.
While building github.com/cadence-workflow/cadence-go-client/pull/1060, I realized I kinda missed the out-of-date warnings. So here's something kinda similar. It may be worth adding e.g. a "nothing > 100 days" check to `make lint` and/or CI? Otherwise I tend to see dependencies go un-upgraded for huge lengths of time.
While building github.com/cadence-workflow/cadence-go-client/pull/1060, I realized I kinda missed the out-of-date warnings. So here's something kinda similar. It may be worth adding e.g. a "nothing > 100 days" check to `make lint` and/or CI? Otherwise I tend to see dependencies go un-upgraded for huge lengths of time.
Pull Request Test Coverage Report for Build 3cb9e29a-b43c-4d9f-8388-fd80127d350b
💛 - Coveralls |
Current deps output for comparison:
This covers tools and libraries. |
While building github.com/cadence-workflow/cadence-go-client/pull/1060, I realized I kinda missed the out-of-date warnings. So here's something kinda similar. It may be worth adding e.g. a "nothing > 100 days" check to `make lint` and/or CI? Otherwise I tend to see dependencies go un-upgraded for huge lengths of time.
While building github.com/cadence-workflow/cadence-go-client/pull/1060, I realized I kinda missed the out-of-date warnings. So here's something kinda similar. It may be worth adding e.g. a "nothing > 100 days" check to `make lint` and/or CI? Otherwise I tend to see dependencies go un-upgraded for huge lengths of time.
While building github.com/cadence-workflow/cadence-go-client/pull/1060, I realized I kinda missed the out-of-date warnings. So here's something kinda similar. It may be worth adding e.g. a "nothing > 100 days" check to `make lint` and/or CI? Otherwise I tend to see dependencies go un-upgraded for huge lengths of time.
While building github.com/cadence-workflow/cadence-go-client/pull/1060, I realized I kinda missed the out-of-date warnings. So here's something kinda similar. An alternative option is to use something like https://github.com/psampaz/go-mod-outdated, but unfortunately that one will just tell you _what_ updates are available, not how old they are. It's pretty good otherwise though. It may be worth adding e.g. a "nothing > 100 days" check to `make lint` and/or CI? Otherwise I tend to see dependencies go un-upgraded for huge lengths of time. --- The output currently shows the maximum of these two values, as it feels like a pretty good "badness" metric: - how much time has passed between the current version and the latest version - how much time has passed since the latest version was released Either alone produces some non-great edge cases: - with only the first: - a long-stable library with a fix today looks 100s of days old - a release -> immediate bugfix release looks 0 days old (e.g. `rsc.io/sampler`) - with only the second: - a consistently-releasing library always looks "recent-ish". e.g. prior to them using tags, golang.org/x/tools would usually look <7 days old, as `master` is updated frequently... even though we were a few months behind. Ideally, IMO, this would check for both: - how old is our current version? (which this does) - how long have we ignored _any_ update? But AFAICT that'd require custom requests to a goproxy, as we cannot get "current+1" versions, only "current" and "latest".
While building github.com/cadence-workflow/cadence-go-client/pull/1060, I realized I kinda missed the out-of-date warnings. So here's something kinda similar. An alternative option is to use something like https://github.com/psampaz/go-mod-outdated, but unfortunately that one will just tell you _what_ updates are available, not how old they are. It's pretty good otherwise though. It may be worth adding e.g. a "nothing > 100 days" check to `make lint` and/or CI? Otherwise I tend to see dependencies go un-upgraded for huge lengths of time. --- The output currently shows the maximum of these two values, as it feels like a pretty good "badness" metric: - how much time has passed between the current version and the latest version - how much time has passed since the latest version was released Either alone produces some non-great edge cases: - with only the first: - a long-stable library with a fix today looks 100s of days old - a release -> immediate bugfix release looks 0 days old (e.g. `rsc.io/sampler`) - with only the second: - a consistently-releasing library always looks "recent-ish". e.g. prior to them using tags, golang.org/x/tools would usually look <7 days old, as `master` is updated frequently... even though we were a few months behind. Ideally, IMO, this would check for both: - how old is our current version? (which this does) - how long have we ignored _any_ update? But AFAICT that'd require custom requests to a goproxy, as we cannot get "current+1" versions, only "current" and "latest".
The versioning strategy unfortunately is leaking some dependencies, and codegen isn't reproducible any more.
This update mimics how github.com/uber/cadence does dependencies, and is more "normal" for go modules anyway.
Implications of these changes include:
replace
directives.And since this does away with the "X commits / versions behind current" notification: I've added
make deps
(andmake deps-all
), which works the same way as in cadence-workflow/cadence/pull/4000. Hopefully it's understandable enough to modify easily.