We use poetry to manage the dependencies.
To install them you would need to run install command:
poetry install --all-extrasTo activate your virtualenv run poetry shell.
We use pre-commit for quality control.
To run checks:
inv pre-commit.run-hooksNote: we also have flake8 dependencies for proper support of flake8 vscode plugin.
We use trunk based development.
What the point of this method?
- We use protected
mainbranch, so the only way to push your code is via pull request - We use issue branches: to implement a new feature or to fix a bug
create a new branch named
issue-$TASKNUMBER - Then create a pull request to
mainbranch - We use
git tags to make releases, so we can track what has changed since the latest release
So, this way we achieve an easy and scalable development process which frees us from merging hell and long-living branches.
In this method, the latest version of the app is always in the main branch.
Before submitting your code please do the following steps:
- Add any changes you want
- Edit documentation if you have changed something significant
- Update
CHANGELOG.mdwith a quick summary of your changes - Run
pre-committo ensure that style is correct