@@ -41,12 +41,16 @@ installs it to a temporary directory, and runs the tests of that install.
41
41
Release checklist
42
42
=================
43
43
44
- * Review the open list of `issues <http://github.com/nipy/nibabel/issues >`_
44
+ * Review the open list of `issues <http://github.com/nipy/nibabel/issues >`_ .
45
+ Check whether there are outstanding issues that can be closed, and whether
46
+ there are any issues that should delay the release. Label them !
45
47
46
48
* Review and update the release notes. Review and update the :file: `Changelog `
47
- file. Get a partial list of contributors::
49
+ file. Get a partial list of contributors with something like ::
48
50
49
- git log "$@" | grep '^Author' | cut -d' ' -f 2- | sort | uniq
51
+ git log 0.9.0.. | grep '^Author' | cut -d' ' -f 2- | sort | uniq
52
+
53
+ where ``0.9.0 `` was the last release tag name.
50
54
51
55
Then manually go over the *git log * to make sure the release notes are
52
56
as complete as possible and that every contributor was recognized.
@@ -75,18 +79,36 @@ Release checklist
75
79
76
80
git tag -am 'First public release' 1.0.0
77
81
78
- * Branch to maintainance::
82
+ * Now the version number is OK, push the docs to sourceforge with::
83
+
84
+ make upload-htmldoc-mysfusername
85
+
86
+ where ``mysfusername`` is obviously your own sourceforge username.
87
+
88
+ * Set up maintenance / development branches
89
+
90
+ If this is this is a full release you need to set up two branches, one for
91
+ further substantial development (often called 'trunk') and another for
92
+ maintenance releases.
93
+
94
+ * Branch to maintainance::
95
+
96
+ git co -b maint/1.0.0
79
97
80
- git co -b maint/1.0.0
98
+ Set ``_version_extra`` back to ``.dev`` and bump ``_version_micro`` by 1.
99
+ Thus the maintenance series will have version numbers like - say - '1.0.1.dev'
100
+ until the next maintenance release - say '1.0.1'. Commit.
81
101
82
- Set ``_version_extra`` back to ``.dev`` and bump ``_version_micro`` by 1.
83
- Commmit. Push.
102
+ * Start next development series::
84
103
85
- * Start next development series::
104
+ git co main-master
86
105
87
- git co main-master
106
+ then restore ``.dev`` to ``_version_extra``, and bump ``_version_minor`` by 1.
107
+ Thus the development series ('trunk') will have a version number here of
108
+ '1.1.0.dev' and the next full release will be '1.1.0'.
88
109
89
- then restore ``.dev`` to ``_version_extra``, and bump ``_version_minor`` by 1.
110
+ If this is just a maintenance release from ``maint/1.0.0 `` or similar, just
111
+ tag and set the version number to - say - ``1.0.2.dev ``.
90
112
91
113
* Make next development release tag
92
114
@@ -96,11 +118,10 @@ Release checklist
96
118
For example 'upstream/1.0.0.dev' means "development start
97
119
for upcoming version 1.0.0.
98
120
99
- This tag is used in the Makefile rules to create development
100
- snapshot releases to create proper versions for those. The
101
- will name the last available annotated tag, the number of
102
- commits since that, and an abbrevated SHA1. See the docs of
103
- ``git describe `` for more info.
121
+ This tag is used in the Makefile rules to create development snapshot
122
+ releases to create proper versions for those. The version derives its name
123
+ from the last available annotated tag, the number of commits since that, and
124
+ an abbrevated SHA1. See the docs of ``git describe `` for more info.
104
125
105
126
Please take a look at the Makefile rules ``devel-src ``,
106
127
``devel-dsc `` and ``orig-src ``.
0 commit comments