You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: CONTRIBUTING.md
+27-17
Original file line number
Diff line number
Diff line change
@@ -4,7 +4,7 @@ Thank you for your interest in contributing to PowerAPI! There are multiple ways
4
4
5
5
# Ways to contribute
6
6
7
-
We actively welcome any kind of contributions! Whether this contribution is:
7
+
We actively welcome any kind of contributions! Whether this contribution is:
8
8
9
9
- Bug report
10
10
- Documentation writing
@@ -14,27 +14,36 @@ We actively welcome any kind of contributions! Whether this contribution is:
14
14
- Fix for an existing issue
15
15
- ...
16
16
17
-
Feel free to propose your contribution!
17
+
Feel free to propose your contribution!
18
18
19
19
# Licensing
20
20
21
21
All contributions should be under the same [BSD 3](https://choosealicense.com/licenses/bsd-3-clause/) licence that covers the project.
22
22
23
23
# Contribution workflow
24
24
25
-
We use pull requests to manage any change to the codebase. Please try to make your pull request as "atomic" as possible (related to one issue).
25
+
We use pull requests to manage any change to the codebase. Please try to make your pull request as "atomic" as possible (related to one issue/feature).
26
26
If you want to contribute to several issues or propose several distinct contributions, please create several pull requests to ease the review process.
27
-
If you want to propose a codebase modification, you should:
28
-
29
-
1. Fork the repository and create your branch from the pre-release branch
30
-
2. Write new tests if your modifications are not covered by existing tests and should be tested. In particular, if your contribution is a bug fix that have not been detected by existing tests,
31
-
add a test to ensure that this issue will not reappear later.
32
-
3. If you've modified the API or made any structural change in the architecture, update the documentation
33
-
4. Ensure that tests passes and your code lint (using pylint and flake8)
34
-
5. Issue a pull requests on the pre-release branch. This way your modifications will be included in the next stable release (available on master).
35
-
36
-
Each pull request have to be reviewed before beeing accepted. Some modifications can be
37
-
asked by the projet's maintainers.
27
+
If you want to propose a codebase modification, you have to:
28
+
29
+
1. Create a GitHub issue related to your issue/feature
30
+
2. Fork the repository and create your branch from the `master` branch. Your branch have to follow the convention: `<category>/<issue>/<description-kebab-case>`. Eg. `feature/issue10/support-influxdb-2`. Some categories are `feature` and `fix`.
31
+
3. Write new tests if your modifications are not covered by existing tests and have to be tested. In particular, if your contribution is a bug fix that have not been detected by existing tests, add a test to ensure that this issue will not reappear later.
32
+
4. If you've modified the API or made any structural change in the architecture, update the documentation. Please notice that this kind of contribution will require the approval of Sponsors.
33
+
5. Ensure that your code lint (using `pylint`, `flake8`, and `CodeQL`) and tests passes.
34
+
6. Issue a pull requests on the `master` branch. This way your modifications will be included in the next stable release.
35
+
36
+
Please notice that each **pull request have to be reviewed** before beeing accepted. **Some modifications can be asked by the projet's maintainers**.
37
+
Commits' messages have to use [Conventional Commits](https://www.conventionalcommits.org/en/v1.0.0/#summary). Below we provide the list of messages types used for generating the release report:
38
+
-`fix`
39
+
-`perf`
40
+
-`refactor`
41
+
-`style`
42
+
-`docs`
43
+
-`test`
44
+
-`build`
45
+
-`ci`
46
+
-`chore`
38
47
39
48
## Bug report
40
49
@@ -43,7 +52,7 @@ You are welcome to submit an issue. This issue should describe the bug and it co
43
52
small test or a code snippet that reproduce the issue.
44
53
45
54
Great, easy to understand, bug reports often include:
46
-
- A quick summary of the issue
55
+
- A quick summary of the issue
47
56
- What was expected and what happened
48
57
- Step to reproduce
49
58
- Details on your execution environment:
@@ -62,10 +71,11 @@ Please submit one pull request for each bug fix.
62
71
63
72
# PowerAPI codebase
64
73
65
-
## Coding style
74
+
## Coding style and Quality
66
75
67
76
We use `pylint` and `flake8` as linter to enforce rules on the coding style. Please validate your contributions using those tools to ease the validation process.
77
+
We also use `CodeQL` to detect bugs and security problems.
68
78
69
79
## Testing
70
80
71
-
We use `pytest` to test that PowerAPI works as expected and to avoid regressions. Feel free to add new tests to improve code coverage!
81
+
We use `pytest-cov` to test that PowerAPI works as expected and to avoid regressions. Feel free to add new tests to improve code coverage!
0 commit comments