The Python programming language https://www.python.org
Find a file
Benjamin Peterson 28df4df079 Blocked revisions 79620,79624-79625,79633-79637,79639-79640,79650-79651,79654,79673,79693,79695,79697-79698,79704,79706-79707,79710,79712-79714,79718-79719,79722,79730,79744,79750,79755,79760,79769,79808,79811,79890,80062,80065,80082,80086,80171,80189,80242-80243,80374,80411-80412,80445,80579-80581,80700,80737,80745,80752,80794,80813-80814,80823,80963,80982,81012-81013,81030,81035,81088,81140-81141,81149-81151,81275,81484,81502,81517,81561,81705,81847,81919,81964,82056,82136-82137,82142,82149 via svnmerge
........
  r79620 | brian.curtin | 2010-04-02 16:18:14 -0500 (Fri, 02 Apr 2010) | 9 lines

  Implement #7347. Add CreateKeyEx, DeleteKeyEx, and update _winreg tests.

  *ReflectionKey functions used to not be documented or tested, but they are
  now sufficiently documented and tested on platforms where they apply.
  Additionally, fixed a bug in QueryReflectionKey which was returning an
  incorrect value.

  All tests pass from XP through Windows 7, on 32 and 64-bit platforms.
........
  r79624 | ezio.melotti | 2010-04-02 16:43:10 -0500 (Fri, 02 Apr 2010) | 1 line

  Fix test_compiler.py that was using unittest.__file__ to find Lib/ (unittest is now a package).
........
  r79625 | brian.curtin | 2010-04-02 16:51:37 -0500 (Fri, 02 Apr 2010) | 2 lines

  Add a line about #7347 to Misc\News
........
  r79633 | brian.curtin | 2010-04-02 18:26:06 -0500 (Fri, 02 Apr 2010) | 14 lines

  Implement #1220212. Add os.kill support for Windows.

  os.kill takes one of two newly added signals, CTRL_C_EVENT and
  CTRL_BREAK_EVENT, or any integer value. The events are a special case
  which work with subprocess console applications which implement a
  special console control handler. Any other value but those two will
  cause os.kill to use TerminateProcess, outright killing the process.

  This change adds win_console_handler.py, which is a script to implement
  SetConsoleCtrlHandler and applicable handler function, using ctypes.

  subprocess also gets another attribute which is a necessary flag to
  creationflags in Popen in order to send the CTRL events.
........
  r79634 | brian.curtin | 2010-04-02 18:31:28 -0500 (Fri, 02 Apr 2010) | 2 lines

  Add note about #1220212 (os.kill on Windows)
........
  r79635 | benjamin.peterson | 2010-04-02 18:31:40 -0500 (Fri, 02 Apr 2010) | 1 line

  set svn:eol-style on new file
........
  r79636 | benjamin.peterson | 2010-04-02 18:59:41 -0500 (Fri, 02 Apr 2010) | 4 lines

  always check _PyString_Resize for error

  also normalize how this error is checked
........
  r79637 | raymond.hettinger | 2010-04-02 19:39:26 -0500 (Fri, 02 Apr 2010) | 1 line

  Clear cyclical references in list based OrderedDict.
........
  r79639 | benjamin.peterson | 2010-04-02 19:57:33 -0500 (Fri, 02 Apr 2010) | 1 line

  more _PyString_Resize error checking
........
  r79640 | brian.curtin | 2010-04-02 19:59:32 -0500 (Fri, 02 Apr 2010) | 3 lines

  Fix assertRaises usage on reflection functions which should raise
  NotImplementedError on Windows XP and below.
........
  r79650 | raymond.hettinger | 2010-04-02 22:14:28 -0500 (Fri, 02 Apr 2010) | 1 line

  Improve clear() method.  Keeps key/value refcnts >= 1 until final dict.clear() so that decrefs to zero won't trigger arbitrary code .  Also runs a bit faster.
........
  r79651 | raymond.hettinger | 2010-04-03 02:57:09 -0500 (Sat, 03 Apr 2010) | 1 line

  Factor-out constant expressions
........
  r79654 | victor.stinner | 2010-04-03 03:40:16 -0500 (Sat, 03 Apr 2010) | 5 lines

  Issue #8227: Fix C API documentation, argument parsing

   * 'z', 'z#', 'z*' does also accept Unicode
   * unify types name: replace "string or Unicode objet" by "string or Unicode"
........
  r79673 | brian.curtin | 2010-04-03 08:58:39 -0500 (Sat, 03 Apr 2010) | 2 lines

  Add missing return statement in an error condition.
........
  r79693 | benjamin.peterson | 2010-04-03 10:38:38 -0500 (Sat, 03 Apr 2010) | 1 line

  wrap
........
  r79695 | benjamin.peterson | 2010-04-03 10:40:29 -0500 (Sat, 03 Apr 2010) | 1 line

  remove unneeded argument
........
  r79697 | benjamin.peterson | 2010-04-03 10:44:56 -0500 (Sat, 03 Apr 2010) | 1 line

  silence PyCObject warnings in bsddb
........
  r79698 | benjamin.peterson | 2010-04-03 10:45:59 -0500 (Sat, 03 Apr 2010) | 1 line

  spelling
........
  r79704 | benjamin.peterson | 2010-04-03 10:58:15 -0500 (Sat, 03 Apr 2010) | 1 line

  remove deprecation warnings silence attempting
........
  r79706 | benjamin.peterson | 2010-04-03 11:06:42 -0500 (Sat, 03 Apr 2010) | 1 line

  stop CObject deprecation warnings in test___all__
........
  r79707 | mark.dickinson | 2010-04-03 11:41:20 -0500 (Sat, 03 Apr 2010) | 5 lines

  Ensure 'module removed' warning messages contain the word 'module' or 'package'.

  This should fix the test_py3kwarn failure on OS X.  test_support.import_module
  also requires this.
........
  r79710 | mark.dickinson | 2010-04-03 11:54:02 -0500 (Sat, 03 Apr 2010) | 1 line

  Replace backquotes with repr(), to silence a SyntaxWarning.
........
  r79712 | raymond.hettinger | 2010-04-03 12:10:05 -0500 (Sat, 03 Apr 2010) | 1 line

  Silence a compiler warning.
........
  r79713 | raymond.hettinger | 2010-04-03 13:10:37 -0500 (Sat, 03 Apr 2010) | 1 line

  Add count() method to collections.deque().
........
  r79714 | mark.dickinson | 2010-04-03 13:17:54 -0500 (Sat, 03 Apr 2010) | 1 line

  Silence DeprecationWarnings from uses of has_key and <> in plat-mac.
........
  r79718 | antoine.pitrou | 2010-04-03 16:42:18 -0500 (Sat, 03 Apr 2010) | 3 lines

  Remove useless (?) import from r79706
........
  r79719 | benjamin.peterson | 2010-04-03 16:50:40 -0500 (Sat, 03 Apr 2010) | 1 line

  import bsddb more robustly
........
  r79722 | raymond.hettinger | 2010-04-03 17:34:15 -0500 (Sat, 03 Apr 2010) | 1 line

  Expand test coverage for deque.count().
........
  r79730 | raymond.hettinger | 2010-04-03 20:24:59 -0500 (Sat, 03 Apr 2010) | 1 line

  Issue 5479:  Add functools.total_ordering class decorator.
........
  r79744 | raymond.hettinger | 2010-04-04 02:33:46 -0500 (Sun, 04 Apr 2010) | 1 line

  Documentation nit
........
  r79750 | raymond.hettinger | 2010-04-04 13:34:45 -0500 (Sun, 04 Apr 2010) | 1 line

  Add functools.CmpToKey()
........
  r79755 | raymond.hettinger | 2010-04-04 16:45:01 -0500 (Sun, 04 Apr 2010) | 6 lines

  Add tests for cmp_to_key.
  Adopt PEP 8 compliant function name.
  Factor-out existing uses cmp_to_key.
  Update documentation to use internal pointers instead of external resource.
........
  r79760 | raymond.hettinger | 2010-04-04 17:24:03 -0500 (Sun, 04 Apr 2010) | 1 line

  Add tests for functools.total_ordering.
........
  r79769 | benjamin.peterson | 2010-04-04 18:23:22 -0500 (Sun, 04 Apr 2010) | 1 line

  fix dis on new style classes #8310
........
  r79808 | raymond.hettinger | 2010-04-05 13:53:43 -0500 (Mon, 05 Apr 2010) | 1 line

  Classes that override __eq__ also need to define __hash__.
........
  r79811 | brian.curtin | 2010-04-05 14:04:23 -0500 (Mon, 05 Apr 2010) | 7 lines

  Fix a failing test on an apparently slow Windows buildbot.

  On slower Windows machines, waiting 0.1 seconds can sometimes not be
  enough for a subprocess to start and be ready to accept signals, causing
  the test to fail. One buildbot is also choking on input()/EOFError so
  that was changed to not depend on input.
........
  r79890 | mark.dickinson | 2010-04-07 05:18:27 -0500 (Wed, 07 Apr 2010) | 4 lines

  Use some more interesting test values for (unsigned) long long ctypes tests,
  in the hope of getting more information about the test_ctypes failures
  on Sparc (see issue #8314).
........
  r80062 | r.david.murray | 2010-04-13 15:57:40 -0500 (Tue, 13 Apr 2010) | 2 lines

  Issue #5277: Fix quote counting when parsing RFC 2231 encoded parameters.
........
  r80065 | brian.curtin | 2010-04-13 21:24:24 -0500 (Tue, 13 Apr 2010) | 6 lines

  Add a small sleep to let a subprocess start before terminating it.

  David Bolen's buildbot isn't know for it's speed, and it seems that we
  may have been trying to kill the subprocess before it was fully
  initialized. I ran with this change on the bot itself and it seemed to work.
........
  r80082 | georg.brandl | 2010-04-14 16:36:49 -0500 (Wed, 14 Apr 2010) | 1 line

  #8370: fix module name in backported doc addition.
........
  r80086 | brian.curtin | 2010-04-14 19:40:40 -0500 (Wed, 14 Apr 2010) | 9 lines

  Fix os.kill tests to be more robust and work with slower machines.

  Rather than depending on some sleep value, start up an interpreter
  as a subprocess and communicate with it. Because subprocess pipes
  can't be read from until EOF and I want to read from them before that,
  use ctypes to peek by using PeekNamedPipe. Once the subprocess has
  written the message, then it is ready to roll and accept signals.
  After that, kill it.
........
  r80171 | antoine.pitrou | 2010-04-18 06:16:24 -0500 (Sun, 18 Apr 2010) | 3 lines

  Fix bootstrap after r80166
........
  r80189 | victor.stinner | 2010-04-18 13:22:25 -0500 (Sun, 18 Apr 2010) | 1 line

  Revert r80166 (and r80171), restore Lib/platform.py. subprocess cannot be used in platform.py
........
  r80242 | ronald.oussoren | 2010-04-20 03:53:12 -0500 (Tue, 20 Apr 2010) | 8 lines

  The PythonLauncher change is needed due
  to changes in how the BASECFLAGS and CFLAGS
  variables get filled by configure.

  The Mac/Makefile.in change ensures that
  pythonw gets build with the rigth deployment
  targets.
........
  r80243 | ronald.oussoren | 2010-04-20 03:54:48 -0500 (Tue, 20 Apr 2010) | 3 lines

  This patch fixes the handling of a weak-linked
  variable and should fix issue #8095.
........
  r80374 | antoine.pitrou | 2010-04-22 12:44:41 -0500 (Thu, 22 Apr 2010) | 3 lines

  Temporarily display OpenSSL version in verbose run -- trying to diagnose failure on Neal's buildbot.
........
  r80411 | florent.xicluna | 2010-04-23 12:59:10 -0500 (Fri, 23 Apr 2010) | 2 lines

  Remove ImportWarnings filters.  They become obsolete after r79310, issue #8205.
........
  r80412 | florent.xicluna | 2010-04-23 13:10:12 -0500 (Fri, 23 Apr 2010) | 2 lines

  Fix the "regrtest -s" switch.
........
  r80445 | brian.curtin | 2010-04-24 12:10:22 -0500 (Sat, 24 Apr 2010) | 2 lines

  Fix #5774. Some _winreg functions are documented as taking kwargs but don't.
........
  r80579 | nick.coghlan | 2010-04-28 09:34:30 -0500 (Wed, 28 Apr 2010) | 1 line

  Also mention patch submitter's name in NEWS, not just in the commit message
........
  r80580 | nick.coghlan | 2010-04-28 09:51:08 -0500 (Wed, 28 Apr 2010) | 1 line

  Issue 8202: when using the -m command line switch, sys.argv[0] is now '-m' instead of '-c' while searching for the module to be executed
........
  r80581 | nick.coghlan | 2010-04-28 09:53:59 -0500 (Wed, 28 Apr 2010) | 1 line

  Add version changed note for -m tinkering with sys.argv[0] during the search process
........
  r80700 | ronald.oussoren | 2010-05-02 04:55:57 -0500 (Sun, 02 May 2010) | 3 lines

  Small update to r80698 to ensure that webbrowser.open
  uses the default browser.
........
  r80737 | brett.cannon | 2010-05-03 18:57:15 -0500 (Mon, 03 May 2010) | 4 lines

  Fix two potential uninitialization errors and an unneeded assignment.

  Found using Clang's static analyzer.
........
  r80745 | brett.cannon | 2010-05-03 20:04:53 -0500 (Mon, 03 May 2010) | 5 lines

  Mention the code clean-up thanks to Clang's static analyzer in Modules.

  Was not applied to modules that will not compile under OS X, dbmmodule.c,
  getaddrinfo.c, and getnameinfo.c.
........
  r80752 | victor.stinner | 2010-05-04 06:35:36 -0500 (Tue, 04 May 2010) | 4 lines

  _pyio: Fix TextIOWrapper constructor: os has no device_encoding() function

  _io module doesn't call this function which was introduced in Python3.
........
  r80794 | barry.warsaw | 2010-05-05 11:17:22 -0500 (Wed, 05 May 2010) | 1 line

  NEWS
........
  r80813 | brett.cannon | 2010-05-05 15:20:19 -0500 (Wed, 05 May 2010) | 4 lines

  Remove three unneeded variable assignments.

  Found using Clang's static analyzer.
........
  r80814 | brett.cannon | 2010-05-05 15:24:30 -0500 (Wed, 05 May 2010) | 1 line

  Partially revert the over-reaching r80813.
........
  r80823 | brett.cannon | 2010-05-05 15:54:53 -0500 (Wed, 05 May 2010) | 1 line

  Mention how Clang's static anaylzer was run over Objects/ and Python/.
........
  r80963 | ronald.oussoren | 2010-05-08 03:44:37 -0500 (Sat, 08 May 2010) | 4 lines

  Fix for issue #7724: make it possible to build using
  the OSX 10.4u SDK on MacOSX 10.6 by honoring the specified
  SDK when looking for files.
........
  r80982 | antoine.pitrou | 2010-05-08 10:23:57 -0500 (Sat, 08 May 2010) | 3 lines

  Revert r80963 - it broke compilation everywhere
........
  r81012 | gregory.p.smith | 2010-05-08 18:38:49 -0500 (Sat, 08 May 2010) | 2 lines

  Fixes [issue7245] Better Ctrl-C support in pdb.
........
  r81013 | gregory.p.smith | 2010-05-08 20:20:20 -0500 (Sat, 08 May 2010) | 5 lines

  Revert r81012.  buildbot problems and its questionable of me to even
  add this to trunk while we're on the way to 2.7rc1.

  When fixed this can go into py3k first.  Sorry.
........
  r81030 | antoine.pitrou | 2010-05-09 10:15:11 -0500 (Sun, 09 May 2010) | 3 lines

  Fixup indentation of PC/_msi.c
........
  r81035 | antoine.pitrou | 2010-05-09 13:32:48 -0500 (Sun, 09 May 2010) | 3 lines

  Remove spurious newlines, and add version number.
........
  r81088 | brian.curtin | 2010-05-11 14:13:13 -0500 (Tue, 11 May 2010) | 13 lines

  #8575 - Update and reorganize some _winreg contents.

  I've removed the hopeful note about a future higher-level module since
  it's been in there for quite a long time and nothing of the sort has
  come up. There are a few places where markup was added to cross-reference
  other sections, and many of the external links have been removed and now
  point to newly created sections containing previously undocumented
  information.

  The Value Types section was created and it's contents were taken from
  a function-specific area, since it applies to more than just that
  function. It fits in better with the other newly documented constants.
........
  r81140 | florent.xicluna | 2010-05-13 12:05:29 -0500 (Thu, 13 May 2010) | 3 lines

  Add sensible information about the OS X platform to diagnose issue #8423:
  test_pep277 fails on "x86 Tiger" buildbot but not on "PPC Tiger".
........
  r81141 | florent.xicluna | 2010-05-13 13:16:06 -0500 (Thu, 13 May 2010) | 2 lines

  Revert the additional OS X information (r81140).  Keep the endianness information.
........
  r81149 | florent.xicluna | 2010-05-13 16:40:01 -0500 (Thu, 13 May 2010) | 2 lines

  Better test skipping, with message in the log.
........
  r81150 | florent.xicluna | 2010-05-13 16:41:05 -0500 (Thu, 13 May 2010) | 2 lines

  Improve test feedback to troubleshoot issue #8423 on OS X.
........
  r81151 | florent.xicluna | 2010-05-13 18:46:48 -0500 (Thu, 13 May 2010) | 2 lines

  Revert changeset r81150 which helped diagnose issue #8423 on some OS X buildbot.
........
  r81275 | antoine.pitrou | 2010-05-17 14:56:59 -0500 (Mon, 17 May 2010) | 4 lines

  Issue #7079: Fix a possible crash when closing a file object while using
  it from another thread.  Patch by Daniel Stutzbach.
........
  r81484 | georg.brandl | 2010-05-22 16:26:21 -0500 (Sat, 22 May 2010) | 1 line

  NEWS rewrap and punctuation consistency.
........
  r81502 | georg.brandl | 2010-05-24 16:37:54 -0500 (Mon, 24 May 2010) | 1 line

  #8616: update module name
........
  r81517 | brian.curtin | 2010-05-25 10:06:15 -0500 (Tue, 25 May 2010) | 5 lines

  Fix #2810 - handle the case where some registry calls return
  ERROR_MORE_DATA, requiring another call to get the remaining data.

  Patch by Daniel Stutzbach
........
  r81561 | alexander.belopolsky | 2010-05-26 15:57:04 -0500 (Wed, 26 May 2010) | 1 line

  Added Andrej Krpic. (Thanks for issue #7879 patch.)
........
  r81705 | r.david.murray | 2010-06-04 14:51:06 -0500 (Fri, 04 Jun 2010) | 9 lines

  #4487: have Charset check with codecs for possible aliases.

  Previously, unexpected results occurred when email was passed, for example,
  'utf8' as a charset name, since email would accept it but would *not* use
  the 'utf-8' codec for it, even though Python itself recognises that as
  an alias for utf-8.  Now Charset checks with codecs for aliases as well
  as its own internal table.  Issue 8898 has been opened to change this
  further in py3k so that all aliasing is routed through the codecs module.
........
  r81847 | brian.curtin | 2010-06-08 16:15:06 -0500 (Tue, 08 Jun 2010) | 3 lines

  Move a variable declration outside of a loop to match what was
  done in r81843 for py3k.
........
  r81919 | vinay.sajip | 2010-06-11 17:56:50 -0500 (Fri, 11 Jun 2010) | 1 line

  Issue #8924: logging: Improved error handling for Unicode in exception text.
........
  r81964 | nick.coghlan | 2010-06-13 01:50:39 -0500 (Sun, 13 Jun 2010) | 1 line

  Revert r80580 due to some unintended side effects. See issue #8202 for details.
........
  r82056 | florent.xicluna | 2010-06-17 15:30:56 -0500 (Thu, 17 Jun 2010) | 2 lines

  Add few words about test.test_genericpath.CommonTest
........
  r82136 | benjamin.peterson | 2010-06-21 10:56:45 -0500 (Mon, 21 Jun 2010) | 1 line

  update pydoc-topics
........
  r82137 | benjamin.peterson | 2010-06-21 10:57:57 -0500 (Mon, 21 Jun 2010) | 1 line

  bump verson to 2.7rc2
........
  r82142 | benjamin.peterson | 2010-06-21 12:28:30 -0500 (Mon, 21 Jun 2010) | 1 line

  towards final release
........
  r82149 | ronald.oussoren | 2010-06-22 04:18:28 -0500 (Tue, 22 Jun 2010) | 11 lines

  Fix for issue8446:

  * Don't import 'ic' in webbrowser, that module is no longer used
  * Remove 'MacOS' from the list of modules that should emit a Py3kWarning on import.
    This is needed because one of the earlier tests triggers and import of this
    extension, and that causes a failure in test_py3kwarn (running test_py3kwarn
    separately worked fine)

  With these changes 'make tests' no longer says that test_py3kwarn fails.
........
2010-06-27 20:50:37 +00:00
Demo Recorded merge of revisions 81029 via svnmerge from 2010-05-09 15:52:27 +00:00
Doc Issue #9089: PyNumber_Int is no more. Remove it from the docs. 2010-06-27 17:36:54 +00:00
Grammar fix an ambiguity in the grammar from the implementation of extended unpacking 2009-09-27 02:43:28 +00:00
Include Issue #9089: Remove references to intobject.c and intobject.h from comments. 2010-06-27 18:19:09 +00:00
Lib Merged revisions 82284 via svnmerge from 2010-06-27 14:26:30 +00:00
Mac Merged revisions 81649 via svnmerge from 2010-06-02 03:50:56 +00:00
Misc Revert r82259; still no good way to override instead of replace OPT, but changing order alters pydebug optimization flags. 2010-06-27 20:40:18 +00:00
Modules Issue #9089: Remove references to intobject.c and intobject.h from comments. 2010-06-27 18:19:09 +00:00
Objects Issue #9089: Remove references to intobject.c and intobject.h from comments. 2010-06-27 18:19:09 +00:00
Parser Merged revisions 82160 via svnmerge from 2010-06-22 20:02:39 +00:00
PC Issue #9089: Remove intobject.h from MSVC project files. 2010-06-27 18:18:01 +00:00
PCbuild Issue #9089: Remove intobject.h from MSVC project files. 2010-06-27 18:18:01 +00:00
Python only take into account positional arguments count in related error messages 2010-06-25 19:30:21 +00:00
Tools remove old, outdated tool 2010-06-25 23:37:15 +00:00
.bzrignore PEP 3147 2010-04-17 00:19:56 +00:00
.hgignore PEP 3147 2010-04-17 00:19:56 +00:00
.hgtags tag Python version 3.1! 2009-06-26 13:27:07 +00:00
configure Revert r82089. Commit was intended for a branch. 2010-06-19 19:58:37 +00:00
configure.in Revert r82089. Commit was intended for a branch. 2010-06-19 19:58:37 +00:00
install-sh Patch #746366: Update to current automake install-sh. Will backport to 2.2. 2003-06-14 06:58:32 +00:00
LICENSE add 3.1.2 2010-04-11 16:13:23 +00:00
Makefile.pre.in Revert r82259; still no good way to override instead of replace OPT, but changing order alters pydebug optimization flags. 2010-06-27 20:40:18 +00:00
pyconfig.h.in Revert r82089. Commit was intended for a branch. 2010-06-19 19:58:37 +00:00
README add copyright years 2010-06-20 15:27:42 +00:00
runtests.sh Really commit the patch for bug 4125; runtests.sh use -bb flag 2008-10-17 12:05:40 +00:00
setup.py Merged revisions 82272 via svnmerge from 2010-06-27 12:37:46 +00:00

This is Python version 3.2
==========================

Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
Python Software Foundation.
All rights reserved.

Python 3.x is a new version of the language, which is incompatible with the
2.x line of releases.  The language is mostly the same, but many details,
especially how built-in objects like dictionaries and strings work, have
changed considerably, and a lot of deprecated features have finally been
removed.


Build Instructions
------------------

On Unix, Linux, BSD, OSX, and Cygwin:

    ./configure
    make
    make test
    sudo make install

This will install Python as python3.

You can pass many options to the configure script; run "./configure
--help" to find out more.  On OSX and Cygwin, the executable is called
python.exe; elsewhere it's just python.

On Mac OS X, if you have configured Python with --enable-framework,
you should use "make frameworkinstall" to do the installation.  Note
that this installs the Python executable in a place that is not
normally on your PATH, you may want to set up a symlink in
/usr/local/bin.

On Windows, see PCbuild/readme.txt.

If you wish, you can create a subdirectory and invoke configure from
there.  For example:

    mkdir debug
    cd debug
    ../configure --with-pydebug
    make
    make test

(This will fail if you *also* built at the top-level directory.  You
should do a "make clean" at the toplevel first.)


What's New
----------

We try to have a comprehensive overview of the changes in the "What's New in
Python 3.1" document, found at

    http://docs.python.org/dev/3.1/whatsnew/3.1.html

For a more detailed change log, read Misc/NEWS (though this file, too,
is incomplete, and also doesn't list anything merged in from the 2.7
release under development).

If you want to install multiple versions of Python see the section below
entitled "Installing multiple versions".


Documentation
-------------

Documentation for Python 3.1 is online, updated twice a day:

    http://docs.python.org/dev/3.1/

All documentation is also available online at the Python web site
(http://docs.python.org/, see below).  It is available online for
occasional reference, or can be downloaded in many formats for faster
access.  The documentation is downloadable in HTML, PostScript, PDF,
LaTeX (through 2.5), and reStructuredText (2.6+) formats; the LaTeX and
reStructuredText versions are primarily for documentation authors,
translators, and people with special formatting requirements.


Converting From Python 2.x to 3.x
---------------------------------

Python starting with 2.6 will contain features to help locating code that
needs to be changed, such as optional warnings when deprecated features are
used, and backported versions of certain key Python 3.x features.

A source-to-source translation tool, "2to3", can take care of the mundane task
of converting large amounts of source code.  It is not a complete solution but
is complemented by the deprecation warnings in 2.6.  See
http://docs.python.org/dev/py3k/library/2to3.html for more information.


Testing
-------

To test the interpreter, type "make test" in the top-level directory.
This runs the test set twice (once with no compiled files, once with
the compiled files left by the previous test run).  The test set
produces some output.  You can generally ignore the messages about
skipped tests due to optional features which can't be imported.
If a message is printed about a failed test or a traceback or core
dump is produced, something is wrong.  On some Linux systems (those
that are not yet using glibc 6), test_strftime fails due to a
non-standard implementation of strftime() in the C library. Please
ignore this, or upgrade to glibc version 6.

By default, tests are prevented from overusing resources like disk space and
memory.  To enable these tests, run "make testall".

IMPORTANT: If the tests fail and you decide to mail a bug report,
*don't* include the output of "make test".  It is useless.  Run the
failing test manually, as follows:

        ./python Lib/test/regrtest.py -v test_whatever

(substituting the top of the source tree for '.' if you built in a
different directory).  This runs the test in verbose mode.


Installing multiple versions
----------------------------

On Unix and Mac systems if you intend to install multiple versions of Python
using the same installation prefix (--prefix argument to the configure
script) you must take care that your primary python executable is not
overwritten by the installation of a different version.  All files and
directories installed using "make altinstall" contain the major and minor
version and can thus live side-by-side.  "make install" also creates
${prefix}/bin/python3 which refers to ${prefix}/bin/pythonX.Y.  If you intend
to install multiple versions using the same prefix you must decide which
version (if any) is your "primary" version.  Install that version using
"make install".  Install all other versions using "make altinstall".

For example, if you want to install Python 2.5, 2.6 and 3.0 with 2.6 being
the primary version, you would execute "make install" in your 2.6 build
directory and "make altinstall" in the others.


Issue Tracker and Mailing List
------------------------------

We're soliciting bug reports about all aspects of the language.  Fixes
are also welcome, preferable in unified diff format.  Please use the
issue tracker:

    http://bugs.python.org/

If you're not sure whether you're dealing with a bug or a feature, use
the mailing list:

    python-dev@python.org

To subscribe to the list, use the mailman form:

    http://mail.python.org/mailman/listinfo/python-dev/


Proposals for enhancement
-------------------------

If you have a proposal to change Python, you may want to send an email to the
comp.lang.python or python-ideas mailing lists for inital feedback. A Python
Enhancement Proposal (PEP) may be submitted if your idea gains ground. All
current PEPs, as well as guidelines for submitting a new PEP, are listed at
http://www.python.org/dev/peps/.


Release Schedule
----------------

See PEP 392 for release details: http://www.python.org/dev/peps/pep-0392/


Copyright and License Information
---------------------------------

Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
Python Software Foundation.
All rights reserved.

Copyright (c) 2000 BeOpen.com.
All rights reserved.

Copyright (c) 1995-2001 Corporation for National Research Initiatives.
All rights reserved.

Copyright (c) 1991-1995 Stichting Mathematisch Centrum.
All rights reserved.

See the file "LICENSE" for information on the history of this
software, terms & conditions for usage, and a DISCLAIMER OF ALL
WARRANTIES.

This Python distribution contains *no* GNU General Public License
(GPL) code, so it may be used in proprietary projects.  There are
interfaces to some GNU code but these are entirely optional.

All trademarks referenced herein are property of their respective
holders.