Protobuf: TextFormat specification seems to be undocumented

Created on 15 Oct 2017  路  4Comments  路  Source: protocolbuffers/protobuf

I'm trying to figure out how to print a protocol buffer in text format that is compatible with the existing implementations of text format. The issue is that I cannot find any specification of TextFormat and only implementations. Given that there are multiple implementations (C++,Java,Go) that are interoperable it seems that there is a spec even if it isn't yet documented.

The binary format and proto file format are all well documented on the developer site:
https://developers.google.com/protocol-buffers.

Most helpful comment

I'm implementing support for protocol buffers in a language that doesn't already have support, even if text format isn't fully portable, it is used in many existing systems as a human readable version.

protoc seems to support some version of Text Format for use with the --encode and --decode options. Can that version at least be documented?

All 4 comments

The textformat isn't intended to be interoperable across languages/implementations, and I believe it already isn't fully portable. I'd recommend using binary format for any use cases that require portability.

I'm implementing support for protocol buffers in a language that doesn't already have support, even if text format isn't fully portable, it is used in many existing systems as a human readable version.

protoc seems to support some version of Text Format for use with the --encode and --decode options. Can that version at least be documented?

@endobson If you are implementing protobuf for a new language, can you support proto3 JSON format instead?

I'll investigate it. That probably is a better choice if protobuf is moving away from the old text format.

Was this page helpful?
0 / 5 - 0 ratings