779f61c6a3
protoc - New flags --encode and --decode can be used to convert between protobuf text format and binary format from the command-line. - New flag --descriptor_set_out can be used to write FileDescriptorProtos for all parsed files directly into a single output file. This is particularly useful if you wish to parse .proto files from programs written in languages other than C++: just run protoc as a background process and have it output a FileDescriptorList, then parse that natively. C++ - Reflection objects are now per-class rather than per-instance. To make this possible, the Reflection interface had to be changed such that all methods take the Message instance as a parameter. This change improves performance significantly in memory-bandwidth-limited use cases, since it makes the message objects smaller. Note that source-incompatible interface changes like this will not be made again after the library leaves beta. Python - MergeFrom(message) and CopyFrom(message) are now implemented. - SerializeToString() raises an exception if the message is missing required fields. - Code organization improvements. - Fixed doc comments for RpcController and RpcChannel, which had somehow been swapped. |
||
---|---|---|
.. | ||
ez_setup.py | ||
mox.py | ||
README.txt | ||
setup.py | ||
stubout.py |
Protocol Buffers - Google's data interchange format Copyright 2008 Google Inc. This directory contains the Python Protocol Buffers runtime library. Normally, this directory comes as part of the protobuf package, available from: http://code.google.com/p/protobuf The complete package includes the C++ source code, which includes the Protocol Compiler (protoc). If you downloaded this package from PyPI or some other Python-specific source, you may have received only the Python part of the code. In this case, you will need to obtain the Protocol Compiler from some other source before you can use this package. Installation ============ 1) Make sure you have Python 2.4 or newer. If in doubt, run: $ python -V 2) If you do not have setuptools installed, note that it will be downloaded and installed automatically as soon as you run setup.py. If you would rather install it manually, you may do so by following the instructions on this page: http://peak.telecommunity.com/DevCenter/EasyInstall#installation-instructions 3) Build the C++ code, or install a binary distribution of protoc. If you install a binary distribution, make sure that it is the same version as this package. If in doubt, run: $ protoc --version 4) Run the tests: $ python setup.py test If some tests fail, this library may not work correctly on your system. Continue at your own risk. Please note that there is a known problem with some versions of Python on Cygwin which causes the tests to fail after printing the error: "sem_init: Resource temporarily unavailable". This appears to be a bug either in Cygwin or in Python: http://www.cygwin.com/ml/cygwin/2005-07/msg01378.html We do not know if or when it might me fixed. We also do not know how likely it is that this bug will affect users in practice. 5) Install: $ python setup.py install This step may require superuser privileges. Usage ===== The complete documentation for Protocol Buffers is available via the web at: http://code.google.com/apis/protocolbuffers/