[Pkg-protobuf-devel] python3-protobuf

Jonathon Love jon at thon.love
Fri Sep 2 11:48:30 UTC 2016


hi folks,

attached is a pair of patches which add support for python 3 to the 
protobuf package.

the latter fix i have submitted to upstream:

https://github.com/google/protobuf/pull/2047

let me know if you think i should do it differently

with thanks

jonathon

-------------- next part --------------
diff --git a/debian/control b/debian/control
index 7e73b8c..06ed52b 100644
--- a/debian/control
+++ b/debian/control
@@ -22,6 +22,10 @@ Build-Depends:
  , libpython-all-dev (>= 2.7)
  , python-setuptools
  , python-google-apputils
+ , python3-all
+ , libpython3-all-dev
+ , python3-setuptools
+ , python3-google-apputils
 # Manpage generator
  , xmlto
 # Tests
@@ -36,6 +40,7 @@ Homepage: https://github.com/google/protobuf/
 Vcs-Browser: https://anonscm.debian.org/cgit/pkg-protobuf/pkg-protobuf.git
 Vcs-Git: https://anonscm.debian.org/git/pkg-protobuf/pkg-protobuf.git
 X-Python-Version: >= 2.7
+X-Python3-Version: >= 3.2

 Package: libprotobuf10
 Architecture: any
@@ -164,7 +169,28 @@ Package: python-protobuf
 Architecture: any
 Section: python
 Depends: ${shlibs:Depends}, ${python:Depends}, ${misc:Depends}
-Description: Python bindings for protocol buffers
+Description: Python bindings for protocol buffers (Python 2)
+ Protocol buffers are a flexible, efficient, automated mechanism for
+ serializing structured data - similar to XML, but smaller, faster, and
+ simpler. You define how you want your data to be structured once, then you can
+ use special generated source code to easily write and read your structured
+ data to and from a variety of data streams and using a variety of languages.
+ You can even update your data structure without breaking deployed programs
+ that are compiled against the "old" format.
+ .
+ Google uses Protocol Buffers for almost all of its internal RPC protocols and
+ file formats.
+ .
+ This package contains the Python bindings for the protocol buffers. You will
+ need the protoc tool (in the protobuf-compiler package) to compile your
+ definition to Python classes, and then the modules in this package will allow
+ you to use those classes in your programs.
+
+Package: python3-protobuf
+Architecture: any
+Section: python
+Depends: ${shlibs:Depends}, ${python3:Depends}, ${misc:Depends}
+Description: Python bindings for protocol buffers (Python 3)
  Protocol buffers are a flexible, efficient, automated mechanism for
  serializing structured data - similar to XML, but smaller, faster, and
  simpler. You define how you want your data to be structured once, then you can
-------------- next part --------------
--- a/python/google/protobuf/internal/reflection_test.py
+++ b/python/google/protobuf/internal/reflection_test.py
@@ -636,7 +636,7 @@
     if struct.calcsize('L') == 4:
       # Python only has signed ints, so 32-bit python can't fit an uint32
       # in an int.
-      TestGetAndDeserialize('optional_uint32', 1 << 31, long)
+      TestGetAndDeserialize('optional_uint32', 1 << 31, integer_64)
     else:
       # 64-bit python can fit uint32 inside an int
       TestGetAndDeserialize('optional_uint32', 1 << 31, int)


More information about the Pkg-protobuf-devel mailing list