##// END OF EJS Templates
Releasing version 0.10.1....
Fernando Perez -
Show More
@@ -2,7 +2,7 b''
2 """Release data for the IPython project."""
2 """Release data for the IPython project."""
3
3
4 #*****************************************************************************
4 #*****************************************************************************
5 # Copyright (C) 2008-2009 The IPython Development Team
5 # Copyright (C) 2008-2010 The IPython Development Team
6 # Copyright (C) 2001-2008 Fernando Perez <fperez@colorado.edu>
6 # Copyright (C) 2001-2008 Fernando Perez <fperez@colorado.edu>
7 # Copyright (c) 2001 Janko Hauser <jhauser@zscout.de> and Nathaniel Gray
7 # Copyright (c) 2001 Janko Hauser <jhauser@zscout.de> and Nathaniel Gray
8 # <n8gray@caltech.edu>
8 # <n8gray@caltech.edu>
@@ -29,7 +29,7 b' IPython requires Python 2.4 or newer.'
29 """
29 """
30
30
31 #*****************************************************************************
31 #*****************************************************************************
32 # Copyright (C) 2008-2009 The IPython Development Team
32 # Copyright (C) 2008-2010 The IPython Development Team
33 # Copyright (C) 2001-2007 Fernando Perez. <fperez@colorado.edu>
33 # Copyright (C) 2001-2007 Fernando Perez. <fperez@colorado.edu>
34 #
34 #
35 # Distributed under the terms of the BSD License. The full license is in
35 # Distributed under the terms of the BSD License. The full license is in
@@ -76,11 +76,11 b" EXCLUDE = [pjoin('IPython', 'external'),"
76 pjoin('IPython', 'testing', 'tutils'),
76 pjoin('IPython', 'testing', 'tutils'),
77 pjoin('IPython', 'testing', 'tools'),
77 pjoin('IPython', 'testing', 'tools'),
78 pjoin('IPython', 'testing', 'mkdoctests'),
78 pjoin('IPython', 'testing', 'mkdoctests'),
79 pjoin('IPython', 'gui'),
79 ]
80 ]
80
81
81 if not have_wx:
82 if not have_wx:
82 EXCLUDE.append(pjoin('IPython', 'Extensions', 'igrid'))
83 EXCLUDE.append(pjoin('IPython', 'Extensions', 'igrid'))
83 EXCLUDE.append(pjoin('IPython', 'gui'))
84 EXCLUDE.append(pjoin('IPython', 'frontend', 'wx'))
84 EXCLUDE.append(pjoin('IPython', 'frontend', 'wx'))
85
85
86 if not have_wx_aui:
86 if not have_wx_aui:
@@ -12,6 +12,102 b''
12 What's new
12 What's new
13 ==========
13 ==========
14
14
15 Release 0.10.1
16 ==============
17
18 IPython 0.10.1 was released October 11, 2010, over a year after version 0.10.
19 This is mostly a bugfix release, since after version 0.10 was released, the
20 development team's energy has been focused on the 0.11 series. We have
21 nonetheless tried to backport what fixes we could into 0.10.1, as it remains
22 the stable series that many users have in production systems they rely on.
23
24 Since the 0.11 series changes many APIs in backwards-incompatible ways, we are
25 willing to continue maintaining the 0.10.x series. We don't really have time
26 to actively write new code for 0.10.x, but we are happy to accept patches and
27 pull requests on the IPython `github site`_. If sufficient contributions are
28 made that improve 0.10.1, we will roll them into future releases. For this
29 purpose, we will have a branch called 0.10.2 on github, on which you can base
30 your contributions.
31
32 .. _github site: http://github.com/ipython
33
34 For this release, we applied approximately 60 commits totaling a diff of over
35 7000 lines::
36
37 (0.10.1)amirbar[dist]> git diff --oneline rel-0.10.. | wc -l
38 7296
39
40 Highlights of this release:
41
42 - The only significant new feature is that IPython's parallel computing
43 machinery now supports natively the Sun Grid Engine and LSF schedulers. This
44 work was a joint contribution from Justin Riley, Satra Ghosh and Matthieu
45 Brucher, who put a lot of work into it. We also improved traceback handling
46 in remote tasks, as well as providing better control for remote task IDs.
47
48 - New IPython Sphinx directive. You can use this directive to mark blocks in
49 reSructuredText documents as containig IPython syntax (including figures) and
50 the will be executed during the build::
51
52 .. ipython::
53
54 In [2]: plt.figure() # ensure a fresh figure
55
56 @savefig psimple.png width=4in
57 In [3]: plt.plot([1,2,3])
58 Out[3]: [<matplotlib.lines.Line2D object at 0x9b74d8c>]
59
60 - Various fixes to the standalone ipython-wx application.
61
62 - We now ship internally the excellent argparse library, graciously licensed
63 under BSD terms by Steven Bethard. Now (2010) that argparse has become part
64 of Python 2.7 this will be less of an issue, but Steven's relicensing allowed
65 us to start updating IPython to using argparse well before Python 2.7. Many
66 thanks!
67
68 - Robustness improvements so that IPython doesn't crash if the readline library
69 is absent (though obviously a lot of functionality that requires readline
70 will not be available).
71
72 - Improvements to tab completion in Emacs with Python 2.6.
73
74 - Logging now supports timestamps (see ``%logstart?`` for full details).
75
76 - A long-standing and quite annoying bug where parentheses would be added to
77 ``print`` statements, under Python 2.5 and 2.6, was finally fixed.
78
79 - Improved handling of libreadline on Apple OSX.
80
81 - Fix ``reload`` method of IPython demos, which was broken.
82
83 - Fixes for the ipipe/ibrowse system on OSX.
84
85 - Fixes for Zope profile.
86
87 - Fix %timeit reporting when the time is longer than 1000s.
88
89 - Avoid lockups with ? or ?? in SunOS, due to a bug in termios.
90
91 - The usual assortment of miscellaneous bug fixes and small improvements.
92
93 The following people contributed to this release (please let us know if we
94 ommitted your name and we'll gladly fix this in the notes for the future):
95
96 * Beni Cherniavsky
97 * Boyd Waters.
98 * David Warde-Farley
99 * Fernando Perez
100 * Gökhan Sever
101 * Justin Riley
102 * Kiorky
103 * Laurent Dufrechou
104 * Mark E. Smith
105 * Matthieu Brucher
106 * Satrajit Ghosh
107 * Sebastian Busch
108 * Václav Šmilauer
109
110
15 Release 0.10
111 Release 0.10
16 ============
112 ============
17
113
@@ -7,7 +7,7 b' History'
7 Origins
7 Origins
8 =======
8 =======
9
9
10 IPython was starting in 2001 by Fernando Perez. IPython as we know it
10 IPython was started in 2001 by Fernando Perez. IPython as we know it
11 today grew out of the following three projects:
11 today grew out of the following three projects:
12
12
13 * ipython by Fernando Pérez. I was working on adding
13 * ipython by Fernando Pérez. I was working on adding
@@ -67,8 +67,9 b' def mangle_docstrings(app, what, name, obj, options, lines,'
67
67
68 def mangle_signature(app, what, name, obj, options, sig, retann):
68 def mangle_signature(app, what, name, obj, options, sig, retann):
69 # Do not try to inspect classes that don't define `__init__`
69 # Do not try to inspect classes that don't define `__init__`
70 if (inspect.isclass(obj) and
70 init = getattr(obj, '__init__', None)
71 'initializes x; see ' in pydoc.getdoc(obj.__init__)):
71 if (init is not None and
72 'initializes x; see ' in pydoc.getdoc(init)):
72 return '', ''
73 return '', ''
73
74
74 if not (callable(obj) or hasattr(obj, '__argspec_is_invalid_')): return
75 if not (callable(obj) or hasattr(obj, '__argspec_is_invalid_')): return
@@ -14,15 +14,17 b" execfile(pjoin('IPython','Release.py'))"
14 compile_tree()
14 compile_tree()
15
15
16 # Cleanup
16 # Cleanup
17 for d in ['build','dist',pjoin('docs','build'),pjoin('docs','dist')]:
17 for d in ['build','dist',pjoin('docs','build'),pjoin('docs','dist'),
18 pjoin('docs','source','api','generated')]:
18 if os.path.isdir(d):
19 if os.path.isdir(d):
19 remove_tree(d)
20 remove_tree(d)
20
21
21 # Build source and binary distros
22 # Build source and binary distros
22 c('./setup.py sdist --formats=gztar,zip')
23 c('./setup.py sdist --formats=gztar,zip')
23
24
25
24 # Build eggs
26 # Build eggs
25 c('python2.5 ./setupegg.py bdist_egg')
27 #c('python2.5 ./setupegg.py bdist_egg')
26 c('python2.6 ./setupegg.py bdist_egg')
28 c('python2.6 ./setupegg.py bdist_egg')
27
29
28 # Call the windows build separately, so that the extra Windows scripts don't
30 # Call the windows build separately, so that the extra Windows scripts don't
@@ -1,21 +1,25 b''
1 #!/usr/bin/env python
1 #!/usr/bin/env python
2 """Simple script to create a tarball with proper bzr version info.
2 """Simple script to create a tarball with proper git info.
3 """
3 """
4
4
5 import commands
5 import os
6 import os
6 import sys
7 import sys
7 import shutil
8 import shutil
8
9
9 from toollib import *
10 from toollib import *
10
11
11 execfile('../IPython/Release.py') # defines version_base
12 tag = commands.getoutput('git describe')
13 base_name = 'ipython-%s' % tag
14 tar_name = '%s.tgz' % base_name
12
15
13 ver = version_info()
16 # git archive is weird: Even if I give it a specific path, it still won't
17 # archive the whole tree. It seems the only way to get the whole tree is to cd
18 # to the top of the tree. There are long threads (since 2007) on the git list
19 # about this and it still doesn't work in a sensible way...
14
20
15 if ver['branch-nick'] == 'ipython':
21 start_dir = os.getcwd()
16 tarname = 'ipython-%s.bzr.r%s.tgz' % (version_base, ver['revno'])
22 cd('..')
17 else:
23 git_tpl = 'git archive --format=tar --prefix={0}/ HEAD | gzip > {1}'
18 tarname = 'ipython-%s.bzr.r%s.%s.tgz' % (version_base, ver['revno'],
24 c(git_tpl.format(base_name, tar_name))
19 ver['branch-nick'])
25 c('mv {0} tools/'.format(tar_name))
20
21 c('bzr export ' + tarname)
@@ -40,6 +40,7 b' cd(ipdir)'
40 c('./setup.py register')
40 c('./setup.py register')
41
41
42 # Upload all files
42 # Upload all files
43 c('./setup.py sdist --formats=gztar,zip upload')
43 cd(distdir)
44 cd(distdir)
44 print "Uploading distribution files..."
45 print "Uploading distribution files..."
45 c('scp * ipython@ipython.scipy.org:www/dist/')
46 c('scp * ipython@ipython.scipy.org:www/dist/')
@@ -46,10 +46,3 b' def compile_tree():'
46 msg = '*** ERROR: Some Python files in tree do NOT compile! ***\n'
46 msg = '*** ERROR: Some Python files in tree do NOT compile! ***\n'
47 msg += 'See messages above for the actual file that produced it.\n'
47 msg += 'See messages above for the actual file that produced it.\n'
48 raise SystemExit(msg)
48 raise SystemExit(msg)
49
50
51 def version_info():
52 """Return bzr version info as a dict."""
53 out = os.popen('bzr version-info')
54 pairs = (l.split(':',1) for l in out)
55 return dict(((k,v.strip()) for (k,v) in pairs))
General Comments 0
You need to be logged in to leave comments. Login now