Skip to content

Commit 33d8144

Browse files
committed
DOC: update release procedure with buildbot
Add buildbot step to run the release checks.
1 parent 9783496 commit 33d8144

File tree

1 file changed

+49
-39
lines changed

1 file changed

+49
-39
lines changed

doc/source/devel/make_release.rst

+49-39
Original file line numberDiff line numberDiff line change
@@ -81,68 +81,78 @@ Release checklist
8181

8282
nosetests --with-doctest nibabel
8383

84-
* Make sure all tests pass from sdist::
84+
* Make sure you are set up to use the ``try_branch.py`` - see
85+
https://github.com/nipy/nibotmi/blob/master/install.rst#trying-a-set-of-changes-on-the-buildbots
8586

86-
make sdist-tests
87+
* Make sure all your changes are committed or removed, because
88+
``try_branch.py`` pushes up the changes in the working tree;
8789

88-
and the three ways of installing (from tarball, repo, local in repo)::
90+
* The following checks get run with the ``nibabel-release-checks``, as in::
8991

90-
make check-version-info
92+
try_branch.py nibabel-release-checks
9193

92-
The last may not raise any errors, but you should detect in the output
93-
lines of this form::
94+
Beware: this build does not usually error, even if the steps do not give the
95+
expected output. You need to check the output manually by going to
96+
https://nipy.bic.berkeley.edu/builders/nibabel-release-checks after the
97+
build has finished.
9498

95-
{'sys_version': '2.6.6 (r266:84374, Aug 31 2010, 11:00:51) \n[GCC 4.0.1 (Apple Inc. build 5493)]', 'commit_source': 'archive substitution', 'np_version': '1.5.0', 'commit_hash': '25b4125', 'pkg_path': '/var/folders/jg/jgfZ12ZXHwGSFKD85xLpLk+++TI/-Tmp-/tmpGPiD3E/pylib/nibabel', 'sys_executable': '/Library/Frameworks/Python.framework/Versions/2.6/Resources/Python.app/Contents/MacOS/Python', 'sys_platform': 'darwin'}
96-
/var/folders/jg/jgfZ12ZXHwGSFKD85xLpLk+++TI/-Tmp-/tmpGPiD3E/pylib/nibabel/__init__.pyc
97-
{'sys_version': '2.6.6 (r266:84374, Aug 31 2010, 11:00:51) \n[GCC 4.0.1 (Apple Inc. build 5493)]', 'commit_source': 'installation', 'np_version': '1.5.0', 'commit_hash': '25b4125', 'pkg_path': '/var/folders/jg/jgfZ12ZXHwGSFKD85xLpLk+++TI/-Tmp-/tmpGPiD3E/pylib/nibabel', 'sys_executable': '/Library/Frameworks/Python.framework/Versions/2.6/Resources/Python.app/Contents/MacOS/Python', 'sys_platform': 'darwin'}
98-
/Users/mb312/dev_trees/nibabel/nibabel/__init__.pyc
99-
{'sys_version': '2.6.6 (r266:84374, Aug 31 2010, 11:00:51) \n[GCC 4.0.1 (Apple Inc. build 5493)]', 'commit_source': 'repository', 'np_version': '1.5.0', 'commit_hash': '25b4125', 'pkg_path': '/Users/mb312/dev_trees/nibabel/nibabel', 'sys_executable': '/Library/Frameworks/Python.framework/Versions/2.6/Resources/Python.app/Contents/MacOS/Python', 'sys_platform': 'darwin'}
99+
* Make sure all tests pass from sdist::
100100

101-
* Check the ``setup.py`` file is picking up all the library code and scripts,
102-
with::
101+
make sdist-tests
103102

104-
make check-files
103+
and the three ways of installing (from tarball, repo, local in repo)::
105104

106-
Look for output at the end about missed files, such as::
105+
make check-version-info
107106

108-
Missed script files: /Users/mb312/dev_trees/nibabel/bin/nib-dicomfs, /Users/mb312/dev_trees/nibabel/bin/nifti1_diagnose.py
107+
The last may not raise any errors, but you should detect in the output
108+
lines of this form::
109109

110-
Fix ``setup.py`` to carry across any files that should be in the
111-
distribution.
110+
{'sys_version': '2.6.6 (r266:84374, Aug 31 2010, 11:00:51) \n[GCC 4.0.1 (Apple Inc. build 5493)]', 'commit_source': 'archive substitution', 'np_version': '1.5.0', 'commit_hash': '25b4125', 'pkg_path': '/var/folders/jg/jgfZ12ZXHwGSFKD85xLpLk+++TI/-Tmp-/tmpGPiD3E/pylib/nibabel', 'sys_executable': '/Library/Frameworks/Python.framework/Versions/2.6/Resources/Python.app/Contents/MacOS/Python', 'sys_platform': 'darwin'}
111+
/var/folders/jg/jgfZ12ZXHwGSFKD85xLpLk+++TI/-Tmp-/tmpGPiD3E/pylib/nibabel/__init__.pyc
112+
{'sys_version': '2.6.6 (r266:84374, Aug 31 2010, 11:00:51) \n[GCC 4.0.1 (Apple Inc. build 5493)]', 'commit_source': 'installation', 'np_version': '1.5.0', 'commit_hash': '25b4125', 'pkg_path': '/var/folders/jg/jgfZ12ZXHwGSFKD85xLpLk+++TI/-Tmp-/tmpGPiD3E/pylib/nibabel', 'sys_executable': '/Library/Frameworks/Python.framework/Versions/2.6/Resources/Python.app/Contents/MacOS/Python', 'sys_platform': 'darwin'}
113+
/Users/mb312/dev_trees/nibabel/nibabel/__init__.pyc
114+
{'sys_version': '2.6.6 (r266:84374, Aug 31 2010, 11:00:51) \n[GCC 4.0.1 (Apple Inc. build 5493)]', 'commit_source': 'repository', 'np_version': '1.5.0', 'commit_hash': '25b4125', 'pkg_path': '/Users/mb312/dev_trees/nibabel/nibabel', 'sys_executable': '/Library/Frameworks/Python.framework/Versions/2.6/Resources/Python.app/Contents/MacOS/Python', 'sys_platform': 'darwin'}
112115

113-
* You may have virtualenvs for different Python versions. Check the tests
114-
pass for different configurations. The long-hand way looks like this::
116+
* Check the ``setup.py`` file is picking up all the library code and scripts,
117+
with::
115118

116-
workon python26
117-
make distclean
118-
make sdist-tests
119-
deactivate
119+
make check-files
120120

121-
etc for the different virtualenvs.
121+
Look for output at the end about missed files, such as::
122122

123-
* Check on different platforms, particularly windows and PPC. Look at the
124-
`nipy buildbot`_ automated test runs for this.
123+
Missed script files: /Users/mb312/dev_trees/nibabel/bin/nib-dicomfs, /Users/mb312/dev_trees/nibabel/bin/nifti1_diagnose.py
125124

126-
* Check the documentation doctests::
125+
Fix ``setup.py`` to carry across any files that should be in the
126+
distribution.
127127

128-
make -C doc doctest
128+
* Check the documentation doctests::
129129

130-
This should also be tested by `nibabel on travis`_.
130+
make -C doc doctest
131131

132-
* Check everything compiles without syntax errors::
132+
This should also be tested by `nibabel on travis`_.
133133

134-
python -m compileall .
134+
* Check everything compiles without syntax errors::
135135

136-
* Edit ``nibabel/info.py`` to set ``_version_extra`` to ``''``; commit.
137-
Then::
136+
python -m compileall .
138137

139-
make source-release
138+
* Check that nibabel correctly generates a source distribution::
140139

141-
* Make sure you are set up to use the ``try_branch.py`` - see
142-
https://github.com/nipy/nibotmi/blob/master/install.rst#trying-a-set-of-changes-on-the-buildbots
140+
make source-release
143141

144-
* Make sure all your changes are committed or removed, because
145-
``try_branch.py`` pushes up the changes in the working tree;
142+
* Edit ``nibabel/info.py`` to set ``_version_extra`` to ``''``; commit;
143+
144+
* You may have virtualenvs for different Python versions. Check the tests
145+
pass for different configurations. The long-hand way looks like this::
146+
147+
workon python26
148+
make distclean
149+
make sdist-tests
150+
deactivate
151+
152+
etc for the different virtualenvs;
153+
154+
* Check on different platforms, particularly windows and PPC. Look at the
155+
`nipy buildbot`_ automated test runs for this;
146156

147157
* Force build of your release candidate branch with the slow and big-memory
148158
tests on the ``zibi`` buildslave::

0 commit comments

Comments
 (0)