diff options
author | Calder Coalson <caldercoalson@gmail.com> | 2018-05-21 15:33:43 -0700 |
---|---|---|
committer | Calder Coalson <caldercoalson@gmail.com> | 2018-05-22 20:19:28 -0700 |
commit | 142cbe0d57c6ad096d305c966f436bed8da90ded (patch) | |
tree | 858c6065df79dd422e71d9ad5cb291a224907e29 | |
parent | ce57cccef913681c4a2de1c7703a29135df38ba8 (diff) | |
download | protobuf-142cbe0d57c6ad096d305c966f436bed8da90ded.tar.gz protobuf-142cbe0d57c6ad096d305c966f436bed8da90ded.tar.bz2 protobuf-142cbe0d57c6ad096d305c966f436bed8da90ded.zip |
Declare 'google' namespace when importing Python protobuf via Bazel.
`python/google/__init__.py` declares the top-level 'google' namespace so that
`google.protobuf` can be imported alongside other Google Python modules like
`google.auth`.
This works well when installing protobuf via Pip, but the Bazel `//:python_srcs`
rule doesn't include this file in its `srcs`. Bazel implicitly creates an empty
`google/__init__.py`, which does *not* set up a namespace. The result is that
consuming Python protobuf via Bazel breaks all other Google Python libraries.
This fixes #4658.
-rw-r--r-- | BUILD | 1 |
1 files changed, 1 insertions, 0 deletions
@@ -640,6 +640,7 @@ py_library( name = "python_srcs", srcs = glob( [ + "python/google/__init__.py", "python/google/protobuf/*.py", "python/google/protobuf/**/*.py", ], |