Un-namespace Python packages

Setuptools was updated and our hacky namespace-package-chickens came
back to roost. This removes the unsupported namespace package hacks.
pull/9079/head
Masood Malekghassemi 8 years ago
parent 30492b90a3
commit 7ba3527ffe
  1. 2
      examples/python/multiplex/run_codegen.py
  2. 2
      examples/python/route_guide/run_codegen.py
  3. 30
      src/python/grpcio_health_checking/grpc/__init__.py
  4. 0
      src/python/grpcio_health_checking/grpc_health/__init__.py
  5. 0
      src/python/grpcio_health_checking/grpc_health/v1/__init__.py
  6. 2
      src/python/grpcio_health_checking/grpc_health/v1/health.py
  7. 4
      src/python/grpcio_health_checking/health_commands.py
  8. 1
      src/python/grpcio_health_checking/setup.py
  9. 4
      src/python/grpcio_tests/commands.py
  10. 4
      src/python/grpcio_tests/setup.py
  11. 6
      src/python/grpcio_tests/tests/health_check/_health_servicer_test.py
  12. 2
      src/python/grpcio_tests/tests/protoc_plugin/_split_definitions_test.py
  13. 30
      tools/distrib/python/grpcio_tools/grpc/__init__.py
  14. 0
      tools/distrib/python/grpcio_tools/grpc_tools/__init__.py
  15. 2
      tools/distrib/python/grpcio_tools/grpc_tools/_protoc_compiler.pyx
  16. 2
      tools/distrib/python/grpcio_tools/grpc_tools/command.py
  17. 2
      tools/distrib/python/grpcio_tools/grpc_tools/main.cc
  18. 0
      tools/distrib/python/grpcio_tools/grpc_tools/main.h
  19. 2
      tools/distrib/python/grpcio_tools/grpc_tools/protoc.py
  20. 9
      tools/distrib/python/grpcio_tools/setup.py

@ -29,7 +29,7 @@
"""Generates protocol messages and gRPC stubs."""
from grpc.tools import protoc
from grpc_tools import protoc
protoc.main(
(

@ -29,7 +29,7 @@
"""Runs protoc with the gRPC plugin to generate messages and gRPC stubs."""
from grpc.tools import protoc
from grpc_tools import protoc
protoc.main(
(

@ -1,30 +0,0 @@
# Copyright 2015, Google Inc.
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are
# met:
#
# * Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
# * Redistributions in binary form must reproduce the above
# copyright notice, this list of conditions and the following disclaimer
# in the documentation and/or other materials provided with the
# distribution.
# * Neither the name of Google Inc. nor the names of its
# contributors may be used to endorse or promote products derived from
# this software without specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
__import__('pkg_resources').declare_namespace(__name__)

@ -33,7 +33,7 @@ import threading
import grpc
from grpc.health.v1 import health_pb2
from grpc_health.v1 import health_pb2
class HealthServicer(health_pb2.HealthServicer):

@ -54,7 +54,7 @@ class CopyProtoModules(setuptools.Command):
if os.path.isfile(HEALTH_PROTO):
shutil.copyfile(
HEALTH_PROTO,
os.path.join(ROOT_DIR, 'grpc/health/v1/health.proto'))
os.path.join(ROOT_DIR, 'grpc_health/v1/health.proto'))
class BuildPackageProtos(setuptools.Command):
@ -74,5 +74,5 @@ class BuildPackageProtos(setuptools.Command):
# directory is provided as an 'include' directory. We assume it's the '' key
# to `self.distribution.package_dir` (and get a key error if it's not
# there).
from grpc.tools import command
from grpc_tools import command
command.build_package_protos(self.distribution.package_dir[''])

@ -66,7 +66,6 @@ setuptools.setup(
license='3-clause BSD',
package_dir=PACKAGE_DIRECTORIES,
packages=setuptools.find_packages('.'),
namespace_packages=['grpc'],
install_requires=INSTALL_REQUIRES,
setup_requires=SETUP_REQUIRES,
cmdclass=COMMAND_CLASS

@ -100,7 +100,7 @@ class BuildProtoModules(setuptools.Command):
pass
def run(self):
import grpc.tools.protoc as protoc
import grpc_tools.protoc as protoc
include_regex = re.compile(self.include)
exclude_regex = re.compile(self.exclude) if self.exclude else None
@ -116,7 +116,7 @@ class BuildProtoModules(setuptools.Command):
# but we currently have name conflicts in src/proto
for path in paths:
command = [
'grpc.tools.protoc',
'grpc_tools.protoc',
'-I {}'.format(PROTO_STEM),
'--python_out={}'.format(PROTO_STEM),
'--grpc_python_out={}'.format(PROTO_STEM),

@ -35,7 +35,7 @@ import sys
import setuptools
import grpc.tools.command
import grpc_tools.command
PY3 = sys.version_info.major == 3
@ -68,7 +68,7 @@ COMMAND_CLASS = {
# Run `preprocess` *before* doing any packaging!
'preprocess': commands.GatherProto,
'build_package_protos': grpc.tools.command.BuildPackageProtos,
'build_package_protos': grpc_tools.command.BuildPackageProtos,
'build_py': commands.BuildPy,
'run_interop': commands.RunInterop,
'test_lite': commands.TestLite

@ -27,14 +27,14 @@
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
"""Tests of grpc.health.v1.health."""
"""Tests of grpc_health.v1.health."""
import unittest
import grpc
from grpc.framework.foundation import logging_pool
from grpc.health.v1 import health
from grpc.health.v1 import health_pb2
from grpc_health.v1 import health
from grpc_health.v1 import health_pb2
from tests.unit.framework.common import test_constants

@ -44,7 +44,7 @@ import threading
import unittest
import grpc
from grpc.tools import protoc
from grpc_tools import protoc
from tests.unit.framework.common import test_constants
_MESSAGES_IMPORT = b'import "messages.proto";'

@ -1,30 +0,0 @@
# Copyright 2016, Google Inc.
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are
# met:
#
# * Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
# * Redistributions in binary form must reproduce the above
# copyright notice, this list of conditions and the following disclaimer
# in the documentation and/or other materials provided with the
# distribution.
# * Neither the name of Google Inc. nor the names of its
# contributors may be used to endorse or promote products derived from
# this software without specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
__import__('pkg_resources').declare_namespace(__name__)

@ -29,7 +29,7 @@
from libc cimport stdlib
cdef extern from "grpc/tools/main.h":
cdef extern from "grpc_tools/main.h":
int protoc_main(int argc, char *argv[])
def run_main(list args not None):

@ -32,7 +32,7 @@ import sys
import setuptools
from grpc.tools import protoc
from grpc_tools import protoc
def build_package_protos(package_root):

@ -32,7 +32,7 @@
#include "src/compiler/python_generator.h"
#include "grpc/tools/main.h"
#include "grpc_tools/main.h"
int protoc_main(int argc, char* argv[]) {
google::protobuf::compiler::CommandLineInterface cli;

@ -32,7 +32,7 @@
import pkg_resources
import sys
from grpc.tools import _protoc_compiler
from grpc_tools import _protoc_compiler
def main(command_arguments):
"""Run the protocol buffer compiler with the given command-line arguments.

@ -103,7 +103,7 @@ PROTO_FILES = [
CC_INCLUDE = os.path.normpath(protoc_lib_deps.CC_INCLUDE)
PROTO_INCLUDE = os.path.normpath(protoc_lib_deps.PROTO_INCLUDE)
GRPC_PYTHON_TOOLS_PACKAGE = 'grpc.tools'
GRPC_PYTHON_TOOLS_PACKAGE = 'grpc_tools'
GRPC_PYTHON_PROTO_RESOURCES_NAME = '_proto'
DEFINE_MACROS = ()
@ -149,14 +149,14 @@ def package_data():
def protoc_ext_module():
plugin_sources = [
os.path.join('grpc', 'tools', 'main.cc'),
os.path.join('grpc_tools', 'main.cc'),
os.path.join('grpc_root', 'src', 'compiler', 'python_generator.cc')] + [
os.path.join(CC_INCLUDE, cc_file)
for cc_file in CC_FILES]
plugin_ext = extension.Extension(
name='grpc.tools._protoc_compiler',
name='grpc_tools._protoc_compiler',
sources=(
[os.path.join('grpc', 'tools', '_protoc_compiler.pyx')] +
[os.path.join('grpc_tools', '_protoc_compiler.pyx')] +
plugin_sources),
include_dirs=[
'.',
@ -183,7 +183,6 @@ setuptools.setup(
protoc_ext_module(),
]),
packages=setuptools.find_packages('.'),
namespace_packages=['grpc'],
install_requires=[
'protobuf>=3.0.0',
'grpcio>={version}'.format(version=grpc_version.VERSION),

Loading…
Cancel
Save