##// END OF EJS Templates
Deprecated the module IPython.utils.warn
Deprecated the module IPython.utils.warn

File last commit:

r22043:e3227929
r22091:c03585df
Show More
release
88 lines | 2.2 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
Matthias Bussonnier
add explicits imports on release tools
r22021 import os
import sys
Matthias Bussonnier
Improve build script....
r22028 from toollib import (get_ipdir, pjoin, cd, execfile, sh, archive,
Matthias Bussonnier
Factor build logic into function
r22043 sdists, archive_user, archive_dir, buildwheels)
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
Matthias Bussonnier
Improve build script....
r22028 version = None
Min RK
remove strict requirement for less,invoke in wheel/sdist...
r19847 execfile(pjoin('IPython','core','release.py'), globals())
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
Matthias Bussonnier
turn print into comment
r22026 # Not Registering with PyPI, registering with setup.py is insecure as communication is not encrypted
Fernando Perez
Add 0.10.1 release notes to docs and minor tool updates....
r3135 cd(ipdir)
Ville M. Vainio
crlf -> lf
r1032
# Upload all files
Matthias Bussonnier
Update release script not to upload insecurly
r22023 sh(sdists)
Matthias Bussonnier
Factor build logic into function
r22043
buildwheels()
Matthias Bussonnier
Update release script not to upload insecurly
r22023
Matthias Bussonnier
Improve build script....
r22028 if 'upload' not in sys.argv:
print("`./release upload` to register and release")
sys.exit(0)
Matthias Bussonnier
Update release script not to upload insecurly
r22023 print('Will not upload with setuptools as upload connection is insecure. Please use `twine upload dist/*` to upload the files to PyPI')
MinRK
add wheels to release...
r16795
Fernando Perez
Add 0.10.1 release notes to docs and minor tool updates....
r3135 cd(distdir)
Matthias Bussonnier
Update release script not to upload insecurly
r22023 print( 'Uploading distribution files to GitHub...')
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
Matthias Bussonnier
Update release script not to upload insecurly
r22023 print('Uploading IPython to backup site.')
Fernando Perez
Small fixes to release script to create remote paths.
r5791 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!')