git clone https://github.com/[YOUR GITHUB ACCOUNT]/mail_handler.git
git remote add upstream "https://github.com/pycontw/mail_handler"
You can pull the latest code in master branch through git pull upstream master
afterward.
git checkout -b [YOUR FEATURE]
python -m pip install pipx
python -m pipx install poetry invoke
python -m pipx ensurepath
inv env.init-dev
Note that this project follows conventional-commit and bumps version based on it. Use the following command to commit your changes.
inv git.commit
Make sure all test cases pass.
inv test
Check the test coverage and see where you can add test cases.
inv test.cov
Format your code through black
and isort
.
inv style.reformat
Make sure your coding style passes all enforced linters.
inv style
[Optional] Check your coding style through pylint
. Note that you do not have to fix all the issues warned by pylint
.
inv style.pylint
Ensure the packages installed are secure, and no server vulnerability is introduced
inv secure