Show More
@@ -10,6 +10,14 b' Conveniently, the ``release`` script in the ``tools`` directory of the ``IPython' | |||
|
10 | 10 | repository automates most of the release process. This document serves as a |
|
11 | 11 | handy reminder and checklist for the release manager. |
|
12 | 12 | |
|
13 | During the release process, you might need the extra following dependencies: | |
|
14 | ||
|
15 | - ``keyring`` to access your GitHub authentication tokens | |
|
16 | - ``testpath`` to fake some file system operations | |
|
17 | - ``graphviz`` to generate some graphs in the documentation | |
|
18 | ||
|
19 | ||
|
20 | ||
|
13 | 21 | 1. Set Environment variables |
|
14 | 22 | ---------------------------- |
|
15 | 23 | |
@@ -72,6 +80,9 b' If a major release:' | |||
|
72 | 80 | file you just created and remove temporarily the first entry called |
|
73 | 81 | ``development`` (you'll need to add it back after release). |
|
74 | 82 | |
|
83 | Make sure that the stats file have a header or it won't be rendered in | |
|
84 | the final documentation. | |
|
85 | ||
|
75 | 86 | To find duplicates and update `.mailmap`, use:: |
|
76 | 87 | |
|
77 | 88 | git log --format="%aN <%aE>" $PREV_RELEASE... | sort -u -f |
@@ -174,9 +185,11 b' Use the following to actually upload the result of the build::' | |||
|
174 | 185 | |
|
175 | 186 | It should posts them to ``archive.ipython.org``. |
|
176 | 187 | |
|
177 |
You will need to use `twine <https://github.com/pypa/twine>`_ |
|
|
178 |
|
|
|
179 | to upload packages over SSL. | |
|
188 | You will need to use `twine <https://github.com/pypa/twine>`_ ) manually to | |
|
189 | actually upload on PyPI. Unlike setuptools, twine is able to upload packages | |
|
190 | over SSL. | |
|
191 | ||
|
192 | twine upload dist/* | |
|
180 | 193 | |
|
181 | 194 | |
|
182 | 195 | PyPI/Warehouse will automatically hide previous releases. If you are uploading |
@@ -216,6 +229,13 b' The IPython website should document the new release:' | |||
|
216 | 229 | - update current version and download links |
|
217 | 230 | - update links on the documentation page (especially if a major release) |
|
218 | 231 | |
|
232 | 12. Update readthedocs | |
|
233 | ---------------------- | |
|
234 | ||
|
235 | Make sure to update readthedocs and set the latest tag as stable, as well as | |
|
236 | checked that previous release is still building under its own tag. | |
|
237 | ||
|
238 | ||
|
219 | 239 | 12. Celebrate! |
|
220 | 240 | -------------- |
|
221 | 241 |
@@ -45,27 +45,8 b' print()' | |||
|
45 | 45 | |
|
46 | 46 | # Perform local backup, go to tools dir to run it. |
|
47 | 47 | cd(tooldir) |
|
48 | sh('./make_tarball.py') | |
|
49 | sh('mv ipython-*.tgz %s' % ipbackupdir) | |
|
50 | ||
|
51 | # Build release files | |
|
52 | sh('./build_release %s' % ipdir) | |
|
53 | ||
|
54 | # Not Registering with PyPI, registering with setup.py is insecure as communication is not encrypted | |
|
55 | cd(ipdir) | |
|
56 | ||
|
57 | # Upload all files | |
|
58 | sh(sdists) | |
|
59 | ||
|
60 | buildwheels() | |
|
61 | ||
|
62 | if 'upload' not in sys.argv: | |
|
63 | print("`./release upload` to register and release") | |
|
64 | sys.exit(0) | |
|
65 | ||
|
66 | ||
|
67 | print('Will not upload with setuptools as upload connection is insecure. Please use `twine upload dist/*` to upload the files to PyPI') | |
|
68 | 48 | |
|
49 | if 'upload' in sys.argv: | |
|
69 | 50 | cd(distdir) |
|
70 | 51 | print( 'Uploading distribution files to GitHub...') |
|
71 | 52 | |
@@ -86,3 +67,23 b' cd(ipbackupdir)' | |||
|
86 | 67 | sh('scp `ls -1tr *tgz | tail -1` %s' % backup_site) |
|
87 | 68 | |
|
88 | 69 | print('Done!') |
|
70 | print('Use `twine upload dist/*` to upload the files to PyPI') | |
|
71 | else: | |
|
72 | sh('./make_tarball.py') | |
|
73 | sh('mv ipython-*.tgz %s' % ipbackupdir) | |
|
74 | ||
|
75 | # Build release files | |
|
76 | sh('./build_release %s' % ipdir) | |
|
77 | ||
|
78 | # Not Registering with PyPI, registering with setup.py is insecure as communication is not encrypted | |
|
79 | cd(ipdir) | |
|
80 | ||
|
81 | # Upload all files | |
|
82 | sh(sdists) | |
|
83 | ||
|
84 | buildwheels() | |
|
85 | print("`./release upload` to upload source distribution on github and ipython archive") | |
|
86 | sys.exit(0) | |
|
87 | ||
|
88 | ||
|
89 |
General Comments 0
You need to be logged in to leave comments.
Login now