##// END OF EJS Templates
Update win32 generated installer names to satisfy Vista's idiotic behavior.
fperez -
Show More
@@ -1,96 +1,99
1 #!/bin/sh
1 #!/bin/sh
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
7
8 echo
8 echo
9 echo "Releasing IPython version $version"
9 echo "Releasing IPython version $version"
10 echo "=================================="
10 echo "=================================="
11
11
12 echo "Marking ChangeLog with release information and making NEWS file..."
12 echo "Marking ChangeLog with release information and making NEWS file..."
13
13
14 # Stamp changelog and save a copy of the status at each version, in case later
14 # Stamp changelog and save a copy of the status at each version, in case later
15 # we want the NEWS file to start from a point before the very last release (if
15 # we want the NEWS file to start from a point before the very last release (if
16 # very small interim releases have no significant changes).
16 # very small interim releases have no significant changes).
17
17
18 cd $ipdir/doc
18 cd $ipdir/doc
19 cp ChangeLog ChangeLog.old
19 cp ChangeLog ChangeLog.old
20 cp ChangeLog ChangeLog.$version
20 cp ChangeLog ChangeLog.$version
21 daystamp=`date +%Y-%m-%d`
21 daystamp=`date +%Y-%m-%d`
22 echo $daystamp " ***" Released version $version > ChangeLog
22 echo $daystamp " ***" Released version $version > ChangeLog
23 echo >> ChangeLog
23 echo >> ChangeLog
24 cat ChangeLog.old >> ChangeLog
24 cat ChangeLog.old >> ChangeLog
25 rm ChangeLog.old
25 rm ChangeLog.old
26
26
27 # Build NEWS file
27 # Build NEWS file
28 echo "Changes between the last two releases (major or minor)" > NEWS
28 echo "Changes between the last two releases (major or minor)" > NEWS
29 echo "Note that this is an auto-generated diff of the ChangeLogs" >> NEWS
29 echo "Note that this is an auto-generated diff of the ChangeLogs" >> NEWS
30 echo >> NEWS
30 echo >> NEWS
31 diff ChangeLog.previous ChangeLog | grep -v '^0a' | sed 's/^> //g' >> NEWS
31 diff ChangeLog.previous ChangeLog | grep -v '^0a' | sed 's/^> //g' >> NEWS
32 cp ChangeLog ChangeLog.previous
32 cp ChangeLog ChangeLog.previous
33
33
34 # Clean up build/dist directories
34 # Clean up build/dist directories
35 rm -rf $ipdir/build/*
35 rm -rf $ipdir/build/*
36 rm -rf $ipdir/dist/*
36 rm -rf $ipdir/dist/*
37
37
38 # Perform local backup
38 # Perform local backup
39 cd $ipdir/tools
39 cd $ipdir/tools
40 ./bkp.sh
40 ./bkp.sh
41
41
42 # Build source and binary distros
42 # Build source and binary distros
43 cd $ipdir
43 cd $ipdir
44 ./setup.py sdist --formats=gztar
44 ./setup.py sdist --formats=gztar
45
45
46 # Build version-specific RPMs, where we must use the --python option to ensure
46 # Build version-specific RPMs, where we must use the --python option to ensure
47 # that the resulting RPM is really built with the requested python version (so
47 # that the resulting RPM is really built with the requested python version (so
48 # things go to lib/python2.X/...)
48 # things go to lib/python2.X/...)
49 python2.4 ./setup.py bdist_rpm --binary-only --release=py24 --python=/usr/bin/python2.4
49 python2.4 ./setup.py bdist_rpm --binary-only --release=py24 --python=/usr/bin/python2.4
50 python2.5 ./setup.py bdist_rpm --binary-only --release=py25 --python=/usr/bin/python2.5
50 python2.5 ./setup.py bdist_rpm --binary-only --release=py25 --python=/usr/bin/python2.5
51
51
52 # Build eggs
52 # Build eggs
53 python2.4 ./eggsetup.py bdist_egg
53 python2.4 ./eggsetup.py bdist_egg
54 python2.5 ./eggsetup.py bdist_egg
54 python2.5 ./eggsetup.py bdist_egg
55
55
56 # Call the windows build separately, so that the extra Windows scripts don't
56 # Call the windows build separately, so that the extra Windows scripts don't
57 # get pulled into Unix builds (setup.py has code which checks for
57 # get pulled into Unix builds (setup.py has code which checks for
58 # bdist_wininst)
58 # bdist_wininst)
59 ./setup.py bdist_wininst --install-script=ipython_win_post_install.py
59 ./setup.py bdist_wininst --install-script=ipython_win_post_install.py
60
60
61 # Change name so retarded Vista runs the installer correctly
62 rename 's/win32/win32-setup/' $ipdir/dist/*.exe
63
61 # Register with the Python Package Index (PyPI)
64 # Register with the Python Package Index (PyPI)
62 echo "Registering with PyPI..."
65 echo "Registering with PyPI..."
63 cd $ipdir
66 cd $ipdir
64 ./setup.py register
67 ./setup.py register
65
68
66 # Upload all files
69 # Upload all files
67 cd $ipdir/dist
70 cd $ipdir/dist
68 echo "Uploading distribution files..."
71 echo "Uploading distribution files..."
69 scp * ipython@ipython.scipy.org:www/dist/
72 scp * ipython@ipython.scipy.org:www/dist/
70
73
71 echo "Uploading backup files..."
74 echo "Uploading backup files..."
72 cd ~/ipython/backup
75 cd ~/ipython/backup
73 scp `ls -1tr | tail -1` ipython@ipython.scipy.org:www/backup/
76 scp `ls -1tr | tail -1` ipython@ipython.scipy.org:www/backup/
74
77
75 echo "Updating webpage..."
78 echo "Updating webpage..."
76 cd $ipdir/doc
79 cd $ipdir/doc
77 www=~/ipython/homepage
80 www=~/ipython/homepage
78 cp ChangeLog NEWS $www
81 cp ChangeLog NEWS $www
79 rm -rf $www/doc/*
82 rm -rf $www/doc/*
80 cp -r manual.pdf manual/ $www/doc
83 cp -r manual.pdf manual/ $www/doc
81 cd $www
84 cd $www
82 ./update
85 ./update
83
86
84 # Alert package maintainers
87 # Alert package maintainers
85 echo "Alerting package maintainers..."
88 echo "Alerting package maintainers..."
86 maintainers='fperez@colorado.edu ariciputi@users.sourceforge.net jack@xiph.org tretkowski@inittab.de dryice@hotpop.com willmaier@ml1.net'
89 maintainers='fperez@colorado.edu ariciputi@users.sourceforge.net jack@xiph.org tretkowski@inittab.de dryice@hotpop.com willmaier@ml1.net'
87 #maintainers='fperez@colorado.edu'
90 #maintainers='fperez@colorado.edu'
88
91
89 for email in $maintainers
92 for email in $maintainers
90 do
93 do
91 echo "Emailing $email..."
94 echo "Emailing $email..."
92 mail -s "[Package maintainer notice] A new IPython is out. Version: $version" \
95 mail -s "[Package maintainer notice] A new IPython is out. Version: $version" \
93 $email < NEWS
96 $email < NEWS
94 done
97 done
95
98
96 echo "Done!"
99 echo "Done!"
@@ -1,25 +1,28
1 #!/bin/sh
1 #!/bin/sh
2
2
3 # release test
3 # release test
4
4
5 cd ~/ipython/ipython
6
5 # clean up build/dist directories
7 # clean up build/dist directories
6 rm -rf ~/ipython/ipython/build/*
8 rm -rf build/*
7 rm -rf ~/ipython/ipython/dist/*
9 rm -rf dist/*
8
10
9 # build source distros
11 # build source distros
10 cd ~/ipython/ipython
11
12 ./setup.py sdist --formats=gztar
12 ./setup.py sdist --formats=gztar
13
13
14 # Build rpms
14 # Build rpms
15 python2.4 ./setup.py bdist_rpm --binary-only --release=py24 --python=/usr/bin/python2.4
15 python2.4 ./setup.py bdist_rpm --binary-only --release=py24 --python=/usr/bin/python2.4
16 python2.5 ./setup.py bdist_rpm --binary-only --release=py25 --python=/usr/bin/python2.5
16 python2.5 ./setup.py bdist_rpm --binary-only --release=py25 --python=/usr/bin/python2.5
17
17
18 # Build eggs
18 # Build eggs
19 python2.4 ./eggsetup.py bdist_egg
19 python2.4 ./eggsetup.py bdist_egg
20 python2.5 ./eggsetup.py bdist_egg
20 python2.5 ./eggsetup.py bdist_egg
21
21
22 # Call the windows build separately, so that the extra Windows scripts don't
22 # Call the windows build separately, so that the extra Windows scripts don't
23 # get pulled into Unix builds (setup.py has code which checks for
23 # get pulled into Unix builds (setup.py has code which checks for
24 # bdist_wininst)
24 # bdist_wininst)
25 ./setup.py bdist_wininst --install-script=ipython_win_post_install.py
25 ./setup.py bdist_wininst --install-script=ipython_win_post_install.py
26
27 # Change name so retarded Vista runs the installer correctly
28 rename 's/win32/win32-setup/' dist/*.exe
General Comments 0
You need to be logged in to leave comments. Login now