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: RELEASE.md
+26-21Lines changed: 26 additions & 21 deletions
Original file line number
Diff line number
Diff line change
@@ -2,28 +2,30 @@
2
2
3
3
*Planet maintainers only*
4
4
5
-
Releasing is a two-step process: (1) releasing on Github and test.pypi and (2) releasing to pypi. Releasing on Github will automatically trigger a release on test.pypi via a Github Action. Following manual confirmation of a successful and satisfactory release on test.pypi, release on pypi is triggered manually with the Github Action "Automatically Publish on TestPyPi".
5
+
Releasing is a two-step process: (1) releasing on Github and test.pypi and (2) releasing to pypi. Releasing on Github will automatically trigger a release on test.pypi via a Github Action. Following manual confirmation of a successful and satisfactory release on test.pypi, release on pypi is triggered manually with the Github Action "Automatically Publish on TestPyPi". There is also an option to publish to test.pypi and pypi from your local machine.
6
6
7
7
#### Release Naming Conventions
8
8
9
9
The following are the release naming conventions:
10
10
11
-
1. Current dev version: Bumped version of last release with `dev` added to the end
11
+
1. Current Dev Version is obtained from `planet/__version__.py`
12
+
1. Release Version: Remove `dev` from Current Dev Version
13
+
1. Next Dev Version: Bumped version of last release with `dev` added to the end.
12
14
***PROPOSAL**: Version number is determined by [Semantic Versioning](https://semver.org/spec/v2.0.0.html)
13
-
1. Release version: Remove `dev` from current dev version
14
15
15
-
Example:
16
-
* If
17
-
* Previous Release Version == `1.0.0`
18
-
* Then
19
-
* Current Dev Version: `1.0.1dev`
20
-
* Release Version: `1.0.1`
21
-
* Next Dev Version: `1.0.2dev`
16
+
17
+
##### Example:
18
+
19
+
**IF** Current Dev Version == `1.0.0dev`**THEN**
20
+
* Release Version: `1.0.0`
21
+
* Next Dev Version: `1.0.1dev`
22
22
23
23
## Release Workflow
24
24
25
-
#### Step 1: Release on Github
25
+
The release on Github and PyPi performed from a release branch while the release branch PR is in progress. After the releases, the version in the PR is updated before it is merged. Thus, the version in `main` is not the same as the version of the release.
26
+
26
27
*NOTE: This section refers to version names given in Release Naming Conventions section above.*
28
+
27
29
1. Create a release branch named `release-{Release Version}`
28
30
1. Make the following changes for the release
29
31
* Update `CHANGES.txt` (**PROPOSAL**: change this to `docs/CHANGELOG.md`)
@@ -32,21 +34,24 @@ Example:
32
34
* Sort according to importance
33
35
***PROPOSAL**: Adhere to [Keep a Changelog](https://keepachangelog.com/)
34
36
* Update `planet/__version__.py` to Release Version
35
-
1. Create a PR for the release branch (named after release branch), wait for CI to pass
37
+
1. Create a PR for the release branch (named after release branch, description is changelog entry), wait for CI to pass
36
38
1. Create a new github release:
37
-
* Set Tag to the version number specified in `planet/__version__.py`, aka Release Version
39
+
* Set Tag Release Version
40
+
***!!!** Set Target to the release branch **!!!**
38
41
* Copy Description from the new entry in `docs/CHANGELOG.md`
39
42
* Select "This is a pre-release" if applicable
40
43
* Select "Create a discussion for this release"
41
-
1. Update `planet/__version__.py` to Next Dev Version
42
-
1. Merge PR for release branch
43
-
44
-
###### Step 2: Release on pypi
45
-
46
-
1. Verify the test release on [test.pypi.org](https://test.pypi.org/project/planet/)
47
-
1. Run the Github Action "Publish on PyPi"
44
+
1. Verify the successful run of the Github Action "Autopublish to TestPyPi" and validate the test release on [test.pypi.org](https://test.pypi.org/project/planet/)
45
+
1. Run the Github Action "Publish on PyPi", **!!!** Set Branch to the release branch **!!!**
46
+
1. Verify the successful run of the Github Action "Publish on PyPi" and validate the release on [pypi.org](https://pypi.org/project/planet/)
47
+
1. Push a commit to the PR updating `planet/__version__.py` to Next Dev Version
48
+
1. Merge PR
49
+
1. Announce the release through the following avenues:
50
+
**Planet Internal:* #python slack channel
51
+
* Changelog
52
+
* Twitter
48
53
49
-
######Local publishing
54
+
### Local publishing
50
55
51
56
Publishing to testpypi and pypi can also be performed locally with:
0 commit comments