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
Developments on the `pySDC` code use the classical approach of forks and pull requests from Github.
9
-
There is an [extended documentation](https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/getting-started/about-collaborative-development-models) on this aspect (that you can skip if you are already used to it). In addition, some recommendations for pull requests are given [here](./docs/contrib/01_pull_requests.md).
3
+
Developments on the `pySDC` code use the classical approach of forks and pull requests.
4
+
You can look at [extended GitHub documentation](https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/getting-started/about-collaborative-development-models) for more details (skip this if you are already used to it). Furthermore, branches on `pySDC` follow a pre-defined structure. To contribute to any of them, please look at the [pull request recommendations](./docs/contrib/01_pull_requests.md).
10
5
11
6
Additionally, a _few_ rules are set to enforce code readability, consistency and reliability. Some of them are automatically tested with each commit, and summarized in the page on [continuous integration (CI)](./docs/contrib/02_continuous_integration.md).
12
-
Others are specific conventions chosen for the pySDC library, that may follow Python standards (or not ...), detailed in the [naming conventions page](./docs/contrib/03_naming_conventions.md).
7
+
Others are specific conventions chosen for the pySDC library, that may follow Python standards (or not ...), detailed in the [naming conventions](./docs/contrib/03_naming_conventions.md) page.
13
8
14
9
Finally, while `pySDC` provides many base functionalities that implement classical flavors of SDC, it also allows problem-specific applications through Object-Oriented Programming (OOP) and the implementation of custom inherited classes.
15
-
This follows a specific OOP framework, for which more details are given [here](./docs/contrib/04_custom_implementations.md).
10
+
This follows a specific OOP framework, you can look at the page on [custom implementations](./docs/contrib/04_custom_implementations.md) for more details.
11
+
12
+
1.[GitHub Forks and Pull Requests](https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/getting-started/about-collaborative-development-models)
Copy file name to clipboardExpand all lines: docs/contrib/02_continuous_integration.md
+7-3Lines changed: 7 additions & 3 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -6,7 +6,7 @@ Finally, the CI also build artifacts that are used to generate the documentation
6
6
7
7
## Code linting
8
8
9
-
Code style linting is performed using [`black`](https://black.readthedocs.io/en/stable/) and [`flakeheaven`](https://flakeheaven.readthedocs.io/en/latest/) for code syntax checking. In particular, `black` is used to check compliance with (most of) [PEP-8 guidelines](https://peps.python.org/pep-0008/).
9
+
Code style linting is performed using [black](https://black.readthedocs.io/en/stable/) and [flakeheaven](https://flakeheaven.readthedocs.io/en/latest/) for code syntax checking. In particular, `black` is used to check compliance with (most of) [PEP-8 guidelines](https://peps.python.org/pep-0008/).
10
10
11
11
Those tests are conducted for each commit (even for forks), but you can also run it locally in the root folder of `pySDC` before pushing any commit :
12
12
@@ -32,7 +32,7 @@ Some style rules that are automatically enforced :
32
32
33
33
## Code testing
34
34
35
-
This is done using[ `pytest`](https://docs.pytest.org/en/7.2.x/), and runs all the tests written in the `pySDC/tests` folder. You can run those locally in the root folder of `pySDC` using :
35
+
This is done using [pytest](https://docs.pytest.org/en/7.2.x/), and runs all the tests written in the `pySDC/tests` folder. You can run those locally in the root folder of `pySDC` using :
36
36
37
37
```bash
38
38
# Install required packages (works also with conda/mamba)
@@ -50,7 +50,10 @@ pytest -v pySDC/tests
50
50
51
51
## Documentation generation
52
52
53
-
To check the documentation generation, you can waitfor all the CI tasks to download the `docs` artifacts, unzip it and open the `index.html` file there with you favorite browser. However, when you are working on documentation (of the project, of the code, etc ...), you can already build and check the website locally :
53
+
Documentation is built using [sphinx](https://www.sphinx-doc.org/en/master/).
54
+
To check its generation, you can waitfor all the CI tasks to download the `docs` artifacts, unzip it and open the `index.html` file there with you favorite browser.
55
+
56
+
However, when you are working on documentation (of the project, of the code, etc ...), you can already build and check the website locally :
54
57
55
58
```bash
56
59
# Run all tests, continuing even with errors
@@ -68,4 +71,5 @@ Then you can open `docs/build/html/index.html` using you favorite browser and ch
68
71
> This approach can be considered for local testing of your contribution when it does not concern parts containing images (_i.e_ project or code documentation).
69
72
70
73
:arrow_left:[Back to Pull Request Recommendation](./01_pull_requests.md) ---
0 commit comments