Variability analysis tool for ROS systems
Project description
Bake a Py
This project provides a template from which you can create your own Python packages and projects. It uses modern tools and conventions to ensure a good development experience.
Package Structure
Package structure was inspired by various templates and recommended best practices, such as:
- https://github.com/TezRomacH/python-package-template
- https://github.com/pyscaffold/pyscaffold
- https://github.com/f4str/python-package-template
- https://github.com/audreyfeldroy/cookiecutter-pypackage
- https://github.com/ionelmc/python-nameless
It provides a src
directory, under which your own packages sit. Example files for __init__.py
, __main__.py
and cli.py
are already provided.
Tests are placed under the tests
directory, and documentation under the docs
directory.
To start your new project, you should change its name, URL and metadata details at:
README.md
CHANGELOG.md
setup.py
tests/*.py
src/*
GitHub Features
The .github
directory comes with a number of files to configure certain GitHub features.
- Various Issue templates can be found under
ISSUE_TEMPLATE
. - A Pull Request template can be found at
PULL_REQUEST_TEMPLATE.md
. - Automatically mark issues as stale after a period of inactivity. The configuration file can be found at
.stale.yml
. - Keep package dependencies up to date with Dependabot. The configuration file can be found at
dependabot.yml
. - Keep Release Drafts automatically up to date with Pull Requests, using the Release Drafter GitHub Action. The configuration file can be found at
release-drafter.yml
and the workflow atworkflows/release-drafter.yml
. - Automatic package building and publishing when pushing a new version tag to
main
. The workflow can be found atworkflows/publish-package.yml
. - Code quality and security analysis with CodeQL. The workflow can be found at
workflows/codeql-analysis.yml
.
Tooling
This package sets up various tox
environments for static checks, testing, building and publishing.
It is also configured with pre-commit
hooks to perform static checks and automatic formatting.
If you do not use tox
, you can build the package with build
and install a development version with pip
.
Assume cd
into the repository's root.
To install the pre-commit
hooks:
pre-commit install
To run type checking:
tox -e typecheck
To run linting tools:
tox -e lint
To run automatic formatting:
tox -e format
To run tests:
tox
To build the package:
tox -e build
To build the package (with build
):
python -m build
To clean the previous build files:
tox -e clean
To test package publication (publish to Test PyPI):
tox -e publish
To publish the package to PyPI:
tox -e publish -- --repository pypi
To install an editable version:
pip install -e .
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file bake-a-py-1.0.0.tar.gz
.
File metadata
- Download URL: bake-a-py-1.0.0.tar.gz
- Upload date:
- Size: 15.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/4.0.2 CPython/3.11.5
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | fd7c2403148254986cdff9b495eb3becb99eac543c1c34d0b300f34e3dd7aef5 |
|
MD5 | a69701c21545d2042794dfaba9b1ef11 |
|
BLAKE2b-256 | 42c91d61dbe5e91ffce076346c9d6d1d434e2bcf18dc5541d5a2c3cbd9c4fd56 |
File details
Details for the file bake_a_py-1.0.0-py3-none-any.whl
.
File metadata
- Download URL: bake_a_py-1.0.0-py3-none-any.whl
- Upload date:
- Size: 6.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/4.0.2 CPython/3.11.5
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | ebe1b4f84ecee29e72e0c18b28693218288efdf0355ef3531866c50f621193c5 |
|
MD5 | 857c07e30c72f42b6fa04fecf4b46dbb |
|
BLAKE2b-256 | d13b60a0e76f7cee2f40202c4ec5131f6408e7189125d890f23d62e388d767b7 |