diff options
Diffstat (limited to 'README.md')
-rw-r--r-- | README.md | 42 |
1 files changed, 42 insertions, 0 deletions
@@ -110,3 +110,45 @@ Contributions are accepted under [Apache License 2.0](LICENSE.txt). Only submit ## License Vela is licensed under [Apache License 2.0](LICENSE.txt) +## Contributions and Pull Requests + +Contributions are accepted under Apache-2.0. Only submit contributions where you have authored all of the code. + +### Sanity checks + +The Python codebase is PEP8 compliant with the exception of 120 characters line length. +We run black and flake8 against the code base excluding "ethosu/vela/tflite/" and "ethosu/vela/ethos\_u55\_regs" directories because they are auto-generated by third party tools. +Those tools are run using [pre-commit framework](https://pre-commit.com/). The configuration file is .pre-commit-config.yaml + +#### Install tools + +To install pre-commit, run the following: + +``` +pipenv install -e . --dev +``` + +After the installation, pre-commit is available in the virtual environment. + +#### Install the pre-commit hook + +To ease the development, we can run those sanity checks before committing the code. +To install the git hook, run: + +``` +$ pre-commit install +pre-commit installed at .git/hooks/pre-commit +``` + +The checks will be run before the commit: if one of them fails, you need to fix the code to make the checks pass. + +#### Run the sanity checks + +Those checks can be run manually. This can be achievied running the following +``` +$ pre-commit run flake8 --all-files +... +$ pre-commit run black --all-files +``` + +If you don't specify anything after run, it will execute all the checks. |