Open mkeeler opened 1 year ago
@mkeeler is this waiting on anything? What makes the upgrade a breaking change?
Go will treat armon/go-metrics and hashicorp/go-metrics as two completely separate modules. Because of this the global metrics handlers they initialize are not shared. So what this means is that if your application pulls in armon/go-metrics and you update to use a library which pulls in hashicorp/go-metrics then all of your metrics will have disappeared. While nothing about it breaks the API, I see metrics emissions no longer functioning correctly without other updates to your application as something worthy of a version bump that signifies a breaking update.
As for if its waiting on anything I had originally drafted a slew of similar PRs:
memberlist: https://github.com/hashicorp/memberlist/pull/287 serf: https://github.com/hashicorp/serf/pull/693 raft-boltdb: https://github.com/hashicorp/raft-boltdb/pull/33 raft: https://github.com/hashicorp/raft/pull/558
I would still need to have updated even more libraries and exceeded the amount of time I could invest into updating the whole ecosystem of libraries that make their way into Consul (or nomad, vault, etc.)
IIRC I was running into some issues getting it all to work properly in Consul but I cannot remember exactly why.
This will require bumping to v0.5.0 to signify the breaking change.