From 142cbe0d57c6ad096d305c966f436bed8da90ded Mon Sep 17 00:00:00 2001 From: Calder Coalson Date: Mon, 21 May 2018 15:33:43 -0700 Subject: 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. --- BUILD | 1 + 1 file changed, 1 insertion(+) (limited to 'BUILD') diff --git a/BUILD b/BUILD index 6c625832..0cc0e29f 100644 --- a/BUILD +++ b/BUILD @@ -640,6 +640,7 @@ py_library( name = "python_srcs", srcs = glob( [ + "python/google/__init__.py", "python/google/protobuf/*.py", "python/google/protobuf/**/*.py", ], -- cgit v1.2.3