Version v1.0.10 as of 2024-01-20 see Changelog
This is the test project created using PizzaCutter
PizzaCutter is a command-line utility that creates and updates software projects in any language from PizzaCutter project templates.
The purpose of this repository is, to show and test a newly created project from the python default template.
- More Information can be found here :
- PizzaCutter
- PizzaCutter python default template
- more templates to come
automated tests, Github Actions, Documentation, Badges, etc. are managed with PizzaCutter <https://github .com/bitranox/PizzaCutter> (cookiecutter on steroids)
Python version required: 3.8.0 or newer
tested on recent linux with python 3.8, 3.9, 3.10, 3.11, 3.12, pypy-3.9, pypy-3.10 - architectures: amd64
100% code coverage, flake8 style checking ,mypy static type checking ,tested under Linux, macOS, Windows, automatic daily builds and monitoring
- Try it Online
- Usage
- Usage from Commandline
- Installation and Upgrade
- Requirements
- Acknowledgements
- Contribute
- Report Issues
- Pull Request
- Code of Conduct
- License
- Changelog
You might try it right away in Jupyter Notebook by using the "launch binder" badge, or click here <https://mybinder.org/v2/gh/{{rst_include. repository_slug}}/master?filepath=pct_python_default_test.ipynb>
- example for including docstrings
def main() -> None:
"""
the main method, prints hello world
Parameter
----------
none
none
Result
----------
none
Exceptions
----------
none
Examples
----------
>>> main()
Hello World - by PizzaCutter
"""
Usage: pct_python_default_test [OPTIONS] COMMAND [ARGS]...
a pizzacutter default test project, crated with PizzaCutter and the
PizzaCutter default python template
Options:
--version Show the version and exit.
--traceback / --no-traceback return traceback information on cli
-h, --help Show this message and exit.
Commands:
info get program informations
- Before You start, its highly recommended to update pip and setup tools:
python -m pip --upgrade pip
python -m pip --upgrade setuptools
- to install the latest version from github via pip:
python -m pip install --upgrade git+https://github.com/bitranox/pct_python_default_test.git
- include it into Your requirements.txt:
# Insert following line in Your requirements.txt:
# for the latest development version :
pct_python_default_test @ git+https://github.com/bitranox/pct_python_default_test.git
# to install and upgrade all modules mentioned in requirements.txt:
python -m pip install --upgrade -r /<path>/requirements.txt
- to install the latest development version, including test dependencies from source code:
# cd ~
$ git clone https://github.com/bitranox/pct_python_default_test.git
$ cd pct_python_default_test
python -m pip install -e .[test]
- via makefile: makefiles are a very convenient way to install. Here we can do much more, like installing virtual environments, clean caches and so on.
# from Your shell's homedirectory:
$ git clone https://github.com/bitranox/pct_python_default_test.git
$ cd pct_python_default_test
# to run the tests:
$ make test
# to install the package
$ make install
# to clean the package
$ make clean
# uninstall the package
$ make uninstall
following modules will be automatically installed :
## Project Requirements
click
cli_exit_tools
- special thanks to "uncle bob" Robert C. Martin, especially for his books on "clean code" and "clean architecture"
I would love for you to fork and send me pull request for this project. - please Contribute
This software is licensed under the MIT license
---
- new MAJOR version for incompatible API changes,
- new MINOR version for added functionality in a backwards compatible manner
- new PATCH version for backwards compatible bug fixes
- 2024-01-20:
- add additional Environment Variables in Github Actions
- 2024-01-11:
- add black 3.12 style
- set osx version to 3.12
- set windows version to 3.12
- 2023-07-14:
- move 3rd_party_stubs directory to
./.3rd_party_stubs
- move 3rd_party_stubs directory to
- 2023-07-14:
- add codeql badge
- move 3rd_party_stubs outside the src directory
- add pypy 3.10 tests
- add python 3.12-dev tests
- 2023-07-13:
- require minimum python 3.8
- remove python 3.7 tests
- 2023-xx-xx:
- introduce PEP517 packaging standard
- introduce pyproject.toml build-system
- remove mypy.ini
- remove pytest.ini
- remove setup.cfg
- remove setup.py
- remove .bettercodehub.yml
- remove .travis.yml
- update black config
- clean ./tests/test_cli.py
- 2023-06-26:
- update black config
- remove travis config
- remove bettercodehub config
- do not upload .egg files to pypi.org
- 2023-01-13:
- update github actions : checkout@v3 and setup-python@v4
- remove "better code" badges
- remove python 3.6 tests
- adding python 3.11 tests
- update pypy tests to 3.9
2022-05-20: update github actions test matrix to python 3.10
2022-03-29: remedy mypy Untyped decorator makes function "cli_info" untyped
2022-03-25: remove listdir of ./dist, moved to lib_cicd_github
2020-08-01: fix pypi deploy
- 2020-07-31:
- change1
- change2
- ...