No project description provided
Project description
protobuf_grpc_distutils
This package enables gRPC protobuf definitions to be installed via pip install
. This project takes
inspiration from protobuf-distutils
and protobuf-custom-build.
Background
When trying to package the auto-generated protobuf Python files, you quickly run into an issue regarding how the Python modules are imported. There are various ways to work around the issue as detailed in that thread. This package assumes that the proto files are structured in a hierarchy that directly maps to your required Python package hierarchy. See the example below.
Usage
In order to use this package, it must be added to the build requirements of your target Python package. A custom build step can then be added
to auto-generate the protobuf and gRPC Python modules when you pip install
your package.
The difference to the protobuf-distutils
package is that instead of looking for the protoc
compiler, it depends on the grpcio-tools
package which provides grpc_tools.protoc
. Otherwise, the same options are passed to the generate_grpc_py_protobufs
method in your setup.py
.
from setuptools import setup
setup(
# ...
name='example_project',
# Require this package, but only for setup (not installation):
setup_requires=['protobuf_grpc_distutils'],
options={
# See below for details.
'generate_grpc_py_protobufs': {
'source_dir': 'path/to/protos',
'extra_proto_paths': ['path/to/other/project/protos'],
'output_dir': 'path/to/project/sources', # default '.'
'proto_files': ['relative/path/to/just_this_file.proto'],
},
},
)
Example
An example project is provided at https://github.com/idex-biometrics/protobuf-grpc-distutils-example.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file protobuf-grpc-distutils-0.1.5.tar.gz
.
File metadata
- Download URL: protobuf-grpc-distutils-0.1.5.tar.gz
- Upload date:
- Size: 5.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.11.1
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0c1b680f4bc71e3cd87808384bb5010c4a9afb899956608979d0c524dd4e4bdd |
|
MD5 | f3d35bbc8165c867f56ad3fb993e3583 |
|
BLAKE2b-256 | 582020dd3621d6482f16db111d4a328cfdf583446c2de19283f842f4fab2b93a |
File details
Details for the file protobuf_grpc_distutils-0.1.5-py3-none-any.whl
.
File metadata
- Download URL: protobuf_grpc_distutils-0.1.5-py3-none-any.whl
- Upload date:
- Size: 6.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.11.1
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 67a7fdace30c2dece27244a8bcf93b19fad4b54d6351148226ec8327bd18e0a4 |
|
MD5 | 95510ab01119dee755d8c5eaf4d45b72 |
|
BLAKE2b-256 | 5e7dcb881c199980cc3515c72e0aaade8897b9a4709366baff7f86a225e01689 |