-
-
Notifications
You must be signed in to change notification settings - Fork 2
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Docs: add contributing guidelines (#282)
- Loading branch information
Showing
5 changed files
with
53 additions
and
1 deletion.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,43 @@ | ||
# Contributing Guidelines | ||
|
||
First off, thanks for considering to contribute to this project! | ||
|
||
These are mostly guidelines, not rules. Use your best judgment, and feel free to propose changes to this document in a pull request. | ||
|
||
## Versioning and changelog | ||
|
||
This project adheres to [Semantic Versioning](https://semver.org/). | ||
The CHANGELOG format tries to complies with [Keep a Changelog](https://keepachangelog.com/) but it's mainly a concatenation of autogenerated release notes by GitHub Release. | ||
|
||
## Git hooks | ||
|
||
We use git hooks through [pre-commit](https://pre-commit.com/) to enforce and automatically check some "rules". Please install it before any commit: `pre-commit install`. | ||
|
||
See the relevant configuration file: `.pre-commit-config.yaml`. | ||
|
||
## Code Style | ||
|
||
Make sure your code *roughly* follows [PEP-8](https://www.python.org/dev/peps/pep-0008/) and keeps things consistent with the rest of the code: | ||
|
||
- docstrings: [google-style](https://sphinxcontrib-napoleon.readthedocs.io/en/latest/example_google.html) is used to write technical documentation right into the code. | ||
- formatting: [black](https://black.readthedocs.io/) is used to automatically format the code without debate. | ||
- sorted imports: [isort](https://pycqa.github.io/isort/) is used to sort imports | ||
- static analisis: [flake8](https://flake8.pycqa.org/en/latest/) is used to catch some dizziness and keep the source code healthy. | ||
|
||
## Security | ||
|
||
As the aim of this project is to be carried out on large-scale IT infrastructures, security is one of the development challenges. It's enforced through automated checks, which are mainly executed in CI. But there are a few best practices to bear in mind: | ||
|
||
- give preference to the standard Python library, even it's longer to develop | ||
- or consider adding an additional third-party dependency (interest, consequences, linked dependencies, etc.) | ||
- take security alerts into account | ||
|
||
## IDE | ||
|
||
Feel free to use the IDE you love. Here come configurations for some popular IDEs to fit those guidelines. | ||
|
||
### Visual Studio Code | ||
|
||
It's the IDE used by the main developer, so the configuration is tracked on this repository until new contributors with other IDEs are joining the project. | ||
|
||
Configuration is under: [.vscode/settings.json](/.vscode/settings.json) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,2 @@ | ||
```{include} ../../CONTRIBUTING.md | ||
``` |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Binary file not shown.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters