Name | rgrpc JSON |
Version |
2023.11.12
JSON |
| download |
home_page | |
Summary | A simple to use Python gRPC Reflection Client |
upload_time | 2023-11-14 06:26:28 |
maintainer | |
docs_url | None |
author | |
requires_python | >=3.8 |
license | Apache 2.0 |
keywords |
client
grpc
reflection
|
VCS |
|
bugtrack_url |
|
requirements |
No requirements were recorded.
|
Travis-CI |
No Travis.
|
coveralls test coverage |
No coveralls.
|
# rgprc
[![Ruff](https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/astral-sh/ruff/main/assets/badge/v2.json)](https://github.com/astral-sh/ruff)
[![License](https://img.shields.io/badge/License-Apache_2.0-blue.svg)](https://opensource.org/licenses/Apache-2.0)
A simple to use, reflection only - grpc client.
## Features
- Make GRPC calls against reflection enabled servers
## How to install
``` shell
pip install rgrpc
```
## How to use
``` python
try:
rgrpc_client = Client('localhost:50051')
response = rgprc_client.request('myserver.myservice', 'mymethod', {'field1':'value1'})
except Exception as e:
logger.error(f"Failed to initialize rgrpc client: {e}")
```
## Developer Setup
### Environment Setup
1. `python3 -m venv /where/you/like/to/store/venvs`
2. `source /venv/bin/activate`
3. `pip install -r dev-requirements.txt`
4. `pre-commit install`
### Running tests
Running `tests.sh` will execute the following actions:
- `ruff check ./rgrpc` - will run the [ruff](https://docs.astral.sh/ruff/linter/) linter over core source files
- `ruff format ./rgrpc` - will run the [ruff](https://docs.astral.sh/ruff/formatter/) formatter over core source files
- `mypy rgprc/*.py` - will run [mypy](https://mypy.readthedocs.io/en/stable/getting_started.html) over core source files.
- `pytest --cov=rgrpc tests/` - will run tests and generate a short coverage report
## Maintainers
- [ViridianForge](viridianforge.tech)
Raw data
{
"_id": null,
"home_page": "",
"name": "rgrpc",
"maintainer": "",
"docs_url": null,
"requires_python": ">=3.8",
"maintainer_email": "",
"keywords": "client,grpc,reflection",
"author": "",
"author_email": "Wayne Manselle <wayne@viridianforge.tech>",
"download_url": "https://files.pythonhosted.org/packages/9c/a1/95f5ac1e232da0904bd4cefc570957a63efd085e71d1e0bcde84a4332325/rgrpc-2023.11.12.tar.gz",
"platform": null,
"description": "# rgprc\n\n[![Ruff](https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/astral-sh/ruff/main/assets/badge/v2.json)](https://github.com/astral-sh/ruff)\n[![License](https://img.shields.io/badge/License-Apache_2.0-blue.svg)](https://opensource.org/licenses/Apache-2.0)\n\nA simple to use, reflection only - grpc client.\n\n## Features\n\n- Make GRPC calls against reflection enabled servers\n\n## How to install\n\n``` shell\npip install rgrpc\n```\n\n## How to use\n\n``` python\ntry:\n rgrpc_client = Client('localhost:50051')\n response = rgprc_client.request('myserver.myservice', 'mymethod', {'field1':'value1'})\nexcept Exception as e:\n logger.error(f\"Failed to initialize rgrpc client: {e}\")\n```\n\n## Developer Setup\n\n### Environment Setup\n\n1. `python3 -m venv /where/you/like/to/store/venvs`\n2. `source /venv/bin/activate`\n3. `pip install -r dev-requirements.txt`\n4. `pre-commit install`\n\n### Running tests\n\nRunning `tests.sh` will execute the following actions:\n\n- `ruff check ./rgrpc` - will run the [ruff](https://docs.astral.sh/ruff/linter/) linter over core source files\n- `ruff format ./rgrpc` - will run the [ruff](https://docs.astral.sh/ruff/formatter/) formatter over core source files\n- `mypy rgprc/*.py` - will run [mypy](https://mypy.readthedocs.io/en/stable/getting_started.html) over core source files.\n- `pytest --cov=rgrpc tests/` - will run tests and generate a short coverage report\n\n## Maintainers\n\n- [ViridianForge](viridianforge.tech)\n",
"bugtrack_url": null,
"license": "Apache 2.0",
"summary": "A simple to use Python gRPC Reflection Client",
"version": "2023.11.12",
"project_urls": {
"Bug Tracker": "https://codeberg.org/viridianforge/rgprc/issues",
"Homepage": "https://codeberg.org/viridianforge/rgprc"
},
"split_keywords": [
"client",
"grpc",
"reflection"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "6bb81aeaeddc2bd25a488a972c6d2d1e4cfac263c07f9e9aa24825c16ba824ef",
"md5": "aa081862e89cadb320999febd330df72",
"sha256": "377e6b43c9503847faade772694126694686596d0afd2a3b9d83f371586537e8"
},
"downloads": -1,
"filename": "rgrpc-2023.11.12-py3-none-any.whl",
"has_sig": false,
"md5_digest": "aa081862e89cadb320999febd330df72",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.8",
"size": 8046,
"upload_time": "2023-11-14T06:26:26",
"upload_time_iso_8601": "2023-11-14T06:26:26.263590Z",
"url": "https://files.pythonhosted.org/packages/6b/b8/1aeaeddc2bd25a488a972c6d2d1e4cfac263c07f9e9aa24825c16ba824ef/rgrpc-2023.11.12-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "9ca195f5ac1e232da0904bd4cefc570957a63efd085e71d1e0bcde84a4332325",
"md5": "bddde765a320dc99a928f83ff049df5e",
"sha256": "b4899cdeb9de4936c16281297178e3ff8506352036fc8f3b1568b201b844f85a"
},
"downloads": -1,
"filename": "rgrpc-2023.11.12.tar.gz",
"has_sig": false,
"md5_digest": "bddde765a320dc99a928f83ff049df5e",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.8",
"size": 12315,
"upload_time": "2023-11-14T06:26:28",
"upload_time_iso_8601": "2023-11-14T06:26:28.123935Z",
"url": "https://files.pythonhosted.org/packages/9c/a1/95f5ac1e232da0904bd4cefc570957a63efd085e71d1e0bcde84a4332325/rgrpc-2023.11.12.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-11-14 06:26:28",
"github": false,
"gitlab": false,
"bitbucket": false,
"codeberg": true,
"codeberg_user": "viridianforge",
"codeberg_project": "rgprc",
"lcname": "rgrpc"
}