Skip to content

Commit ff5d051

Browse files
committed
[readme] consolidate development instructions
1 parent 311f6de commit ff5d051

File tree

4 files changed

+61
-91
lines changed

4 files changed

+61
-91
lines changed

.vscode/settings.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
"editor.formatOnSave": true
77
},
88
"cSpell.words": [
9+
"backported",
910
"behaviour",
1011
"behaviours",
1112
"bierner",

CONTRIBUTING.md

Lines changed: 8 additions & 42 deletions
Original file line numberDiff line numberDiff line change
@@ -15,15 +15,14 @@ Refer to the [README - Getting Started](../README.md#geting-started) for details
1515
Some recommendations to help align your contribution and minimise the eventual back and forth on a PR:
1616

1717
* Engage in an issue thread or in the discussion section.
18-
* Actual code in the form of a minimal PR with a `status:do_not_merge` label is a great tool for generating useful dialogue.
18+
* Actual code in the form of a minimal PR with a `status:do_not_merge` label helps generate useful dialogue.
1919

2020
### Which Branch?
2121

2222
* If it's a new feature, or bugfix applicable to the latest code, `devel`
2323
* If it's a bugfix that can't be applied to `devel`, but critical for a release, point it at the release branch (e.g. `release/0.6.x`)
2424

25-
If it is a feature or bugfix that you'd like to see backported to one of the release branches, open a parallel PR for that
26-
release branch or mention that you'd like to see it backported in the original PR's description.
25+
If it is a feature or bugfix that you'd like to see backported to one of the release branches, open a parallel PR for that release branch or mention that you'd like to see it backported in the original PR's description.
2726

2827
### The Pull Request
2928

@@ -32,45 +31,13 @@ Be sure to state clearly in the pull request's **description** (this helps exped
3231
* The motivation, i.e. what problem is this solving.
3332
* A concise summary of what was done (and why if relevant).
3433

35-
### Format, Lint, Type-Check and Test
34+
### Pre-Merge Checks
3635

37-
The repository aims to conform to PEP8, please endeavour to do so. CI will get cranky if you don't ;)
36+
CI get cranky on a variety of things - if it complains, make sure your PR is passing the following checks
37+
locally.
3838

39-
Test against at least one of `py38`, `py310`.
40-
41-
```
42-
# Auto-format your code (if using VSCode, install the ufmt extension)
43-
$ poetry run tox -e format
44-
45-
# Style, Format
46-
$ poetry run tox -e check
47-
48-
# Type-Check
49-
$ poetry run mypy38
50-
51-
# Tests
52-
$ poetry run tox -e py38
53-
```
54-
55-
### Documentation
56-
57-
Documentation is auto-generated as part of the PR process, but if you do wish to make changes and check locally:
58-
59-
Generate the docs, view them from `./docs/html` in a browser.
60-
61-
```
62-
# Install dependencies
63-
$ poetry install --with docs
64-
65-
# Build
66-
$ poetry run make -C docs html
67-
```
68-
69-
On doc dependency changes in `pyproject.toml`, export the requirements for ReadTheDocs.
70-
71-
```
72-
$ poetry export -f requirements.txt --with docs -o docs/requirements.txt
73-
```
39+
* [Test-Lint-Format](./DEVELOPING.md#test-format-lint)
40+
* [Make Docs](./DEVELOPING#documentation)
7441

7542
### Changelog
7643

@@ -80,8 +47,7 @@ $ poetry export -f requirements.txt --with docs -o docs/requirements.txt
8047

8148
### Review
8249

83-
Once submitted, a reviewer will be assigned. You do not need to select. If no-one has self-assigned in a reasonable time window,
84-
feel free to append a *friendly bump* comment to your PR.
50+
Once submitted, a reviewer will be assigned. You do not need to select. If no-one has self-assigned in a reasonable time window, feel free to append a *friendly bump* comment to your PR.
8551

8652
### Merging
8753

DEVELOPING.md

Lines changed: 51 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,51 @@
1+
# Developing
2+
3+
[[Test-Format-Lint](#test-format-lint)] [[Documentation](#documentation)] [[Packaging]](#packaging)]
4+
5+
6+
## Test-Format-Lint
7+
8+
Check against at least one of py38 / py310 [1].
9+
10+
```
11+
# Auto-format your code (if using VSCode, install the ufmt extension)
12+
$ poetry run tox -e format
13+
14+
# Style, Format
15+
$ poetry run tox -e check
16+
17+
# Type-Check
18+
$ poetry run mypy38
19+
20+
# Tests
21+
$ poetry run tox -e py38
22+
```
23+
24+
[1] CI will test against both python versions for you, but should you wish to do so locally, open up two VSCode windows, one with the project opened in the default [py38 devcontainer](.devcontainer) and the other with the [py310 devcontainer](.devcontainer/py310).
25+
26+
## Documentation
27+
28+
Generate the docs, view them from `./docs/html` in a browser.
29+
30+
```
31+
# Install dependencies
32+
$ poetry install --with docs
33+
34+
# Build
35+
$ poetry run make -C docs html
36+
```
37+
38+
On Doc dependency changes, export the requirements for ReadTheDocs
39+
40+
```
41+
$ poetry export -f requirements.txt --with docs -o docs/requirements.txt
42+
```
43+
44+
## Packaging
45+
46+
If you have permission to publish on pypi:
47+
48+
```
49+
$ poetry config http-basic.pypi ${POETRY_HTTP_BASIC_PYPI_USERNAME} ${POETRY_HTTP_BASIC_PYPI_PASSWORD}
50+
$ poetry publish
51+
```

README.md

Lines changed: 1 addition & 49 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# Py Trees
22

3-
[[About](#about)] [[What's New?](#whats-new)] [[Documentation](#documentation)] [[Getting Started](#getting-started)] [[Next Steps](#next-steps)] [[Releases](#releases)] [[Developers](#developers)]
3+
[[About](#about)] [[What's New?](#whats-new)] [[Documentation](#documentation)] [[Getting Started](#getting-started)] [[Next Steps](#next-steps)] [[Releases](#releases)]
44

55
----
66

@@ -101,54 +101,6 @@ Robotics:
101101
| CI | [![devel-Status][devel-build-status-image]][devel-build-status] | [![2.2.x-Status][2.2.x-build-status-image]][2.2.x-build-status] | - | - | - | - | - |
102102
| Documentation | [![devel-Docs][rtd-devel-image]][docs-devel] | [![2.2.x-Docs][rtd-2.2.x-image]][docs-2.2.x] | [![2.1.x-Docs][rtd-2.1.x-image]][docs-2.1.x] | [![2.0.x-Docs][rtd-2.0.x-image]][docs-2.0.x] | [![1.2.x-Docs][rtd-1.2.x-image]][docs-1.2.x] | [![0.7.x-Docs][rtd-0.7.x-image]][docs-0.7.x] | [![0.6.x-Docs][rtd-0.6.x-image]][docs-0.6.x]
103103

104-
## Developers
105-
106-
### Format, Check, MyPy, Test
107-
108-
Check against at least one of py38 / py310 [1].
109-
110-
```
111-
# Auto-format your code (if using VSCode, install the ufmt extension)
112-
$ poetry run tox -e format
113-
114-
# Style, Format
115-
$ poetry run tox -e check
116-
117-
# Type-Check
118-
$ poetry run mypy38
119-
120-
# Tests
121-
$ poetry run tox -e py38
122-
```
123-
124-
[1] CI will test against both python versions for you, but should you wish to do so locally, open up two VSCode windows, one with the project opened in the default [py38 devcontainer](.devcontainer) and the other with the [py310 devcontainer](.devcontainer/py310).
125-
126-
### Generate Documentation
127-
128-
Generate the docs, view them from `./docs/html` in a browser.
129-
130-
```
131-
# Install dependencies
132-
$ poetry install --with docs
133-
134-
# Build
135-
$ poetry run make -C docs html
136-
```
137-
138-
On Doc dependency changes, export the requirements for ReadTheDocs
139-
140-
```
141-
$ poetry export -f requirements.txt --with docs -o docs/requirements.txt
142-
```
143-
144-
### Publish to PyPi
145-
146-
If you have permission to publish on pypi:
147-
148-
```
149-
$ poetry config http-basic.pypi ${POETRY_HTTP_BASIC_PYPI_USERNAME} ${POETRY_HTTP_BASIC_PYPI_PASSWORD}
150-
$ poetry publish
151-
```
152104

153105
[license-image]: https://img.shields.io/badge/License-BSD%203--Clause-orange.svg?style=plastic
154106
[license]: LICENSE

0 commit comments

Comments
 (0)