##// END OF EJS Templates
3.2.1 release notes
3.2.1 release notes

File last commit:

r19848:da1fb354
r21527:4311a327
Show More
release
85 lines | 2.1 KiB | text/plain | TextLexer
Fernando Perez
Cleaned up release tools directory....
r2118 #!/usr/bin/env python
"""IPython release script.
Ville M. Vainio
crlf -> lf
r1032
Fernando Perez
Update release-related tools, make more py3k-friendly.
r4450 This should ONLY be run at real release time.
Fernando Perez
Cleaned up release tools directory....
r2118 """
Fernando Perez
Update release-related tools, make more py3k-friendly.
r4450 from __future__ import print_function
Ville M. Vainio
crlf -> lf
r1032
Fernando Perez
Cleaned up release tools directory....
r2118 from toollib import *
MinRK
add GitHub uploads to release script
r8598 from gh_api import post_download
Fernando Perez
Cleaned up release tools directory....
r2118
# Get main ipython dir, this will raise if it doesn't pass some checks
ipdir = get_ipdir()
Fernando Perez
Update release-related tools, make more py3k-friendly.
r4450 tooldir = pjoin(ipdir, 'tools')
distdir = pjoin(ipdir, 'dist')
Fernando Perez
Add 0.10.1 release notes to docs and minor tool updates....
r3135 # Where I keep static backups of each release
ipbackupdir = os.path.expanduser('~/ipython/backup')
MinRK
updates to release scripts...
r17581 if not os.path.exists(ipbackupdir):
os.makedirs(ipbackupdir)
Fernando Perez
Add 0.10.1 release notes to docs and minor tool updates....
r3135
# Start in main IPython dir
Fernando Perez
Cleaned up release tools directory....
r2118 cd(ipdir)
# Load release info
Min RK
remove strict requirement for less,invoke in wheel/sdist...
r19847 execfile(pjoin('IPython','core','release.py'), globals())
MinRK
add wheels to release...
r16795 # ensure js version is in sync
sh('./setup.py jsversion')
Min RK
remove strict requirement for less,invoke in wheel/sdist...
r19847 # build minified css and sourcemaps
sh('./setup.py css -x -f')
Fernando Perez
Cleaned up release tools directory....
r2118
Fernando Perez
Update release-related tools, make more py3k-friendly.
r4450 # Build site addresses for file uploads
release_site = '%s/release/%s' % (archive, version)
Fernando Perez
Fix backup URL. Final commit before 0.11 release.
r4457 backup_site = '%s/backup/' % archive
Fernando Perez
Update release-related tools, make more py3k-friendly.
r4450
# Start actual release process
print()
print('Releasing IPython')
print('=================')
print()
print('Version:', version)
print()
print('Source IPython directory:', ipdir)
print()
Ville M. Vainio
crlf -> lf
r1032
Fernando Perez
Add 0.10.1 release notes to docs and minor tool updates....
r3135 # Perform local backup, go to tools dir to run it.
cd(tooldir)
Fernando Perez
Update release-related tools, make more py3k-friendly.
r4450 sh('./make_tarball.py')
sh('mv ipython-*.tgz %s' % ipbackupdir)
Ville M. Vainio
crlf -> lf
r1032
Fernando Perez
Tools cleanup in getting ready for 0.10.rc....
r2115 # Build release files
Fernando Perez
Update release-related tools, make more py3k-friendly.
r4450 sh('./build_release %s' % ipdir)
Ville M. Vainio
crlf -> lf
r1032
Min RK
add 'upload' arg to release script...
r19848 if 'upload' not in sys.argv:
print("`./release upload` to register and release")
sys.exit(0)
Ville M. Vainio
crlf -> lf
r1032 # Register with the Python Package Index (PyPI)
Fernando Perez
Update release-related tools, make more py3k-friendly.
r4450 print( 'Registering with PyPI...')
Fernando Perez
Add 0.10.1 release notes to docs and minor tool updates....
r3135 cd(ipdir)
Fernando Perez
Update release-related tools, make more py3k-friendly.
r4450 sh('./setup.py register')
Ville M. Vainio
crlf -> lf
r1032
# Upload all files
Fernando Perez
Minor fix to release script.
r7778 sh(sdists + ' upload')
MinRK
updates to release scripts...
r17581 for py in ('2.7', '3.4'):
MinRK
more minor fixes to release scripts...
r17631 sh('python%s setupegg.py bdist_wheel upload' % py)
MinRK
add wheels to release...
r16795
Fernando Perez
Add 0.10.1 release notes to docs and minor tool updates....
r3135 cd(distdir)
Fernando Perez
Update release-related tools, make more py3k-friendly.
r4450 print( 'Uploading distribution files...')
Fernando Perez
Small fixes to release script to create remote paths.
r5791
MinRK
add GitHub uploads to release script
r8598 for fname in os.listdir('.'):
MinRK
updates to release scripts...
r17581 # TODO: update to GitHub releases API
MinRK
don't upload to GitHub in release script...
r12487 continue
MinRK
add GitHub uploads to release script
r8598 print('uploading %s to GitHub' % fname)
desc = "IPython %s source distribution" % version
post_download("ipython/ipython", fname, description=desc)
Fernando Perez
Small fixes to release script to create remote paths.
r5791 # Make target dir if it doesn't exist
sh('ssh %s "mkdir -p %s/release/%s" ' % (archive_user, archive_dir, version))
Fernando Perez
Update release-related tools, make more py3k-friendly.
r4450 sh('scp * %s' % release_site)
Ville M. Vainio
crlf -> lf
r1032
Fernando Perez
Update release-related tools, make more py3k-friendly.
r4450 print( 'Uploading backup files...')
Fernando Perez
Cleaned up release tools directory....
r2118 cd(ipbackupdir)
Fernando Perez
Update release-related tools, make more py3k-friendly.
r4450 sh('scp `ls -1tr *tgz | tail -1` %s' % backup_site)
Ville M. Vainio
crlf -> lf
r1032
Fernando Perez
Update release-related tools, make more py3k-friendly.
r4450 print('Done!')