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

Upgrade go-msgpack to v2 2.1.1 #19313

Open
wants to merge 3 commits into
base: main
Choose a base branch
from

Conversation

swenson
Copy link
Contributor

@swenson swenson commented Oct 20, 2023

This is mostly a no-op for Consul as Consul mostly uses consul-net-rpc and the default time.Time encoding for go-msgpack 2.1.1 is set to the go-msgpack-0.5.5-compatible encoding by default, so no changes should be necessary in code.

go-msgpack 2.1.1 was specifically designed to honor backwards compatibility with 1.1.5 and 0.5.5, and to clean up the code base to be more maintainable. See
the release notes for go-msgkack 2.1.0 for more details.

I tested this by running this code, and booting up a cluster with a node also running the prior version of Consul (before the upgrade). The node came up smoothly, even after changing leadership between them.

This relies on

and will need to be updated after they are merged to get the go.mod fixes removed.

PR Checklist

  • updated test coverage
  • external facing docs updated
  • appropriate backport labels added
  • not a security concern

This is mostly a no-op for Consul as Consul mostly uses `consul-net-rpc`
and the default `time.Time` encoding for go-msgpack 2.1.1 is set to the
go-msgpack-0.5.5-compatible encoding by default, so no changes should be
necessary in code.

go-msgpack 2.1.1 was specifically designed to honor backwards
compatibility with 1.1.5 and 0.5.5, and to clean up the code base to be
more maintainable. See
[the release notes for go-msgkack 2.1.0](https://github.com/hashicorp/go-msgpack/releases/tag/v2.1.0)
for more details.

I tested this by running this code, and booting up a cluster with a node
also running the prior version of Consul (before the upgrade).
The node came up smoothly, even after changing leadership between them.

This relies on
- [ ] hashicorp/serf#705
- [ ] hashicorp/raft-boltdb#38
- [ ] hashicorp/raft#577
- [ ] hashicorp/memberlist#292

and will need to be updated after they are merged to get the `go.mod`
fixes removed.
@github-actions github-actions bot added theme/api Relating to the HTTP API interface pr/dependencies PR specifically updates dependencies of project labels Oct 20, 2023
Copy link

This pull request has been automatically flagged for inactivity because it has not been acted upon in the last 60 days. It will be closed if no new activity occurs in the next 30 days. Please feel free to re-open to resurrect the change if you feel this has happened by mistake. Thank you for your contributions.

@github-actions github-actions bot added the meta/stale Automatically flagged for inactivity by stalebot label Jan 20, 2024
@swenson
Copy link
Contributor Author

swenson commented Jan 22, 2024

This is still relevant, and I'm happy to do any follow-up required.

@github-actions github-actions bot removed the meta/stale Automatically flagged for inactivity by stalebot label Jan 23, 2024
Copy link

This pull request has been automatically flagged for inactivity because it has not been acted upon in the last 60 days. It will be closed if no new activity occurs in the next 30 days. Please feel free to re-open to resurrect the change if you feel this has happened by mistake. Thank you for your contributions.

@github-actions github-actions bot added the meta/stale Automatically flagged for inactivity by stalebot label May 28, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
meta/stale Automatically flagged for inactivity by stalebot pr/dependencies PR specifically updates dependencies of project theme/api Relating to the HTTP API interface
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

1 participant