Name | bssclient JSON |
Version |
0.1.3
JSON |
| download |
home_page | None |
Summary | Fully typed, async client library for Basic Supply Service (BSS) |
upload_time | 2024-09-26 10:04:44 |
maintainer | None |
docs_url | None |
author | None |
requires_python | >=3.11 |
license | MIT |
keywords |
basic supply
bss
|
VCS |
|
bugtrack_url |
|
requirements |
No requirements were recorded.
|
Travis-CI |
No Travis.
|
coveralls test coverage |
No coveralls.
|
# bssclient.py
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](LICENSE)
![Python Versions (officially) supported](https://img.shields.io/pypi/pyversions/bssclient.svg)
![Pypi status badge](https://img.shields.io/pypi/v/bssclient)
![Unittests status badge](https://github.com/Hochfrequenz/bssclient.py/workflows/Unittests/badge.svg)
![Coverage status badge](https://github.com/Hochfrequenz/bssclient.py/workflows/Coverage/badge.svg)
![Linting status badge](https://github.com/Hochfrequenz/bssclient.py/workflows/Linting/badge.svg)
![Black status badge](https://github.com/Hochfrequenz/bssclient.py/workflows/Formatting/badge.svg)
This repository contains the package `bssclient`.
It is an async, fully typed Python client for the Basic Supply Service (BSS).
Its features are handwritten and extended as we need them.
So it is _not_ autogenerated from the BSS OpenAPI.
## Installation
Install it [from PyPI](https://pypi.org/project/bssclient/):
```bash
pip install bssclient
```
## Usage
```python
from yarl import URL
from bssclient import bssclient, BssConfig
bss_config = BssConfig(
server_url=URL("https://my-bss.xtk-test.org/"),
usr="my-usr",
pwd="my-pwd",
)
client = bssclient(bss_config)
ermittlungsauftraege = await client.get_all_ermittlungsauftraege()
```
Even though we did not fully replicate the BSS data model,
we tried to make the client as flexible as possible.
You can use any unmapped field returned by TMDS by using the [`model_extra` property of pydantic](https://docs.pydantic.dev/latest/api/base_model/#pydantic.BaseModel.model_extra).
## Development
For development of this library, follow the instructions in our [Python Template Repository](https://github.com/Hochfrequenz/python_template_repository).
tl;dr: `tox -e dev` will set up a development environment for you.
### Release (CI/CD)
To release a new version of this library, [create a new release](https://github.com/Hochfrequenz/bssclient.py/releases/new) in GitHub.
Make sure its tag starts with `v` and the version number, e.g. `v1.2.3`.
Releases are not restricted to the main branch, but we prefer them to happen there.
## Contribute
You are very welcome to contribute to this template repository by opening a pull request against the main branch.
Raw data
{
"_id": null,
"home_page": null,
"name": "bssclient",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.11",
"maintainer_email": null,
"keywords": "basic supply, bss",
"author": null,
"author_email": "Hochfreuqenz Unternehmensberatung GmbH <info+github@hochfrequenz.de>",
"download_url": "https://files.pythonhosted.org/packages/e8/07/f7a5d5989786d30f2302f44a62e167bd2326a5ccb56494aaaed9a0b48093/bssclient-0.1.3.tar.gz",
"platform": null,
"description": "# bssclient.py\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](LICENSE)\n![Python Versions (officially) supported](https://img.shields.io/pypi/pyversions/bssclient.svg)\n![Pypi status badge](https://img.shields.io/pypi/v/bssclient)\n![Unittests status badge](https://github.com/Hochfrequenz/bssclient.py/workflows/Unittests/badge.svg)\n![Coverage status badge](https://github.com/Hochfrequenz/bssclient.py/workflows/Coverage/badge.svg)\n![Linting status badge](https://github.com/Hochfrequenz/bssclient.py/workflows/Linting/badge.svg)\n![Black status badge](https://github.com/Hochfrequenz/bssclient.py/workflows/Formatting/badge.svg)\n\nThis repository contains the package `bssclient`.\nIt is an async, fully typed Python client for the Basic Supply Service (BSS).\n\nIts features are handwritten and extended as we need them.\nSo it is _not_ autogenerated from the BSS OpenAPI.\n\n## Installation\nInstall it [from PyPI](https://pypi.org/project/bssclient/):\n```bash\npip install bssclient\n```\n\n## Usage\n\n```python\nfrom yarl import URL\nfrom bssclient import bssclient, BssConfig\n\nbss_config = BssConfig(\n server_url=URL(\"https://my-bss.xtk-test.org/\"),\n usr=\"my-usr\",\n pwd=\"my-pwd\",\n)\nclient = bssclient(bss_config)\nermittlungsauftraege = await client.get_all_ermittlungsauftraege()\n```\n\nEven though we did not fully replicate the BSS data model,\nwe tried to make the client as flexible as possible.\nYou can use any unmapped field returned by TMDS by using the [`model_extra` property of pydantic](https://docs.pydantic.dev/latest/api/base_model/#pydantic.BaseModel.model_extra).\n\n## Development\nFor development of this library, follow the instructions in our [Python Template Repository](https://github.com/Hochfrequenz/python_template_repository).\ntl;dr: `tox -e dev` will set up a development environment for you.\n\n### Release (CI/CD)\n\nTo release a new version of this library, [create a new release](https://github.com/Hochfrequenz/bssclient.py/releases/new) in GitHub.\nMake sure its tag starts with `v` and the version number, e.g. `v1.2.3`.\nReleases are not restricted to the main branch, but we prefer them to happen there.\n\n## Contribute\nYou are very welcome to contribute to this template repository by opening a pull request against the main branch.\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "Fully typed, async client library for Basic Supply Service (BSS)",
"version": "0.1.3",
"project_urls": {
"Changelog": "https://github.com/Hochfrequenz/bssclient.py/releases",
"Homepage": "https://github.com/Hochfrequenz/bssclient.py"
},
"split_keywords": [
"basic supply",
" bss"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "3a3085cdacdab4d0728eeba2e2c90a55c0f27b0434ceb09257dba80f0ea28e9e",
"md5": "ec4b1d3b8e574a25fcbf1551ceca78b9",
"sha256": "a099eb00ba6571eee6f90a4ff3ad937155b1a36c80d44f4fe69b6d4576987a44"
},
"downloads": -1,
"filename": "bssclient-0.1.3-py3-none-any.whl",
"has_sig": false,
"md5_digest": "ec4b1d3b8e574a25fcbf1551ceca78b9",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.11",
"size": 12747,
"upload_time": "2024-09-26T10:04:42",
"upload_time_iso_8601": "2024-09-26T10:04:42.968483Z",
"url": "https://files.pythonhosted.org/packages/3a/30/85cdacdab4d0728eeba2e2c90a55c0f27b0434ceb09257dba80f0ea28e9e/bssclient-0.1.3-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "e807f7a5d5989786d30f2302f44a62e167bd2326a5ccb56494aaaed9a0b48093",
"md5": "7f19f0d0ddfadfdbed07d8854f72a7a5",
"sha256": "f3feb7834e6920ae2a4382217b49f77edcafebc721eaa6ac96dcbdd11e3342f9"
},
"downloads": -1,
"filename": "bssclient-0.1.3.tar.gz",
"has_sig": false,
"md5_digest": "7f19f0d0ddfadfdbed07d8854f72a7a5",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.11",
"size": 16089,
"upload_time": "2024-09-26T10:04:44",
"upload_time_iso_8601": "2024-09-26T10:04:44.517567Z",
"url": "https://files.pythonhosted.org/packages/e8/07/f7a5d5989786d30f2302f44a62e167bd2326a5ccb56494aaaed9a0b48093/bssclient-0.1.3.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-09-26 10:04:44",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "Hochfrequenz",
"github_project": "bssclient.py",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"requirements": [],
"tox": true,
"lcname": "bssclient"
}