Show More
@@ -1,121 +1,121 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) 2001-2006 Fernando Perez <fperez@colorado.edu> |
|
5 | # Copyright (C) 2001-2006 Fernando Perez <fperez@colorado.edu> | |
6 | # |
|
6 | # | |
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> | |
9 | # |
|
9 | # | |
10 | # Distributed under the terms of the BSD License. The full license is in |
|
10 | # Distributed under the terms of the BSD License. The full license is in | |
11 | # the file COPYING, distributed as part of this software. |
|
11 | # the file COPYING, distributed as part of this software. | |
12 | #***************************************************************************** |
|
12 | #***************************************************************************** | |
13 |
|
13 | |||
14 | # Name of the package for release purposes. This is the name which labels |
|
14 | # Name of the package for release purposes. This is the name which labels | |
15 | # the tarballs and RPMs made by distutils, so it's best to lowercase it. |
|
15 | # the tarballs and RPMs made by distutils, so it's best to lowercase it. | |
16 | name = 'ipython' |
|
16 | name = 'ipython' | |
17 |
|
17 | |||
18 | # For versions with substrings (like 0.6.16.svn), use an extra . to separate |
|
18 | # For versions with substrings (like 0.6.16.svn), use an extra . to separate | |
19 | # the new substring. We have to avoid using either dashes or underscores, |
|
19 | # the new substring. We have to avoid using either dashes or underscores, | |
20 | # because bdist_rpm does not accept dashes (an RPM) convention, and |
|
20 | # because bdist_rpm does not accept dashes (an RPM) convention, and | |
21 | # bdist_deb does not accept underscores (a Debian convention). |
|
21 | # bdist_deb does not accept underscores (a Debian convention). | |
22 |
|
22 | |||
23 |
development = |
|
23 | development = False # change this to False to do a release | |
24 | version_base = '0.10' |
|
24 | version_base = '0.10.rc1' | |
25 | branch = 'ipython' |
|
25 | branch = 'ipython' | |
26 |
revision = '11 |
|
26 | revision = '1188' | |
27 |
|
27 | |||
28 | if development: |
|
28 | if development: | |
29 | if branch == 'ipython': |
|
29 | if branch == 'ipython': | |
30 | version = '%s.bzr.r%s' % (version_base, revision) |
|
30 | version = '%s.bzr.r%s' % (version_base, revision) | |
31 | else: |
|
31 | else: | |
32 | version = '%s.bzr.r%s.%s' % (version_base, revision, branch) |
|
32 | version = '%s.bzr.r%s.%s' % (version_base, revision, branch) | |
33 | else: |
|
33 | else: | |
34 | version = version_base |
|
34 | version = version_base | |
35 |
|
35 | |||
36 |
|
36 | |||
37 | description = "An interactive computing environment for Python" |
|
37 | description = "An interactive computing environment for Python" | |
38 |
|
38 | |||
39 | long_description = \ |
|
39 | long_description = \ | |
40 | """ |
|
40 | """ | |
41 | The goal of IPython is to create a comprehensive environment for |
|
41 | The goal of IPython is to create a comprehensive environment for | |
42 | interactive and exploratory computing. To support this goal, IPython |
|
42 | interactive and exploratory computing. To support this goal, IPython | |
43 | has two main components: |
|
43 | has two main components: | |
44 |
|
44 | |||
45 | * An enhanced interactive Python shell. |
|
45 | * An enhanced interactive Python shell. | |
46 |
|
46 | |||
47 | * An architecture for interactive parallel computing. |
|
47 | * An architecture for interactive parallel computing. | |
48 |
|
48 | |||
49 | The enhanced interactive Python shell has the following main features: |
|
49 | The enhanced interactive Python shell has the following main features: | |
50 |
|
50 | |||
51 | * Comprehensive object introspection. |
|
51 | * Comprehensive object introspection. | |
52 |
|
52 | |||
53 | * Input history, persistent across sessions. |
|
53 | * Input history, persistent across sessions. | |
54 |
|
54 | |||
55 | * Caching of output results during a session with automatically generated |
|
55 | * Caching of output results during a session with automatically generated | |
56 | references. |
|
56 | references. | |
57 |
|
57 | |||
58 | * Readline based name completion. |
|
58 | * Readline based name completion. | |
59 |
|
59 | |||
60 | * Extensible system of 'magic' commands for controlling the environment and |
|
60 | * Extensible system of 'magic' commands for controlling the environment and | |
61 | performing many tasks related either to IPython or the operating system. |
|
61 | performing many tasks related either to IPython or the operating system. | |
62 |
|
62 | |||
63 | * Configuration system with easy switching between different setups (simpler |
|
63 | * Configuration system with easy switching between different setups (simpler | |
64 | than changing $PYTHONSTARTUP environment variables every time). |
|
64 | than changing $PYTHONSTARTUP environment variables every time). | |
65 |
|
65 | |||
66 | * Session logging and reloading. |
|
66 | * Session logging and reloading. | |
67 |
|
67 | |||
68 | * Extensible syntax processing for special purpose situations. |
|
68 | * Extensible syntax processing for special purpose situations. | |
69 |
|
69 | |||
70 | * Access to the system shell with user-extensible alias system. |
|
70 | * Access to the system shell with user-extensible alias system. | |
71 |
|
71 | |||
72 | * Easily embeddable in other Python programs and wxPython GUIs. |
|
72 | * Easily embeddable in other Python programs and wxPython GUIs. | |
73 |
|
73 | |||
74 | * Integrated access to the pdb debugger and the Python profiler. |
|
74 | * Integrated access to the pdb debugger and the Python profiler. | |
75 |
|
75 | |||
76 | The parallel computing architecture has the following main features: |
|
76 | The parallel computing architecture has the following main features: | |
77 |
|
77 | |||
78 | * Quickly parallelize Python code from an interactive Python/IPython session. |
|
78 | * Quickly parallelize Python code from an interactive Python/IPython session. | |
79 |
|
79 | |||
80 | * A flexible and dynamic process model that be deployed on anything from |
|
80 | * A flexible and dynamic process model that be deployed on anything from | |
81 | multicore workstations to supercomputers. |
|
81 | multicore workstations to supercomputers. | |
82 |
|
82 | |||
83 | * An architecture that supports many different styles of parallelism, from |
|
83 | * An architecture that supports many different styles of parallelism, from | |
84 | message passing to task farming. |
|
84 | message passing to task farming. | |
85 |
|
85 | |||
86 | * Both blocking and fully asynchronous interfaces. |
|
86 | * Both blocking and fully asynchronous interfaces. | |
87 |
|
87 | |||
88 | * High level APIs that enable many things to be parallelized in a few lines |
|
88 | * High level APIs that enable many things to be parallelized in a few lines | |
89 | of code. |
|
89 | of code. | |
90 |
|
90 | |||
91 | * Share live parallel jobs with other users securely. |
|
91 | * Share live parallel jobs with other users securely. | |
92 |
|
92 | |||
93 | * Dynamically load balanced task farming system. |
|
93 | * Dynamically load balanced task farming system. | |
94 |
|
94 | |||
95 | * Robust error handling in parallel code. |
|
95 | * Robust error handling in parallel code. | |
96 |
|
96 | |||
97 | The latest development version is always available from IPython's `Launchpad |
|
97 | The latest development version is always available from IPython's `Launchpad | |
98 | site <http://launchpad.net/ipython>`_. |
|
98 | site <http://launchpad.net/ipython>`_. | |
99 | """ |
|
99 | """ | |
100 |
|
100 | |||
101 | license = 'BSD' |
|
101 | license = 'BSD' | |
102 |
|
102 | |||
103 | authors = {'Fernando' : ('Fernando Perez','fperez@colorado.edu'), |
|
103 | authors = {'Fernando' : ('Fernando Perez','fperez@colorado.edu'), | |
104 | 'Janko' : ('Janko Hauser','jhauser@zscout.de'), |
|
104 | 'Janko' : ('Janko Hauser','jhauser@zscout.de'), | |
105 | 'Nathan' : ('Nathaniel Gray','n8gray@caltech.edu'), |
|
105 | 'Nathan' : ('Nathaniel Gray','n8gray@caltech.edu'), | |
106 | 'Ville' : ('Ville Vainio','vivainio@gmail.com'), |
|
106 | 'Ville' : ('Ville Vainio','vivainio@gmail.com'), | |
107 | 'Brian' : ('Brian E Granger', 'ellisonbg@gmail.com'), |
|
107 | 'Brian' : ('Brian E Granger', 'ellisonbg@gmail.com'), | |
108 | 'Min' : ('Min Ragan-Kelley', 'benjaminrk@gmail.com') |
|
108 | 'Min' : ('Min Ragan-Kelley', 'benjaminrk@gmail.com') | |
109 | } |
|
109 | } | |
110 |
|
110 | |||
111 | author = 'The IPython Development Team' |
|
111 | author = 'The IPython Development Team' | |
112 |
|
112 | |||
113 | author_email = 'ipython-dev@scipy.org' |
|
113 | author_email = 'ipython-dev@scipy.org' | |
114 |
|
114 | |||
115 | url = 'http://ipython.scipy.org' |
|
115 | url = 'http://ipython.scipy.org' | |
116 |
|
116 | |||
117 | download_url = 'http://ipython.scipy.org/dist' |
|
117 | download_url = 'http://ipython.scipy.org/dist' | |
118 |
|
118 | |||
119 | platforms = ['Linux','Mac OSX','Windows XP/2000/NT','Windows 95/98/ME'] |
|
119 | platforms = ['Linux','Mac OSX','Windows XP/2000/NT','Windows 95/98/ME'] | |
120 |
|
120 | |||
121 | keywords = ['Interactive','Interpreter','Shell','Parallel','Distributed'] |
|
121 | keywords = ['Interactive','Interpreter','Shell','Parallel','Distributed'] |
@@ -1,15 +1,32 b'' | |||||
|
1 | #!/usr/bin/env python | |||
|
2 | """Utility to look for hard tabs and \r characters in all sources. | |||
|
3 | """ | |||
|
4 | ||||
1 | from IPython.external.path import path |
|
5 | from IPython.external.path import path | |
|
6 | ||||
2 | fs = path('..').walkfiles('*.py') |
|
7 | fs = path('..').walkfiles('*.py') | |
3 |
|
8 | |||
|
9 | rets = [] | |||
|
10 | ||||
4 | for f in fs: |
|
11 | for f in fs: | |
5 | errs = '' |
|
12 | errs = '' | |
6 | cont = f.bytes() |
|
13 | cont = f.bytes() | |
7 | if '\t' in cont: |
|
14 | if '\t' in cont: | |
8 | errs+='t' |
|
15 | errs+='t' | |
9 |
|
16 | |||
10 | if '\r' in cont: |
|
17 | if '\r' in cont: | |
11 | errs+='r' |
|
18 | errs+='r' | |
|
19 | rets.append(f) | |||
12 |
|
20 | |||
13 | if errs: |
|
21 | if errs: | |
14 | print "%3s" % errs, f |
|
22 | print "%3s" % errs, f | |
15 |
|
23 | if 't' in errs: | ||
|
24 | for ln,line in enumerate(f.lines()): | |||
|
25 | if '\t' in line: | |||
|
26 | print 'TAB:',ln,':',line, | |||
|
27 | if 'r' in errs: | |||
|
28 | for ln,line in enumerate(open(f.abspath(),'rb')): | |||
|
29 | if '\r' in line: | |||
|
30 | print 'RET:',ln,':',line, | |||
|
31 | ||||
|
32 | rr = rets[-1] |
@@ -1,58 +1,35 b'' | |||||
1 | #!/bin/sh |
|
1 | #!/bin/bash | |
2 | # IPython release script |
|
2 | # IPython release script | |
3 |
|
3 | |||
4 | PYVER=`python -V 2>&1 | awk '{print $2}' | awk -F '.' '{print $1$2}' ` |
|
4 | PYVER=`python -V 2>&1 | awk '{print $2}' | awk -F '.' '{print $1$2}' ` | |
5 | version=`ipython -Version` |
|
5 | version=`ipython -Version` | |
6 | ipdir=~/ipython/ipython |
|
6 | ipdir=~/ipython/ipython | |
7 | ipbackupdir=~/ipython/backup |
|
7 | ipbackupdir=~/ipython/backup | |
8 |
|
8 | |||
9 | echo |
|
9 | echo | |
10 | echo "Releasing IPython version $version" |
|
10 | echo "Releasing IPython version $version" | |
11 | echo "==================================" |
|
11 | echo "==================================" | |
12 |
|
12 | |||
13 | # Perform local backup |
|
13 | # Perform local backup | |
14 | cd $ipdir/tools |
|
14 | cd $ipdir/tools | |
15 | ./make_tarball.py |
|
15 | ./make_tarball.py | |
16 | mv ipython-*.tgz $ipbackupdir |
|
16 | mv ipython-*.tgz $ipbackupdir | |
17 |
|
17 | |||
18 | # Clean up build/dist directories |
|
18 | # Build release files | |
19 | rm -rf $ipdir/build/* |
|
19 | ./testrel $ipdir | |
20 | rm -rf $ipdir/dist/* |
|
|||
21 |
|
||||
22 | # Build source and binary distros |
|
|||
23 | cd $ipdir |
|
|||
24 | ./setup.py sdist --formats=gztar |
|
|||
25 |
|
||||
26 | # Build version-specific RPMs, where we must use the --python option to ensure |
|
|||
27 | # that the resulting RPM is really built with the requested python version (so |
|
|||
28 | # things go to lib/python2.X/...) |
|
|||
29 | #python2.4 ./setup.py bdist_rpm --binary-only --release=py24 --python=/usr/bin/python2.4 |
|
|||
30 | #python2.5 ./setup.py bdist_rpm --binary-only --release=py25 --python=/usr/bin/python2.5 |
|
|||
31 |
|
||||
32 | # Build eggs |
|
|||
33 | python2.4 ./setup_bdist_egg.py |
|
|||
34 | python2.5 ./setup_bdist_egg.py |
|
|||
35 |
|
||||
36 | # Call the windows build separately, so that the extra Windows scripts don't |
|
|||
37 | # get pulled into Unix builds (setup.py has code which checks for |
|
|||
38 | # bdist_wininst) |
|
|||
39 | ./setup.py bdist_wininst --install-script=ipython_win_post_install.py |
|
|||
40 |
|
||||
41 | # Change name so retarded Vista runs the installer correctly |
|
|||
42 | rename 's/win32/win32-setup/' $ipdir/dist/*.exe |
|
|||
43 |
|
20 | |||
44 | # Register with the Python Package Index (PyPI) |
|
21 | # Register with the Python Package Index (PyPI) | |
45 | echo "Registering with PyPI..." |
|
22 | echo "Registering with PyPI..." | |
46 | cd $ipdir |
|
23 | cd $ipdir | |
47 | ./setup.py register |
|
24 | ./setup.py register | |
48 |
|
25 | |||
49 | # Upload all files |
|
26 | # Upload all files | |
50 | cd $ipdir/dist |
|
27 | cd $ipdir/dist | |
51 | echo "Uploading distribution files..." |
|
28 | echo "Uploading distribution files..." | |
52 | scp * ipython@ipython.scipy.org:www/dist/ |
|
29 | scp * ipython@ipython.scipy.org:www/dist/ | |
53 |
|
30 | |||
54 | echo "Uploading backup files..." |
|
31 | echo "Uploading backup files..." | |
55 | cd $ipbackupdir |
|
32 | cd $ipbackupdir | |
56 | scp `ls -1tr *tgz | tail -1` ipython@ipython.scipy.org:www/backup/ |
|
33 | scp `ls -1tr *tgz | tail -1` ipython@ipython.scipy.org:www/backup/ | |
57 |
|
34 | |||
58 | echo "Done!" |
|
35 | echo "Done!" |
@@ -1,31 +1,35 b'' | |||||
1 | #!/bin/sh |
|
1 | #!/bin/bash | |
2 |
|
2 | |||
3 | # release test |
|
3 | # Build the release files. Kept as a separate script so we can easily do local | |
|
4 | # dry runs without uploading anything externally. | |||
4 |
|
5 | |||
5 |
ipdir=$ |
|
6 | ipdir=${1-..} | |
6 |
|
7 | |||
7 | cd $ipdir |
|
8 | cd $ipdir | |
8 |
|
9 | |||
9 | # Clean up build/dist directories |
|
10 | # Clean up build/dist directories | |
10 |
rm -rf |
|
11 | rm -rf build/* | |
11 |
rm -rf |
|
12 | rm -rf dist/* | |
|
13 | rm -rf docs/build/* | |||
|
14 | rm -rf docs/dist/* | |||
12 |
|
15 | |||
13 |
# |
|
16 | # Build source and binary distros | |
14 | cd $ipdir |
|
|||
15 | ./setup.py sdist --formats=gztar |
|
17 | ./setup.py sdist --formats=gztar | |
16 |
|
18 | |||
17 | # Build rpms |
|
19 | # Build version-specific RPMs, where we must use the --python option to ensure | |
18 | python2.4 ./setup.py bdist_rpm --binary-only --release=py24 --python=/usr/bin/python2.4 |
|
20 | # that the resulting RPM is really built with the requested python version (so | |
|
21 | # things go to lib/python2.X/...) | |||
19 | python2.5 ./setup.py bdist_rpm --binary-only --release=py25 --python=/usr/bin/python2.5 |
|
22 | python2.5 ./setup.py bdist_rpm --binary-only --release=py25 --python=/usr/bin/python2.5 | |
|
23 | python2.6 ./setup.py bdist_rpm --binary-only --release=py26 --python=/usr/bin/python2.6 | |||
20 |
|
24 | |||
21 | # Build eggs |
|
25 | # Build eggs | |
22 | python2.4 ./setup_bdist_egg.py |
|
|||
23 | python2.5 ./setup_bdist_egg.py |
|
26 | python2.5 ./setup_bdist_egg.py | |
|
27 | python2.6 ./setup_bdist_egg.py | |||
24 |
|
28 | |||
25 | # Call the windows build separately, so that the extra Windows scripts don't |
|
29 | # Call the windows build separately, so that the extra Windows scripts don't | |
26 | # get pulled into Unix builds (setup.py has code which checks for |
|
30 | # get pulled into Unix builds (setup.py has code which checks for | |
27 | # bdist_wininst) |
|
31 | # bdist_wininst) | |
28 | ./setup.py bdist_wininst --install-script=ipython_win_post_install.py |
|
32 | ./setup.py bdist_wininst --install-script=ipython_win_post_install.py | |
29 |
|
33 | |||
30 | # Change name so retarded Vista runs the installer correctly |
|
34 | # Change name so retarded Vista runs the installer correctly | |
31 |
rename 's/win32/win32-setup/' |
|
35 | rename 's/win32/win32-setup/' dist/*.exe |
General Comments 0
You need to be logged in to leave comments.
Login now