~ubuntu-branches/ubuntu/maverick/python3.1/maverick

« back to all changes in this revision

Viewing changes to README

  • Committer: Bazaar Package Importer
  • Author(s): Matthias Klose
  • Date: 2009-03-23 00:01:27 UTC
  • Revision ID: james.westby@ubuntu.com-20090323000127-5fstfxju4ufrhthq
Tags: upstream-3.1~a1+20090322
ImportĀ upstreamĀ versionĀ 3.1~a1+20090322

Show diffs side-by-side

added added

removed removed

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