👍🎉 First off, thanks for taking the time to contribute! 🎉👍
The following is a set of guidelines for contributing to Python version of spid-compliant-certificates project. These are mostly guidelines, not rules. Use your best judgment, and feel free to propose changes to this document in a pull request.
-
If you found something to add/fix, open an issue an discuss with the community
-
Once ready, fork the repository (or pull from
main
if already forked) -
In your fork, create a branch starting from
main
and name it by following the naming conventions -
Make your changes by following the coding guidelines
-
Push the changes on your branch and create a pull request
-
Wait for a review
-
Use four spaces for intentation (leave TABS to Java lovers)
-
Use type hints (see PEP484) when a new function is defined
-
Use
\n
as end of line (we mainly develop on Linux) -
Before pushing your Python code, lint it with
flake8
andisort
(see PEP8) -
Before pushing your changes on Dockerfiles, lint them with
hadolint
Releases are issued by making use of Release Drafter action. In order to propery work, some naming conventions for branches must be followed.
If you're working on a bugfix, please name your local branch with one of the following prefixes:
bug
(e.g.bug/wrong-url-in-configuration
)bugfix
(e.g.bugfix/wrong-url-in-configuration
)fix
(e.g.fix/wrong-url-in-configuration
)
If you're working on a new feature, please name your local branch with one of the following prefixes:
enhancement
(e.g.enhancement/enable-2fa-with-solokey
)feat
(e.g.feat/enable-2fa-with-solokey
)feature
(e.g.feature/enable-2fa-with-solokey
)
If you're working on maintenance tasks (e.g. documentation, repository management, source styling), please name your local branch with one of the following prefixes:
chore
(e.g.chore/remove-trailing-spaces
)style
(e.g.style/remove-trailing-spaces
)