Bug#844608: [Pkg-protobuf-devel] Bug#844608: Looking for sponsor for protobuf NMU

2016-11-28 Thread Robert Edmonds
László Böszörményi (GCS) wrote:
>  Found this, seems to be solvable. But next time I'll do test builds
> on several architectures before upload.

In the past I've found it easier to upload protobuf to experimental
first when testing FTBFS fixes, or just new upstream releases. There's
always the risk that something will break on an architecture that you
didn't test :-(

-- 
Robert Edmonds
edmo...@debian.org



Bug#844608: [Pkg-protobuf-devel] Bug#844608: Looking for sponsor for protobuf NMU

2016-11-25 Thread GCS
Hi,

On Fri, Nov 25, 2016 at 4:05 PM, lumin  wrote:
> It is now present in unstable. However the buildd status seems bad.
 Yes, seen that. :(

> ppc64el due to segfault during python2 test.
 Do you know any reason why it may happen?

> kfreebsd-* had never compiled protobuf since 3.x.x release.
 That's bad. I'd like to support kFreeBSD for Stretch, but don't think
I'll have time to really look into it. :(

> armel,armhf,hppa,i386,mips,mipsel,powerpc,x32 failed during python3 test due 
> to the same reason:
>
>   Traceback (most recent call last):
> File 
> "/«PKGBUILDDIR»/python3/google/protobuf/internal/reflection_test.py", line 
> 639, in testIntegerTypes
>   TestGetAndDeserialize('optional_uint32', 1 << 31, long)
>   NameError: name 'long' is not defined
>
> There is no "long" type in python3, so this is an upstream
> py2 -> py3 porting bug. See:
>
> https://github.com/google/protobuf/issues/1504
 Found this, seems to be solvable. But next time I'll do test builds
on several architectures before upload.

> I looked into protobuf's code at master branch and it seems to be solved:
>
> https://github.com/google/protobuf/blob/master/python/google/protobuf/internal/reflection_test.py#L658-L659
> https://github.com/google/protobuf/blob/master/python/google/protobuf/internal/reflection_test.py#L642-L645
 This should be the way, seems to be a natural try this and if doesn't
work then go with the safe default.

> Should we consider to cherry-pick the corresponding upstream commit to
> Debian's protobuf 3.0.0 package or, to import protobuf 3.1.0
> (maybe impossible due to transition freeze) ?
 As I understand, small transitions are still possible, that doesn't
affect too many packages. But to be honest, the 3.0 transition was big
enough and still not finished (see the kFreeBSD build problems). I do
_not_ want to risk having more problems with 3.1 so close to the full
freeze.

Regards,
Laszlo/GCS
PS: please don't Cc me, I'm subscribed to the list.



Bug#844608: [Pkg-protobuf-devel] Bug#844608: Looking for sponsor for protobuf NMU

2016-11-25 Thread lumin
On Thu, 2016-11-24 at 20:39 +0100, László Böszörményi (GCS) wrote:
>  Your changes seem to be correct. I plan to upload the attached diff
> in some hours if you don't mind.

It is now present in unstable. However the buildd status seems bad.

ppc64el due to segfault during python2 test.
kfreebsd-* had never compiled protobuf since 3.x.x release.

armel,armhf,hppa,i386,mips,mipsel,powerpc,x32 failed during python3 test due to 
the same reason:

  Traceback (most recent call last):
File "/«PKGBUILDDIR»/python3/google/protobuf/internal/reflection_test.py", 
line 639, in testIntegerTypes
  TestGetAndDeserialize('optional_uint32', 1 << 31, long)
  NameError: name 'long' is not defined

There is no "long" type in python3, so this is an upstream
py2 -> py3 porting bug. See:

https://github.com/google/protobuf/issues/1504

I looked into protobuf's code at master branch and it seems to be solved:

https://github.com/google/protobuf/blob/master/python/google/protobuf/internal/reflection_test.py#L658-L659
https://github.com/google/protobuf/blob/master/python/google/protobuf/internal/reflection_test.py#L642-L645

Should we consider to cherry-pick the corresponding upstream commit to
Debian's protobuf 3.0.0 package or, to import protobuf 3.1.0
(maybe impossible due to transition freeze) ?

[1] https://buildd.debian.org/status/logs.php?pkg=protobuf=3.0.0-8
[2] https://github.com/google/protobuf/releases



Bug#844608: [Pkg-protobuf-devel] Bug#844608: Looking for sponsor for protobuf NMU

2016-11-24 Thread lumin
On Thu, 2016-11-24 at 20:39 +0100, László Böszörményi (GCS) wrote:
> 
>  Your changes seem to be correct. I plan to upload the attached diff
> in some hours if you don't mind.

I see it in the NEW queue, thank you!



Bug#844608: [Pkg-protobuf-devel] Bug#844608: Looking for sponsor for protobuf NMU

2016-11-24 Thread GCS
Hi,

On Thu, Nov 24, 2016 at 4:01 PM, lumin  wrote:
> On Thu, 2016-11-24 at 14:37 +, Gianfranco Costamagna wrote:
>> I don't think it was a bad upload, because I used DoM to build and
>> test it.
>
> Thank you for confirmation. I checked the package at DoM and
> it is correct. So let's wait for maintainers' comments.
 Your changes seem to be correct. I plan to upload the attached diff
in some hours if you don't mind.

Thanks for your contribution,
Laszlo/GCS
diff -Nru protobuf-3.0.0/debian/changelog protobuf-3.0.0/debian/changelog
--- protobuf-3.0.0/debian/changelog	2016-09-02 06:57:13.0 +
+++ protobuf-3.0.0/debian/changelog	2016-11-24 17:33:28.0 +
@@ -1,3 +1,15 @@
+protobuf (3.0.0-8) unstable; urgency=medium
+
+  [ Zhou Mo  ]
+  * Build python3-protobuf, thanks to Thomas Viehmann (closes: #836821).
+  * Add the missing B-D "libgtest-dev" (closes: #836826).
+  * Add "python3-six" to B-D, which is required by python3 test.
+
+  [ Bart Martens  ]
+  * Generalize watch file.
+
+ -- Laszlo Boszormenyi (GCS)   Thu, 24 Nov 2016 17:33:28 +
+
 protobuf (3.0.0-7) unstable; urgency=medium
 
   * Team upload.
diff -Nru protobuf-3.0.0/debian/control protobuf-3.0.0/debian/control
--- protobuf-3.0.0/debian/control	2016-08-25 22:28:51.0 +
+++ protobuf-3.0.0/debian/control	2016-11-24 17:33:28.0 +
@@ -16,12 +16,17 @@
  , g++ (>= 4:4.7)
  , zlib1g-dev
  , google-mock
+ , libgtest-dev
 # Python
  , dh-python
  , python-all (>= 2.7)
  , libpython-all-dev (>= 2.7)
+ , python3-all (>= 3.3)
+ , libpython3-all-dev (>= 3.3)
  , python-setuptools
+ , python3-setuptools
  , python-google-apputils
+ , python3-six
 # Manpage generator
  , xmlto
 # Tests
@@ -180,6 +185,27 @@
  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 3 bindings for protocol buffers
+ 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 3 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: libprotobuf-java
 Architecture: all
diff -Nru protobuf-3.0.0/debian/copyright protobuf-3.0.0/debian/copyright
--- protobuf-3.0.0/debian/copyright	2016-08-22 05:30:23.0 +
+++ protobuf-3.0.0/debian/copyright	2016-11-24 17:33:28.0 +
@@ -51,6 +51,7 @@
 Copyright:
 2009  Dirk Eddelbuettel 
 2016  Dmitry Smirnov 
+2016  Laszlo Boszormenyi (GCS) 
 2009  Julien Cristau 
 2013-2014 Robert Edmonds 
 2008,2009,2010 Iustin Pop 
diff -Nru protobuf-3.0.0/debian/python-protobuf3.README.Debian protobuf-3.0.0/debian/python-protobuf3.README.Debian
--- protobuf-3.0.0/debian/python-protobuf3.README.Debian	1970-01-01 00:00:00.0 +
+++ protobuf-3.0.0/debian/python-protobuf3.README.Debian	2016-11-24 17:33:28.0 +
@@ -0,0 +1,11 @@
+C++ backend
+===
+
+As of protobuf 2.6.0, a new C++ backend for the Python protobuf bindings is
+available, which is faster than the default pure Python implementation. It can
+be activated by setting the following environment variables:
+
+PROTOCOL_BUFFERS_PYTHON_IMPLEMENTATION=cpp
+PROTOCOL_BUFFERS_PYTHON_IMPLEMENTATION_VERSION=2
+
+ -- Robert Edmonds   Thu, 28 Aug 2014 21:10:30 -0700
diff -Nru protobuf-3.0.0/debian/rules protobuf-3.0.0/debian/rules
--- protobuf-3.0.0/debian/rules	2016-08-25 00:28:25.0 +
+++ protobuf-3.0.0/debian/rules	2016-11-24 17:33:28.0 +
@@ -1,7 +1,8 @@
 #!/usr/bin/make -f
+# -*- makefile -*-
 
 %:
-	dh $@ --with autoreconf,python2 --parallel
+	dh $@ --with autoreconf,python2,python3 --parallel
 
 override_dh_auto_build-arch:
 ## Chicken<->Egg problem: protobuf requires self-generated .pb.go files to
@@ -14,8 +15,10 @@
 	# Generate the manpage.
 	xmlto man debian/protoc.xml
 
-	# Python build.
+	#