touch-packages team mailing list archive
-
touch-packages team
-
Mailing list archive
-
Message #39079
[Bug 1275826] Re: Version 2.5.0-5ubuntu1 breaks python code using the cpp module
This appears to have been fixed properly with the new C++-based module
in 2.6.0. I've just synced that (actually 2.6.1-1) into vivid after
checking that all our other remaining patches are obsolete.
** Changed in: protobuf (Ubuntu)
Status: Triaged => Fix Released
--
You received this bug notification because you are a member of Ubuntu
Touch seeded packages, which is subscribed to protobuf in Ubuntu.
https://bugs.launchpad.net/bugs/1275826
Title:
Version 2.5.0-5ubuntu1 breaks python code using the cpp module
Status in Ubuntu One storage protocol:
Fix Committed
Status in protobuf package in Ubuntu:
Fix Released
Status in ubuntuone-storage-protocol package in Ubuntu:
Fix Released
Status in protobuf source package in Trusty:
Triaged
Status in ubuntuone-storage-protocol source package in Trusty:
Fix Released
Bug description:
The 2.5.0-5ubuntu1 upload in proposed includes the following change:
* python-protobuf: switch back to the pure Python implementation, as
upstream appears to no longer be maintaining the current C++ based Python
binding. See the following upstream issues for details:
- https://code.google.com/p/protobuf/issues/detail?id=434
- https://code.google.com/p/protobuf/issues/detail?id=503
However, the cpp_message.py is still included, and tries to import the
C++ based module which no longer exists, which results in the
following failure in the ubuntuone-storage-protocol tests:
Traceback (most recent call last):
File "/usr/bin/u1trial", line 40, in <module>
main()
File "/usr/lib/python2.7/dist-packages/ubuntuone-dev-tools/ubuntuone/devtools/runners/__init__.py", line 277, in main
suite = test_runner.get_suite(options)
File "/usr/lib/python2.7/dist-packages/ubuntuone-dev-tools/ubuntuone/devtools/runners/__init__.py", line 173, in get_suite
config['ignore-paths']))
File "/usr/lib/python2.7/dist-packages/ubuntuone-dev-tools/ubuntuone/devtools/runners/__init__.py", line 157, in _collect_tests
module_suite = self._load_unittest(filepath)
File "/usr/lib/python2.7/dist-packages/ubuntuone-dev-tools/ubuntuone/devtools/runners/__init__.py", line 98, in _load_unittest
module = __import__(modpath, None, None, [""])
File "/tmp/adt-run.i9ormp/dsc0-build/ubuntuone-storage-protocol-13.10/tests/test_bytesproducer.py", line 42, in <module>
from ubuntuone.storageprotocol import client, protocol_pb2
File "/tmp/adt-run.i9ormp/dsc0-build/ubuntuone-storage-protocol-13.10/ubuntuone/storageprotocol/client.py", line 51, in <module>
from ubuntuone.storageprotocol import (
File "/tmp/adt-run.i9ormp/dsc0-build/ubuntuone-storage-protocol-13.10/ubuntuone/storageprotocol/delta.py", line 35, in <module>
from ubuntuone.storageprotocol import protocol_pb2
File "/tmp/adt-run.i9ormp/dsc0-build/ubuntuone-storage-protocol-13.10/ubuntuone/storageprotocol/protocol_pb2.py", line 4, in <module>
from google.protobuf import descriptor as _descriptor
File "/usr/lib/python2.7/dist-packages/google/protobuf/descriptor.py", line 45, in <module>
from google.protobuf.internal import cpp_message
File "/usr/lib/python2.7/dist-packages/google/protobuf/internal/cpp_message.py", line 39, in <module>
from google.protobuf.internal import _net_proto2___python
ImportError: cannot import name _net_proto2___python
make[1]: *** [override_dh_auto_test] Error 1
It seems like this python module should instead issue a
DeprecationWarning and fall back to using the pure python
implementation, whilst code which uses the cpp module in some way,
transitions over to the pure python implementation.
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntuone-storage-protocol/+bug/1275826/+subscriptions