pip-package-template-docker
Project template for Dockerized pip package development.
Overview
- This project is fully Dockerized. For convenience, a
Makefileis provided to build/test during development. - Python 3.11 is the primary version for development, while 3.7 - 3.10 are included for compatibility. You may want to change them in the future.
See
docker-compose.ymlandMakefile. Refer to this page for Python versions you may want to support. - Linting is done using
flake8and testing is done usingpytest. - CI is designed for GitHub Actions. See
.github. Coverage is reported to Coveralls. - An automatic release to Pypi is made through GitHub Actions whenever you publish a new release on GitHub.
LICENSEin the template is MIT.
How to use
- Please familiarize yourself with all the concept involved. I am not responsible for things breaking if you use this template.
- Python and different Python versions
- Creating pip packages. I made a tutorial a few years ago, which you can see here.
- Docker and docker-compose
- Linting and flake8
- Unit testing and pytest
- CI and GitHub Actions
- Code coverage
- Find all instances of
pip-package-template-dockerand replace them with your desired package name. This is the name of your package known to Pypi andpip install. - Rename the
src/pip_package_template_dockerfolder. Find all instances ofpip_package_template_dockerand replace them accordingly. This is what yourimportstatement would use in Python code. - Go through
src/setup.pyand make necessary changes. Please do not link your project to my name, email, or GitHub. - Replace
README.mdwith your own. If you would like to use the badges, please change the links to point to your project. - Replace
LICENSEwith your own. Please do not license your project under my name. - Project version is found in the
__init__.pyfile in your package. Update it accordingly as you develop your package. - Put unittests under
src/tests. - Sign up for necessary accounts, such as Pypi and Coveralls.
- Acquire a Pypi token and put it under your project as
PYPI_API_TOKEN. On Pypi it is found under Account settings -> API tokens -> Add API token. On GitHub it is located in your project settings -> Security -> Secrets and variables -> Repository secrets. You may need to manually update once before a project-specific token can be acquired.
Metadata
Release files for pip-package-template-docker 2023.4.23.post1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| pip-package-template-docker-2023.4.23.post1.tar.gz | 4.1 kB | Without provenance | Details for pip-package-template-docker-2023.4.23.post1.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| pip_package_template_docker-2023.4.23.post1-py3-none-any.whl | Python 3 | none | any | Details for pip_package_template_docker-2023.4.23.post1-py3-none-any.whl |
Total release size: 8.1 kB
Release files / pip-package-template-docker-2023.4.23.post1.tar.gz
| Download URL | pip-package-template-docker-2023.4.23.post1.tar.gz |
|---|---|
| Size | 4.1 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
726ac78b62c1283908146710d080e6d20964299ae44ebb89456b26b209b4ae09
|
|
BLAKE2b-256 checksum How to use checksums |
e00f0caa6935a07412ada464e8ae17a988c6f9864d0bb8e34d70e59f8e21e90b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.2 CPython/3.9.16
|
Release files / pip_package_template_docker-2023.4.23.post1-py3-none-any.whl
| Download URL | pip_package_template_docker-2023.4.23.post1-py3-none-any.whl |
|---|---|
| Size | 4.1 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
82f824e1311360a56fe0f0700fdc9319d0285573603f4e6e5805eb39b0a5d3ba
|
|
BLAKE2b-256 checksum How to use checksums |
797b2ad59738b3fdfab01138049b41441f3deabc24eb4f4b8356b923a6b871f6
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.2 CPython/3.9.16
|
Security for pip-package-template-docker 2023.4.23.post1
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.