blob: d37b96b316099c8e0d6351704b1b83f92df0643f [file] [log] [blame]
Larry Hastingsf92f6c82015-09-12 16:28:391This is Python version 3.5.0
2============================
Guido van Rossum91447632000-04-11 17:11:093
Benjamin Petersonf606e682012-01-01 04:42:264Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011,
Benjamin Peterson47e782a2015-01-01 00:09:3652012, 2013, 2014, 2015 Python Software Foundation. All rights reserved.
Guido van Rossum4405cf32007-08-30 17:16:556
Larry Hastingsf92f6c82015-09-12 16:28:397Python 3.x is a new version of the language, which is incompatible with the
82.x line of releases. The language is mostly the same, but many details,
9especially how built-in objects like dictionaries and strings work,
10have changed considerably, and a lot of deprecated features have finally
11been removed.
Guido van Rossum1c896e32007-08-29 23:03:3012
Guido van Rossum50e9fb92006-08-17 05:42:5513
Benjamin Peterson1da43e52009-06-26 13:21:5214Build Instructions
15------------------
Guido van Rossum3ff96dd1996-07-30 18:05:0416
Benjamin Peterson1da43e52009-06-26 13:21:5217On Unix, Linux, BSD, OSX, and Cygwin:
18
19 ./configure
20 make
21 make test
22 sudo make install
23
24This will install Python as python3.
25
Georg Brandla02607e2010-07-31 11:00:4726You can pass many options to the configure script; run "./configure --help" to
27find out more. On OSX and Cygwin, the executable is called python.exe;
28elsewhere it's just python.
Benjamin Peterson1da43e52009-06-26 13:21:5229
Georg Brandla02607e2010-07-31 11:00:4730On Mac OS X, if you have configured Python with --enable-framework, you should
Larry Hastingsf92f6c82015-09-12 16:28:3931use "make frameworkinstall" to do the installation. Note that this installs
32the Python executable in a place that is not normally on your PATH, you may
33want to set up a symlink in /usr/local/bin.
Benjamin Peterson1da43e52009-06-26 13:21:5234
35On Windows, see PCbuild/readme.txt.
36
Larry Hastingsf92f6c82015-09-12 16:28:3937If you wish, you can create a subdirectory and invoke configure from there.
38For example:
Benjamin Peterson1da43e52009-06-26 13:21:5239
40 mkdir debug
41 cd debug
42 ../configure --with-pydebug
43 make
44 make test
45
Larry Hastingsf92f6c82015-09-12 16:28:3946(This will fail if you *also* built at the top-level directory.
47You should do a "make clean" at the toplevel first.)
Benjamin Peterson1da43e52009-06-26 13:21:5248
49
50What's New
51----------
52
Larry Hastingsf92f6c82015-09-12 16:28:3953We have a comprehensive overview of the changes in the "What's New in
Yury Selivanov7aa53412015-05-30 14:57:5654Python 3.5" document, found at
Benjamin Peterson1da43e52009-06-26 13:21:5255
Yury Selivanov7aa53412015-05-30 14:57:5656 http://docs.python.org/3.5/whatsnew/3.5.html
Benjamin Peterson1da43e52009-06-26 13:21:5257
Larry Hastingsf92f6c82015-09-12 16:28:3958For a more detailed change log, read Misc/NEWS (though this file, too,
59is incomplete, and also doesn't list anything merged in from the 2.7
60release under development).
Benjamin Peterson1da43e52009-06-26 13:21:5261
62If you want to install multiple versions of Python see the section below
63entitled "Installing multiple versions".
Guido van Rossum8d90f9d1997-05-22 20:13:2564
Guido van Rossumf501b4e1996-10-25 14:32:4865
Guido van Rossumc07d5fa2000-09-01 22:50:0266Documentation
67-------------
Guido van Rossum91cb9d21995-04-10 11:47:3868
Yury Selivanov7aa53412015-05-30 14:57:5669Documentation for Python 3.5 is online, updated daily:
Guido van Rossum91cb9d21995-04-10 11:47:3870
Yury Selivanov7aa53412015-05-30 14:57:5671 http://docs.python.org/3.5/
Guido van Rossumc07d5fa2000-09-01 22:50:0272
Georg Brandl62069d32010-07-31 08:56:1173It can also be downloaded in many formats for faster access. The documentation
74is downloadable in HTML, PDF, and reStructuredText formats; the latter version
75is primarily for documentation authors, translators, and people with special
76formatting requirements.
Benjamin Peterson2a691a82008-03-31 01:51:4577
Ezio Melotti802bf8ae2013-08-16 18:32:2578If you would like to contribute to the development of Python, relevant
79documentation is available at:
80
81 http://docs.python.org/devguide/
82
83For information about building Python's documentation, refer to Doc/README.txt.
84
Guido van Rossumc07d5fa2000-09-01 22:50:0285
Barry Warsaw97f005d2008-12-03 16:46:1486Converting From Python 2.x to 3.x
Guido van Rossum1c896e32007-08-29 23:03:3087---------------------------------
Guido van Rossum433c8ad1994-08-01 12:07:0788
Georg Brandla02607e2010-07-31 11:00:4789Python starting with 2.6 contains features to help locating code that needs to
90be changed, such as optional warnings when deprecated features are used, and
91backported versions of certain key Python 3.x features.
Guido van Rossum433c8ad1994-08-01 12:07:0792
Benjamin Peterson1da43e52009-06-26 13:21:5293A source-to-source translation tool, "2to3", can take care of the mundane task
94of converting large amounts of source code. It is not a complete solution but
95is complemented by the deprecation warnings in 2.6. See
Yury Selivanov7aa53412015-05-30 14:57:5696http://docs.python.org/3.5/library/2to3.html for more information.
Benjamin Peterson1da43e52009-06-26 13:21:5297
Christian Heimesdd15f6c2008-03-16 00:07:1098
Benjamin Petersonad3d5c22009-02-26 03:38:5999Testing
100-------
101
Larry Hastingsf92f6c82015-09-12 16:28:39102To test the interpreter, type "make test" in the top-level directory.
103The test set produces some output. You can generally ignore the messages
104about skipped tests due to optional features which can't be imported.
105If a message is printed about a failed test or a traceback or core dump
106is produced, something is wrong.
Benjamin Petersonad3d5c22009-02-26 03:38:59107
108By default, tests are prevented from overusing resources like disk space and
109memory. To enable these tests, run "make testall".
110
Georg Brandla02607e2010-07-31 11:00:47111IMPORTANT: If the tests fail and you decide to mail a bug report, *don't*
112include the output of "make test". It is useless. Run the failing test
113manually, as follows:
Benjamin Petersonad3d5c22009-02-26 03:38:59114
Antoine Pitroue7fed672010-12-14 22:06:10115 ./python -m test -v test_whatever
Benjamin Petersonad3d5c22009-02-26 03:38:59116
Georg Brandla02607e2010-07-31 11:00:47117(substituting the top of the source tree for '.' if you built in a different
118directory). This runs the test in verbose mode.
Benjamin Petersonad3d5c22009-02-26 03:38:59119
120
Christian Heimesdd15f6c2008-03-16 00:07:10121Installing multiple versions
122----------------------------
123
124On Unix and Mac systems if you intend to install multiple versions of Python
Georg Brandla02607e2010-07-31 11:00:47125using the same installation prefix (--prefix argument to the configure script)
Larry Hastingsf92f6c82015-09-12 16:28:39126you must take care that your primary python executable is not overwritten by
127the installation of a different version. All files and directories installed
128using "make altinstall" contain the major and minor version and can thus live
129side-by-side. "make install" also creates ${prefix}/bin/python3 which refers
130to ${prefix}/bin/pythonX.Y. If you intend to install multiple versions using
131the same prefix you must decide which version (if any) is your "primary"
132version. Install that version using "make install". Install all other
133versions using "make altinstall".
Christian Heimesdd15f6c2008-03-16 00:07:10134
Yury Selivanov7aa53412015-05-30 14:57:56135For example, if you want to install Python 2.6, 2.7 and 3.5 with 2.7 being the
Georg Brandlfa2c61a2011-02-20 10:41:31136primary version, you would execute "make install" in your 2.7 build directory
Georg Brandla02607e2010-07-31 11:00:47137and "make altinstall" in the others.
Christian Heimesdd15f6c2008-03-16 00:07:10138
139
Guido van Rossum1c896e32007-08-29 23:03:30140Issue Tracker and Mailing List
141------------------------------
Michael W. Hudson71dcc3e2005-02-22 15:33:26142
Georg Brandla02607e2010-07-31 11:00:47143We're soliciting bug reports about all aspects of the language. Fixes are also
Larry Hastingsf92f6c82015-09-12 16:28:39144welcome, preferably in unified diff format. Please use the issue tracker:
Fred Drake6caae142000-10-25 17:51:02145
Guido van Rossum1c896e32007-08-29 23:03:30146 http://bugs.python.org/
Guido van Rossum76be6ed1995-01-02 18:33:54147
Georg Brandla02607e2010-07-31 11:00:47148If you're not sure whether you're dealing with a bug or a feature, use the
149mailing list:
Guido van Rossum1c896e32007-08-29 23:03:30150
Mark Dickinsonb9ebd042009-02-06 16:39:11151 python-dev@python.org
Guido van Rossum1c896e32007-08-29 23:03:30152
153To subscribe to the list, use the mailman form:
154
Mark Dickinsonb9ebd042009-02-06 16:39:11155 http://mail.python.org/mailman/listinfo/python-dev/
Georg Brandl81299ad2006-02-20 10:24:06156
Michael W. Hudson71dcc3e2005-02-22 15:33:26157
Benjamin Peterson1da43e52009-06-26 13:21:52158Proposals for enhancement
159-------------------------
Guido van Rossum433c8ad1994-08-01 12:07:07160
Benjamin Peterson1da43e52009-06-26 13:21:52161If you have a proposal to change Python, you may want to send an email to the
Georg Brandl260a7882011-02-20 10:29:04162comp.lang.python or python-ideas mailing lists for inital feedback. A Python
163Enhancement Proposal (PEP) may be submitted if your idea gains ground. All
Benjamin Peterson1da43e52009-06-26 13:21:52164current PEPs, as well as guidelines for submitting a new PEP, are listed at
165http://www.python.org/dev/peps/.
Guido van Rossum433c8ad1994-08-01 12:07:07166
Guido van Rossum1c896e32007-08-29 23:03:30167
Benjamin Peterson1da43e52009-06-26 13:21:52168Release Schedule
169----------------
Guido van Rossum1c896e32007-08-29 23:03:30170
Berker Peksag51a4a2b2014-10-12 03:59:14171See PEP 478 for release details: http://www.python.org/dev/peps/pep-0478/
Guido van Rossumef0f1292007-08-30 14:51:05172
173
174Copyright and License Information
175---------------------------------
176
Georg Brandla7d2f002013-03-23 15:06:13177Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011,
Larry Hastingsb06f1422015-02-08 00:00:551782012, 2013, 2014, 2015 Python Software Foundation. All rights reserved.
Guido van Rossumef0f1292007-08-30 14:51:05179
Georg Brandl260a7882011-02-20 10:29:04180Copyright (c) 2000 BeOpen.com. All rights reserved.
Guido van Rossumef0f1292007-08-30 14:51:05181
Georg Brandl260a7882011-02-20 10:29:04182Copyright (c) 1995-2001 Corporation for National Research Initiatives. All
183rights reserved.
Guido van Rossumef0f1292007-08-30 14:51:05184
Georg Brandl260a7882011-02-20 10:29:04185Copyright (c) 1991-1995 Stichting Mathematisch Centrum. All rights reserved.
Guido van Rossumef0f1292007-08-30 14:51:05186
Larry Hastingsf92f6c82015-09-12 16:28:39187See the file "LICENSE" for information on the history of this software,
188terms & conditions for usage, and a DISCLAIMER OF ALL WARRANTIES.
Guido van Rossumef0f1292007-08-30 14:51:05189
Larry Hastingsf92f6c82015-09-12 16:28:39190This Python distribution contains *no* GNU General Public License (GPL) code,
191so it may be used in proprietary projects. There are interfaces to some GNU
192code but these are entirely optional.
Guido van Rossumef0f1292007-08-30 14:51:05193
Georg Brandl260a7882011-02-20 10:29:04194All trademarks referenced herein are property of their respective holders.