Commit graph

48682 commits

Author SHA1 Message Date
Mark Dickinson
d05f93da31 Blocked revisions 81196 via svnmerge
........
  r81196 | mark.dickinson | 2010-05-15 18:02:38 +0100 (Sat, 15 May 2010) | 13 lines

  Issue #8692: Improve performance of math.factorial:

  (1) use a different algorithm that roughly halves the total number of
      multiplications required and results in more balanced multiplications
  (2) use a lookup table for small arguments
  (3) fast accumulation of products in C integer arithmetic rather than
      PyLong arithmetic when possible.

  Typical speedup, from unscientific testing on a 64-bit laptop, is 4.5x
  to 6.5x for arguments in the range 100 - 10000.

  Patch by Daniel Stutzbach; extensive reviews by Alexander Belopolsky.
........
2010-05-16 08:39:09 +00:00
Victor Stinner
f21d497b12 Merged revisions 81226 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/branches/py3k

................
  r81226 | victor.stinner | 2010-05-16 02:36:38 +0200 (dim., 16 mai 2010) | 11 lines

  Merged revisions 81224 via svnmerge from
  svn+ssh://pythondev@svn.python.org/python/trunk

  ........
    r81224 | victor.stinner | 2010-05-16 02:34:40 +0200 (dim., 16 mai 2010) | 4 lines

    Use with open() as fo: ... instead of try: fo = open(...) finally: fo.close()

    fo is not set if the open() fails.
  ........
................
2010-05-16 00:37:36 +00:00
Victor Stinner
7ac5cb18df Merged revisions 81224 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r81224 | victor.stinner | 2010-05-16 02:34:40 +0200 (dim., 16 mai 2010) | 4 lines

  Use with open() as fo: ... instead of try: fo = open(...) finally: fo.close()

  fo is not set if the open() fails.
........
2010-05-16 00:36:38 +00:00
Victor Stinner
0ac51bd1b6 Merged revisions 81222 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/branches/py3k

................
  r81222 | victor.stinner | 2010-05-16 01:00:51 +0200 (dim., 16 mai 2010) | 11 lines

  Merged revisions 81220 via svnmerge from
  svn+ssh://pythondev@svn.python.org/python/trunk

  ........
    r81220 | victor.stinner | 2010-05-16 00:55:28 +0200 (dim., 16 mai 2010) | 4 lines

    Use 4-spaces for indentation (instead of tabs) in pgen outputs

    Regenerate (reindent) Python/graminit.c
  ........
................
2010-05-15 23:03:15 +00:00
Victor Stinner
beba826023 Merged revisions 81220 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r81220 | victor.stinner | 2010-05-16 00:55:28 +0200 (dim., 16 mai 2010) | 4 lines

  Use 4-spaces for indentation (instead of tabs) in pgen outputs

  Regenerate (reindent) Python/graminit.c
........
2010-05-15 23:00:51 +00:00
Brett Cannon
9fad92a622 Make test_module_with_large_stack as an expected failure because of a change in
importlib that is causing it to fail. Work to fix it is being tracked in issue
8727.
2010-05-15 22:53:24 +00:00
Brett Cannon
e88e6ce8b7 Fix a comment to state the right thing. 2010-05-15 22:51:45 +00:00
Victor Stinner
c22fd671f8 Recorded merge of revisions 81215 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/branches/py3k

................
  r81215 | victor.stinner | 2010-05-16 00:23:53 +0200 (dim., 16 mai 2010) | 12 lines

  Recorded merge of revisions 81213 via svnmerge from
  svn+ssh://pythondev@svn.python.org/python/trunk

  ........
    r81213 | victor.stinner | 2010-05-16 00:19:27 +0200 (dim., 16 mai 2010) | 5 lines

    reindent _cursesmodule.c

    Use untabify.py + emacs (python3 mode) + manual editions for
    Py_BEGIN_ALLOW_THREADS / Py_END_ALLOW_THREADS
  ........
................
2010-05-15 22:30:53 +00:00
Victor Stinner
26486ea29f Recorded merge of revisions 81213 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r81213 | victor.stinner | 2010-05-16 00:19:27 +0200 (dim., 16 mai 2010) | 5 lines

  reindent _cursesmodule.c

  Use untabify.py + emacs (python3 mode) + manual editions for
  Py_BEGIN_ALLOW_THREADS / Py_END_ALLOW_THREADS
........
2010-05-15 22:23:53 +00:00
Brett Cannon
93220d0df1 A test was not guaranteeing cleanup in the face of an exception. 2010-05-15 22:20:16 +00:00
Amaury Forgeot d'Arc
c5605ba144 Blocked revisions 81210 via svnmerge
........
  r81210 | amaury.forgeotdarc | 2010-05-15 23:45:30 +0200 (sam., 15 mai 2010) | 2 lines

  Remove unused variable, and fix a compilation warning on Windows
........
2010-05-15 21:49:45 +00:00
Antoine Pitrou
aa262b44b5 Issue #8665: Fix make pycremoval exiting with non-zero status. 2010-05-15 21:34:27 +00:00
Victor Stinner
f4ee588e6b Recorded merge of revisions 81207 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/branches/py3k

................
  r81207 | victor.stinner | 2010-05-15 23:04:43 +0200 (sam., 15 mai 2010) | 9 lines

  Recorded merge of revisions 81205 via svnmerge from
  svn+ssh://pythondev@svn.python.org/python/trunk

  ........
    r81205 | victor.stinner | 2010-05-15 23:00:59 +0200 (sam., 15 mai 2010) | 2 lines

    NEWS: strip trailing spaces
  ........
................
2010-05-15 21:05:33 +00:00
Victor Stinner
e125f1355a Recorded merge of revisions 81205 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r81205 | victor.stinner | 2010-05-15 23:00:59 +0200 (sam., 15 mai 2010) | 2 lines

  NEWS: strip trailing spaces
........
2010-05-15 21:04:43 +00:00
Amaury Forgeot d'Arc
0a589c9898 Remove unused variable, and fix a compilation warning on Windows. 2010-05-15 20:35:12 +00:00
Benjamin Peterson
9b140f650f Merged revisions 81201 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/branches/py3k

................
  r81201 | benjamin.peterson | 2010-05-15 12:52:12 -0500 (Sat, 15 May 2010) | 9 lines

  Merged revisions 81200 via svnmerge from
  svn+ssh://pythondev@svn.python.org/python/trunk

  ........
    r81200 | benjamin.peterson | 2010-05-15 12:48:55 -0500 (Sat, 15 May 2010) | 1 line

    use TestCase skip method
  ........
................
2010-05-15 18:00:56 +00:00
Benjamin Peterson
558cd64de0 Merged revisions 81200 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r81200 | benjamin.peterson | 2010-05-15 12:48:55 -0500 (Sat, 15 May 2010) | 1 line

  use TestCase skip method
........
2010-05-15 17:52:12 +00:00
Benjamin Peterson
0c3d21de05 fix one more runon 2010-05-15 17:43:57 +00:00
Benjamin Peterson
ccbd69437a rephrase 2010-05-15 17:43:18 +00:00
Benjamin Peterson
b4324516a0 fix run-on sentence 2010-05-15 17:42:02 +00:00
Mark Dickinson
4c8a9a2df3 Issue #8692: Improve performance of math.factorial:
(1) use a different algorithm that roughly halves the total number of
    multiplications required and results in more balanced multiplications
(2) use a lookup table for small arguments
(3) fast accumulation of products in C integer arithmetic rather than
    PyLong arithmetic when possible.

Typical speedup, from unscientific testing on a 64-bit laptop, is 4.5x
to 6.5x for arguments in the range 100 - 10000.

Patch by Daniel Stutzbach; extensive reviews by Alexander Belopolsky.
2010-05-15 17:02:38 +00:00
Victor Stinner
30b038497b Blocked revisions 81194 via svnmerge
........
  r81194 | victor.stinner | 2010-05-15 18:27:27 +0200 (sam., 15 mai 2010) | 5 lines

  Issue #8715: Create PyUnicode_EncodeFSDefault() function: Encode a Unicode
  object to Py_FileSystemDefaultEncoding with the "surrogateescape" error
  handler, return a bytes object. If Py_FileSystemDefaultEncoding is not set,
  fall back to UTF-8.
........
2010-05-15 16:28:22 +00:00
Victor Stinner
ae6265f8d0 Issue #8715: Create PyUnicode_EncodeFSDefault() function: Encode a Unicode
object to Py_FileSystemDefaultEncoding with the "surrogateescape" error
handler, return a bytes object. If Py_FileSystemDefaultEncoding is not set,
fall back to UTF-8.
2010-05-15 16:27:27 +00:00
Victor Stinner
3c00063546 Blocked revisions 81192 via svnmerge
........
  r81192 | victor.stinner | 2010-05-15 15:14:32 +0200 (sam., 15 mai 2010) | 3 lines

  Enable shortcuts for common encodings in PyUnicode_AsEncodedString() for any
  error handler, not only the default error handler (strict)
........
2010-05-15 14:06:57 +00:00
Victor Stinner
59e62db0a3 Enable shortcuts for common encodings in PyUnicode_AsEncodedString() for any
error handler, not only the default error handler (strict)
2010-05-15 13:14:32 +00:00
Victor Stinner
42cdd9c191 Blocked revisions 81190 via svnmerge
........
  r81190 | victor.stinner | 2010-05-15 14:27:16 +0200 (sam., 15 mai 2010) | 4 lines

  Issue #8610: Load file system codec at startup, and display a fatal error on
  failure. Set the file system encoding to utf-8 (instead of None) if getting
  the locale encoding failed, or if nl_langinfo(CODESET) function is missing.
........
2010-05-15 12:28:16 +00:00
Victor Stinner
b744ba1d14 Issue #8610: Load file system codec at startup, and display a fatal error on
failure. Set the file system encoding to utf-8 (instead of None) if getting
the locale encoding failed, or if nl_langinfo(CODESET) function is missing.
2010-05-15 12:27:16 +00:00
Stefan Krah
174ba00050 Merged revisions 81188 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/branches/py3k

................
  r81188 | stefan.krah | 2010-05-15 11:41:27 +0200 (Sat, 15 May 2010) | 10 lines

  Merged revisions 81185 via svnmerge from
  svn+ssh://pythondev@svn.python.org/python/trunk

  ........
    r81185 | stefan.krah | 2010-05-15 11:31:08 +0200 (Sat, 15 May 2010) | 4 lines

    If the timeout is exceeded, count the tests as skipped instead of just
    issuing a warning.
  ........
................
2010-05-15 09:45:07 +00:00
Stefan Krah
06ba9ade85 Merged revisions 81185 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r81185 | stefan.krah | 2010-05-15 11:31:08 +0200 (Sat, 15 May 2010) | 4 lines

  If the timeout is exceeded, count the tests as skipped instead of just
  issuing a warning.
........
2010-05-15 09:41:27 +00:00
Victor Stinner
1f7122d426 Blocked revisions 81183 via svnmerge
........
  r81183 | victor.stinner | 2010-05-15 03:40:41 +0200 (sam., 15 mai 2010) | 4 lines

  Fix test_capi for Windows: strip newline characters

  Fix test_no_FatalError_infinite_loop() introduced by r81142 (issue #3605).
........
2010-05-15 01:42:04 +00:00
Victor Stinner
4000ffa19c Fix test_capi for Windows: strip newline characters
Fix test_no_FatalError_infinite_loop() introduced by r81142 (issue #3605).
2010-05-15 01:40:41 +00:00
Victor Stinner
20f97be46e Merged revisions 81181 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/branches/py3k

................
  r81181 | victor.stinner | 2010-05-14 23:53:45 +0200 (ven., 14 mai 2010) | 9 lines

  Merged revisions 81179 via svnmerge from
  svn+ssh://pythondev@svn.python.org/python/trunk

  ........
    r81179 | victor.stinner | 2010-05-14 23:52:26 +0200 (ven., 14 mai 2010) | 2 lines

    Fix regression introduced by r81154 (Issue #5099, subprocess destructor)
  ........
................
2010-05-14 21:57:25 +00:00
Victor Stinner
c807a613ee Merged revisions 81179 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r81179 | victor.stinner | 2010-05-14 23:52:26 +0200 (ven., 14 mai 2010) | 2 lines

  Fix regression introduced by r81154 (Issue #5099, subprocess destructor)
........
2010-05-14 21:53:45 +00:00
Victor Stinner
7f6423a0b4 test/support.py: remove TESTFN if it is a directory
Because of my previous commit (r81171), test_os failed without removing TESTFN
directory (shutil.rmtree() was broken). Some buildbots still have a @test
directory and some tests fail because of that.

The bug is reproductible with:

  mkdir @test
  touch @test/abc
  ./python Lib/test/regrtest.py test_site
2010-05-14 20:08:55 +00:00
Victor Stinner
203406c368 Revert r81171 (posix_listdir(), posix_readlink(): avoid temporary PyBytes object)
PyUnicode_DecodeFSDefault*() doesn't use surrogateescape error handler, and so
PyUnicode_FromEncodedObject(v, Py_FileSystemDefaultEncoding, "surrogateescape")
cannot be replaced by PyUnicode_DecodeFSDefault().

It's a bad idea to try to fix surrogates things in Python 3.1...
2010-05-14 18:07:39 +00:00
Victor Stinner
26a968d8fe Merged revisions 81170 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/branches/py3k

........
  r81170 | victor.stinner | 2010-05-14 18:35:39 +0200 (ven., 14 mai 2010) | 6 lines

  posix_listdir(), posix_readlink(): avoid temporary PyBytes object

  Use directly PyUnicode_DecodeFSDefaultAndSize() instead of
  PyBytes_FromStringAndSize() + PyUnicode_FromEncodedObject() if the argument is
  unicode.
........
2010-05-14 16:39:10 +00:00
Victor Stinner
a45598a035 posix_listdir(), posix_readlink(): avoid temporary PyBytes object
Use directly PyUnicode_DecodeFSDefaultAndSize() instead of
PyBytes_FromStringAndSize() + PyUnicode_FromEncodedObject() if the argument is
unicode.
2010-05-14 16:35:39 +00:00
Victor Stinner
9076f9e187 Merged revisions 81168 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/branches/py3k

........
  r81168 | victor.stinner | 2010-05-14 17:58:55 +0200 (ven., 14 mai 2010) | 10 lines

  Issue #8711: Document PyUnicode_DecodeFSDefault*() functions

   * Add paragraph titles to c-api/unicode.rst.
   * Fix PyUnicode_DecodeFSDefault*() comment: it now uses the "surrogateescape"
     error handler (and not "replace")
   * Remove "The function is intended to be used for paths and file names only
     during bootstrapping process where the codecs are not set up." from
     PyUnicode_FSConverter() comment: it is used after the bootstrapping and for
     other purposes than file names
........
2010-05-14 16:08:46 +00:00
Victor Stinner
77c3862417 Issue #8711: Document PyUnicode_DecodeFSDefault*() functions
* Add paragraph titles to c-api/unicode.rst.
 * Fix PyUnicode_DecodeFSDefault*() comment: it now uses the "surrogateescape"
   error handler (and not "replace")
 * Remove "The function is intended to be used for paths and file names only
   during bootstrapping process where the codecs are not set up." from
   PyUnicode_FSConverter() comment: it is used after the bootstrapping and for
   other purposes than file names
2010-05-14 15:58:55 +00:00
Victor Stinner
766ad36de5 Merged revisions 81163 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r81163 | victor.stinner | 2010-05-14 16:20:07 +0200 (ven., 14 mai 2010) | 2 lines

  Doc: replace PEP xxx by :pep:`xxx` to create a link on the PEP
........
2010-05-14 14:36:18 +00:00
Benjamin Peterson
9d765bd0ea Merged revisions 81146 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/branches/py3k

................
  r81146 | benjamin.peterson | 2010-05-13 16:16:51 -0500 (Thu, 13 May 2010) | 9 lines

  Merged revisions 81145 via svnmerge from
  svn+ssh://pythondev@svn.python.org/python/trunk

  ........
    r81145 | benjamin.peterson | 2010-05-13 16:14:10 -0500 (Thu, 13 May 2010) | 1 line

    rip out mention of types.ListType #8703
  ........
................
2010-05-14 01:33:36 +00:00
Brett Cannon
19640500ff Backport r81155. 2010-05-14 01:28:56 +00:00
Victor Stinner
ebb5a88fd6 Merged revisions 81156 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/branches/py3k

........
  r81156 | victor.stinner | 2010-05-14 02:59:09 +0200 (ven., 14 mai 2010) | 5 lines

  Issue #4653: fix typo in flush_std_files()

  Don't call sys.stderr.flush() if sys has no stderr attribute or if
  sys.stderr==None.
........
2010-05-14 01:03:14 +00:00
Victor Stinner
9467b212f5 Issue #4653: fix typo in flush_std_files()
Don't call sys.stderr.flush() if sys has no stderr attribute or if
sys.stderr==None.
2010-05-14 00:59:09 +00:00
Brett Cannon
84df1e6c21 Merged revisions 81154 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r81154 | brett.cannon | 2010-05-13 17:21:48 -0700 (Thu, 13 May 2010) | 15 lines

  subprocess.Popen.__del__ referenced global objects, which is a no-no thanks to
  interpreter shutdown semantics. Same issue goes for the methods that __del__
  called. Now all the methods capture the global objects it needs as default
  values to private parameters (could have stuck them on the class object itself,
  but since the objects have nothing directly to do with the class that seemed
  wrong).

  There is no test as making one that works is hard. This patch was
  verified against a consistently failing test in Mercurial's test suite, though,
  so it has been tested in some regard.

  Closes issue #5099. Thanks to Mary Stern for the bug report and Gabriel
  Genellina for writing another patch for the same issue and attempting to write
  a test.
........
2010-05-14 00:33:40 +00:00
Brett Cannon
bbb2d492bc Merged revisions 81152 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r81152 | brett.cannon | 2010-05-13 16:59:41 -0700 (Thu, 13 May 2010) | 3 lines

  test_site was failing under darwin for non-framework builds because a test was
  assuming framework-specific site-packages directories were being used.
........
2010-05-14 00:04:56 +00:00
Benjamin Peterson
f9a444223c Merged revisions 81145 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r81145 | benjamin.peterson | 2010-05-13 16:14:10 -0500 (Thu, 13 May 2010) | 1 line

  rip out mention of types.ListType #8703
........
2010-05-13 21:16:51 +00:00
Jeffrey Yasskin
8e0bdfd1d4 Make PyErr_Occurred return NULL if there is no current thread. Previously it
would Py_FatalError, which called PyErr_Occurred, resulting in a semi-infinite
recursion.

Fixes issue 3605.
2010-05-13 18:31:05 +00:00
Victor Stinner
f55621115c Blocked revisions 81137 via svnmerge
........
  r81137 | victor.stinner | 2010-05-13 18:22:15 +0200 (jeu., 13 mai 2010) | 4 lines

  Fix verb tense in skip message.

  Ooops, merge also r80334 (patch by r.david.murray)
........
2010-05-13 16:23:09 +00:00
Victor Stinner
e445795b82 Blocked revisions 81135 via svnmerge (r81135 is a merge of r80163 from py3k)
........
  r81135 | victor.stinner | 2010-05-13 18:18:14 +0200 (jeu., 13 mai 2010) | 6 lines

  Issue #8422, test_genericpath: skip the creation of a directory with an invalid
  UTF name on Mac OS X because the OS deny it (the name have to be a valid UTF8
  string).

  Merge r80163 from py3k branch.
........
2010-05-13 16:20:26 +00:00