Skip to content

Protobuf Update - #24

Merged
btoms20 merged 13 commits into
mainfrom
protobuf-update
Sep 3, 2026
Merged

Protobuf Update#24
btoms20 merged 13 commits into
mainfrom
protobuf-update

Conversation

@btoms20

@btoms20 btoms20 commented Sep 3, 2026

Copy link
Copy Markdown
Member

What?

This PR updated the two built in protobufs we use (DHT Message/Record and the IPNSEntry) and regenerated their swift counterparts.

Changes:

  • Message/Record:
    • dropped author and signature fields
    • The record field is now the Record type (previously we just used bytes so we could interact with an old JS implementation)
  • IPNS:
    • made value and signatureV1 optional
  • Added protobuf / wire tests

Important

Both protobufs were generated with proto3 syntax even though the spec defines them as using proto2. We use proto3 for its enum case handling (open vs closed enums). proto3 handles reasoning about an untyped / omitted enum case internally, as opposed to us having to manually check / guard against it. And as far as I understand it, they should be backwards compatible.

@btoms20 btoms20 self-assigned this Sep 3, 2026
@btoms20 btoms20 added enhancement New feature or request breaking-change Introduces breaking changes labels Sep 3, 2026
@btoms20
btoms20 merged commit 1075180 into main Sep 3, 2026
28 checks passed
@btoms20
btoms20 deleted the protobuf-update branch September 3, 2026 18:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

breaking-change Introduces breaking changes enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant