• Home
Name
Date
Size
#Lines
LOC

..--

google/03-May-2024-35,12925,588

MANIFEST.inD03-May-2024423 1512

README.mdD03-May-20244.1 KiB12887

mox.pyD03-May-202437.3 KiB1,402948

setup.pyD03-May-20249.8 KiB251200

stubout.pyD03-May-20244.8 KiB14191

tox.iniD03-May-2024740 2523

README.md

1 Protocol Buffers - Google's data interchange format
2 ===================================================
3 
4 [![Build Status](https://travis-ci.org/google/protobuf.svg?branch=master)](https://travis-ci.org/google/protobuf)
5 
6 Copyright 2008 Google Inc.
7 
8 This directory contains the Python Protocol Buffers runtime library.
9 
10 Normally, this directory comes as part of the protobuf package, available
11 from:
12 
13   https://developers.google.com/protocol-buffers/
14 
15 The complete package includes the C++ source code, which includes the
16 Protocol Compiler (protoc).  If you downloaded this package from PyPI
17 or some other Python-specific source, you may have received only the
18 Python part of the code.  In this case, you will need to obtain the
19 Protocol Compiler from some other source before you can use this
20 package.
21 
22 Development Warning
23 ===================
24 
25 The Python implementation of Protocol Buffers is not as mature as the C++
26 and Java implementations.  It may be more buggy, and it is known to be
27 pretty slow at this time.  If you would like to help fix these issues,
28 join the Protocol Buffers discussion list and let us know!
29 
30 Installation
31 ============
32 
33 1) Make sure you have Python 2.6 or newer.  If in doubt, run:
34 
35      $ python -V
36 
37 2) If you do not have setuptools installed, note that it will be
38    downloaded and installed automatically as soon as you run setup.py.
39    If you would rather install it manually, you may do so by following
40    the instructions on this page:
41 
42      https://packaging.python.org/en/latest/installing.html#setup-for-installing-packages
43 
44 3) Build the C++ code, or install a binary distribution of protoc.  If
45    you install a binary distribution, make sure that it is the same
46    version as this package.  If in doubt, run:
47 
48      $ protoc --version
49 
50 4) Build and run the tests:
51 
52      $ python setup.py build
53      $ python setup.py test
54 
55      To build, test, and use the C++ implementation, you must first compile
56      libprotobuf.so:
57 
58      $ (cd .. && make)
59 
60      On OS X:
61 
62       If you are running a homebrew-provided python, you must make sure another
63       version of protobuf is not already installed, as homebrew's python will
64       search /usr/local/lib for libprotobuf.so before it searches ../src/.libs
65       You can either unlink homebrew's protobuf or install the libprotobuf you
66       built earlier:
67 
68       $ brew unlink protobuf
69       or
70       $ (cd .. && make install)
71 
72      On other *nix:
73 
74       You must make libprotobuf.so dynamically available. You can either
75       install libprotobuf you built earlier, or set LD_LIBRARY_PATH:
76 
77       $ export LD_LIBRARY_PATH=../src/.libs
78       or
79       $ (cd .. && make install)
80 
81      To build the C++ implementation run:
82      $ python setup.py build --cpp_implementation
83 
84      Then run the tests like so:
85      $ python setup.py test --cpp_implementation
86 
87    If some tests fail, this library may not work correctly on your
88    system.  Continue at your own risk.
89 
90    Please note that there is a known problem with some versions of
91    Python on Cygwin which causes the tests to fail after printing the
92    error:  "sem_init: Resource temporarily unavailable".  This appears
93    to be a bug either in Cygwin or in Python:
94      http://www.cygwin.com/ml/cygwin/2005-07/msg01378.html
95    We do not know if or when it might me fixed.  We also do not know
96    how likely it is that this bug will affect users in practice.
97 
98 5) Install:
99 
100     $ python setup.py install
101 
102   or:
103 
104     $ (cd .. && make install)
105     $ python setup.py install --cpp_implementation
106 
107    This step may require superuser privileges.
108    NOTE: To use C++ implementation, you need to export an environment
109    variable before running your program.  See the "C++ Implementation"
110    section below for more details.
111 
112 Usage
113 =====
114 
115 The complete documentation for Protocol Buffers is available via the
116 web at:
117 
118   https://developers.google.com/protocol-buffers/
119 
120 C++ Implementation
121 ==================
122 
123 The C++ implementation for Python messages is built as a Python extension to
124 improve the overall protobuf Python performance.
125 
126 To use the C++ implementation, you need to install the C++ protobuf runtime
127 library, please see instructions in the parent directory.
128