##// END OF EJS Templates
release 8.0.0a1
Matthias Bussonnier -
Show More
@@ -1,54 +1,54 b''
1 # -*- coding: utf-8 -*-
1 # -*- coding: utf-8 -*-
2 """Release data for the IPython project."""
2 """Release data for the IPython project."""
3
3
4 #-----------------------------------------------------------------------------
4 #-----------------------------------------------------------------------------
5 # Copyright (c) 2008, IPython Development Team.
5 # Copyright (c) 2008, IPython Development Team.
6 # Copyright (c) 2001, Fernando Perez <fernando.perez@colorado.edu>
6 # Copyright (c) 2001, Fernando Perez <fernando.perez@colorado.edu>
7 # Copyright (c) 2001, Janko Hauser <jhauser@zscout.de>
7 # Copyright (c) 2001, Janko Hauser <jhauser@zscout.de>
8 # Copyright (c) 2001, Nathaniel Gray <n8gray@caltech.edu>
8 # Copyright (c) 2001, Nathaniel Gray <n8gray@caltech.edu>
9 #
9 #
10 # Distributed under the terms of the Modified BSD License.
10 # Distributed under the terms of the Modified BSD License.
11 #
11 #
12 # The full license is in the file COPYING.txt, distributed with this software.
12 # The full license is in the file COPYING.txt, distributed with this software.
13 #-----------------------------------------------------------------------------
13 #-----------------------------------------------------------------------------
14
14
15 # IPython version information. An empty _version_extra corresponds to a full
15 # IPython version information. An empty _version_extra corresponds to a full
16 # release. 'dev' as a _version_extra string means this is a development
16 # release. 'dev' as a _version_extra string means this is a development
17 # version
17 # version
18 _version_major = 8
18 _version_major = 8
19 _version_minor = 0
19 _version_minor = 0
20 _version_patch = 0
20 _version_patch = 0
21 _version_extra = '.dev'
21 _version_extra = '.dev'
22 # _version_extra = 'b1'
22 # _version_extra = 'b1'
23 # _version_extra = "" # Uncomment this for full releases
23 _version_extra = "a1" # Uncomment this for full releases
24
24
25 # Construct full version string from these.
25 # Construct full version string from these.
26 _ver = [_version_major, _version_minor, _version_patch]
26 _ver = [_version_major, _version_minor, _version_patch]
27
27
28 __version__ = '.'.join(map(str, _ver))
28 __version__ = '.'.join(map(str, _ver))
29 if _version_extra:
29 if _version_extra:
30 __version__ = __version__ + _version_extra
30 __version__ = __version__ + _version_extra
31
31
32 version = __version__ # backwards compatibility name
32 version = __version__ # backwards compatibility name
33 version_info = (_version_major, _version_minor, _version_patch, _version_extra)
33 version_info = (_version_major, _version_minor, _version_patch, _version_extra)
34
34
35 # Change this when incrementing the kernel protocol version
35 # Change this when incrementing the kernel protocol version
36 kernel_protocol_version_info = (5, 0)
36 kernel_protocol_version_info = (5, 0)
37 kernel_protocol_version = "%i.%i" % kernel_protocol_version_info
37 kernel_protocol_version = "%i.%i" % kernel_protocol_version_info
38
38
39 license = 'BSD'
39 license = 'BSD'
40
40
41 authors = {'Fernando' : ('Fernando Perez','fperez.net@gmail.com'),
41 authors = {'Fernando' : ('Fernando Perez','fperez.net@gmail.com'),
42 'Janko' : ('Janko Hauser','jhauser@zscout.de'),
42 'Janko' : ('Janko Hauser','jhauser@zscout.de'),
43 'Nathan' : ('Nathaniel Gray','n8gray@caltech.edu'),
43 'Nathan' : ('Nathaniel Gray','n8gray@caltech.edu'),
44 'Ville' : ('Ville Vainio','vivainio@gmail.com'),
44 'Ville' : ('Ville Vainio','vivainio@gmail.com'),
45 'Brian' : ('Brian E Granger', 'ellisonbg@gmail.com'),
45 'Brian' : ('Brian E Granger', 'ellisonbg@gmail.com'),
46 'Min' : ('Min Ragan-Kelley', 'benjaminrk@gmail.com'),
46 'Min' : ('Min Ragan-Kelley', 'benjaminrk@gmail.com'),
47 'Thomas' : ('Thomas A. Kluyver', 'takowl@gmail.com'),
47 'Thomas' : ('Thomas A. Kluyver', 'takowl@gmail.com'),
48 'Jorgen' : ('Jorgen Stenarson', 'jorgen.stenarson@bostream.nu'),
48 'Jorgen' : ('Jorgen Stenarson', 'jorgen.stenarson@bostream.nu'),
49 'Matthias' : ('Matthias Bussonnier', 'bussonniermatthias@gmail.com'),
49 'Matthias' : ('Matthias Bussonnier', 'bussonniermatthias@gmail.com'),
50 }
50 }
51
51
52 author = 'The IPython Development Team'
52 author = 'The IPython Development Team'
53
53
54 author_email = 'ipython-dev@python.org'
54 author_email = 'ipython-dev@python.org'
@@ -1,85 +1,85 b''
1 #!/usr/bin/env python3
1 #!/usr/bin/env python3
2 """IPython release script.
2 """IPython release script.
3
3
4 This should ONLY be run at real release time.
4 This should ONLY be run at real release time.
5 """
5 """
6 from __future__ import print_function
6 from __future__ import print_function
7
7
8 import os
8 import os
9 from glob import glob
9 from glob import glob
10 from subprocess import call
10 from subprocess import call
11 import sys
11 import sys
12
12
13 from toollib import (get_ipdir, pjoin, cd, execfile, sh, archive,
13 from toollib import (get_ipdir, pjoin, cd, execfile, sh, archive,
14 archive_user, archive_dir)
14 archive_user, archive_dir)
15
15
16 # Get main ipython dir, this will raise if it doesn't pass some checks
16 # Get main ipython dir, this will raise if it doesn't pass some checks
17 ipdir = get_ipdir()
17 ipdir = get_ipdir()
18 tooldir = pjoin(ipdir, 'tools')
18 tooldir = pjoin(ipdir, 'tools')
19 distdir = pjoin(ipdir, 'dist')
19 distdir = pjoin(ipdir, 'dist')
20
20
21 # Where I keep static backups of each release
21 # Where I keep static backups of each release
22 ipbackupdir = os.path.expanduser('~/ipython/backup')
22 ipbackupdir = os.path.expanduser('~/ipython/backup')
23 if not os.path.exists(ipbackupdir):
23 if not os.path.exists(ipbackupdir):
24 os.makedirs(ipbackupdir)
24 os.makedirs(ipbackupdir)
25
25
26 # Start in main IPython dir
26 # Start in main IPython dir
27 cd(ipdir)
27 cd(ipdir)
28
28
29 # Load release info
29 # Load release info
30 version = None
30 version = None
31 execfile(pjoin('IPython','core','release.py'), globals())
31 execfile(pjoin('IPython','core','release.py'), globals())
32
32
33 # Build site addresses for file uploads
33 # Build site addresses for file uploads
34 release_site = '%s/release/%s' % (archive, version)
34 release_site = '%s/release/%s' % (archive, version)
35 backup_site = '%s/backup/' % archive
35 backup_site = '%s/backup/' % archive
36
36
37 # Start actual release process
37 # Start actual release process
38 print()
38 print()
39 print('Releasing IPython')
39 print('Releasing IPython')
40 print('=================')
40 print('=================')
41 print()
41 print()
42 print('Version:', version)
42 print('Version:', version)
43 print()
43 print()
44 print('Source IPython directory:', ipdir)
44 print('Source IPython directory:', ipdir)
45 print()
45 print()
46
46
47 # Perform local backup, go to tools dir to run it.
47 # Perform local backup, go to tools dir to run it.
48 cd(tooldir)
48 cd(tooldir)
49
49
50 if 'upload' in sys.argv:
50 if 'upload' in sys.argv:
51 cd(distdir)
51 cd(distdir)
52
52
53 # do not upload OS specific files like .DS_Store
53 # do not upload OS specific files like .DS_Store
54 to_upload = glob('*.whl')+glob('*.tar.gz')
54 to_upload = glob('*.whl')+glob('*.tar.gz')
55
55
56 # Make target dir if it doesn't exist
56 # Make target dir if it doesn't exist
57 print('1. Uploading IPython to archive.ipython.org')
57 print('1. Uploading IPython to archive.ipython.org')
58 sh('ssh %s "mkdir -p %s/release/%s" ' % (archive_user, archive_dir, version))
58 sh('ssh %s "mkdir -p %s/release/%s" ' % (archive_user, archive_dir, version))
59 sh('scp *.tar.gz *.tar.xz *.whl %s' % release_site)
59 sh('scp *.tar.gz *.tar.xz *.whl %s' % release_site)
60
60
61 print('2. Uploading backup files...')
61 print('2. Uploading backup files...')
62 cd(ipbackupdir)
62 cd(ipbackupdir)
63 sh('scp `ls -1tr *tgz | tail -1` %s' % backup_site)
63 sh('scp `ls -1tr *tgz | tail -1` %s' % backup_site)
64
64
65 print('3. Uploading to PyPI using twine')
65 print('3. Uploading to PyPI using twine')
66 cd(distdir)
66 cd(distdir)
67 call(['twine', 'upload', '--verbose'] + to_upload)
67 call(['twine', 'upload', '--verbose'] + to_upload)
68
68
69 else:
69 else:
70 # Build, but don't upload
70 # Build, but don't upload
71
71
72 # Make backup tarball
72 # Make backup tarball
73 sh('./make_tarball.py')
73 sh('python make_tarball.py')
74 sh('mv ipython-*.tgz %s' % ipbackupdir)
74 sh('mv ipython-*.tgz %s' % ipbackupdir)
75
75
76 # Build release files
76 # Build release files
77 sh('./build_release')
77 sh('./build_release')
78
78
79 cd(ipdir)
79 cd(ipdir)
80
80
81 print("`./release upload` to upload source distribution on PyPI and ipython archive")
81 print("`./release upload` to upload source distribution on PyPI and ipython archive")
82 sys.exit(0)
82 sys.exit(0)
83
83
84
84
85
85
General Comments 0
You need to be logged in to leave comments. Login now