]>
Commit | Line | Data |
---|---|---|
46ea4f73 | 1 | This is Python version 3.2 |
39285162 | 2 | ========================== |
9144763a | 3 | |
b7b0019a | 4 | Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 |
b558a2e1 CH |
5 | Python Software Foundation. |
6 | All rights reserved. | |
4405cf3c | 7 | |
97f005d1 BW |
8 | Python 3.x is a new version of the language, which is incompatible with the |
9 | 2.x line of releases. The language is mostly the same, but many details, | |
10 | especially how built-in objects like dictionaries and strings work, have | |
11 | changed considerably, and a lot of deprecated features have finally been | |
12 | removed. | |
50e9fb9e | 13 | |
64773800 | 14 | |
1da43e5e BP |
15 | Build Instructions |
16 | ------------------ | |
71dcc3e9 | 17 | |
1da43e5e | 18 | On Unix, Linux, BSD, OSX, and Cygwin: |
8d90f9d5 | 19 | |
1da43e5e BP |
20 | ./configure |
21 | make | |
22 | make test | |
23 | sudo make install | |
f501b4e5 | 24 | |
1da43e5e | 25 | This will install Python as python3. |
91cb9d2f | 26 | |
1da43e5e BP |
27 | You can pass many options to the configure script; run "./configure |
28 | --help" to find out more. On OSX and Cygwin, the executable is called | |
29 | python.exe; elsewhere it's just python. | |
477c8d5e | 30 | |
1da43e5e BP |
31 | On Mac OS X, if you have configured Python with --enable-framework, |
32 | you should use "make frameworkinstall" to do the installation. Note | |
33 | that this installs the Python executable in a place that is not | |
34 | normally on your PATH, you may want to set up a symlink in | |
35 | /usr/local/bin. | |
dabed752 | 36 | |
1da43e5e BP |
37 | On Windows, see PCbuild/readme.txt. |
38 | ||
39 | If you wish, you can create a subdirectory and invoke configure from | |
40 | there. For example: | |
41 | ||
42 | mkdir debug | |
43 | cd debug | |
44 | ../configure --with-pydebug | |
45 | make | |
46 | make test | |
47 | ||
48 | (This will fail if you *also* built at the top-level directory. You | |
49 | should do a "make clean" at the toplevel first.) | |
2a691a81 | 50 | |
1c4523f0 | 51 | |
1c896e3f | 52 | What's New |
91cb9d2f GR |
53 | ---------- |
54 | ||
52915df4 BP |
55 | We try to have a comprehensive overview of the changes in the "What's New in |
56 | Python 3.1" document, found at | |
f3f67f2d | 57 | |
52915df4 | 58 | http://docs.python.org/dev/3.1/whatsnew/3.1.html |
f3f67f2d | 59 | |
99533a95 | 60 | For a more detailed change log, read Misc/NEWS (though this file, too, |
52915df4 | 61 | is incomplete, and also doesn't list anything merged in from the 2.7 |
99533a95 GR |
62 | release under development). |
63 | ||
160b9a3c BW |
64 | If you want to install multiple versions of Python see the section below |
65 | entitled "Installing multiple versions". | |
66 | ||
67 | ||
1da43e5e BP |
68 | Documentation |
69 | ------------- | |
2a691a81 | 70 | |
1da43e5e BP |
71 | Documentation for Python 3.1 is online, updated twice a day: |
72 | ||
73 | http://docs.python.org/dev/3.1/ | |
74 | ||
75 | All documentation is also available online at the Python web site | |
76 | (http://docs.python.org/, see below). It is available online for | |
77 | occasional reference, or can be downloaded in many formats for faster | |
78 | access. The documentation is downloadable in HTML, PostScript, PDF, | |
79 | LaTeX (through 2.5), and reStructuredText (2.6+) formats; the LaTeX and | |
80 | reStructuredText versions are primarily for documentation authors, | |
81 | translators, and people with special formatting requirements. | |
99533a95 | 82 | |
160b9a3c | 83 | |
97f005d1 | 84 | Converting From Python 2.x to 3.x |
1c896e3f | 85 | --------------------------------- |
91cb9d2f | 86 | |
97f005d1 BW |
87 | Python starting with 2.6 will contain features to help locating code that |
88 | needs to be changed, such as optional warnings when deprecated features are | |
89 | used, and backported versions of certain key Python 3.x features. | |
91cb9d2f | 90 | |
1da43e5e BP |
91 | A source-to-source translation tool, "2to3", can take care of the mundane task |
92 | of converting large amounts of source code. It is not a complete solution but | |
93 | is complemented by the deprecation warnings in 2.6. See | |
94 | http://docs.python.org/dev/py3k/library/2to3.html for more information. | |
95 | ||
dd15f6c3 | 96 | |
ad3d5c22 BP |
97 | Testing |
98 | ------- | |
99 | ||
100 | To test the interpreter, type "make test" in the top-level directory. | |
101 | This runs the test set twice (once with no compiled files, once with | |
102 | the compiled files left by the previous test run). The test set | |
103 | produces some output. You can generally ignore the messages about | |
104 | skipped tests due to optional features which can't be imported. | |
105 | If a message is printed about a failed test or a traceback or core | |
106 | dump is produced, something is wrong. On some Linux systems (those | |
107 | that are not yet using glibc 6), test_strftime fails due to a | |
108 | non-standard implementation of strftime() in the C library. Please | |
109 | ignore this, or upgrade to glibc version 6. | |
110 | ||
111 | By default, tests are prevented from overusing resources like disk space and | |
112 | memory. To enable these tests, run "make testall". | |
113 | ||
114 | IMPORTANT: If the tests fail and you decide to mail a bug report, | |
115 | *don't* include the output of "make test". It is useless. Run the | |
116 | failing test manually, as follows: | |
117 | ||
118 | ./python Lib/test/regrtest.py -v test_whatever | |
119 | ||
120 | (substituting the top of the source tree for '.' if you built in a | |
121 | different directory). This runs the test in verbose mode. | |
122 | ||
123 | ||
dd15f6c3 CH |
124 | Installing multiple versions |
125 | ---------------------------- | |
126 | ||
127 | On Unix and Mac systems if you intend to install multiple versions of Python | |
128 | using the same installation prefix (--prefix argument to the configure | |
129 | script) you must take care that your primary python executable is not | |
9023e685 | 130 | overwritten by the installation of a different version. All files and |
dd15f6c3 CH |
131 | directories installed using "make altinstall" contain the major and minor |
132 | version and can thus live side-by-side. "make install" also creates | |
932073a1 | 133 | ${prefix}/bin/python3 which refers to ${prefix}/bin/pythonX.Y. If you intend |
dd15f6c3 CH |
134 | to install multiple versions using the same prefix you must decide which |
135 | version (if any) is your "primary" version. Install that version using | |
136 | "make install". Install all other versions using "make altinstall". | |
137 | ||
138 | For example, if you want to install Python 2.5, 2.6 and 3.0 with 2.6 being | |
139 | the primary version, you would execute "make install" in your 2.6 build | |
140 | directory and "make altinstall" in the others. | |
141 | ||
142 | ||
1c896e3f GR |
143 | Issue Tracker and Mailing List |
144 | ------------------------------ | |
91cb9d2f | 145 | |
1c896e3f GR |
146 | We're soliciting bug reports about all aspects of the language. Fixes |
147 | are also welcome, preferable in unified diff format. Please use the | |
148 | issue tracker: | |
91cb9d2f | 149 | |
1c896e3f | 150 | http://bugs.python.org/ |
64773800 | 151 | |
1c896e3f GR |
152 | If you're not sure whether you're dealing with a bug or a feature, use |
153 | the mailing list: | |
c0be2f5d | 154 | |
b9ebd04b | 155 | python-dev@python.org |
91cb9d2f | 156 | |
1c896e3f | 157 | To subscribe to the list, use the mailman form: |
84c8c7f9 | 158 | |
b9ebd04b | 159 | http://mail.python.org/mailman/listinfo/python-dev/ |
91cb9d2f | 160 | |
433c8ade | 161 | |
1da43e5e BP |
162 | Proposals for enhancement |
163 | ------------------------- | |
03d8f745 | 164 | |
1da43e5e BP |
165 | If you have a proposal to change Python, you may want to send an email to the |
166 | comp.lang.python or python-ideas mailing lists for inital feedback. A Python | |
167 | Enhancement Proposal (PEP) may be submitted if your idea gains ground. All | |
168 | current PEPs, as well as guidelines for submitting a new PEP, are listed at | |
169 | http://www.python.org/dev/peps/. | |
0c3842fe | 170 | |
433c8ade | 171 | |
1da43e5e BP |
172 | Release Schedule |
173 | ---------------- | |
91cb9d2f | 174 | |
95d62641 | 175 | See PEP 392 for release details: http://www.python.org/dev/peps/pep-0392/ |
ef0f1291 GR |
176 | |
177 | ||
178 | Copyright and License Information | |
179 | --------------------------------- | |
180 | ||
851ffef6 | 181 | Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 |
ef0f1291 GR |
182 | Python Software Foundation. |
183 | All rights reserved. | |
184 | ||
185 | Copyright (c) 2000 BeOpen.com. | |
186 | All rights reserved. | |
187 | ||
188 | Copyright (c) 1995-2001 Corporation for National Research Initiatives. | |
189 | All rights reserved. | |
190 | ||
191 | Copyright (c) 1991-1995 Stichting Mathematisch Centrum. | |
192 | All rights reserved. | |
193 | ||
194 | See the file "LICENSE" for information on the history of this | |
195 | software, terms & conditions for usage, and a DISCLAIMER OF ALL | |
196 | WARRANTIES. | |
197 | ||
198 | This Python distribution contains *no* GNU General Public License | |
199 | (GPL) code, so it may be used in proprietary projects. There are | |
200 | interfaces to some GNU code but these are entirely optional. | |
201 | ||
202 | All trademarks referenced herein are property of their respective | |
203 | holders. |