Package: ola Version: 0.10.7.nojsmin-1 Severity: important Tags: patch User: ubuntu-de...@lists.ubuntu.com Usertags: origin-ubuntu disco ubuntu-patch
Dear maintainers, In Ubuntu, we found that reverse-dependencies of python-protobuf were failing their autopkgtests after the update to protobuf 3.6.1. The reason for this is that building against a particular version of protobuf results in a runtime dependency on a matching version of python-protobuf, but this is not expressed in the Depends: field, which only declares an unversioned dependency on python-protobuf: autopkgtest [22:25:39]: test command2: [----------------------- Traceback (most recent call last): File "/usr/bin/rdm_responder_test.py", line 19, in <module> from ola.testing.rdm import TestDefinitions, TestRunner File "/usr/lib/python2.7/dist-packages/ola/testing/rdm/TestDefinitions.py", line 21, in <module> from ExpectedResults import (AckGetResult, BroadcastResult, NackGetResult, File "/usr/lib/python2.7/dist-packages/ola/testing/rdm/ExpectedResults.py", line 33, in <module> from ola.OlaClient import OlaClient File "/usr/lib/python2.7/dist-packages/ola/OlaClient.py", line 21, in <module> from ola.rpc.StreamRpcChannel import StreamRpcChannel File "/usr/lib/python2.7/dist-packages/ola/rpc/StreamRpcChannel.py", line 21, in <module> from ola.rpc import Rpc_pb2 File "/usr/lib/python2.7/dist-packages/ola/rpc/Rpc_pb2.py", line 23, in <module> serialized_pb=_b('\n\tRpc.proto\x12\x07ola.rpc\"S\n\nRpcMessage\x12\x1b\n\x04type\x18\x01 \x02(\x0e\x32\r.ola.rpc.Type\x12\n\n\x02id\x18\x02 \x01(\r\x12\x0c\n\x04name\x18\x03 \x01(\t\x12\x0e\n\x06\x62uffer\x18\x04 \x01(\x0c*\xd2\x01\n\x04Type\x12\x0b\n\x07REQUEST\x10\x01\x12\x0c\n\x08RESPONSE\x10\x02\x12\x13\n\x0fRESPONSE_CANCEL\x10\x03\x12\x13\n\x0fRESPONSE_FAILED\x10\x04\x12\x1c\n\x18RESPONSE_NOT_IMPLEMENTED\x10\x05\x12\x0e\n\nDISCONNECT\x10\x06\x12\x16\n\x12\x44\x45SCRIPTOR_REQUEST\x10\x07\x12\x17\n\x13\x44\x45SCRIPTOR_RESPONSE\x10\x08\x12\x12\n\x0eREQUEST_CANCEL\x10\t\x12\x12\n\x0eSTREAM_REQUEST\x10\n') TypeError: __new__() got an unexpected keyword argument 'serialized_options' autopkgtest [22:25:40]: test command2: -----------------------] autopkgtest [22:25:41]: test command2: - - - - - - - - - - results - - - - - - - - - - command2 FAIL non-zero exit status 1 (http://autopkgtest.ubuntu.com/packages/o/ola/disco/ppc64el) This is a real bug in the runtime dependencies that is being detected via the autopkgtest. I don't know why this failure never showed up in the autopkgtest results in Deian. I've uploaded the attached patch to ola to Ubuntu, to force a matching versioned dependency and build-dependency; however, it might be better to work with the protobuf maintainers to find a more complete solution for the runtime breakage. -- Steve Langasek Give me a lever long enough and a Free OS Debian Developer to set it on, and I can move the world. Ubuntu Developer https://www.debian.org/ slanga...@ubuntu.com vor...@debian.org
diff -Nru ola-0.10.7.nojsmin/debian/control ola-0.10.7.nojsmin/debian/control --- ola-0.10.7.nojsmin/debian/control 2018-09-07 06:18:11.000000000 -0700 +++ ola-0.10.7.nojsmin/debian/control 2018-11-13 23:12:51.000000000 -0800 @@ -2,7 +2,7 @@ Priority: optional Maintainer: Wouter Verhelst <wou...@debian.org> Uploaders: RenZO <re...@imaginux.com> -Build-Depends: debhelper (>= 9), autotools-dev, dh-autoreconf, bash-completion, libcppunit-dev, bison, flex, pkg-config, uuid-dev, python, python-protobuf, libprotobuf-dev, protobuf-compiler, libprotoc-dev, libusb-1.0-0-dev, libftdi1-dev, liblo-dev, libmicrohttpd-dev (>= 0.9.44+dfsg-1), libncurses5-dev, libavahi-client-dev, python-numpy +Build-Depends: debhelper (>= 9), autotools-dev, dh-autoreconf, bash-completion, libcppunit-dev, bison, flex, pkg-config, uuid-dev, python, python-protobuf (>= 3.6.1~), libprotobuf-dev, protobuf-compiler, libprotoc-dev, libusb-1.0-0-dev, libftdi1-dev, liblo-dev, libmicrohttpd-dev (>= 0.9.44+dfsg-1), libncurses5-dev, libavahi-client-dev, python-numpy Standards-Version: 3.9.8 Section: libs Vcs-Git: https://salsa.debian.org/wouter/ola @@ -28,7 +28,7 @@ Package: ola-python Section: libs Architecture: all -Depends: ola (>= ${source:Version}), ola (<< ${source:Version}.~), ${python:Depends}, ${misc:Depends}, python-protobuf +Depends: ola (>= ${source:Version}), ola (<< ${source:Version}.~), ${python:Depends}, ${misc:Depends}, python-protobuf (>= 3.6.1~) Description: Open Lighting Architecture - Python Classes The DMX512 standard for Digital MultipleX is used for digital communication networks commonly used to control stage lighting and