# polyants
> POLYHUB system helpers.
[![pipeline status](https://gitlab.com/ru-r5/polyants/badges/master/pipeline.svg)](https://gitlab.com/ru-r5/polyants/-/commits/master)
[![PyPI version](https://badge.fury.io/py/polyants.png)](https://badge.fury.io/py/polyants)
![](polyants.png)
## Installation
OS X & Linux & Windows:
```sh
pip install polyants
```
## Usage example
```python
from polyants.polyhub.helpers.common import get_now
print(get_now())
```
## Development setup
- tool requirements:
- poetry
- activating environment
```sh
poetry shell
```
- preparing environment
```sh
poetry install --no-root
```
- generating grpc artifacts
```sh
rm -rf ./polyants/polyhub/grpc/*
touch ./polyants/polyhub/grpc/__init__.py
python -m grpc_tools.protoc -I ./protos --python_out=./ --pyi_out=./ --grpc_python_out=./ ./protos/polyants/polyhub/grpc/*.proto
```
- coverage
```sh
$ poetry run pytest --cov
```
- format
```sh
$ poetry run black polyants -S
```
- lint
```sh
$ poetry run ruff check
```
- type checking
```sh
$ poetry run pyre --sequential
```
## Release History
- 0.7a0
- `REPOSITORY` object type and auxiliary functions (#35)
- 0.6a0
- float schema version number support (#34)
- new object type `SCRIPT` and it's types (#35)
- 0.5a0
- process_folder function without recursion (#29)
- object settings caching (#30)
- function to encode a string as urlsafe base64 (#31)
- semi-automatically generation of `calculated` attribute in datagrid definitions (#32)
- 0.4a0
- to_plain_json function to remove meta from json definitions (#28)
- 0.3a0
- polyhub helpers starter bundle (#21)
- 0.2a0
- configurable enum class (#3)
- 0.1a0
- mvp (#1)
## Meta
pymancer@gmail.com ([Polyanalitika LLC](https://polyanalitika.ru))
[https://gitlab.com/ru-r5/polyants](https://gitlab.com/ru-r5/polyants)
## License
This Source Code Form is subject to the terms of the Mozilla Public
License, v. 2.0. If a copy of the MPL was not distributed with this
file, You can obtain one at https://mozilla.org/MPL/2.0/.
## Contributing
1. Fork it (<https://gitlab.com/ru-r5/polyants/fork>)
2. Create your feature branch (`git checkout -b feature/foo`)
3. Commit your changes (`git commit -am 'Add some foo'`)
4. Push to the branch (`git push origin feature/foo`)
5. Create a new Pull Request
Raw data
{
"_id": null,
"home_page": "https://gitlab.com/ru-r5/polyants",
"name": "polyants",
"maintainer": null,
"docs_url": null,
"requires_python": "<3.13,>=3.9",
"maintainer_email": null,
"keywords": "tools, helpers",
"author": "pymancer",
"author_email": "pymancer@gmail.com",
"download_url": "https://files.pythonhosted.org/packages/fb/42/ec2c6a4f215513ba46d5a851b8a32dde07f5e33556ce1e260b3426798146/polyants-0.7a0.tar.gz",
"platform": null,
"description": "# polyants\n> POLYHUB system helpers.\n\n[![pipeline status](https://gitlab.com/ru-r5/polyants/badges/master/pipeline.svg)](https://gitlab.com/ru-r5/polyants/-/commits/master)\n[![PyPI version](https://badge.fury.io/py/polyants.png)](https://badge.fury.io/py/polyants)\n\n![](polyants.png)\n\n## Installation\n\nOS X & Linux & Windows:\n\n```sh\npip install polyants\n```\n\n## Usage example\n\n```python\nfrom polyants.polyhub.helpers.common import get_now\n\nprint(get_now())\n```\n\n## Development setup\n- tool requirements:\n - poetry\n\n- activating environment\n\n```sh\npoetry shell\n```\n\n- preparing environment\n\n```sh\npoetry install --no-root\n```\n\n- generating grpc artifacts\n\n```sh\nrm -rf ./polyants/polyhub/grpc/*\ntouch ./polyants/polyhub/grpc/__init__.py\npython -m grpc_tools.protoc -I ./protos --python_out=./ --pyi_out=./ --grpc_python_out=./ ./protos/polyants/polyhub/grpc/*.proto\n```\n\n- coverage\n\n```sh\n$ poetry run pytest --cov\n```\n\n- format\n\n```sh\n$ poetry run black polyants -S\n```\n\n- lint\n\n```sh\n$ poetry run ruff check\n```\n\n- type checking\n\n```sh\n$ poetry run pyre --sequential\n```\n\n## Release History\n- 0.7a0\n - `REPOSITORY` object type and auxiliary functions (#35)\n- 0.6a0\n - float schema version number support (#34)\n - new object type `SCRIPT` and it's types (#35)\n- 0.5a0\n - process_folder function without recursion (#29)\n - object settings caching (#30)\n - function to encode a string as urlsafe base64 (#31)\n - semi-automatically generation of `calculated` attribute in datagrid definitions (#32)\n- 0.4a0\n - to_plain_json function to remove meta from json definitions (#28)\n- 0.3a0\n - polyhub helpers starter bundle (#21)\n- 0.2a0\n - configurable enum class (#3)\n- 0.1a0\n - mvp (#1)\n\n## Meta\n\npymancer@gmail.com ([Polyanalitika LLC](https://polyanalitika.ru)) \n[https://gitlab.com/ru-r5/polyants](https://gitlab.com/ru-r5/polyants)\n\n## License\n\nThis Source Code Form is subject to the terms of the Mozilla Public \nLicense, v. 2.0. If a copy of the MPL was not distributed with this \nfile, You can obtain one at https://mozilla.org/MPL/2.0/. \n\n## Contributing\n\n1. Fork it (<https://gitlab.com/ru-r5/polyants/fork>)\n2. Create your feature branch (`git checkout -b feature/foo`)\n3. Commit your changes (`git commit -am 'Add some foo'`)\n4. Push to the branch (`git push origin feature/foo`)\n5. Create a new Pull Request\n",
"bugtrack_url": null,
"license": "MPL-2.0",
"summary": "POLYHUB system helpers",
"version": "0.7a0",
"project_urls": {
"Documentation": "https://gitlab.com/ru-r5/polyants/-/wikis/home",
"Homepage": "https://gitlab.com/ru-r5/polyants",
"Repository": "https://gitlab.com/ru-r5/polyants"
},
"split_keywords": [
"tools",
" helpers"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "729721a61ffef77f745c9f4809a54dce6f5af4672d25f22748f03d7db1abae75",
"md5": "8186acac13be93fcdaaa8ce7b914e535",
"sha256": "f028df0ac1c89ae3ffd74c147407805a34c1329e9c30eb47a931fa94dbcb0429"
},
"downloads": -1,
"filename": "polyants-0.7a0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "8186acac13be93fcdaaa8ce7b914e535",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": "<3.13,>=3.9",
"size": 50684,
"upload_time": "2024-12-04T17:25:37",
"upload_time_iso_8601": "2024-12-04T17:25:37.975549Z",
"url": "https://files.pythonhosted.org/packages/72/97/21a61ffef77f745c9f4809a54dce6f5af4672d25f22748f03d7db1abae75/polyants-0.7a0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "fb42ec2c6a4f215513ba46d5a851b8a32dde07f5e33556ce1e260b3426798146",
"md5": "0c30c143cf7c46686e5f9f4ce068581b",
"sha256": "7dcf659393c0943d37b36b886b61f02276a2f5cdabdfb91e2b5d5af82eda44b9"
},
"downloads": -1,
"filename": "polyants-0.7a0.tar.gz",
"has_sig": false,
"md5_digest": "0c30c143cf7c46686e5f9f4ce068581b",
"packagetype": "sdist",
"python_version": "source",
"requires_python": "<3.13,>=3.9",
"size": 36354,
"upload_time": "2024-12-04T17:25:39",
"upload_time_iso_8601": "2024-12-04T17:25:39.067775Z",
"url": "https://files.pythonhosted.org/packages/fb/42/ec2c6a4f215513ba46d5a851b8a32dde07f5e33556ce1e260b3426798146/polyants-0.7a0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-12-04 17:25:39",
"github": false,
"gitlab": true,
"bitbucket": false,
"codeberg": false,
"gitlab_user": "ru-r5",
"gitlab_project": "polyants",
"lcname": "polyants"
}