Skip to content

WIP/PoC: Migrate Swarm integration off gogo/protobuf - #53288

Draft
vvoland wants to merge 5 commits into
moby:masterfrom
vvoland:work-swarm
Draft

WIP/PoC: Migrate Swarm integration off gogo/protobuf#53288
vvoland wants to merge 5 commits into
moby:masterfrom
vvoland:work-swarm

Conversation

@vvoland

@vvoland vvoland commented Aug 3, 2026

Copy link
Copy Markdown
Contributor

Summary

Consume swarmkit's migration from gogo/protobuf to the standard Go protobuf implementation.

Release notes (optional)

A picture of a cute animal (not mandatory but encouraged)

vvoland added 2 commits August 3, 2026 11:50
Signed-off-by: Paweł Gronowski <pawel.gronowski@docker.com>
SwarmKit no longer generates messages with gogo/protobuf, so its
message fields now use standard Go protobuf names, pointer semantics,
and well-known types.

Update the cluster, executor, event, and network allocator boundaries
to use the standard protobuf runtime. Pass generated messages by
pointer so their internal state is not copied, and preserve
compatibility handling for older stored service and node fields.

Signed-off-by: Paweł Gronowski <pawel.gronowski@docker.com>
@vvoland vvoland self-assigned this Aug 3, 2026
Copilot AI review requested due to automatic review settings August 3, 2026 10:55
@vvoland vvoland added area/swarm kind/refactor PR's that refactor, or clean-up code labels Aug 3, 2026

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot wasn't able to review this pull request because it exceeds the maximum number of files (300). Try reducing the number of changed files and requesting a review from Copilot again.

@vvoland
vvoland marked this pull request as draft August 3, 2026 11:00
@vvoland vvoland removed the area/networking Networking label Aug 3, 2026
Signed-off-by: Paweł Gronowski <pawel.gronowski@docker.com>
Copilot AI review requested due to automatic review settings August 3, 2026 11:10

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot wasn't able to review this pull request because it exceeds the maximum number of files (300). Try reducing the number of changed files and requesting a review from Copilot again.

@github-actions github-actions Bot added the area/networking Networking label Aug 3, 2026
Copilot AI review requested due to automatic review settings August 3, 2026 12:15

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot wasn't able to review this pull request because it exceeds the maximum number of files (300). Try reducing the number of changed files and requesting a review from Copilot again.

vvoland added 2 commits August 3, 2026 14:43
Every swarm update panicked before sending an HTTP response because
the standard protobuf ClusterSpec uses pointers for nested messages,
while the conversion code still treated them as always-present values.

Initialize missing nested messages before merging the API spec. This
restores the previous non-nullable protobuf behavior while preserving
existing values during swarm initialization.

Signed-off-by: Paweł Gronowski <pawel.gronowski@docker.com>
Use pointers for nested protobuf messages and adopt the generated
standard protobuf field names so the Windows daemon test packages
compile again.

Signed-off-by: Paweł Gronowski <pawel.gronowski@docker.com>
Copilot AI review requested due to automatic review settings August 3, 2026 12:51

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot wasn't able to review this pull request because it exceeds the maximum number of files (300). Try reducing the number of changed files and requesting a review from Copilot again.

@vvoland vvoland added this to the 30.0.0 milestone Aug 5, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area/daemon Core Engine area/dependencies area/networking Networking area/swarm kind/refactor PR's that refactor, or clean-up code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants