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-200 |
|
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-200 |
|
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 start |
|
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 |
|
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