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/Developers/How-to-release/index.rst
+19-24Lines changed: 19 additions & 24 deletions
Original file line number
Diff line number
Diff line change
@@ -10,21 +10,24 @@ Step 1: Define the Version Name
10
10
- **X** = 3 (this keeps the main version number consistent to sort releases and maintain `xmipp3`).
11
11
- **YY** = Year of the release.
12
12
- **ZZ** = Month of the release.
13
-
- Additionally, name the release after a Greek god or goddess. Check out the list at: https://www.gods-and-monsters.com/list-of-greek-gods-goddesses.html
13
+
- Additionally, name the release after a Greek god or goddess. `Check out the list <https://www.gods-and-monsters.com/list-of-greek-gods-goddesses.html>`__
14
14
- Example: `3.24.06 - Boreas` (for a June 2024 release).
15
15
16
+
17
+
16
18
Step 2: Update the `changelog.md`
17
19
----------------------------------
18
-
1. Go through the changes in:
20
+
1. Go through the changes in CHANGELOG.md file:
19
21
- **xmipp** (includes `xmippcore`).
20
22
- **scipion-em-xmipp**.
21
23
- **xmippViz**.
22
-
2. Follow the format used in previous releases.
24
+
2. Follow the tittle format used in previous releases.
23
25
- This is crucial because the release automation uses these tags.
24
26
3. Use pull requests as a reference to identify changes and describe them clearly.
25
27
26
28
Step 3: Schedule the Release
27
29
----------------------------
30
+
- Announce at least **two weeks in advance** that no new changes will be merged into `devel`. This stabilization period helps identify potential bugs in the `devel` branch.
28
31
- Prepare all steps in advance.
29
32
- Post the release at the **start of your workday** to address any issues promptly.
30
33
@@ -39,62 +42,54 @@ Step 5: Update Protocol Status
39
42
- Set to **PROD**, **NEW**, or **UPDATED** if applicable.
40
43
- Consider deprecating protocols no longer in use or supported.
41
44
42
-
Step 6: Announce the Release Freeze
43
-
------------------------------------
44
-
- Announce at least **two weeks in advance** that no new changes will be merged into `devel`.
45
-
- This stabilization period helps identify potential bugs in the `devel` branch.
46
45
47
-
Step 7: Create Candidate Branches
46
+
Step 6: Create Candidate Branches
48
47
----------------------------------
49
48
- Name the release branches according to the release version (e.g., `release-3.24.06`).
- Update the name, version, and release date in `here <https://github.com/I2PC/xmipp/blob/e72e2e9ea0ae824f60ded8b1f00b404d2c99d4d9/installer/constants/versions.py#L31>`__
- Change the `devel` variable to `release` in `here <https://github.com/I2PC/scipion-em-xmipp/blob/9881da0c6cdec69517e26fc025500d4940d44d0e/xmipp3/version.py#L28>`__
60
57
- Update `_current_xmipp_tag` and `_currentBinVersion` accordingly.
61
58
62
-
Step 9: Validate Release Branches Locally
59
+
Step 8: Validate Release Branches Locally
63
60
------------------------------------------
64
61
- Check out the release branches locally or on a test machine.
65
62
- Verify:
66
63
- Installation with and without Scipion.
67
64
- Execution of a few tests.
68
65
69
-
Step 10: Create Pull Requests
66
+
Step 9: Create Pull Requests
70
67
------------------------------
71
68
- Open four pull requests:
72
69
- **Release to master** for each relevant repository.
73
70
74
-
Step 11: Document Changes
71
+
Step 10: Document Changes
75
72
--------------------------
76
-
- Compile a list of changed files, lines added, and other details from the PRs.
77
-
- Document this in the Xmipp monitoring file.
73
+
- Compile a list of changed files, lines added, and other details from the PRs. Document this in the Xmipp monitoring file.
78
74
79
-
Step 12: Merge the Pull Requests
75
+
Step 11: Merge the Pull Requests
80
76
---------------------------------
81
77
- Merge the four PRs.
82
78
- This triggers the creation of release tags on GitHub.
83
-
- In **scipion-em-xmipp**, it will also upload the package to PyPI.
84
-
- Note: This is the most critical step to revert if issues arise.
79
+
- In **scipion-em-xmipp**, it will also upload the package to PyPI. Note: This is the most critical step to revert if issues arise.
85
80
86
-
Step 13: Announce the Release
81
+
Step 12: Announce the Release
87
82
------------------------------
88
83
- Share the release news via:
89
84
- Email lists.
90
85
- Discord.
91
86
- Any other relevant platforms.
92
87
93
-
Step 14: Consider XmippTomo
88
+
Step 13: Consider XmippTomo
94
89
----------------------------
95
90
- Evaluate whether **XmippTomo** needs a corresponding release.
96
91
97
-
Step 15: PR from Release to Devel
92
+
Step 14: PR from Release to Devel
98
93
----------------------------------
99
94
- Create a pull request from `release` back to `devel`.
0 commit comments