##// END OF EJS Templates
pythonw in py3k sets std{in,out,err} to None...
pythonw in py3k sets std{in,out,err} to None The print statement works without error, even though the stdio file objects are instances of None. Since they are instances of None, however, the encoding attribute will not exist, so protect blind attribute access of std{in,out,err} by using a new function, get_stream_enc.

File last commit:

r5791:e374a405
r6651:40ec4c33
Show More
release
64 lines | 1.5 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 *
# 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')
# Start in main IPython dir
Fernando Perez
Cleaned up release tools directory....
r2118 cd(ipdir)
# Load release info
Brian Granger
Merging -r 1192 from lp:ipython.
r2146 execfile(pjoin('IPython','core','release.py'))
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
# 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
Update release-related tools, make more py3k-friendly.
r4450 sh('./setup.py sdist --formats=gztar,zip upload')
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
# 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!')