# ubuntu-namer
<div align="center">
[![Build status](https://github.com/crypdick/ubuntu-namer/workflows/build/badge.svg?branch=master&event=push)](https://github.com/crypdick/ubuntu-namer/actions?query=workflow%3Abuild)
[![Python Version](https://img.shields.io/pypi/pyversions/ubuntu-namer.svg)](https://pypi.org/project/ubuntu-namer/)
[![Dependencies Status](https://img.shields.io/badge/dependencies-up%20to%20date-brightgreen.svg)](https://github.com/crypdick/ubuntu-namer/pulls?utf8=%E2%9C%93&q=is%3Apr%20author%3Aapp%2Fdependabot)
[![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black)
[![Security: bandit](https://img.shields.io/badge/security-bandit-green.svg)](https://github.com/PyCQA/bandit)
[![Pre-commit](https://img.shields.io/badge/pre--commit-enabled-brightgreen?logo=pre-commit&logoColor=white)](https://github.com/crypdick/ubuntu-namer/blob/master/.pre-commit-config.yaml)
[![Semantic Versions](https://img.shields.io/badge/%20%20%F0%9F%93%A6%F0%9F%9A%80-semantic--versions-e10079.svg)](https://github.com/crypdick/ubuntu-namer/releases)
[![License](https://img.shields.io/github/license/crypdick/ubuntu-namer)](https://github.com/crypdick/ubuntu-namer/blob/master/LICENSE)
![Coverage Report](assets/images/coverage.svg)
`ubuntu-namer` is a Python cli/package port of [ubuntu-name-generator](https://github.com/fcrespo82/ubuntu-name-generator).
</div>
## Installation
```bash
pip install -U ubuntu-namer
```
or install with `Poetry`
```bash
poetry add ubuntu-namer
```
Then you can run
```bash
ubuntu-namer --help
```
or with `Poetry`:
```bash
poetry run ubuntu-namer --help
```
### Makefile usage
[`Makefile`](https://github.com/crypdick/ubuntu-namer/blob/master/Makefile) contains a lot of functions for faster development.
<details>
<summary>1. Download and remove Poetry</summary>
<p>
To download and install Poetry run:
```bash
make poetry-download
```
To uninstall
```bash
make poetry-remove
```
</p>
</details>
<details>
<summary>2. Install all dependencies and pre-commit hooks</summary>
<p>
Install requirements:
```bash
make install
```
Pre-commit hooks coulb be installed after `git init` via
```bash
make pre-commit-install
```
</p>
</details>
<details>
<summary>3. Codestyle</summary>
<p>
Automatic formatting uses `pyupgrade`, `isort` and `black`.
```bash
make codestyle
# or use synonym
make formatting
```
Codestyle checks only, without rewriting files:
```bash
make check-codestyle
```
> Note: `check-codestyle` uses `isort`, `black` and `darglint` library
Update all dev libraries to the latest version using one comand
```bash
make update-dev-deps
```
<details>
<summary>4. Code security</summary>
<p>
```bash
make check-safety
```
This command launches `Poetry` integrity checks as well as identifies security issues with `Safety` and `Bandit`.
```bash
make check-safety
```
</p>
</details>
</p>
</details>
<details>
<summary>5. Type checks</summary>
<p>
Run `mypy` static type checker
```bash
make mypy
```
</p>
</details>
<details>
<summary>6. Tests with coverage badges</summary>
<p>
Run `pytest`
```bash
make test
```
</p>
</details>
<details>
<summary>7. All linters</summary>
<p>
Of course there is a command to ~~rule~~ run all linters in one:
```bash
make lint
```
the same as:
```bash
make test && make check-codestyle && make mypy && make check-safety
```
</p>
</details>
<details>
<summary>8. Docker</summary>
<p>
```bash
make docker-build
```
which is equivalent to:
```bash
make docker-build VERSION=latest
```
Remove docker image with
```bash
make docker-remove
```
More information [about docker](https://github.com/crypdick/ubuntu-namer/tree/master/docker).
</p>
</details>
<details>
<summary>9. Cleanup</summary>
<p>
Delete pycache files
```bash
make pycache-remove
```
Remove package build
```bash
make build-remove
```
Delete .DS_STORE files
```bash
make dsstore-remove
```
Remove .mypycache
```bash
make mypycache-remove
```
Or to remove all above run:
```bash
make cleanup
```
</p>
</details>
<details>
<summary>10. AWS Lambda</summary>
<p>
To make a zip file for AWS Lambda run:
```bash
make build-lambda
```
Then, upload this zip to AWS Lambda.
## π Releases
You can see the list of available releases on the [GitHub Releases](https://github.com/crypdick/ubuntu-namer/releases) page.
We follow [Semantic Versions](https://semver.org/) specification.
We use [`Release Drafter`](https://github.com/marketplace/actions/release-drafter). As pull requests are merged, a draft release is kept up-to-date listing the changes, ready to publish when youβre ready. With the categories option, you can categorize pull requests in release notes using labels.
### List of labels and corresponding titles
| **Label** | **Title in Releases** |
| :-----------------------------------: | :---------------------: |
| `enhancement`, `feature` | π Features |
| `bug`, `refactoring`, `bugfix`, `fix` | π§ Fixes & Refactoring |
| `build`, `ci`, `testing` | π¦ Build System & CI/CD |
| `breaking` | π₯ Breaking Changes |
| `documentation` | π Documentation |
| `dependencies` | β¬οΈ Dependencies updates |
You can update it in [`release-drafter.yml`](https://github.com/crypdick/ubuntu-namer/blob/master/.github/release-drafter.yml).
GitHub creates the `bug`, `enhancement`, and `documentation` labels for you. Dependabot creates the `dependencies` label. Create the remaining labels on the Issues tab of your GitHub repository, when you need them.
## π‘ License
[![License](https://img.shields.io/github/license/crypdick/ubuntu-namer)](https://github.com/crypdick/ubuntu-namer/blob/master/LICENSE)
This project is licensed under the terms of the `MIT` license. See [LICENSE](https://github.com/crypdick/ubuntu-namer/blob/master/LICENSE) for more details.
## π Citation
```bibtex
@misc{ubuntu-namer,
author = {ubuntu-namer},
title = {Awesome `ubuntu-namer` is a Python cli/package created with https://github.com/TezRomacH/python-package-template},
year = {2022},
publisher = {GitHub},
journal = {GitHub repository},
howpublished = {\url{https://github.com/crypdick/ubuntu-namer}}
}
```
## Credits [![π Your next Python package needs a bleeding-edge project structure.](https://img.shields.io/badge/python--package--template-%F0%9F%9A%80-brightgreen)](https://github.com/TezRomacH/python-package-template)
This project was generated with [`python-package-template`](https://github.com/TezRomacH/python-package-template)
Raw data
{
"_id": null,
"home_page": "https://github.com/crypdick/ubuntu-namer",
"name": "ubuntu-namer",
"maintainer": "",
"docs_url": null,
"requires_python": ">=3.7,<4.0",
"maintainer_email": "",
"keywords": "",
"author": "Richard Decal",
"author_email": "",
"download_url": "https://files.pythonhosted.org/packages/a1/d4/fc8680a83fe5ba09ef5a860e1d9517f5cb68bdb62e3daabd1b1c717a1bdf/ubuntu_namer-0.3.1.tar.gz",
"platform": null,
"description": "# ubuntu-namer\n\n<div align=\"center\">\n\n[![Build status](https://github.com/crypdick/ubuntu-namer/workflows/build/badge.svg?branch=master&event=push)](https://github.com/crypdick/ubuntu-namer/actions?query=workflow%3Abuild)\n[![Python Version](https://img.shields.io/pypi/pyversions/ubuntu-namer.svg)](https://pypi.org/project/ubuntu-namer/)\n[![Dependencies Status](https://img.shields.io/badge/dependencies-up%20to%20date-brightgreen.svg)](https://github.com/crypdick/ubuntu-namer/pulls?utf8=%E2%9C%93&q=is%3Apr%20author%3Aapp%2Fdependabot)\n\n[![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black)\n[![Security: bandit](https://img.shields.io/badge/security-bandit-green.svg)](https://github.com/PyCQA/bandit)\n[![Pre-commit](https://img.shields.io/badge/pre--commit-enabled-brightgreen?logo=pre-commit&logoColor=white)](https://github.com/crypdick/ubuntu-namer/blob/master/.pre-commit-config.yaml)\n[![Semantic Versions](https://img.shields.io/badge/%20%20%F0%9F%93%A6%F0%9F%9A%80-semantic--versions-e10079.svg)](https://github.com/crypdick/ubuntu-namer/releases)\n[![License](https://img.shields.io/github/license/crypdick/ubuntu-namer)](https://github.com/crypdick/ubuntu-namer/blob/master/LICENSE)\n![Coverage Report](assets/images/coverage.svg)\n\n`ubuntu-namer` is a Python cli/package port of [ubuntu-name-generator](https://github.com/fcrespo82/ubuntu-name-generator).\n\n</div>\n\n## Installation\n\n```bash\npip install -U ubuntu-namer\n```\n\nor install with `Poetry`\n\n```bash\npoetry add ubuntu-namer\n```\n\nThen you can run\n\n```bash\nubuntu-namer --help\n```\n\nor with `Poetry`:\n\n```bash\npoetry run ubuntu-namer --help\n```\n\n### Makefile usage\n\n[`Makefile`](https://github.com/crypdick/ubuntu-namer/blob/master/Makefile) contains a lot of functions for faster development.\n\n<details>\n<summary>1. Download and remove Poetry</summary>\n<p>\n\nTo download and install Poetry run:\n\n```bash\nmake poetry-download\n```\n\nTo uninstall\n\n```bash\nmake poetry-remove\n```\n\n</p>\n</details>\n\n<details>\n<summary>2. Install all dependencies and pre-commit hooks</summary>\n<p>\n\nInstall requirements:\n\n```bash\nmake install\n```\n\nPre-commit hooks coulb be installed after `git init` via\n\n```bash\nmake pre-commit-install\n```\n\n</p>\n</details>\n\n<details>\n<summary>3. Codestyle</summary>\n<p>\n\nAutomatic formatting uses `pyupgrade`, `isort` and `black`.\n\n```bash\nmake codestyle\n\n# or use synonym\nmake formatting\n```\n\nCodestyle checks only, without rewriting files:\n\n```bash\nmake check-codestyle\n```\n\n> Note: `check-codestyle` uses `isort`, `black` and `darglint` library\n\nUpdate all dev libraries to the latest version using one comand\n\n```bash\nmake update-dev-deps\n```\n\n<details>\n<summary>4. Code security</summary>\n<p>\n\n```bash\nmake check-safety\n```\n\nThis command launches `Poetry` integrity checks as well as identifies security issues with `Safety` and `Bandit`.\n\n```bash\nmake check-safety\n```\n\n</p>\n</details>\n\n</p>\n</details>\n\n<details>\n<summary>5. Type checks</summary>\n<p>\n\nRun `mypy` static type checker\n\n```bash\nmake mypy\n```\n\n</p>\n</details>\n\n<details>\n<summary>6. Tests with coverage badges</summary>\n<p>\n\nRun `pytest`\n\n```bash\nmake test\n```\n\n</p>\n</details>\n\n<details>\n<summary>7. All linters</summary>\n<p>\n\nOf course there is a command to ~~rule~~ run all linters in one:\n\n```bash\nmake lint\n```\n\nthe same as:\n\n```bash\nmake test && make check-codestyle && make mypy && make check-safety\n```\n\n</p>\n</details>\n\n<details>\n<summary>8. Docker</summary>\n<p>\n\n```bash\nmake docker-build\n```\n\nwhich is equivalent to:\n\n```bash\nmake docker-build VERSION=latest\n```\n\nRemove docker image with\n\n```bash\nmake docker-remove\n```\n\nMore information [about docker](https://github.com/crypdick/ubuntu-namer/tree/master/docker).\n\n\n\n</p>\n</details>\n\n<details>\n<summary>9. Cleanup</summary>\n<p>\nDelete pycache files\n\n```bash\nmake pycache-remove\n```\n\nRemove package build\n\n```bash\nmake build-remove\n```\n\nDelete .DS_STORE files\n\n```bash\nmake dsstore-remove\n```\n\nRemove .mypycache\n\n```bash\nmake mypycache-remove\n```\n\nOr to remove all above run:\n\n```bash\nmake cleanup\n```\n\n</p>\n</details>\n\n<details>\n<summary>10. AWS Lambda</summary>\n<p>\n\nTo make a zip file for AWS Lambda run:\n\n```bash\nmake build-lambda\n```\n\nThen, upload this zip to AWS Lambda.\n\n## \ud83d\udcc8 Releases\n\nYou can see the list of available releases on the [GitHub Releases](https://github.com/crypdick/ubuntu-namer/releases) page.\n\nWe follow [Semantic Versions](https://semver.org/) specification.\n\nWe use [`Release Drafter`](https://github.com/marketplace/actions/release-drafter). As pull requests are merged, a draft release is kept up-to-date listing the changes, ready to publish when you\u2019re ready. With the categories option, you can categorize pull requests in release notes using labels.\n\n### List of labels and corresponding titles\n\n| **Label** | **Title in Releases** |\n| :-----------------------------------: | :---------------------: |\n| `enhancement`, `feature` | \ud83d\ude80 Features |\n| `bug`, `refactoring`, `bugfix`, `fix` | \ud83d\udd27 Fixes & Refactoring |\n| `build`, `ci`, `testing` | \ud83d\udce6 Build System & CI/CD |\n| `breaking` | \ud83d\udca5 Breaking Changes |\n| `documentation` | \ud83d\udcdd Documentation |\n| `dependencies` | \u2b06\ufe0f Dependencies updates |\n\nYou can update it in [`release-drafter.yml`](https://github.com/crypdick/ubuntu-namer/blob/master/.github/release-drafter.yml).\n\nGitHub creates the `bug`, `enhancement`, and `documentation` labels for you. Dependabot creates the `dependencies` label. Create the remaining labels on the Issues tab of your GitHub repository, when you need them.\n\n## \ud83d\udee1 License\n\n[![License](https://img.shields.io/github/license/crypdick/ubuntu-namer)](https://github.com/crypdick/ubuntu-namer/blob/master/LICENSE)\n\nThis project is licensed under the terms of the `MIT` license. See [LICENSE](https://github.com/crypdick/ubuntu-namer/blob/master/LICENSE) for more details.\n\n## \ud83d\udcc3 Citation\n\n```bibtex\n@misc{ubuntu-namer,\n author = {ubuntu-namer},\n title = {Awesome `ubuntu-namer` is a Python cli/package created with https://github.com/TezRomacH/python-package-template},\n year = {2022},\n publisher = {GitHub},\n journal = {GitHub repository},\n howpublished = {\\url{https://github.com/crypdick/ubuntu-namer}}\n}\n```\n\n## Credits [![\ud83d\ude80 Your next Python package needs a bleeding-edge project structure.](https://img.shields.io/badge/python--package--template-%F0%9F%9A%80-brightgreen)](https://github.com/TezRomacH/python-package-template)\n\nThis project was generated with [`python-package-template`](https://github.com/TezRomacH/python-package-template)\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "Python port of ubuntu-name-generator",
"version": "0.3.1",
"split_keywords": [],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "2607bb939ac054dbbe7364e9aa258b101e44afc73eb085b4fe7dbb4f9c36beb0",
"md5": "c8ec0b71a51cac4bf9507ad15e9316f5",
"sha256": "3af8fb4f733f07f5afa0e01189127036c18e59f6156b6bae21f6c80a744b1b84"
},
"downloads": -1,
"filename": "ubuntu_namer-0.3.1-py3-none-any.whl",
"has_sig": false,
"md5_digest": "c8ec0b71a51cac4bf9507ad15e9316f5",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.7,<4.0",
"size": 12923,
"upload_time": "2023-04-01T18:30:48",
"upload_time_iso_8601": "2023-04-01T18:30:48.811199Z",
"url": "https://files.pythonhosted.org/packages/26/07/bb939ac054dbbe7364e9aa258b101e44afc73eb085b4fe7dbb4f9c36beb0/ubuntu_namer-0.3.1-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "a1d4fc8680a83fe5ba09ef5a860e1d9517f5cb68bdb62e3daabd1b1c717a1bdf",
"md5": "d1681cb4d4156c54b32b56e137000346",
"sha256": "243da22ae0540a697f258cdfc7d2d2d71c931f652acfaa6ff2821c3d86de4e0a"
},
"downloads": -1,
"filename": "ubuntu_namer-0.3.1.tar.gz",
"has_sig": false,
"md5_digest": "d1681cb4d4156c54b32b56e137000346",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.7,<4.0",
"size": 15277,
"upload_time": "2023-04-01T18:30:50",
"upload_time_iso_8601": "2023-04-01T18:30:50.720808Z",
"url": "https://files.pythonhosted.org/packages/a1/d4/fc8680a83fe5ba09ef5a860e1d9517f5cb68bdb62e3daabd1b1c717a1bdf/ubuntu_namer-0.3.1.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-04-01 18:30:50",
"github": true,
"gitlab": false,
"bitbucket": false,
"github_user": "crypdick",
"github_project": "ubuntu-namer",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "ubuntu-namer"
}