Protobuf Conformance Tests
July 27, 2026 · View on GitHub
A repository which runs the protocol buffers conformance test suite against various implementations.
Implementations
The current implementations being tested are:
- Protobuf-ES: https://github.com/bufbuild/protobuf-es
- protobuf.js: https://github.com/protobufjs/protobuf.js
- protobuf-ts: https://github.com/timostamm/protobuf-ts
- google-protobuf: https://github.com/protocolbuffers/protobuf-javascript
- ts-proto: https://github.com/stephenh/ts-proto
- protoscript: https://github.com/TateThurston/protoscript
- protoc-gen-ts: https://github.com/thesayyn/protoc-gen-ts
Results
| Implementation | JavaScript and TypeScript | Standard Plugin | Supported Edition | Required tests | Recommended tests |
|---|---|---|---|---|---|
| Protobuf-ES | :heavy_check_mark: | :heavy_check_mark: | 2024 | (0 failures) | (0 failures) |
| protobuf.js | :heavy_check_mark: | :heavy_check_mark: | 2024 | (0 failures) | (0 failures) |
| protobuf-ts | :heavy_check_mark: | :heavy_check_mark: | proto3 | (6 failures) | (7 failures) |
| google-protobuf | :x: | :heavy_check_mark: | 2023 | (1169 failures) | (389 failures) |
| ts-proto | :x: | :heavy_check_mark: | proto3 | (751 failures) | (613 failures) |
| protoscript | :heavy_check_mark: | :heavy_check_mark: | proto3 | (1151 failures) | (541 failures) |
| protoc-gen-ts | :x: | :heavy_check_mark: | proto3 | (1690 failures) | (475 failures) |
Implementations are tested with proto2, proto3, and the maximum Edition they advertise to support.
Note: The Required and Recommended columns cover Binary and ProtoJSON. Text Format conformance is tracked separately.
Running the tests
To run the conformance tests, run npm test from the repo root.
Note that only Linux and OSX operating systems are supported.
Note
Beginning with the v32.0 release of Protobuf, this repository will no longer be publishing releases of the conformance runner. Users can instead install the conformance runner (and protoc if desired) via the protobuf-conformance package on npm.