# cinnaroll Python library
## PyCharm setup
Make sure the following bundled plugins are enabled:
* Docker
* Git
* Markdown
* Ini
* IntelliLang (for language injections, e.g. Markdown/shell scripts in YAML)
* Shell Script (also: agree to enable Shellcheck when asked)
* YAML
Install the following non-bundled plugins from Marketplace:
* [Requirements](https://plugins.jetbrains.com/plugin/10837-requirements/)
## (Optional) Git hook setup
Install [`shellcheck`](https://github.com/koalaman/shellcheck#installing) and [`npm`](https://docs.npmjs.com/downloading-and-installing-node-js-and-npm).
Install npm packages:
```shell
npm install --global remark-cli remark-lint-no-dead-urls remark-validate-links
```
From the top-level folder of the repository, run the following command:
```shell
ln -s ../../ci/checks/run-all-checks.sh .git/hooks/pre-commit
```
## Run tests locally
To develop that project and run tests locally, it is needed to have Python installed with `tox`.
Use `tox -e venv` to setup virtual environment to work on that project in your favorite IDE.
Use `.tox/venv/bin/python` as a reference `python` interpreter in your IDE.
To run tests, execute `tox`.
It's also possible to execute tests graphically in PyCharm (right-clicking on the test file
or clicking the green triangle on the left of the test case name), which can be very useful when debugging a single test case.
To do so, make sure that the libraries from [requirements.testenv.txt](requirements.testenv.txt) are installed in the current venv.
## Versioning
This tool is [semantically versioned](https://semver.org) with respect to all of the following:
* Python version compatibility
* command-line interface (commands and their options)
* format of its specific files (currently just `~/.cinnaroll/credentials`)
* accepted environment variables
## Release TODO list
Note that we merge code to `main` and use git tags for releases.
To perform a release:
1. Tag the current `main` commit and push the tag:
```shell
git checkout main
git pull origin main
git tag v<VERSION>
git push origin v<VERSION>
```
1. Once the [CI](https://github.com/carthago-cloud/cinnaroll-python-lib/actions) completes,
verify that the latest pack has been uploaded to [PyPI](https://pypi.org/project/cinnaroll).
Raw data
{
"_id": null,
"home_page": "https://github.com/carthago-cloud/cinnaroll-python-lib",
"name": "cinnaroll",
"maintainer": "",
"docs_url": null,
"requires_python": ">=3.7, <4",
"maintainer_email": "",
"keywords": "machine-learning,ml,deployment",
"author": "VirtusLab",
"author_email": "service@cinnaroll.ai",
"download_url": "https://files.pythonhosted.org/packages/4e/7c/02c543d1c3e593b859c07406aad1aee88c3c5e3f524efac994aa5a9bf02c/cinnaroll-0.6.0.tar.gz",
"platform": null,
"description": "# cinnaroll Python library\n\n## PyCharm setup\n\nMake sure the following bundled plugins are enabled:\n* Docker\n* Git\n* Markdown\n* Ini\n* IntelliLang (for language injections, e.g. Markdown/shell scripts in YAML)\n* Shell Script (also: agree to enable Shellcheck when asked)\n* YAML\n\nInstall the following non-bundled plugins from Marketplace:\n* [Requirements](https://plugins.jetbrains.com/plugin/10837-requirements/)\n\n\n## (Optional) Git hook setup\n\nInstall [`shellcheck`](https://github.com/koalaman/shellcheck#installing) and [`npm`](https://docs.npmjs.com/downloading-and-installing-node-js-and-npm).\n\nInstall npm packages:\n```shell\nnpm install --global remark-cli remark-lint-no-dead-urls remark-validate-links\n```\n\nFrom the top-level folder of the repository, run the following command:\n```shell\nln -s ../../ci/checks/run-all-checks.sh .git/hooks/pre-commit\n```\n\n\n## Run tests locally\n\nTo develop that project and run tests locally, it is needed to have Python installed with `tox`.\n\nUse `tox -e venv` to setup virtual environment to work on that project in your favorite IDE.\nUse `.tox/venv/bin/python` as a reference `python` interpreter in your IDE.\n\nTo run tests, execute `tox`.\n\nIt's also possible to execute tests graphically in PyCharm (right-clicking on the test file\nor clicking the green triangle on the left of the test case name), which can be very useful when debugging a single test case.\nTo do so, make sure that the libraries from [requirements.testenv.txt](requirements.testenv.txt) are installed in the current venv.\n\n\n## Versioning\n\nThis tool is [semantically versioned](https://semver.org) with respect to all of the following:\n\n* Python version compatibility\n* command-line interface (commands and their options)\n* format of its specific files (currently just `~/.cinnaroll/credentials`)\n* accepted environment variables\n\n\n## Release TODO list\n\nNote that we merge code to `main` and use git tags for releases.\n\nTo perform a release:\n\n1. Tag the current `main` commit and push the tag:\n\n```shell\ngit checkout main\ngit pull origin main\ngit tag v<VERSION>\ngit push origin v<VERSION>\n```\n\n1. Once the [CI](https://github.com/carthago-cloud/cinnaroll-python-lib/actions) completes,\n verify that the latest pack has been uploaded to [PyPI](https://pypi.org/project/cinnaroll).\n\n\n",
"bugtrack_url": null,
"license": "Apache License 2.0",
"summary": "Configuring, Packaging and Sending Machine Learning Models to Deployment at cinnaroll.ai",
"version": "0.6.0",
"split_keywords": [
"machine-learning",
"ml",
"deployment"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "90e5ae1c63d3697bce46a40c1d5f1a31c54bb813fe93ddf03c5596aca5db9880",
"md5": "8b9849636d6596e98fa0968fa9bf700b",
"sha256": "4281f2d6e11f110faaed73cec91f358342962a84b8e80e1447bb8cf1da74151c"
},
"downloads": -1,
"filename": "cinnaroll-0.6.0-py2.py3-none-any.whl",
"has_sig": false,
"md5_digest": "8b9849636d6596e98fa0968fa9bf700b",
"packagetype": "bdist_wheel",
"python_version": "py2.py3",
"requires_python": ">=3.7, <4",
"size": 44120,
"upload_time": "2023-02-10T12:39:57",
"upload_time_iso_8601": "2023-02-10T12:39:57.807281Z",
"url": "https://files.pythonhosted.org/packages/90/e5/ae1c63d3697bce46a40c1d5f1a31c54bb813fe93ddf03c5596aca5db9880/cinnaroll-0.6.0-py2.py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "4e7c02c543d1c3e593b859c07406aad1aee88c3c5e3f524efac994aa5a9bf02c",
"md5": "d3a498fc80517a9a007e415b3931306b",
"sha256": "baf390f947c087041f83aca4638f65e8107684010368dd95f2cb4ea5f6fa3bd2"
},
"downloads": -1,
"filename": "cinnaroll-0.6.0.tar.gz",
"has_sig": false,
"md5_digest": "d3a498fc80517a9a007e415b3931306b",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.7, <4",
"size": 5386821,
"upload_time": "2023-02-10T12:40:00",
"upload_time_iso_8601": "2023-02-10T12:40:00.148603Z",
"url": "https://files.pythonhosted.org/packages/4e/7c/02c543d1c3e593b859c07406aad1aee88c3c5e3f524efac994aa5a9bf02c/cinnaroll-0.6.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-02-10 12:40:00",
"github": true,
"gitlab": false,
"bitbucket": false,
"github_user": "carthago-cloud",
"github_project": "cinnaroll-python-lib",
"lcname": "cinnaroll"
}