This causes these tests to fail for me locally, because I have an older google.protobuf package installed. The tests should use the one in third_party instead:
[dsansome@dsansome-z840 (roll-infra-libs) ~/cr/i/infra/luci] /usr/local/google/home/dsansome/cr/i/infra/luci/appengine/swarming/swarming_bot/bot_code/bot_main_test.py
Traceback (most recent call last):
File "/usr/local/google/home/dsansome/cr/i/infra/luci/appengine/swarming/swarming_bot/bot_code/bot_main_test.py", line 23, in <module>
import bot_main
File "/usr/local/google/home/dsansome/cr/i/infra/luci/appengine/swarming/swarming_bot/bot_code/bot_main.py", line 44, in <module>
from infra_libs import ts_mon
File "/usr/local/google/home/dsansome/cr/i/infra/luci/client/third_party/infra_libs/__init__.py", line 5, in <module>
from . import ts_mon # Must be imported first so httplib2_utils can import it.
File "/usr/local/google/home/dsansome/cr/i/infra/luci/client/third_party/infra_libs/ts_mon/__init__.py", line 5, in <module>
from infra_libs.ts_mon.config import add_argparse_options
File "/usr/local/google/home/dsansome/cr/i/infra/luci/client/third_party/infra_libs/ts_mon/config.py", line 15, in <module>
from infra_libs.ts_mon.common import interface
File "/usr/local/google/home/dsansome/cr/i/infra/luci/client/third_party/infra_libs/ts_mon/common/interface.py", line 43, in <module>
from infra_libs.ts_mon.protos.current import metrics_pb2
File "/usr/local/google/home/dsansome/cr/i/infra/luci/client/third_party/infra_libs/ts_mon/protos/current/metrics_pb2.py", line 9, in <module>
from google.protobuf import symbol_database as _symbol_database
ImportError: cannot import name symbol_database
[dsansome@dsansome-z840 (roll-infra-libs) ~/cr/i/infra/luci] dpkg -L python-protobuf
/.
/usr
/usr/lib
/usr/lib/python2.7
/usr/lib/python2.7/dist-packages
/usr/lib/python2.7/dist-packages/google
/usr/lib/python2.7/dist-packages/google/protobuf
/usr/lib/python2.7/dist-packages/google/protobuf/__init__.py
/usr/lib/python2.7/dist-packages/google/protobuf/service.py
/usr/lib/python2.7/dist-packages/google/protobuf/message.py
/usr/lib/python2.7/dist-packages/google/protobuf/descriptor.py
/usr/lib/python2.7/dist-packages/google/protobuf/message_factory.py
/usr/lib/python2.7/dist-packages/google/protobuf/compiler
/usr/lib/python2.7/dist-packages/google/protobuf/compiler/__init__.py
/usr/lib/python2.7/dist-packages/google/protobuf/compiler/plugin_pb2.py
/usr/lib/python2.7/dist-packages/google/protobuf/descriptor_database.py
/usr/lib/python2.7/dist-packages/google/protobuf/service_reflection.py
/usr/lib/python2.7/dist-packages/google/protobuf/reflection.py
/usr/lib/python2.7/dist-packages/google/protobuf/text_format.py
/usr/lib/python2.7/dist-packages/google/protobuf/internal
/usr/lib/python2.7/dist-packages/google/protobuf/internal/decoder.py
/usr/lib/python2.7/dist-packages/google/protobuf/internal/api_implementation.py
/usr/lib/python2.7/dist-packages/google/protobuf/internal/containers.py
/usr/lib/python2.7/dist-packages/google/protobuf/internal/__init__.py
/usr/lib/python2.7/dist-packages/google/protobuf/internal/enum_type_wrapper.py
/usr/lib/python2.7/dist-packages/google/protobuf/internal/message_listener.py
/usr/lib/python2.7/dist-packages/google/protobuf/internal/wire_format.py
/usr/lib/python2.7/dist-packages/google/protobuf/internal/python_message.py
/usr/lib/python2.7/dist-packages/google/protobuf/internal/encoder.py
/usr/lib/python2.7/dist-packages/google/protobuf/internal/type_checkers.py
/usr/lib/python2.7/dist-packages/google/protobuf/descriptor_pool.py
/usr/lib/python2.7/dist-packages/google/protobuf/descriptor_pb2.py
/usr/lib/python2.7/dist-packages/protobuf-2.5.0.egg-info
/usr/lib/python2.7/dist-packages/protobuf-2.5.0.egg-info/dependency_links.txt
/usr/lib/python2.7/dist-packages/protobuf-2.5.0.egg-info/namespace_packages.txt
/usr/lib/python2.7/dist-packages/protobuf-2.5.0.egg-info/PKG-INFO
/usr/lib/python2.7/dist-packages/protobuf-2.5.0.egg-info/requires.txt
/usr/lib/python2.7/dist-packages/protobuf-2.5.0.egg-info/top_level.txt
/usr/share
/usr/share/python
/usr/share/python/ns
/usr/share/python/ns/python-protobuf
/usr/share/doc
/usr/share/doc/python-protobuf
/usr/share/doc/python-protobuf/README.Debian
/usr/share/doc/python-protobuf/changelog.Debian.gz
/usr/share/doc/python-protobuf/copyright
[dsansome@dsansome-z840 (roll-infra-libs) ~/cr/i/infra/luci] dpkg -l python-protobuf | tail -n 1
ii python-protobuf 2.5.0-9ubuntu1 all Python bindings for protocol buffers
[dsansome@dsansome-z840 (roll-infra-libs) ~/cr/i/infra/luci] find -name symbol_database.py
./client/third_party/google/protobuf/symbol_database.py
Comment 1 by bugdroid1@chromium.org
, Mar 24 2017