gr8pc: A High-Level gRPC Wrapper for python
Project description
gr8pc: A High-Level gRPC Wrapper for python
This library is a direct adaptation of py-grpcio, featuring a few modifications and tailored customizations. Depending on your needs, you may find the original repository better suited to your requirements and preferred practices.
Background and Motivation
As noted before, gr8pc is an adaptation of the py-grpcio library, with a few key modifications:
- Python 3.11 Compatibility: This library is compatible with Python 3.11 (the original library demands >=3.12).
- Separation between Logic and Protobuf file Generation:
gr8pcsplits into two subprojects: one for the core server and client logic, and another (optional) CLI tool for.protofile generation. This design decision was made to make the dependency onjinjanot necessary for the core library. In other words, the core library won't generate.protofiles during runtime and will raise an error if it can't find them. The.protofile must be generated at development time using the CLI tool.
Installation
pip install gr8pc
To install the optional CLI:
pip install gr8gen
Usage
For usage documentation, please refer to the original py-grpcio repository.
Proto Generation Tool
$ gr8gen --help
usage: gr8gen [-h] [--version] [-o OUT] -s SVCS [SVCS ...]
A CLI tool for processing paths and services.
options:
-h, --help show this help message and exit
--version show program's version number and exit
-o OUT, --out OUT Path for output. Must be an existing or new directory. (default: ./proto)
-s SVCS [SVCS ...], --svcs SVCS [SVCS ...]
Python-like import path(s) for service(s). Example: 'path.to.class.Class'. (default: None)
The gr8gen tool generates the necessary .proto file. Usage:
gr8gen --output /path/to/proto/folder --service path.to.service.Service path.to.another.service.AnotherService
Acknowledgments
This library is derived directly from the py-grpcio package, maintaining much of the original
structure and functionality.
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
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file gr8pc-0.2.0.tar.gz.
File metadata
- Download URL: gr8pc-0.2.0.tar.gz
- Upload date:
- Size: 11.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.9.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
28222bc1adad7c561f87c32c094aafab2021400198ce86f9a1f295efa2391274
|
|
| MD5 |
db219eca7a12c45ed72bb0f2f73b4761
|
|
| BLAKE2b-256 |
9a81b3496e171927cf4809dc15e5d55571af7c4256c51c49e34d9d867976071f
|
File details
Details for the file gr8pc-0.2.0-py3-none-any.whl.
File metadata
- Download URL: gr8pc-0.2.0-py3-none-any.whl
- Upload date:
- Size: 16.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.9.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
23c4b7b8b1f97b4760d881a76d757ba20bbf79b0001f0d98312387f034196dc9
|
|
| MD5 |
52bfc0ccb85234cd7a45bf16703e8bfe
|
|
| BLAKE2b-256 |
233226aaa075a5ef8dbd741b18627ab54d61623b1d7c2c45836c8d6a9b9be761
|