commit | 7b960dddfc7dae5747a912c02353c125d9f353dc | [log] [tgz] |
---|---|---|
author | Joshua Haberman <jhaberman@gmail.com> | Mon Aug 16 13:36:38 2021 -0700 |
committer | GitHub <noreply@github.com> | Mon Aug 16 13:36:38 2021 -0700 |
tree | 997c72d2cc0398c764a5165046c55438840257e2 | |
parent | ae68cc5673ebd92f597daef641124f71681f5f8c [diff] | |
parent | a669587817810725ead06cbbb2ffe37fc0ccdda2 [diff] |
Merge pull request #411 from haberman/align-arena Align arena initial block to ensure allocations are aligned.
μpb (often written ‘upb’) is a small protobuf implementation written in C.
upb is the core runtime for protobuf languages extensions in Ruby, PHP, and (soon) Python.
While upb offers a C API, the C API & ABI are not stable. For this reason, upb is not generally offered as a C library for direct consumption, and there are no releases.
upb has comparable speed to protobuf C++, but is an order of magnitude smaller in code size.
Like the main protobuf implementation in C++, it supports:
upb also supports some features that C++ does not:
However there are some features it does not support:
protoc
.For Ruby, use RubyGems:
$ gem install google-protobuf
For PHP, use PECL:
$ sudo pecl install protobuf
Please see CONTRIBUTING.md.