Skip to content

Commit cfdd193

Browse files
committed
release 0.8
1 parent 7371bde commit cfdd193

26 files changed

Lines changed: 742 additions & 251 deletions

ChangeLog

Lines changed: 14 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,20 @@
1+
* 0.8
2+
- Fixed issue #21 Added Ubuntu 11.04(Natty) support
3+
- Fixed issue #24 non-framework python27 now defines environ properly. Thanks npinto.
4+
- Fixed issue #27 Cleanup of OS X python build flags
5+
- Fixed issue #28 Describe the 'symlink' command better. Thanks tgs.
6+
- Fixed issue #30 py command does not accept arguments with a space
7+
- Fixed bug: `pythonbrew off` need not have removed the symlink in bin directory
8+
- Added --no-test option to the install command
9+
- Added --verbose option to the install command
10+
- `pythonbrew clean` has been renamed. Added `pythonbrew cleanup` instead.
11+
112
* 0.7.3
2-
- Improved symlink command.
3-
- support python3
13+
- Improved symlink command
14+
- Added python3 support
415

516
* 0.7.2
6-
- Bug fixed.
17+
- Bug fixed
718

819
* 0.7.1
920
- Enable parallel make option (--jobs).

PKG-INFO

Lines changed: 0 additions & 1 deletion
This file was deleted.

PKG-INFO

Lines changed: 159 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,159 @@
1+
Overview
2+
========
3+
4+
pythonbrew is a program to automate the building and installation of Python in the users $HOME.
5+
6+
pythonbrew is inspired by `perlbrew <http://github.com/gugod/App-perlbrew>`_ and `rvm <https://github.com/wayneeseguin/rvm>`_.
7+
8+
Installation
9+
============
10+
11+
The recommended way to download and install pythonbrew is to run these statements in your shell::
12+
13+
curl -kL http://xrl.us/pythonbrewinstall | bash
14+
15+
After that, pythonbrew installs itself to ~/.pythonbrew, and you should follow the instruction on screen to setup your .bashrc to put it in your PATH.
16+
17+
If you need to install pythonbrew into somewhere else, you can do that by setting a PYTHONBREW_ROOT environment variable::
18+
19+
export PYTHONBREW_ROOT=/path/to/pythonbrew
20+
curl -kLO http://xrl.us/pythonbrewinstall
21+
chmod +x pythonbrewinstall
22+
./pythonbrewinstall
23+
24+
Usage
25+
=====
26+
27+
pythonbrew command [options]
28+
29+
Install some pythons::
30+
31+
pythonbrew install 2.7.2
32+
pythonbrew install --verbose 2.7.2
33+
pythonbrew install --force 2.7.2
34+
pythonbrew install --no-test 2.7.2
35+
pythonbrew install --configure="CC=gcc_4.1" 2.7.2
36+
pythonbrew install --no-setuptools 2.7.2
37+
pythonbrew install http://www.python.org/ftp/python/2.7/Python-2.7.2.tgz
38+
pythonbrew install /path/to/Python-2.7.2.tgz
39+
pythonbrew install /path/to/Python-2.7.2
40+
pythonbrew install 2.7.2 3.2
41+
42+
Permanently use the specified python::
43+
44+
pythonbrew switch 2.7.2
45+
pythonbrew switch 3.2
46+
47+
Use the specified python in current shell::
48+
49+
pythonbrew use 2.7.2
50+
51+
Runs a named python file against specified and/or all pythons::
52+
53+
pythonbrew py test.py
54+
pythonbrew py -v test.py # Show running python version
55+
pythonbrew py -p 2.7.2 -p 3.2 test.py # Use the specified pythons
56+
57+
List the installed pythons::
58+
59+
pythonbrew list
60+
61+
List the available installation pythons::
62+
63+
pythonbrew list -k
64+
65+
Uninstall the specified python::
66+
67+
pythonbrew uninstall 2.7.2
68+
pythonbrew uninstall 2.7.2 3.2
69+
70+
Remove stale source folders and archives::
71+
72+
pythonbrew cleanup
73+
74+
Upgrades pythonbrew to the latest version::
75+
76+
pythonbrew update
77+
pythonbrew update --master
78+
pythonbrew update --develop
79+
80+
Disable pythonbrew::
81+
82+
pythonbrew off
83+
84+
Create/Remove a symbolic link to python (in a directory on your $PATH)::
85+
86+
pythonbrew symlink # Create a symbolic link, like "py2.7.2", for each installed version
87+
pythonbrew symlink -p 2.7.2
88+
pythonbrew symlink pip # Create a symbolic link to the specified script in bin directory
89+
pythonbrew symlink -r # Remove a symbolic link
90+
91+
Show version::
92+
93+
pythonbrew version
94+
95+
COMMANDS
96+
========
97+
98+
install <version>
99+
Build and install the given version of python.
100+
Install setuptools and pip automatically.
101+
102+
switch <version>
103+
Permanently use the specified python as default.
104+
105+
use <version>
106+
Use the specified python in current shell.
107+
108+
py <python file>
109+
Runs a named python file against specified and/or all pythons.
110+
111+
list
112+
List the installed all pythons.
113+
114+
list -k <version>
115+
List the available install pythons.
116+
117+
uninstall <version>
118+
Uninstall the given version of python.
119+
120+
cleanup
121+
Remove stale source folders and archives.
122+
123+
update
124+
Upgrades pythonbrew to the latest version.
125+
126+
off
127+
Disable pythonbrew.
128+
129+
version
130+
Show version.
131+
132+
See more details below::
133+
134+
pythonbrew help <command>
135+
136+
LICENCE
137+
=======
138+
139+
The MIT License
140+
141+
Copyright (c) <2010-2011> <utahta>
142+
143+
Permission is hereby granted, free of charge, to any person obtaining a copy
144+
of this software and associated documentation files (the "Software"), to deal
145+
in the Software without restriction, including without limitation the rights
146+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
147+
copies of the Software, and to permit persons to whom the Software is
148+
furnished to do so, subject to the following conditions:
149+
150+
The above copyright notice and this permission notice shall be included in
151+
all copies or substantial portions of the Software.
152+
153+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
154+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
155+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
156+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
157+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
158+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
159+
THE SOFTWARE.

README.rst

Lines changed: 33 additions & 47 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
Overview
22
========
33

4-
pythonbrew is a program to automate the building and installation of Python in the users HOME.
4+
pythonbrew is a program to automate the building and installation of Python in the users $HOME.
55

66
pythonbrew is inspired by `perlbrew <http://github.com/gugod/App-perlbrew>`_ and `rvm <https://github.com/wayneeseguin/rvm>`_.
77

@@ -10,20 +10,16 @@ Installation
1010

1111
The recommended way to download and install pythonbrew is to run these statements in your shell::
1212

13-
curl -kLO http://github.com/utahta/pythonbrew/raw/master/pythonbrew-install
14-
chmod +x pythonbrew-install
15-
./pythonbrew-install
16-
17-
or more simply like this::
18-
19-
curl -kL http://github.com/utahta/pythonbrew/raw/master/pythonbrew-install | bash
13+
curl -kL http://xrl.us/pythonbrewinstall | bash
2014

2115
After that, pythonbrew installs itself to ~/.pythonbrew, and you should follow the instruction on screen to setup your .bashrc to put it in your PATH.
2216

2317
If you need to install pythonbrew into somewhere else, you can do that by setting a PYTHONBREW_ROOT environment variable::
2418

2519
export PYTHONBREW_ROOT=/path/to/pythonbrew
26-
./pythonbrew-install
20+
curl -kLO http://xrl.us/pythonbrewinstall
21+
chmod +x pythonbrewinstall
22+
./pythonbrewinstall
2723

2824
Usage
2925
=====
@@ -32,59 +28,63 @@ pythonbrew command [options]
3228

3329
Install some pythons::
3430

35-
pythonbrew install 2.6.6
36-
pythonbrew install --force 2.6.6
37-
pythonbrew install --configure="CC=gcc_4.1" 2.6.6
38-
pythonbrew install --no-setuptools 2.6.6
39-
pythonbrew install http://www.python.org/ftp/python/2.7/Python-2.6.6.tgz
40-
pythonbrew install file:///path/to/Python-2.6.6.tgz
41-
pythonbrew install /path/to/Python-2.6.6.tgz
42-
pythonbrew install 2.5.5 2.6.6
31+
pythonbrew install 2.7.2
32+
pythonbrew install --verbose 2.7.2
33+
pythonbrew install --force 2.7.2
34+
pythonbrew install --no-test 2.7.2
35+
pythonbrew install --configure="CC=gcc_4.1" 2.7.2
36+
pythonbrew install --no-setuptools 2.7.2
37+
pythonbrew install http://www.python.org/ftp/python/2.7/Python-2.7.2.tgz
38+
pythonbrew install /path/to/Python-2.7.2.tgz
39+
pythonbrew install /path/to/Python-2.7.2
40+
pythonbrew install 2.7.2 3.2
4341
44-
Permanently use the specified python as default::
42+
Permanently use the specified python::
4543

46-
pythonbrew switch 2.6.6
47-
pythonbrew switch 2.5.5
44+
pythonbrew switch 2.7.2
45+
pythonbrew switch 3.2
4846

4947
Use the specified python in current shell::
5048

51-
pythonbrew use 2.6.6
49+
pythonbrew use 2.7.2
5250

5351
Runs a named python file against specified and/or all pythons::
5452

5553
pythonbrew py test.py
5654
pythonbrew py -v test.py # Show running python version
57-
pythonbrew py -p 2.6.6 -p 3.1.2 test.py # Use the specified pythons
55+
pythonbrew py -p 2.7.2 -p 3.2 test.py # Use the specified pythons
5856

5957
List the installed pythons::
6058

6159
pythonbrew list
6260

63-
List the available install pythons::
61+
List the available installation pythons::
6462

6563
pythonbrew list -k
6664

6765
Uninstall the specified python::
6866

69-
pythonbrew uninstall 2.6.6
70-
pythonbrew uninstall 2.5.5 2.6.6
67+
pythonbrew uninstall 2.7.2
68+
pythonbrew uninstall 2.7.2 3.2
7169

7270
Remove stale source folders and archives::
7371

74-
pythonbrew clean
72+
pythonbrew cleanup
7573

7674
Upgrades pythonbrew to the latest version::
7775

7876
pythonbrew update
77+
pythonbrew update --master
78+
pythonbrew update --develop
7979

8080
Disable pythonbrew::
8181

8282
pythonbrew off
8383
8484
Create/Remove a symbolic link to python (in a directory on your $PATH)::
8585

86-
pythonbrew symlink # Create a symbolic link, like "py2.5.5", for each installed version
87-
pythonbrew symlink -p 2.5.5
86+
pythonbrew symlink # Create a symbolic link, like "py2.7.2", for each installed version
87+
pythonbrew symlink -p 2.7.2
8888
pythonbrew symlink pip # Create a symbolic link to the specified script in bin directory
8989
pythonbrew symlink -r # Remove a symbolic link
9090

@@ -97,10 +97,7 @@ COMMANDS
9797

9898
install <version>
9999
Build and install the given version of python.
100-
101-
Setuptools and pip is automatically installed.
102-
103-
options: --force, --no-setuptools, --configure and --as.
100+
Install setuptools and pip automatically.
104101

105102
switch <version>
106103
Permanently use the specified python as default.
@@ -120,7 +117,7 @@ list -k <version>
120117
uninstall <version>
121118
Uninstall the given version of python.
122119

123-
clean
120+
cleanup
124121
Remove stale source folders and archives.
125122

126123
update
@@ -131,21 +128,10 @@ off
131128

132129
version
133130
Show version.
131+
132+
See more details below::
134133

135-
Options
136-
=======
137-
138-
\-f | --force
139-
Force installation of a python. (skip `make test`)
140-
141-
\-C | --configure
142-
Custom configure options.
143-
144-
\-n | --no-setuptools
145-
Skip installation of setuptools.
146-
147-
\--as
148-
Install a python under an alias.
134+
pythonbrew help <command>
149135

150136
LICENCE
151137
=======

pythonbrew/__init__.py

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
import sys
22
from pythonbrew.basecommand import command_dict, load_all_commands
33
from pythonbrew.baseparser import parser
4+
from pythonbrew.log import logger
45

56
def main():
67
options, args = parser.parse_args(sys.argv[1:])
@@ -12,6 +13,10 @@ def main():
1213
load_all_commands()
1314
command = args[0].lower()
1415
if command not in command_dict:
16+
if command == 'clean':
17+
# note: for some time
18+
logger.info('\nDEPRECATION WARNING: `pythonbrew clean` has been renamed. Please run `pythonbrew cleanup` instead.\n')
19+
return
1520
parser.error("Unknown command: `%s`" % command)
1621
return
1722
command = command_dict[command]
Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -3,17 +3,17 @@
33
from pythonbrew.define import PATH_BUILD, PATH_DISTS
44
from pythonbrew.util import rm_r
55

6-
class CleanCommand(Command):
7-
name = "clean"
6+
class CleanupCommand(Command):
7+
name = "cleanup"
88
usage = "%prog"
99
summary = "Remove stale source folders and archives"
1010

1111
def run_command(self, options, args):
12-
self._clean(PATH_BUILD)
13-
self._clean(PATH_DISTS)
12+
self._cleanup(PATH_BUILD)
13+
self._cleanup(PATH_DISTS)
1414

15-
def _clean(self, root):
15+
def _cleanup(self, root):
1616
for dir in os.listdir(root):
1717
rm_r(os.path.join(root, dir))
1818

19-
CleanCommand()
19+
CleanupCommand()

0 commit comments

Comments
 (0)