| # Copyright 2025 gRPC authors. |
| # |
| # Licensed under the Apache License, Version 2.0 (the "License"); |
| # you may not use this file except in compliance with the License. |
| # You may obtain a copy of the License at |
| # |
| # http://www.apache.org/licenses/LICENSE-2.0 |
| # |
| # Unless required by applicable law or agreed to in writing, software |
| # distributed under the License is distributed on an "AS IS" BASIS, |
| # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| # See the License for the specific language governing permissions and |
| # limitations under the License. |
| |
| [build-system] |
| requires = [ |
| "setuptools>=77.0.1", |
| "wheel", |
| "cython==3.1.1" |
| ] |
| build-backend = "setuptools.build_meta" |
| |
| |
| [project] |
| name = "grpcio" |
| license = "Apache-2.0" |
| description = "HTTP/2-based RPC framework" |
| readme = {file = "src/python/grpcio/README.rst", content-type = "text/x-rst"} |
| authors = [{name = "The gRPC Authors", email = "grpc-io@googlegroups.com"}] |
| |
| dynamic = [ |
| "classifiers", |
| "dependencies", |
| "optional-dependencies", |
| "requires-python", |
| "version", |
| ] |
| |
| [project.urls] |
| Homepage = "https://grpc.io" |
| "Source Code" = "https://github.com/grpc/grpc" |
| "Bug Tracker" = "https://github.com/grpc/grpc/issues" |
| Documentation = "https://grpc.github.io/grpc/python" |
| |
| [tool.setuptools.dynamic] |
| version = {attr = "grpc_version.VERSION"} |
| |
| [tool.setuptools.packages.find] |
| where = ["src/python/grpcio"] |
| |
| [tool.setuptools.package-dir] |
| "" = "src/python/grpcio" |
| |
| [tool.setuptools.package-data] |
| # Binaries that may or may not be present in the final installation, but are |
| # mentioned here for completeness. |
| "grpc._cython" = [ |
| "_credentials/roots.pem", |
| "_windows/grpc_c.32.python", |
| "_windows/grpc_c.64.python", |
| ] |
| |
| [tool.setuptools.exclude-package-data] |
| # Exclude cython source and intermediate files from the .whl file |
| "*" = [ |
| "*.pyx", |
| "*.cpp", |
| "*.pxd", |
| "*.pxi", |
| ] |
| |
| [tool.pyright] |
| include = [ |
| "src/python/grpcio/grpc/aio/_channel.py", |
| "src/python/grpcio/grpc/aio/_interceptor.py", |
| "src/python/grpcio/grpc/aio/_base_channel.py", |
| "src/python/grpcio/grpc/aio/_call.py", |
| "src/python/grpcio/grpc/aio/_metadata.py", |
| "src/python/grpcio/grpc/aio/_base_server.py" |
| ] |
| |
| typeCheckingMode = "standard" |
| reportMissingTypeArgument = "error" |
| exclude = [ |
| "**/third_party", |
| "**/build", |
| "**/grpc_root", |
| "**/__pycache__", |
| "**/.git", |
| "**/bazel-*", |
| "src/python/grpcio/commands.py", |
| "src/python/grpcio/_spawn_patch.py" |
| ] |
| |
| [[tool.pyright.executionEnvironments]] |
| root = "src/python/grpcio" |
| |
| [[tool.pyright.executionEnvironments]] |
| root = "src/python/grpcio_tests" |
| extraPaths = ["src/python/grpcio"] |