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: docs/release.md
+32-3Lines changed: 32 additions & 3 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -18,16 +18,28 @@ The package version is mantained in `mambular/__version__.py` file. Increment th
18
18
## 3. Release
19
19
We use git flow for the package release.
20
20
21
+
- If you don't have git flow installed, you can follow the instructions [here](https://skoch.github.io/Git-Workflow/) to install it.
22
+
- Initialize git flow in the repository using the below command, if not already done.
23
+
- Use default options for the git flow initialization.
24
+
25
+
```sh
26
+
git flow init
27
+
```
28
+
- Start a new release using the below command. Replace `<version>` with the version number you want to release.
29
+
- The version number should be the same as the one you updated in the `__version__.py` file.
30
+
- The version number should be in the format `major.minor.patch`. For example, `v0.0.1`.
31
+
- The version number should be prefixed with a `v` as shown in the example. Otherwise, the pipeline to publish the package to PyPi will fail.
32
+
21
33
```sh
22
-
git flow release start <version>
34
+
git flow release start v0.0.1
23
35
```
24
-
- A new branch is created from the `develop` branch. This new branch is named according to the convention `release/<version>`. For example, if you run `git flow release start 1.0.0`, the new branch will be `release/1.0.0`.
36
+
- A new branch is created from the `develop` branch. This new branch is named according to the convention `release/<version>`. For example, if you run `git flow release start v0.0.1`, the new branch will be `release/v0.0.1`.
25
37
- The current working branch switches to the newly created release branch. This means any new commits will be added to the release branch, not the `develop` branch.
26
38
- This new branch is used to finalize the release. You can perform tasks such as version number bumps, documentation updates, and final testing.
27
39
28
40
Once you are satisfied with changes, use the below command to finish the release.
29
41
```sh
30
-
git flow release finish <version>
42
+
git flow release finish v0.0.1
31
43
```
32
44
33
45
- It will Merges the release branch into `main` (or `master`).
@@ -41,6 +53,23 @@ Finally, push the commits and tags to origin.
41
53
git push origin --tags
42
54
```
43
55
56
+
This will publish the tags to the remote repository.
57
+
58
+
Additionally, the latest documents are published as follows:
59
+
- A workflow is triggered from the `main` (or `master`) to publish the documentation via readthedocs.
60
+
- Documentation is published to readthedocs and can be accesseed at [mambular.readthedocs.io](https://mambular.readthedocs.io/en/latest/).
61
+
62
+
63
+
## 4. Publish package to PyPi
64
+
65
+
The package is published to PyPi using GitHub Actions. The workflow is triggered when a new tag is pushed to the repository. The workflow will build the package, upload it to PyPi.
66
+
67
+
## 5. GitHub Release
68
+
69
+
Create a new release on GitHub with the version number and release notes. The release notes should include the changes made in the release.
0 commit comments