2004-10-12 12:26:28 -03:00
|
|
|
import unittest
|
2016-06-03 21:22:17 -03:00
|
|
|
from unittest import mock
|
2008-05-20 18:35:26 -03:00
|
|
|
from test import support
|
2004-10-12 12:26:28 -03:00
|
|
|
import subprocess
|
|
|
|
import sys
|
|
|
|
import signal
|
2011-03-15 15:55:17 -03:00
|
|
|
import io
|
2018-03-26 16:49:35 -03:00
|
|
|
import itertools
|
2004-10-12 12:26:28 -03:00
|
|
|
import os
|
2010-02-28 20:17:40 -04:00
|
|
|
import errno
|
2004-10-12 12:26:28 -03:00
|
|
|
import tempfile
|
|
|
|
import time
|
2019-09-11 07:05:14 -03:00
|
|
|
import traceback
|
2013-11-08 14:56:59 -04:00
|
|
|
import selectors
|
2010-02-18 05:37:05 -04:00
|
|
|
import sysconfig
|
2010-12-13 03:59:39 -04:00
|
|
|
import select
|
2011-03-15 03:04:11 -03:00
|
|
|
import shutil
|
2017-09-07 13:56:24 -03:00
|
|
|
import threading
|
2011-12-10 13:44:25 -04:00
|
|
|
import gc
|
2012-08-19 10:25:37 -03:00
|
|
|
import textwrap
|
2018-03-02 05:53:51 -04:00
|
|
|
from test.support import FakePath
|
2011-12-10 13:31:42 -04:00
|
|
|
|
2017-08-10 07:37:39 -03:00
|
|
|
try:
|
|
|
|
import _testcapi
|
|
|
|
except ImportError:
|
|
|
|
_testcapi = None
|
|
|
|
|
2019-07-01 14:01:52 -03:00
|
|
|
|
2016-09-06 23:38:15 -03:00
|
|
|
if support.PGO:
|
|
|
|
raise unittest.SkipTest("test is not helpful for PGO")
|
|
|
|
|
2018-06-25 21:11:06 -03:00
|
|
|
mswindows = (sys.platform == "win32")
|
|
|
|
|
2004-10-12 12:26:28 -03:00
|
|
|
#
|
|
|
|
# Depends on the following external programs: Python
|
|
|
|
#
|
|
|
|
|
2018-06-25 21:11:06 -03:00
|
|
|
if mswindows:
|
2004-10-12 19:19:32 -03:00
|
|
|
SETBINARY = ('import msvcrt; msvcrt.setmode(sys.stdout.fileno(), '
|
|
|
|
'os.O_BINARY);')
|
2004-10-12 12:26:28 -03:00
|
|
|
else:
|
|
|
|
SETBINARY = ''
|
|
|
|
|
2017-08-21 18:51:31 -03:00
|
|
|
NONEXISTING_CMD = ('nonexisting_i_hope',)
|
2018-01-25 14:06:05 -04:00
|
|
|
# Ignore errors that indicate the command was not found
|
|
|
|
NONEXISTING_ERRORS = (FileNotFoundError, NotADirectoryError, PermissionError)
|
2017-08-21 18:51:31 -03:00
|
|
|
|
2019-10-14 17:40:32 -03:00
|
|
|
ZERO_RETURN_CMD = (sys.executable, '-c', 'pass')
|
|
|
|
|
|
|
|
|
|
|
|
def setUpModule():
|
|
|
|
shell_true = shutil.which('true')
|
|
|
|
if shell_true is None:
|
|
|
|
return
|
|
|
|
if (os.access(shell_true, os.X_OK) and
|
|
|
|
subprocess.run([shell_true]).returncode == 0):
|
|
|
|
global ZERO_RETURN_CMD
|
|
|
|
ZERO_RETURN_CMD = (shell_true,) # Faster than Python startup.
|
|
|
|
|
2010-02-27 18:12:37 -04:00
|
|
|
|
2010-03-27 19:47:23 -03:00
|
|
|
class BaseTestCase(unittest.TestCase):
|
Merged revisions 46753-51188 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk
........
r46755 | brett.cannon | 2006-06-08 18:23:04 +0200 (Thu, 08 Jun 2006) | 4 lines
Make binascii.hexlify() use s# for its arguments instead of t# to actually
match its documentation stating it accepts any read-only buffer.
........
r46757 | brett.cannon | 2006-06-08 19:00:45 +0200 (Thu, 08 Jun 2006) | 8 lines
Buffer objects would return the read or write buffer for a wrapped object when
the char buffer was requested. Now it actually returns the char buffer if
available or raises a TypeError if it isn't (as is raised for the other buffer
types if they are not present but requested).
Not a backport candidate since it does change semantics of the buffer object
(although it could be argued this is enough of a bug to bother backporting).
........
r46760 | andrew.kuchling | 2006-06-09 03:10:17 +0200 (Fri, 09 Jun 2006) | 1 line
Update functools section
........
r46762 | tim.peters | 2006-06-09 04:11:02 +0200 (Fri, 09 Jun 2006) | 6 lines
Whitespace normalization.
Since test_file is implicated in mysterious test failures
when followed by test_optparse, if I had any brains I'd
look at the checkin that last changed test_file ;-)
........
r46763 | tim.peters | 2006-06-09 05:09:42 +0200 (Fri, 09 Jun 2006) | 5 lines
To boost morale :-), force test_optparse to run immediately
after test_file until we can figure out how to fix it.
(See python-dev; at the moment we don't even know which checkin
caused the problem.)
........
r46764 | tim.peters | 2006-06-09 05:51:41 +0200 (Fri, 09 Jun 2006) | 6 lines
AutoFileTests.tearDown(): Removed mysterious undocumented
try/except. Remove TESTFN.
Throughout: used open() instead of file(), and wrapped
long lines.
........
r46765 | tim.peters | 2006-06-09 06:02:06 +0200 (Fri, 09 Jun 2006) | 8 lines
testUnicodeOpen(): I have no idea why, but making this
test clean up after itself appears to fix the test failures
when test_optparse follows test_file.
test_main(): Get rid of TESTFN no matter what. That's
also enough to fix the mystery failures. Doesn't hurt
to fix them twice :-)
........
r46766 | tim.peters | 2006-06-09 07:12:40 +0200 (Fri, 09 Jun 2006) | 6 lines
Remove the temporary hack to force test_optparse to
run immediately after test_file. At least 8 buildbot
boxes passed since the underlying problem got fixed,
and they all failed before the fix, so there's no point
to this anymore.
........
r46767 | neal.norwitz | 2006-06-09 07:54:18 +0200 (Fri, 09 Jun 2006) | 1 line
Fix grammar and reflow
........
r46769 | andrew.kuchling | 2006-06-09 12:22:35 +0200 (Fri, 09 Jun 2006) | 1 line
Markup fix
........
r46773 | andrew.kuchling | 2006-06-09 15:15:57 +0200 (Fri, 09 Jun 2006) | 1 line
[Bug #1472827] Make saxutils.XMLGenerator handle \r\n\t in attribute values by escaping them properly. 2.4 bugfix candidate.
........
r46778 | kristjan.jonsson | 2006-06-09 18:28:01 +0200 (Fri, 09 Jun 2006) | 2 lines
Turn off warning about deprecated CRT functions on for VisualStudio .NET 2005.
Make the definition #ARRAYSIZE conditional. VisualStudio .NET 2005 already has it defined using a better gimmick.
........
r46779 | phillip.eby | 2006-06-09 18:40:18 +0200 (Fri, 09 Jun 2006) | 2 lines
Import wsgiref into the stdlib, as of the external version 0.1-r2181.
........
r46783 | andrew.kuchling | 2006-06-09 18:44:40 +0200 (Fri, 09 Jun 2006) | 1 line
Add note about XMLGenerator bugfix
........
r46784 | andrew.kuchling | 2006-06-09 18:46:51 +0200 (Fri, 09 Jun 2006) | 1 line
Add note about wsgiref
........
r46785 | brett.cannon | 2006-06-09 19:05:48 +0200 (Fri, 09 Jun 2006) | 2 lines
Fix inconsistency in naming within an enum.
........
r46787 | tim.peters | 2006-06-09 19:47:00 +0200 (Fri, 09 Jun 2006) | 2 lines
Whitespace normalization.
........
r46792 | georg.brandl | 2006-06-09 20:29:52 +0200 (Fri, 09 Jun 2006) | 3 lines
Test file.__exit__.
........
r46794 | brett.cannon | 2006-06-09 20:40:46 +0200 (Fri, 09 Jun 2006) | 2 lines
svn:ignore .pyc and .pyo files.
........
r46795 | georg.brandl | 2006-06-09 20:45:48 +0200 (Fri, 09 Jun 2006) | 3 lines
RFE #1491485: str/unicode.endswith()/startswith() now accept a tuple as first argument.
........
r46798 | andrew.kuchling | 2006-06-09 21:03:16 +0200 (Fri, 09 Jun 2006) | 1 line
Describe startswith()/endswiith() change; add reminder about wsgiref
........
r46799 | tim.peters | 2006-06-09 21:24:44 +0200 (Fri, 09 Jun 2006) | 11 lines
Implementing a happy idea from Georg Brandl: make runtest() try to
clean up files and directories the tests often leave behind by
mistake. This is the first time in history I don't have a bogus
"db_home" directory after running the tests ;-)
Also worked on runtest's docstring, to say something about all the
arguments, and to document the non-obvious return values.
New functions runtest_inner() and cleanup_test_droppings() in
support of the above.
........
r46800 | andrew.kuchling | 2006-06-09 21:43:25 +0200 (Fri, 09 Jun 2006) | 1 line
Remove unused variable
........
r46801 | andrew.kuchling | 2006-06-09 21:56:05 +0200 (Fri, 09 Jun 2006) | 1 line
Add some wsgiref text
........
r46803 | thomas.heller | 2006-06-09 21:59:11 +0200 (Fri, 09 Jun 2006) | 1 line
set eol-style svn property
........
r46804 | thomas.heller | 2006-06-09 22:01:01 +0200 (Fri, 09 Jun 2006) | 1 line
set eol-style svn property
........
r46805 | georg.brandl | 2006-06-09 22:43:48 +0200 (Fri, 09 Jun 2006) | 3 lines
Make use of new str.startswith/endswith semantics.
Occurences in email and compiler were ignored due to backwards compat requirements.
........
r46806 | brett.cannon | 2006-06-10 00:31:23 +0200 (Sat, 10 Jun 2006) | 4 lines
An object with __call__ as an attribute, when called, will have that attribute checked for __call__ itself, and will continue to look until it finds an object without the attribute. This can lead to an infinite recursion.
Closes bug #532646, again. Will be backported.
........
r46808 | brett.cannon | 2006-06-10 00:45:54 +0200 (Sat, 10 Jun 2006) | 2 lines
Fix bug introduced in rev. 46806 by not having variable declaration at the top of a block.
........
r46812 | georg.brandl | 2006-06-10 08:40:50 +0200 (Sat, 10 Jun 2006) | 4 lines
Apply perky's fix for #1503157: "/".join([u"", u""]) raising OverflowError.
Also improve error message on overflow.
........
r46817 | martin.v.loewis | 2006-06-10 10:14:03 +0200 (Sat, 10 Jun 2006) | 2 lines
Port cygwin kill_python changes from 2.4 branch.
........
r46818 | armin.rigo | 2006-06-10 12:57:40 +0200 (Sat, 10 Jun 2006) | 4 lines
SF bug #1503294.
PyThreadState_GET() complains if the tstate is NULL, but only in debug mode.
........
r46819 | martin.v.loewis | 2006-06-10 14:23:46 +0200 (Sat, 10 Jun 2006) | 4 lines
Patch #1495999: Part two of Windows CE changes.
- update header checks, using autoconf
- provide dummies for getenv, environ, and GetVersion
- adjust MSC_VER check in socketmodule.c
........
r46820 | skip.montanaro | 2006-06-10 16:09:11 +0200 (Sat, 10 Jun 2006) | 1 line
document the class, not its initializer
........
r46821 | greg.ward | 2006-06-10 18:40:01 +0200 (Sat, 10 Jun 2006) | 4 lines
Sync with Optik docs (rev 518):
* restore "Extending optparse" section
* document ALWAYS_TYPED_ACTIONS (SF #1449311)
........
r46824 | thomas.heller | 2006-06-10 21:51:46 +0200 (Sat, 10 Jun 2006) | 8 lines
Upgrade to ctypes version 0.9.9.7.
Summary of changes:
- support for 'variable sized' data
- support for anonymous structure/union fields
- fix severe bug with certain arrays or structures containing more than 256 fields
........
r46825 | thomas.heller | 2006-06-10 21:55:36 +0200 (Sat, 10 Jun 2006) | 8 lines
Upgrade to ctypes version 0.9.9.7.
Summary of changes:
- support for 'variable sized' data
- support for anonymous structure/union fields
- fix severe bug with certain arrays or structures containing more than 256 fields
........
r46826 | fred.drake | 2006-06-10 22:01:34 +0200 (Sat, 10 Jun 2006) | 4 lines
SF patch #1303595: improve description of __builtins__, explaining how it
varies between __main__ and other modules, and strongly suggest not touching
it but using __builtin__ if absolutely necessary
........
r46827 | fred.drake | 2006-06-10 22:02:58 +0200 (Sat, 10 Jun 2006) | 1 line
credit for SF patch #1303595
........
r46831 | thomas.heller | 2006-06-10 22:29:34 +0200 (Sat, 10 Jun 2006) | 2 lines
New docs for ctypes.
........
r46834 | thomas.heller | 2006-06-10 23:07:19 +0200 (Sat, 10 Jun 2006) | 1 line
Fix a wrong printf format.
........
r46835 | thomas.heller | 2006-06-10 23:17:58 +0200 (Sat, 10 Jun 2006) | 1 line
Fix the second occurrence of the problematic printf format.
........
r46837 | thomas.heller | 2006-06-10 23:56:03 +0200 (Sat, 10 Jun 2006) | 1 line
Don't use C++ comment.
........
r46838 | thomas.heller | 2006-06-11 00:01:50 +0200 (Sun, 11 Jun 2006) | 1 line
Handle failure of PyMem_Realloc.
........
r46839 | skip.montanaro | 2006-06-11 00:38:13 +0200 (Sun, 11 Jun 2006) | 2 lines
Suppress warning on MacOSX about possible use before set of proc.
........
r46840 | tim.peters | 2006-06-11 00:51:45 +0200 (Sun, 11 Jun 2006) | 8 lines
shuffle() doscstring: Removed warning about sequence length
versus generator period. While this was a real weakness of the
older WH generator for lists with just a few dozen elements,
and so could potentially bite the naive ;-), the Twister should
show excellent behavior up to at least 600 elements.
Module docstring: reflowed some jarringly short lines.
........
r46844 | greg.ward | 2006-06-11 02:40:49 +0200 (Sun, 11 Jun 2006) | 4 lines
Bug #1361643: fix textwrap.dedent() so it handles tabs appropriately,
i.e. do *not* expand tabs, but treat them as whitespace that is not
equivalent to spaces. Add a couple of test cases. Clarify docs.
........
r46850 | neal.norwitz | 2006-06-11 07:44:18 +0200 (Sun, 11 Jun 2006) | 5 lines
Fix Coverity # 146. newDBSequenceObject would deref dbobj, so it can't be NULL.
We know it's not NULL from the ParseTuple and DbObject_Check will verify
it's not NULL.
........
r46851 | neal.norwitz | 2006-06-11 07:45:25 +0200 (Sun, 11 Jun 2006) | 4 lines
Wrap some long lines
Top/Bottom factor out some common expressions
Add a XXX comment about widing offset.
........
r46852 | neal.norwitz | 2006-06-11 07:45:47 +0200 (Sun, 11 Jun 2006) | 1 line
Add versionadded to doc
........
r46853 | neal.norwitz | 2006-06-11 07:47:14 +0200 (Sun, 11 Jun 2006) | 3 lines
Update doc to make it agree with code.
Bottom factor out some common code.
........
r46854 | neal.norwitz | 2006-06-11 07:48:14 +0200 (Sun, 11 Jun 2006) | 3 lines
f_code can't be NULL based on Frame_New and other code that derefs it.
So there doesn't seem to be much point to checking here.
........
r46855 | neal.norwitz | 2006-06-11 09:26:27 +0200 (Sun, 11 Jun 2006) | 1 line
Fix errors found by pychecker
........
r46856 | neal.norwitz | 2006-06-11 09:26:50 +0200 (Sun, 11 Jun 2006) | 1 line
warnings was imported at module scope, no need to import again
........
r46857 | neal.norwitz | 2006-06-11 09:27:56 +0200 (Sun, 11 Jun 2006) | 5 lines
Fix errors found by pychecker.
I think these changes are correct, but I'm not sure. Could someone
who knows how this module works test it? It can at least start on
the cmd line.
........
r46858 | neal.norwitz | 2006-06-11 10:35:14 +0200 (Sun, 11 Jun 2006) | 1 line
Fix errors found by pychecker
........
r46859 | ronald.oussoren | 2006-06-11 16:33:36 +0200 (Sun, 11 Jun 2006) | 4 lines
This patch improves the L&F of IDLE on OSX. The changes are conditionalized on
being in an IDLE.app bundle on darwin. This does a slight reorganisation of the
menus and adds support for file-open events.
........
r46860 | greg.ward | 2006-06-11 16:42:41 +0200 (Sun, 11 Jun 2006) | 1 line
SF #1366250: optparse docs: fix inconsistency in variable name; minor tweaks.
........
r46861 | greg.ward | 2006-06-11 18:24:11 +0200 (Sun, 11 Jun 2006) | 3 lines
Bug #1498146: fix optparse to handle Unicode strings in option help,
description, and epilog.
........
r46862 | thomas.heller | 2006-06-11 19:04:22 +0200 (Sun, 11 Jun 2006) | 2 lines
Release the GIL during COM method calls, to avoid deadlocks in
Python coded COM objects.
........
r46863 | tim.peters | 2006-06-11 21:42:51 +0200 (Sun, 11 Jun 2006) | 2 lines
Whitespace normalization.
........
r46864 | tim.peters | 2006-06-11 21:43:49 +0200 (Sun, 11 Jun 2006) | 2 lines
Add missing svn:eol-style property to text files.
........
r46865 | ronald.oussoren | 2006-06-11 21:45:57 +0200 (Sun, 11 Jun 2006) | 2 lines
Remove message about using make frameworkinstall, that's no longer necesssary
........
r46866 | ronald.oussoren | 2006-06-11 22:23:29 +0200 (Sun, 11 Jun 2006) | 2 lines
Use configure to substitute the correct prefix instead of hardcoding
........
r46867 | ronald.oussoren | 2006-06-11 22:24:45 +0200 (Sun, 11 Jun 2006) | 4 lines
- Change fixapplepython23.py to ensure that it will run with /usr/bin/python
on intel macs.
- Fix some minor problems in the installer for OSX
........
r46868 | neal.norwitz | 2006-06-11 22:25:56 +0200 (Sun, 11 Jun 2006) | 5 lines
Try to fix several networking tests. The problem is that if hosts have
a search path setup, some of these hosts resolve to the wrong address.
By appending a period to the hostname, the hostname should only resolve
to what we want it to resolve to. Hopefully this doesn't break different bots.
........
r46869 | neal.norwitz | 2006-06-11 22:42:02 +0200 (Sun, 11 Jun 2006) | 7 lines
Try to fix another networking test. The problem is that if hosts have
a search path setup, some of these hosts resolve to the wrong address.
By appending a period to the hostname, the hostname should only resolve
to what we want it to resolve to. Hopefully this doesn't break different bots.
Also add more info to failure message to aid debugging test failure.
........
r46870 | neal.norwitz | 2006-06-11 22:46:46 +0200 (Sun, 11 Jun 2006) | 4 lines
Fix test on PPC64 buildbot. It raised an IOError (really an URLError which
derives from an IOError). That seems valid. Env Error includes both OSError
and IOError, so this seems like a reasonable fix.
........
r46871 | tim.peters | 2006-06-11 22:52:59 +0200 (Sun, 11 Jun 2006) | 10 lines
compare_generic_iter(): Fixed the failure of test_wsgiref's testFileWrapper
when running with -O.
test_simple_validation_error still fails under -O. That appears to be because
wsgiref's validate.py uses `assert` statements all over the place to check
arguments for sanity. That should all be changed (it's not a logical error
in the software if a user passes bogus arguments, so this isn't a reasonable
use for `assert` -- checking external preconditions should generally raise
ValueError or TypeError instead, as appropriate).
........
r46872 | neal.norwitz | 2006-06-11 23:38:38 +0200 (Sun, 11 Jun 2006) | 1 line
Get test to pass on S/390. Shout if you think this change is incorrect.
........
r46873 | neal.norwitz | 2006-06-12 04:05:55 +0200 (Mon, 12 Jun 2006) | 1 line
Cleanup Py_ssize_t a little (get rid of second #ifdef)
........
r46874 | neal.norwitz | 2006-06-12 04:06:17 +0200 (Mon, 12 Jun 2006) | 1 line
Fix some Py_ssize_t issues
........
r46875 | neal.norwitz | 2006-06-12 04:06:42 +0200 (Mon, 12 Jun 2006) | 1 line
Fix some Py_ssize_t issues
........
r46876 | neal.norwitz | 2006-06-12 04:07:24 +0200 (Mon, 12 Jun 2006) | 2 lines
Cleanup: Remove import of types to get StringTypes, we can just use basestring.
........
r46877 | neal.norwitz | 2006-06-12 04:07:57 +0200 (Mon, 12 Jun 2006) | 1 line
Don't truncate if size_t is bigger than uint
........
r46878 | neal.norwitz | 2006-06-12 04:08:41 +0200 (Mon, 12 Jun 2006) | 1 line
Don't leak the list object if there's an error allocating the item storage. Backport candidate
........
r46879 | neal.norwitz | 2006-06-12 04:09:03 +0200 (Mon, 12 Jun 2006) | 1 line
Fix typo. Backport if anyone cares. :-)
........
r46880 | neal.norwitz | 2006-06-12 04:09:34 +0200 (Mon, 12 Jun 2006) | 1 line
Fix indentation of case and a Py_ssize_t issue.
........
r46881 | neal.norwitz | 2006-06-12 04:11:18 +0200 (Mon, 12 Jun 2006) | 3 lines
Get rid of f_restricted too. Doc the other 4 ints that were already removed
at the NeedForSpeed sprint.
........
r46882 | neal.norwitz | 2006-06-12 04:13:21 +0200 (Mon, 12 Jun 2006) | 1 line
Fix the socket tests so they can be run concurrently. Backport candidate
........
r46883 | neal.norwitz | 2006-06-12 04:16:10 +0200 (Mon, 12 Jun 2006) | 1 line
i and j are initialized below when used. No need to do it twice
........
r46884 | neal.norwitz | 2006-06-12 05:05:03 +0200 (Mon, 12 Jun 2006) | 1 line
Remove unused import
........
r46885 | neal.norwitz | 2006-06-12 05:05:40 +0200 (Mon, 12 Jun 2006) | 1 line
Impl ssize_t
........
r46886 | neal.norwitz | 2006-06-12 05:33:09 +0200 (Mon, 12 Jun 2006) | 6 lines
Patch #1503046, Conditional compilation of zlib.(de)compressobj.copy
copy is only in newer versions of zlib. This should allow zlibmodule
to work with older versions like the Tru64 buildbot.
........
r46887 | phillip.eby | 2006-06-12 06:04:32 +0200 (Mon, 12 Jun 2006) | 2 lines
Sync w/external release 0.1.2. Please see PEP 360 before making changes to external packages.
........
r46888 | martin.v.loewis | 2006-06-12 06:26:31 +0200 (Mon, 12 Jun 2006) | 2 lines
Get rid of function pointer cast.
........
r46889 | thomas.heller | 2006-06-12 08:05:57 +0200 (Mon, 12 Jun 2006) | 3 lines
I don't know how that happend, but the entire file contents was
duplicated. Thanks to Simon Percivall for the heads up.
........
r46890 | nick.coghlan | 2006-06-12 10:19:37 +0200 (Mon, 12 Jun 2006) | 1 line
Fix site module docstring to match the code
........
r46891 | nick.coghlan | 2006-06-12 10:23:02 +0200 (Mon, 12 Jun 2006) | 1 line
Fix site module docstring to match the code for Mac OSX, too
........
r46892 | nick.coghlan | 2006-06-12 10:27:13 +0200 (Mon, 12 Jun 2006) | 1 line
The site module documentation also described the Windows behaviour incorrectly.
........
r46893 | nick.coghlan | 2006-06-12 12:17:11 +0200 (Mon, 12 Jun 2006) | 1 line
Make the -m switch conform to the documentation of sys.path by behaving like the -c switch
........
r46894 | kristjan.jonsson | 2006-06-12 17:45:12 +0200 (Mon, 12 Jun 2006) | 2 lines
Fix the CRT argument error handling for VisualStudio .NET 2005. Install a CRT error handler and disable the assertion for debug builds. This causes CRT to set errno to EINVAL.
This update fixes crash cases in the test suite where the default CRT error handler would cause process exit.
........
r46899 | thomas.heller | 2006-06-12 22:56:48 +0200 (Mon, 12 Jun 2006) | 1 line
Add pep-291 compatibility markers.
........
r46901 | ka-ping.yee | 2006-06-13 01:47:52 +0200 (Tue, 13 Jun 2006) | 5 lines
Add the uuid module.
This module has been tested so far on Windows XP (Python 2.4 and 2.5a2),
Mac OS X (Python 2.3, 2.4, and 2.5a2), and Linux (Python 2.4 and 2.5a2).
........
r46902 | tim.peters | 2006-06-13 02:30:01 +0200 (Tue, 13 Jun 2006) | 2 lines
Whitespace normalization.
........
r46903 | tim.peters | 2006-06-13 02:30:50 +0200 (Tue, 13 Jun 2006) | 2 lines
Added missing svn:eol-style property to text files.
........
r46905 | tim.peters | 2006-06-13 05:30:07 +0200 (Tue, 13 Jun 2006) | 5 lines
get_matching_blocks(): rewrote code & comments so they match; added
more comments about why it's this way at all; and removed what looked
like needless expense (sorting (i, j, k) triples directly should give
exactly the same order as sorting (i, (i, j, k)) pairs).
........
r46906 | neal.norwitz | 2006-06-13 06:08:53 +0200 (Tue, 13 Jun 2006) | 1 line
Don't fail if another process is listening on our port.
........
r46908 | neal.norwitz | 2006-06-13 10:28:19 +0200 (Tue, 13 Jun 2006) | 2 lines
Initialize the type object so pychecker can't crash the interpreter.
........
r46909 | neal.norwitz | 2006-06-13 10:41:06 +0200 (Tue, 13 Jun 2006) | 1 line
Verify the crash due to EncodingMap not initialized does not return
........
r46910 | thomas.heller | 2006-06-13 10:56:14 +0200 (Tue, 13 Jun 2006) | 3 lines
Add some windows datatypes that were missing from this file, and add
the aliases defined in windows header files for the structures.
........
r46911 | thomas.heller | 2006-06-13 11:40:14 +0200 (Tue, 13 Jun 2006) | 3 lines
Add back WCHAR, UINT, DOUBLE, _LARGE_INTEGER, _ULARGE_INTEGER.
VARIANT_BOOL is a special _ctypes data type, not c_short.
........
r46912 | ronald.oussoren | 2006-06-13 13:19:56 +0200 (Tue, 13 Jun 2006) | 4 lines
Linecache contains support for PEP302 loaders, but fails to deal with loaders
that return None to indicate that the module is valid but no source is
available. This patch fixes that.
........
r46913 | andrew.kuchling | 2006-06-13 13:57:04 +0200 (Tue, 13 Jun 2006) | 1 line
Mention uuid module
........
r46915 | walter.doerwald | 2006-06-13 14:02:12 +0200 (Tue, 13 Jun 2006) | 2 lines
Fix passing errors to the encoder and decoder functions.
........
r46917 | walter.doerwald | 2006-06-13 14:04:43 +0200 (Tue, 13 Jun 2006) | 3 lines
errors is an attribute in the incremental decoder
not an argument.
........
r46919 | andrew.macintyre | 2006-06-13 17:04:24 +0200 (Tue, 13 Jun 2006) | 11 lines
Patch #1454481: Make thread stack size runtime tunable.
Heavily revised, comprising revisions:
46640 - original trunk revision (backed out in r46655)
46647 - markup fix (backed out in r46655)
46692:46918 merged from branch aimacintyre-sf1454481
branch tested on buildbots (Windows buildbots had problems
not related to these changes).
........
r46920 | brett.cannon | 2006-06-13 18:06:55 +0200 (Tue, 13 Jun 2006) | 2 lines
Remove unused variable.
........
r46921 | andrew.kuchling | 2006-06-13 18:41:41 +0200 (Tue, 13 Jun 2006) | 1 line
Add ability to set stack size
........
r46923 | marc-andre.lemburg | 2006-06-13 19:04:26 +0200 (Tue, 13 Jun 2006) | 2 lines
Update pybench to version 2.0.
........
r46924 | marc-andre.lemburg | 2006-06-13 19:07:14 +0200 (Tue, 13 Jun 2006) | 2 lines
Revert wrong svn copy.
........
r46925 | andrew.macintyre | 2006-06-13 19:14:36 +0200 (Tue, 13 Jun 2006) | 2 lines
fix exception usage
........
r46927 | tim.peters | 2006-06-13 20:37:07 +0200 (Tue, 13 Jun 2006) | 2 lines
Whitespace normalization.
........
r46928 | marc-andre.lemburg | 2006-06-13 20:56:56 +0200 (Tue, 13 Jun 2006) | 9 lines
Updated to pybench 2.0.
See svn.python.org/external/pybench-2.0 for the original import of that
version.
Note that platform.py was not copied over from pybench-2.0 since
it is already part of Python 2.5.
........
r46929 | andrew.macintyre | 2006-06-13 21:02:35 +0200 (Tue, 13 Jun 2006) | 5 lines
Increase the small thread stack size to get the test
to pass reliably on the one buildbot that insists on
more than 32kB of thread stack.
........
r46930 | marc-andre.lemburg | 2006-06-13 21:20:07 +0200 (Tue, 13 Jun 2006) | 2 lines
Whitespace normalization.
........
r46931 | thomas.heller | 2006-06-13 22:18:43 +0200 (Tue, 13 Jun 2006) | 2 lines
More docs for ctypes.
........
r46932 | brett.cannon | 2006-06-13 23:34:24 +0200 (Tue, 13 Jun 2006) | 2 lines
Ignore .pyc and .pyo files in Pybench.
........
r46933 | brett.cannon | 2006-06-13 23:46:41 +0200 (Tue, 13 Jun 2006) | 7 lines
If a classic class defined a __coerce__() method that just returned its two
arguments in reverse, the interpreter would infinitely recourse trying to get a
coercion that worked. So put in a recursion check after a coercion is made and
the next call to attempt to use the coerced values.
Fixes bug #992017 and closes crashers/coerce.py .
........
r46936 | gerhard.haering | 2006-06-14 00:24:47 +0200 (Wed, 14 Jun 2006) | 3 lines
Merged changes from external pysqlite 2.3.0 release. Documentation updates will
follow in a few hours at the latest. Then we should be ready for beta1.
........
r46937 | brett.cannon | 2006-06-14 00:26:13 +0200 (Wed, 14 Jun 2006) | 2 lines
Missed test for rev. 46933; infinite recursion from __coerce__() returning its arguments reversed.
........
r46938 | gerhard.haering | 2006-06-14 00:53:48 +0200 (Wed, 14 Jun 2006) | 2 lines
Updated documentation for pysqlite 2.3.0 API.
........
r46939 | tim.peters | 2006-06-14 06:09:25 +0200 (Wed, 14 Jun 2006) | 10 lines
SequenceMatcher.get_matching_blocks(): This now guarantees that
adjacent triples in the result list describe non-adjacent matching
blocks. That's _nice_ to have, and Guido said he wanted it.
Not a bugfix candidate: Guido or not ;-), this changes visible
endcase semantics (note that some tests had to change), and
nothing about this was documented before. Since it was working
as designed, and behavior was consistent with the docs, it wasn't
"a bug".
........
r46940 | tim.peters | 2006-06-14 06:13:00 +0200 (Wed, 14 Jun 2006) | 2 lines
Repaired typo in new comment.
........
r46941 | tim.peters | 2006-06-14 06:15:27 +0200 (Wed, 14 Jun 2006) | 2 lines
Whitespace normalization.
........
r46942 | fred.drake | 2006-06-14 06:25:02 +0200 (Wed, 14 Jun 2006) | 3 lines
- make some disabled tests run what they intend when enabled
- remove some over-zealous triple-quoting
........
r46943 | fred.drake | 2006-06-14 07:04:47 +0200 (Wed, 14 Jun 2006) | 3 lines
add tests for two cases that are handled correctly in the current code,
but that SF patch 1504676 as written mis-handles
........
r46944 | fred.drake | 2006-06-14 07:15:51 +0200 (Wed, 14 Jun 2006) | 1 line
explain an XXX in more detail
........
r46945 | martin.v.loewis | 2006-06-14 07:21:04 +0200 (Wed, 14 Jun 2006) | 1 line
Patch #1455898: Incremental mode for "mbcs" codec.
........
r46946 | georg.brandl | 2006-06-14 08:08:31 +0200 (Wed, 14 Jun 2006) | 3 lines
Bug #1339007: Shelf objects now don't raise an exception in their
__del__ method when initialization failed.
........
r46948 | thomas.heller | 2006-06-14 08:18:15 +0200 (Wed, 14 Jun 2006) | 1 line
Fix docstring.
........
r46949 | georg.brandl | 2006-06-14 08:29:07 +0200 (Wed, 14 Jun 2006) | 2 lines
Bug #1501122: mention __gt__ &co in description of comparison order.
........
r46951 | thomas.heller | 2006-06-14 09:08:38 +0200 (Wed, 14 Jun 2006) | 1 line
Write more docs.
........
r46952 | georg.brandl | 2006-06-14 10:31:39 +0200 (Wed, 14 Jun 2006) | 3 lines
Bug #1153163: describe __add__ vs __radd__ behavior when adding
objects of same type/of subclasses of the other.
........
r46954 | georg.brandl | 2006-06-14 10:42:11 +0200 (Wed, 14 Jun 2006) | 3 lines
Bug #1202018: add some common mime.types locations.
........
r46955 | georg.brandl | 2006-06-14 10:50:03 +0200 (Wed, 14 Jun 2006) | 3 lines
Bug #1117556: SimpleHTTPServer now tries to find and use the system's
mime.types file for determining MIME types.
........
r46957 | thomas.heller | 2006-06-14 11:09:08 +0200 (Wed, 14 Jun 2006) | 1 line
Document paramflags.
........
r46958 | thomas.heller | 2006-06-14 11:20:11 +0200 (Wed, 14 Jun 2006) | 1 line
Add an __all__ list, since this module does 'from ctypes import *'.
........
r46959 | andrew.kuchling | 2006-06-14 15:59:15 +0200 (Wed, 14 Jun 2006) | 1 line
Add item
........
r46961 | georg.brandl | 2006-06-14 18:46:43 +0200 (Wed, 14 Jun 2006) | 3 lines
Bug #805015: doc error in PyUnicode_FromEncodedObject.
........
r46962 | gerhard.haering | 2006-06-15 00:28:37 +0200 (Thu, 15 Jun 2006) | 10 lines
- Added version checks in C code to make sure we don't trigger bugs in older
SQLite versions.
- Added version checks in test suite so that we don't execute tests that we
know will fail with older (buggy) SQLite versions.
Now, all tests should run against all SQLite versions from 3.0.8 until 3.3.6
(latest one now). The sqlite3 module can be built against all these SQLite
versions and the sqlite3 module does its best to not trigger bugs in SQLite,
but using SQLite 3.3.3 or later is recommended.
........
r46963 | tim.peters | 2006-06-15 00:38:13 +0200 (Thu, 15 Jun 2006) | 2 lines
Whitespace normalization.
........
r46964 | neal.norwitz | 2006-06-15 06:54:29 +0200 (Thu, 15 Jun 2006) | 9 lines
Speculative checkin (requires approval of Gerhard Haering)
This backs out the test changes in 46962 which prevented crashes
by not running the tests via a version check. All the version checks
added in that rev were removed from the tests.
Code was added to the error handler in connection.c that seems
to work with older versions of sqlite including 3.1.3.
........
r46965 | neal.norwitz | 2006-06-15 07:55:49 +0200 (Thu, 15 Jun 2006) | 1 line
Try to narrow window of failure on slow/busy boxes (ppc64 buildbot)
........
r46966 | martin.v.loewis | 2006-06-15 08:45:05 +0200 (Thu, 15 Jun 2006) | 2 lines
Make import/lookup of mbcs fail on non-Windows systems.
........
r46967 | ronald.oussoren | 2006-06-15 10:14:18 +0200 (Thu, 15 Jun 2006) | 2 lines
Patch #1446489 (zipfile: support for ZIP64)
........
r46968 | neal.norwitz | 2006-06-15 10:16:44 +0200 (Thu, 15 Jun 2006) | 6 lines
Re-revert this change. Install the version check and don't run the test
until Gerhard has time to fully debug the issue. This affects versions
before 3.2.1 (possibly only versions earlier than 3.1.3).
Based on discussion on python-checkins.
........
r46969 | gregory.p.smith | 2006-06-15 10:52:32 +0200 (Thu, 15 Jun 2006) | 6 lines
- bsddb: multithreaded DB access using the simple bsddb module interface
now works reliably. It has been updated to use automatic BerkeleyDB
deadlock detection and the bsddb.dbutils.DeadlockWrap wrapper to retry
database calls that would previously deadlock. [SF python bug #775414]
........
r46970 | gregory.p.smith | 2006-06-15 11:23:52 +0200 (Thu, 15 Jun 2006) | 2 lines
minor documentation cleanup. mention the bsddb.db interface explicitly by name.
........
r46971 | neal.norwitz | 2006-06-15 11:57:03 +0200 (Thu, 15 Jun 2006) | 5 lines
Steal the trick from test_compiler to print out a slow msg.
This will hopefully get the buildbots to pass. Not sure this
test will be feasible or even work. But everything is red now,
so it can't get much worse.
........
r46972 | neal.norwitz | 2006-06-15 12:24:49 +0200 (Thu, 15 Jun 2006) | 1 line
Print some more info to get an idea of how much longer the test will last
........
r46981 | tim.peters | 2006-06-15 20:04:40 +0200 (Thu, 15 Jun 2006) | 6 lines
Try to reduce the extreme peak memory and disk-space use
of this test. It probably still requires more disk space
than most buildbots have, and in any case is still so
intrusive that if we don't find another way to test this I'm
taking my buildbot offline permanently ;-)
........
r46982 | tim.peters | 2006-06-15 20:06:29 +0200 (Thu, 15 Jun 2006) | 2 lines
Whitespace normalization.
........
r46983 | tim.peters | 2006-06-15 20:07:28 +0200 (Thu, 15 Jun 2006) | 2 lines
Add missing svn:eol-style property to text files.
........
r46984 | tim.peters | 2006-06-15 20:38:19 +0200 (Thu, 15 Jun 2006) | 2 lines
Oops -- I introduced an off-by-6436159488 error.
........
r46990 | neal.norwitz | 2006-06-16 06:30:34 +0200 (Fri, 16 Jun 2006) | 1 line
Disable this test until we can determine what to do about it
........
r46991 | neal.norwitz | 2006-06-16 06:31:06 +0200 (Fri, 16 Jun 2006) | 1 line
Param name is dir, not directory. Update docstring. Backport candidate
........
r46992 | neal.norwitz | 2006-06-16 06:31:28 +0200 (Fri, 16 Jun 2006) | 1 line
Add missing period in comment.
........
r46993 | neal.norwitz | 2006-06-16 06:32:43 +0200 (Fri, 16 Jun 2006) | 1 line
Fix whitespace, there are memory leaks in this module.
........
r46995 | fred.drake | 2006-06-17 01:45:06 +0200 (Sat, 17 Jun 2006) | 3 lines
SF patch 1504676: Make sgmllib char and entity references pluggable
(implementation/tests contributed by Sam Ruby)
........
r46996 | fred.drake | 2006-06-17 03:07:54 +0200 (Sat, 17 Jun 2006) | 1 line
fix change that broke the htmllib tests
........
r46998 | martin.v.loewis | 2006-06-17 11:15:14 +0200 (Sat, 17 Jun 2006) | 3 lines
Patch #763580: Add name and value arguments to
Tkinter variable classes.
........
r46999 | martin.v.loewis | 2006-06-17 11:20:41 +0200 (Sat, 17 Jun 2006) | 2 lines
Patch #1096231: Add default argument to wm_iconbitmap.
........
r47000 | martin.v.loewis | 2006-06-17 11:25:15 +0200 (Sat, 17 Jun 2006) | 2 lines
Patch #1494750: Destroy master after deleting children.
........
r47003 | george.yoshida | 2006-06-17 18:31:52 +0200 (Sat, 17 Jun 2006) | 2 lines
markup fix
........
r47005 | george.yoshida | 2006-06-17 18:39:13 +0200 (Sat, 17 Jun 2006) | 4 lines
Update url.
Old url returned status code:301 Moved permanently.
........
r47007 | martin.v.loewis | 2006-06-17 20:44:27 +0200 (Sat, 17 Jun 2006) | 2 lines
Patch #812986: Update the canvas even if not tracing.
........
r47008 | martin.v.loewis | 2006-06-17 21:03:26 +0200 (Sat, 17 Jun 2006) | 2 lines
Patch #815924: Restore ability to pass type= and icon=
........
r47009 | neal.norwitz | 2006-06-18 00:37:45 +0200 (Sun, 18 Jun 2006) | 1 line
Fix typo in docstring
........
r47010 | neal.norwitz | 2006-06-18 00:38:15 +0200 (Sun, 18 Jun 2006) | 1 line
Fix memory leak reported by valgrind while running test_subprocess
........
r47011 | fred.drake | 2006-06-18 04:57:35 +0200 (Sun, 18 Jun 2006) | 1 line
remove unnecessary markup
........
r47013 | neal.norwitz | 2006-06-18 21:35:01 +0200 (Sun, 18 Jun 2006) | 7 lines
Prevent spurious leaks when running regrtest.py -R. There may be more
issues that crop up from time to time, but this change seems to have been
pretty stable (no spurious warnings) for about a week.
Other modules which use threads may require similar use of
threading_setup/threading_cleanup from test_support.
........
r47014 | neal.norwitz | 2006-06-18 21:37:40 +0200 (Sun, 18 Jun 2006) | 9 lines
The hppa ubuntu box sometimes hangs forever in these tests. My guess
is that the wait is failing for some reason. Use WNOHANG, so we won't
wait until the buildbot kills the test suite.
I haven't been able to reproduce the failure, so I'm not sure if
this will help or not. Hopefully, this change will cause the test
to fail, rather than hang. That will be better since we will get
the rest of the test results. It may also help us debug the real problem.
........
r47015 | neal.norwitz | 2006-06-18 22:10:24 +0200 (Sun, 18 Jun 2006) | 1 line
Revert 47014 until it is more robust
........
r47016 | thomas.heller | 2006-06-18 23:27:04 +0200 (Sun, 18 Jun 2006) | 6 lines
Fix typos.
Fix doctest example.
Mention in the tutorial that 'errcheck' is explained in the ref manual.
Use better wording in some places.
Remoce code examples that shouldn't be in the tutorial.
Remove some XXX notices.
........
r47017 | georg.brandl | 2006-06-19 00:17:29 +0200 (Mon, 19 Jun 2006) | 3 lines
Patch #1507676: improve exception messages in abstract.c, object.c and typeobject.c.
........
r47018 | neal.norwitz | 2006-06-19 07:40:44 +0200 (Mon, 19 Jun 2006) | 1 line
Use Py_ssize_t
........
r47019 | georg.brandl | 2006-06-19 08:35:54 +0200 (Mon, 19 Jun 2006) | 3 lines
Add news entry about error msg improvement.
........
r47020 | thomas.heller | 2006-06-19 09:07:49 +0200 (Mon, 19 Jun 2006) | 2 lines
Try to repair the failing test on the OpenBSD buildbot. Trial and error...
........
r47021 | tim.peters | 2006-06-19 09:45:16 +0200 (Mon, 19 Jun 2006) | 2 lines
Whitespace normalization.
........
r47022 | walter.doerwald | 2006-06-19 10:07:50 +0200 (Mon, 19 Jun 2006) | 4 lines
Patch #1506645: add Python wrappers for the curses functions
is_term_resized, resize_term and resizeterm. This uses three
separate configure checks (one for each function).
........
r47023 | walter.doerwald | 2006-06-19 10:14:09 +0200 (Mon, 19 Jun 2006) | 2 lines
Make check order match in configure and configure.in.
........
r47024 | tim.peters | 2006-06-19 10:14:28 +0200 (Mon, 19 Jun 2006) | 3 lines
Repair KeyError when running test_threaded_import under -R,
as reported by Neal on python-dev.
........
r47025 | thomas.heller | 2006-06-19 10:32:46 +0200 (Mon, 19 Jun 2006) | 3 lines
Next try to fix the OpenBSD buildbot tests:
Use ctypes.util.find_library to locate the C runtime library
on platforms where is returns useful results.
........
r47026 | tim.peters | 2006-06-19 11:09:44 +0200 (Mon, 19 Jun 2006) | 13 lines
TestHelp.make_parser(): This was making a permanent change to
os.environ (setting envar COLUMNS), which at least caused
test_float_default() to fail if the tests were run more than once.
This repairs the test_optparse -R failures Neal reported on
python-dev. It also explains some seemingly bizarre test_optparse
failures we saw a couple weeks ago on the buildbots, when
test_optparse failed due to test_file failing to clean up after
itself, and then test_optparse failed in an entirely different
way when regrtest's -w option ran test_optparse a second time.
It's now obvious that make_parser() permanently changing os.environ
was responsible for the second half of that.
........
r47027 | anthony.baxter | 2006-06-19 14:04:15 +0200 (Mon, 19 Jun 2006) | 2 lines
Preparing for 2.5b1.
........
r47029 | fred.drake | 2006-06-19 19:31:16 +0200 (Mon, 19 Jun 2006) | 1 line
remove non-working document formats from edist
........
r47030 | gerhard.haering | 2006-06-19 23:17:35 +0200 (Mon, 19 Jun 2006) | 5 lines
Fixed a memory leak that was introduced with incorrect usage of the Python weak
reference API in pysqlite 2.2.1.
Bumbed pysqlite version number to upcoming pysqlite 2.3.1 release.
........
r47032 | ka-ping.yee | 2006-06-20 00:49:36 +0200 (Tue, 20 Jun 2006) | 2 lines
Remove Python 2.3 compatibility comment.
........
r47033 | trent.mick | 2006-06-20 01:21:25 +0200 (Tue, 20 Jun 2006) | 2 lines
Upgrade pyexpat to expat 2.0.0 (http://python.org/sf/1462338).
........
r47034 | trent.mick | 2006-06-20 01:57:41 +0200 (Tue, 20 Jun 2006) | 3 lines
[ 1295808 ] expat symbols should be namespaced in pyexpat
(http://python.org/sf/1295808)
........
r47039 | andrew.kuchling | 2006-06-20 13:52:16 +0200 (Tue, 20 Jun 2006) | 1 line
Uncomment wsgiref section
........
r47040 | andrew.kuchling | 2006-06-20 14:15:09 +0200 (Tue, 20 Jun 2006) | 1 line
Add four library items
........
r47041 | andrew.kuchling | 2006-06-20 14:19:54 +0200 (Tue, 20 Jun 2006) | 1 line
Terminology and typography fixes
........
r47042 | andrew.kuchling | 2006-06-20 15:05:12 +0200 (Tue, 20 Jun 2006) | 1 line
Add introductory paragraphs summarizing the release; minor edits
........
r47043 | andrew.kuchling | 2006-06-20 15:11:29 +0200 (Tue, 20 Jun 2006) | 1 line
Minor edits and rearrangements; markup fix
........
r47044 | andrew.kuchling | 2006-06-20 15:20:30 +0200 (Tue, 20 Jun 2006) | 1 line
[Bug #1504456] Mention xml -> xmlcore change
........
r47047 | brett.cannon | 2006-06-20 19:30:26 +0200 (Tue, 20 Jun 2006) | 2 lines
Raise TestSkipped when the test socket connection is refused.
........
r47049 | brett.cannon | 2006-06-20 21:20:17 +0200 (Tue, 20 Jun 2006) | 2 lines
Fix typo of exception name.
........
r47053 | brett.cannon | 2006-06-21 18:57:57 +0200 (Wed, 21 Jun 2006) | 5 lines
At the C level, tuple arguments are passed in directly to the exception
constructor, meaning it is treated as *args, not as a single argument. This
means using the 'message' attribute won't work (until Py3K comes around),
and so one must grab from 'arg' to get the error number.
........
r47054 | andrew.kuchling | 2006-06-21 19:10:18 +0200 (Wed, 21 Jun 2006) | 1 line
Link to LibRef module documentation
........
r47055 | andrew.kuchling | 2006-06-21 19:17:10 +0200 (Wed, 21 Jun 2006) | 1 line
Note some of Barry's work
........
r47056 | andrew.kuchling | 2006-06-21 19:17:28 +0200 (Wed, 21 Jun 2006) | 1 line
Bump version
........
r47057 | georg.brandl | 2006-06-21 19:45:17 +0200 (Wed, 21 Jun 2006) | 3 lines
fix [ 1509132 ] compiler module builds incorrect AST for TryExceptFinally
........
r47058 | georg.brandl | 2006-06-21 19:52:36 +0200 (Wed, 21 Jun 2006) | 3 lines
Make test_fcntl aware of netbsd3.
........
r47059 | georg.brandl | 2006-06-21 19:53:17 +0200 (Wed, 21 Jun 2006) | 3 lines
Patch #1509001: expected skips for netbsd3.
........
r47060 | gerhard.haering | 2006-06-21 22:55:04 +0200 (Wed, 21 Jun 2006) | 2 lines
Removed call to enable_callback_tracebacks that slipped in by accident.
........
r47061 | armin.rigo | 2006-06-21 23:58:50 +0200 (Wed, 21 Jun 2006) | 13 lines
Fix for an obscure bug introduced by revs 46806 and 46808, with a test.
The problem of checking too eagerly for recursive calls is the
following: if a RuntimeError is caused by recursion, and if code needs
to normalize it immediately (as in the 2nd test), then
PyErr_NormalizeException() needs a call to the RuntimeError class to
instantiate it, and this hits the recursion limit again... causing
PyErr_NormalizeException() to never finish.
Moved this particular recursion check to slot_tp_call(), which is not
involved in instantiating built-in exceptions.
Backport candidate.
........
r47064 | neal.norwitz | 2006-06-22 08:30:50 +0200 (Thu, 22 Jun 2006) | 3 lines
Copy the wsgiref package during make install.
........
r47065 | neal.norwitz | 2006-06-22 08:35:30 +0200 (Thu, 22 Jun 2006) | 1 line
Reset the doc date to today for the automatic doc builds
........
r47067 | andrew.kuchling | 2006-06-22 15:10:23 +0200 (Thu, 22 Jun 2006) | 1 line
Mention how to suppress warnings
........
r47069 | georg.brandl | 2006-06-22 16:46:17 +0200 (Thu, 22 Jun 2006) | 3 lines
Set lineno correctly on list, tuple and dict literals.
........
r47070 | georg.brandl | 2006-06-22 16:46:46 +0200 (Thu, 22 Jun 2006) | 4 lines
Test for correct compilation of try-except-finally stmt.
Test for correct lineno on list, tuple, dict literals.
........
r47071 | fred.drake | 2006-06-22 17:50:08 +0200 (Thu, 22 Jun 2006) | 1 line
fix markup nit
........
r47072 | brett.cannon | 2006-06-22 18:49:14 +0200 (Thu, 22 Jun 2006) | 6 lines
'warning's was improperly requiring that a command-line Warning category be
both a subclass of Warning and a subclass of types.ClassType. The latter is no
longer true thanks to new-style exceptions.
Closes bug #1510580. Thanks to AMK for the test.
........
r47073 | ronald.oussoren | 2006-06-22 20:33:54 +0200 (Thu, 22 Jun 2006) | 3 lines
MacOSX: Add a message to the first screen of the installer that tells
users how to avoid updates to their shell profile.
........
r47074 | georg.brandl | 2006-06-22 21:02:18 +0200 (Thu, 22 Jun 2006) | 3 lines
Fix my name ;)
........
r47075 | thomas.heller | 2006-06-22 21:07:36 +0200 (Thu, 22 Jun 2006) | 2 lines
Small fixes, mostly in the markup.
........
r47076 | peter.astrand | 2006-06-22 22:06:46 +0200 (Thu, 22 Jun 2006) | 1 line
Make it possible to run test_subprocess.py on Python 2.2, which lacks test_support.is_resource_enabled.
........
r47077 | peter.astrand | 2006-06-22 22:21:26 +0200 (Thu, 22 Jun 2006) | 1 line
Applied patch #1506758: Prevent MemoryErrors with large MAXFD.
........
r47079 | neal.norwitz | 2006-06-23 05:32:44 +0200 (Fri, 23 Jun 2006) | 1 line
Fix refleak
........
r47080 | fred.drake | 2006-06-23 08:03:45 +0200 (Fri, 23 Jun 2006) | 9 lines
- SF bug #853506: IP6 address parsing in sgmllib
('[' and ']' were not accepted in unquoted attribute values)
- cleaned up tests of character and entity reference decoding so the
tests cover the documented relationships among handle_charref,
handle_entityref, convert_charref, convert_codepoint, and
convert_entityref, without bringing up Unicode issues that sgmllib
cannot be involved in
........
r47085 | andrew.kuchling | 2006-06-23 21:23:40 +0200 (Fri, 23 Jun 2006) | 11 lines
Fit Makefile for the Python doc environment better; this is a step toward
including the howtos in the build process.
* Put LaTeX output in ../paper-<whatever>/.
* Put HTML output in ../html/
* Explain some of the Makefile variables
* Remove some cruft dating to my environment (e.g. the 'web' target)
This makefile isn't currently invoked by the documentation build process,
so these changes won't destabilize anything.
........
r47086 | hyeshik.chang | 2006-06-23 23:16:18 +0200 (Fri, 23 Jun 2006) | 5 lines
Bug #1511381: codec_getstreamcodec() in codec.c is corrected to
omit a default "error" argument for NULL pointer. This allows
the parser to take a codec from cjkcodecs again.
(Reported by Taewook Kang and reviewed by Walter Doerwald)
........
r47091 | ronald.oussoren | 2006-06-25 22:44:16 +0200 (Sun, 25 Jun 2006) | 6 lines
Workaround for bug #1512124
Without this patch IDLE will get unresponsive when you open the debugger
window on OSX. This is both using the system Tcl/Tk on Tiger as the latest
universal download from tk-components.sf.net.
........
r47092 | ronald.oussoren | 2006-06-25 23:14:19 +0200 (Sun, 25 Jun 2006) | 3 lines
Drop the calldll demo's for macos, calldll isn't present anymore, no need
to keep the demo's around.
........
r47093 | ronald.oussoren | 2006-06-25 23:15:58 +0200 (Sun, 25 Jun 2006) | 3 lines
Use a path without a double slash to compile the .py files after installation
(macosx, binary installer). This fixes bug #1508369 for python 2.5.
........
r47094 | ronald.oussoren | 2006-06-25 23:19:06 +0200 (Sun, 25 Jun 2006) | 3 lines
Also install the .egg-info files in Lib. This will cause wsgiref.egg-info to
be installed.
........
r47097 | andrew.kuchling | 2006-06-26 14:40:02 +0200 (Mon, 26 Jun 2006) | 1 line
[Bug #1511998] Various comments from Nick Coghlan; thanks!
........
r47098 | andrew.kuchling | 2006-06-26 14:43:43 +0200 (Mon, 26 Jun 2006) | 1 line
Describe workaround for PyRange_New()'s removal
........
r47099 | andrew.kuchling | 2006-06-26 15:08:24 +0200 (Mon, 26 Jun 2006) | 5 lines
[Bug #1512163] Fix typo.
This change will probably break tests on FreeBSD buildbots, but I'll check in
a fix for that next.
........
r47100 | andrew.kuchling | 2006-06-26 15:12:16 +0200 (Mon, 26 Jun 2006) | 9 lines
[Bug #1512163] Use one set of locking methods, lockf();
remove the flock() calls.
On FreeBSD, the two methods lockf() and flock() end up using the same
mechanism and the second one fails. A Linux man page claims that the
two methods are orthogonal (so locks acquired one way don't interact
with locks acquired the other way) but that clearly must be false.
........
r47101 | andrew.kuchling | 2006-06-26 15:23:10 +0200 (Mon, 26 Jun 2006) | 5 lines
Add a test for a conflicting lock.
On slow machines, maybe the time intervals (2 sec, 0.5 sec) will be too tight.
I'll see how the buildbots like it.
........
r47103 | andrew.kuchling | 2006-06-26 16:33:24 +0200 (Mon, 26 Jun 2006) | 1 line
Windows doesn't have os.fork(). I'll just disable this test for now
........
r47106 | andrew.kuchling | 2006-06-26 19:00:35 +0200 (Mon, 26 Jun 2006) | 9 lines
Attempt to fix build failure on OS X and Debian alpha; the symptom is
consistent with os.wait() returning immediately because some other
subprocess had previously exited; the test suite then immediately
tries to lock the mailbox and gets an error saying it's already
locked.
To fix this, do a waitpid() so the test suite only continues once
the intended child process has exited.
........
r47113 | neal.norwitz | 2006-06-27 06:06:46 +0200 (Tue, 27 Jun 2006) | 1 line
Ignore some more warnings in the dynamic linker on an older gentoo
........
r47114 | neal.norwitz | 2006-06-27 06:09:13 +0200 (Tue, 27 Jun 2006) | 6 lines
Instead of doing a make test, run the regression tests out of the installed
copy. This will hopefully catch problems where directories are added
under Lib/ but not to Makefile.pre.in. This breaks out the 2 runs
of the test suite with and without -O which is also nicer.
........
r47115 | neal.norwitz | 2006-06-27 06:12:58 +0200 (Tue, 27 Jun 2006) | 5 lines
Fix SF bug #1513032, 'make install' failure on FreeBSD 5.3.
No need to install lib-old, it's empty in 2.5.
........
r47116 | neal.norwitz | 2006-06-27 06:23:06 +0200 (Tue, 27 Jun 2006) | 1 line
Test unimportant change to verify buildbot does not try to build
........
r47117 | neal.norwitz | 2006-06-27 06:26:30 +0200 (Tue, 27 Jun 2006) | 1 line
Try again: test unimportant change to verify buildbot does not try to build
........
r47118 | neal.norwitz | 2006-06-27 06:28:56 +0200 (Tue, 27 Jun 2006) | 1 line
Verify buildbot picks up these changes (really needs testing after last change to Makefile.pre.in)
........
r47121 | vinay.sajip | 2006-06-27 09:34:37 +0200 (Tue, 27 Jun 2006) | 1 line
Removed buggy exception handling in doRollover of rotating file handlers. Exceptions now propagate to caller.
........
r47123 | ronald.oussoren | 2006-06-27 12:08:25 +0200 (Tue, 27 Jun 2006) | 3 lines
MacOSX: fix rather dumb buglet that made it impossible to create extensions on
OSX 10.3 when using a binary distribution build on 10.4.
........
r47125 | tim.peters | 2006-06-27 13:52:49 +0200 (Tue, 27 Jun 2006) | 2 lines
Whitespace normalization.
........
r47128 | ronald.oussoren | 2006-06-27 14:53:52 +0200 (Tue, 27 Jun 2006) | 8 lines
Use staticly build copies of zlib and bzip2 to build the OSX installer, that
way the resulting binaries have a better change of running on 10.3.
This patch also updates the search logic for sleepycat db3/4, without this
patch you cannot use a sleepycat build with a non-standard prefix; with this
you can (at least on OSX) if you add the prefix to CPPFLAGS/LDFLAGS at
configure-time. This change is needed to build the binary installer for OSX.
........
r47131 | ronald.oussoren | 2006-06-27 17:45:32 +0200 (Tue, 27 Jun 2006) | 5 lines
macosx: Install a libpython2.5.a inside the framework as a symlink to the actual
dylib at the root of the framework, that way tools that expect a unix-like
install (python-config, but more importantly external products like
mod_python) work correctly.
........
r47137 | neal.norwitz | 2006-06-28 07:03:22 +0200 (Wed, 28 Jun 2006) | 4 lines
According to the man pages on Gentoo Linux and Tru64, EACCES or EAGAIN
can be returned if fcntl (lockf) fails. This fixes the test failure
on Tru64 by checking for either error rather than just EAGAIN.
........
r47139 | neal.norwitz | 2006-06-28 08:28:31 +0200 (Wed, 28 Jun 2006) | 5 lines
Fix bug #1512695: cPickle.loads could crash if it was interrupted with
a KeyboardInterrupt since PyTuple_Pack was passed a NULL.
Will backport.
........
r47142 | nick.coghlan | 2006-06-28 12:41:47 +0200 (Wed, 28 Jun 2006) | 1 line
Make full module name available as __module_name__ even when __name__ is set to something else (like '__main__')
........
r47143 | armin.rigo | 2006-06-28 12:49:51 +0200 (Wed, 28 Jun 2006) | 2 lines
A couple of crashers of the "won't fix" kind.
........
r47147 | andrew.kuchling | 2006-06-28 16:25:20 +0200 (Wed, 28 Jun 2006) | 1 line
[Bug #1508766] Add docs for uuid module; docs written by George Yoshida, with minor rearrangements by me.
........
r47148 | andrew.kuchling | 2006-06-28 16:27:21 +0200 (Wed, 28 Jun 2006) | 1 line
[Bug #1508766] Add docs for uuid module; this puts the module in the 'Internet Protocols' section. Arguably this module could also have gone in the chapters on strings or encodings, maybe even the crypto chapter. Fred, please move if you see fit.
........
r47151 | georg.brandl | 2006-06-28 22:23:25 +0200 (Wed, 28 Jun 2006) | 3 lines
Fix end_fill().
........
r47153 | trent.mick | 2006-06-28 22:30:41 +0200 (Wed, 28 Jun 2006) | 2 lines
Mention the expat upgrade and pyexpat fix I put in 2.5b1.
........
r47154 | fred.drake | 2006-06-29 02:51:53 +0200 (Thu, 29 Jun 2006) | 6 lines
SF bug #1504333: sgmlib should allow angle brackets in quoted values
(modified patch by Sam Ruby; changed to use separate REs for start and end
tags to reduce matching cost for end tags; extended tests; updated to avoid
breaking previous changes to support IPv6 addresses in unquoted attribute
values)
........
r47156 | fred.drake | 2006-06-29 04:57:48 +0200 (Thu, 29 Jun 2006) | 1 line
document recent bugfixes in sgmllib
........
r47158 | neal.norwitz | 2006-06-29 06:10:08 +0200 (Thu, 29 Jun 2006) | 10 lines
Add new utility function, reap_children(), to test_support. This should
be called at the end of each test that spawns children (perhaps it
should be called from regrtest instead?). This will hopefully prevent
some of the unexplained failures in the buildbots (hppa and alpha)
during tests that spawn children. The problems were not reproducible.
There were many zombies that remained at the end of several tests.
In the worst case, this shouldn't cause any more problems,
though it may not help either. Time will tell.
........
r47159 | neal.norwitz | 2006-06-29 07:48:14 +0200 (Thu, 29 Jun 2006) | 5 lines
This should fix the buildbot failure on s/390 which can't connect to gmail.org.
It makes the error message consistent and always sends to stderr.
It would be much better for all the networking tests to hit only python.org.
........
r47161 | thomas.heller | 2006-06-29 20:34:15 +0200 (Thu, 29 Jun 2006) | 3 lines
Protect the thread api calls in the _ctypes extension module within
#ifdef WITH_THREADS/#endif blocks. Found by Sam Rushing.
........
r47162 | martin.v.loewis | 2006-06-29 20:58:44 +0200 (Thu, 29 Jun 2006) | 2 lines
Patch #1509163: MS Toolkit Compiler no longer available
........
r47163 | skip.montanaro | 2006-06-29 21:20:09 +0200 (Thu, 29 Jun 2006) | 1 line
add string methods to index
........
r47164 | vinay.sajip | 2006-06-30 02:13:08 +0200 (Fri, 30 Jun 2006) | 1 line
Fixed bug in fileConfig() which failed to clear logging._handlerList
........
r47166 | tim.peters | 2006-06-30 08:18:39 +0200 (Fri, 30 Jun 2006) | 2 lines
Whitespace normalization.
........
r47170 | neal.norwitz | 2006-06-30 09:32:16 +0200 (Fri, 30 Jun 2006) | 1 line
Silence compiler warning
........
r47171 | neal.norwitz | 2006-06-30 09:32:46 +0200 (Fri, 30 Jun 2006) | 1 line
Another problem reported by Coverity. Backport candidate.
........
r47175 | thomas.heller | 2006-06-30 19:44:54 +0200 (Fri, 30 Jun 2006) | 2 lines
Revert the use of PY_FORMAT_SIZE_T in PyErr_Format.
........
r47176 | tim.peters | 2006-06-30 20:34:51 +0200 (Fri, 30 Jun 2006) | 2 lines
Remove now-unused fidding with PY_FORMAT_SIZE_T.
........
r47177 | georg.brandl | 2006-06-30 20:47:56 +0200 (Fri, 30 Jun 2006) | 3 lines
Document decorator usage of property.
........
r47181 | fred.drake | 2006-06-30 21:29:25 +0200 (Fri, 30 Jun 2006) | 4 lines
- consistency nit: always include "()" in \function and \method
(*should* be done by the presentation, but that requires changes all over)
- avoid spreading the __name meme
........
r47188 | vinay.sajip | 2006-07-01 12:45:20 +0200 (Sat, 01 Jul 2006) | 1 line
Added entry for fileConfig() bugfix.
........
r47189 | vinay.sajip | 2006-07-01 12:47:20 +0200 (Sat, 01 Jul 2006) | 1 line
Added duplicate call to fileConfig() to ensure that it cleans up after itself correctly.
........
r47190 | martin.v.loewis | 2006-07-01 17:33:37 +0200 (Sat, 01 Jul 2006) | 2 lines
Release all forwarded functions in .close. Fixes #1513223.
........
r47191 | fred.drake | 2006-07-01 18:28:20 +0200 (Sat, 01 Jul 2006) | 7 lines
SF bug #1296433 (Expat bug #1515266): Unchecked calls to character data
handler would cause a segfault. This merges in Expat's lib/xmlparse.c
revisions 1.154 and 1.155, which fix this and a closely related problem
(the later does not affect Python).
Moved the crasher test to the tests for xml.parsers.expat.
........
r47197 | gerhard.haering | 2006-07-02 19:48:30 +0200 (Sun, 02 Jul 2006) | 4 lines
The sqlite3 module did cut off data from the SQLite database at the first null
character before sending it to a custom converter. This has been fixed now.
........
r47198 | martin.v.loewis | 2006-07-02 20:44:00 +0200 (Sun, 02 Jul 2006) | 1 line
Correct arithmetic in access on Win32. Fixes #1513646.
........
r47203 | thomas.heller | 2006-07-03 09:58:09 +0200 (Mon, 03 Jul 2006) | 1 line
Cleanup: Remove commented out code.
........
r47204 | thomas.heller | 2006-07-03 09:59:50 +0200 (Mon, 03 Jul 2006) | 1 line
Don't run the doctests with Python 2.3 because it doesn't have the ELLIPSIS flag.
........
r47205 | thomas.heller | 2006-07-03 10:04:05 +0200 (Mon, 03 Jul 2006) | 7 lines
Fixes so that _ctypes can be compiled with the MingW compiler.
It seems that the definition of '__attribute__(x)' was responsible for
the compiler ignoring the '__fastcall' attribute on the
ffi_closure_SYSV function in libffi_msvc/ffi.c, took me quite some
time to figure this out.
........
r47206 | thomas.heller | 2006-07-03 10:08:14 +0200 (Mon, 03 Jul 2006) | 11 lines
Add a new function uses_seh() to the _ctypes extension module. This
will return True if Windows Structured Exception handling (SEH) is
used when calling functions, False otherwise.
Currently, only MSVC supports SEH.
Fix the test so that it doesn't crash when run with MingW compiled
_ctypes. Note that two tests are still failing when mingw is used, I
suspect structure layout differences and function calling conventions
between MSVC and MingW.
........
r47207 | tim.peters | 2006-07-03 10:23:19 +0200 (Mon, 03 Jul 2006) | 2 lines
Whitespace normalization.
........
r47208 | martin.v.loewis | 2006-07-03 11:44:00 +0200 (Mon, 03 Jul 2006) | 3 lines
Only setup canvas when it is first created.
Fixes #1514703
........
r47209 | martin.v.loewis | 2006-07-03 12:05:30 +0200 (Mon, 03 Jul 2006) | 3 lines
Reimplement turtle.circle using a polyline, to allow correct
filling of arcs. Also fixes #1514693.
........
r47210 | martin.v.loewis | 2006-07-03 12:19:49 +0200 (Mon, 03 Jul 2006) | 3 lines
Bug #1514693: Update turtle's heading when switching between
degrees and radians.
........
r47211 | martin.v.loewis | 2006-07-03 13:12:06 +0200 (Mon, 03 Jul 2006) | 2 lines
Document functions added in 2.3 and 2.5.
........
r47212 | martin.v.loewis | 2006-07-03 14:19:50 +0200 (Mon, 03 Jul 2006) | 3 lines
Bug #1417699: Reject locale-specific decimal point in float()
and atof().
........
r47213 | martin.v.loewis | 2006-07-03 14:28:58 +0200 (Mon, 03 Jul 2006) | 3 lines
Bug #1267547: Put proper recursive setup.py call into the
spec file generated by bdist_rpm.
........
r47215 | martin.v.loewis | 2006-07-03 15:01:35 +0200 (Mon, 03 Jul 2006) | 3 lines
Patch #825417: Fix timeout processing in expect,
read_until. Will backport to 2.4.
........
r47218 | martin.v.loewis | 2006-07-03 15:47:40 +0200 (Mon, 03 Jul 2006) | 2 lines
Put method-wrappers into trashcan. Fixes #927248.
........
r47219 | andrew.kuchling | 2006-07-03 16:07:30 +0200 (Mon, 03 Jul 2006) | 1 line
[Bug #1515932] Clarify description of slice assignment
........
r47220 | andrew.kuchling | 2006-07-03 16:16:09 +0200 (Mon, 03 Jul 2006) | 4 lines
[Bug #1511911] Clarify description of optional arguments to sorted()
by improving the xref to the section on lists, and by
copying the explanations of the arguments (with a slight modification).
........
r47223 | kristjan.jonsson | 2006-07-03 16:59:05 +0200 (Mon, 03 Jul 2006) | 1 line
Fix build problems with the platform SDK on windows. It is not sufficient to test for the C compiler version when determining if we have the secure CRT from microsoft. Must test with an undocumented macro, __STDC_SECURE_LIB__ too.
........
r47224 | ronald.oussoren | 2006-07-04 14:30:22 +0200 (Tue, 04 Jul 2006) | 7 lines
Sync the darwin/x86 port libffi with the copy in PyObjC. This fixes a number
of bugs in that port. The most annoying ones were due to some subtle differences
between the document ABI and the actual implementation :-(
(there are no python unittests that fail without this patch, but without it
some of libffi's unittests fail).
........
r47234 | georg.brandl | 2006-07-05 10:21:00 +0200 (Wed, 05 Jul 2006) | 3 lines
Remove remaining references to OverflowWarning.
........
r47236 | thomas.heller | 2006-07-05 11:13:56 +0200 (Wed, 05 Jul 2006) | 3 lines
Fix the bitfield test when _ctypes is compiled with MingW. Structures
containing bitfields may have different layout on MSVC and MingW .
........
r47237 | thomas.wouters | 2006-07-05 13:03:49 +0200 (Wed, 05 Jul 2006) | 15 lines
Fix bug in passing tuples to string.Template. All other values (with working
str() or repr()) would work, just not multi-value tuples. Probably not a
backport candidate, since it changes the behaviour of passing a
single-element tuple:
>>> string.Template("$foo").substitute(dict(foo=(1,)))
'(1,)'
versus
'1'
........
r47241 | georg.brandl | 2006-07-05 16:18:45 +0200 (Wed, 05 Jul 2006) | 2 lines
Patch #1517490: fix glitches in filter() docs.
........
r47244 | georg.brandl | 2006-07-05 17:50:05 +0200 (Wed, 05 Jul 2006) | 2 lines
no need to elaborate "string".
........
r47251 | neal.norwitz | 2006-07-06 06:28:59 +0200 (Thu, 06 Jul 2006) | 3 lines
Fix refleaks reported by Shane Hathaway in SF patch #1515361. This change
contains only the changes related to leaking the copy variable.
........
r47253 | fred.drake | 2006-07-06 07:13:22 +0200 (Thu, 06 Jul 2006) | 4 lines
- back out Expat change; the final fix to Expat will be different
- change the pyexpat wrapper to not be so sensitive to this detail of the
Expat implementation (the ex-crasher test still passes)
........
r47257 | neal.norwitz | 2006-07-06 08:45:08 +0200 (Thu, 06 Jul 2006) | 1 line
Add a NEWS entry for a recent pyexpat fix
........
r47258 | martin.v.loewis | 2006-07-06 08:55:58 +0200 (Thu, 06 Jul 2006) | 2 lines
Add sqlite3.dll to the DLLs component, not to the TkDLLs component.
Fixes #1517388.
........
r47259 | martin.v.loewis | 2006-07-06 09:05:21 +0200 (Thu, 06 Jul 2006) | 1 line
Properly quote compileall and Lib paths in case TARGETDIR has a space.
........
r47260 | thomas.heller | 2006-07-06 09:50:18 +0200 (Thu, 06 Jul 2006) | 5 lines
Revert the change done in svn revision 47206:
Add a new function uses_seh() to the _ctypes extension module. This
will return True if Windows Structured Exception handling (SEH) is
used when calling functions, False otherwise.
........
r47261 | armin.rigo | 2006-07-06 09:58:18 +0200 (Thu, 06 Jul 2006) | 3 lines
A couple of examples about how to attack the fact that _PyType_Lookup()
returns a borrowed ref. Many of the calls are open to attack.
........
r47262 | thomas.heller | 2006-07-06 10:28:14 +0200 (Thu, 06 Jul 2006) | 2 lines
The test that calls a function with invalid arguments and catches the
resulting Windows access violation will not be run by default.
........
r47263 | thomas.heller | 2006-07-06 10:48:35 +0200 (Thu, 06 Jul 2006) | 5 lines
Patch #1517790: It is now possible to use custom objects in the ctypes
foreign function argtypes sequence as long as they provide a
from_param method, no longer is it required that the object is a
ctypes type.
........
r47264 | thomas.heller | 2006-07-06 10:58:40 +0200 (Thu, 06 Jul 2006) | 2 lines
Document the Struture and Union constructors.
........
r47265 | thomas.heller | 2006-07-06 11:11:22 +0200 (Thu, 06 Jul 2006) | 2 lines
Document the changes in svn revision 47263, from patch #1517790.
........
r47267 | ronald.oussoren | 2006-07-06 12:13:35 +0200 (Thu, 06 Jul 2006) | 7 lines
This patch solves the problem Skip was seeing with zlib, this patch ensures that
configure uses similar compiler flags as setup.py when doing the zlib test.
Without this patch configure would use the first shared library on the linker
path, with this patch it uses the first shared or static library on that path
just like setup.py.
........
r47268 | thomas.wouters | 2006-07-06 12:48:28 +0200 (Thu, 06 Jul 2006) | 4 lines
NEWS entry for r47267: fixing configure's zlib probing.
........
r47269 | fredrik.lundh | 2006-07-06 14:29:24 +0200 (Thu, 06 Jul 2006) | 3 lines
added XMLParser alias for cElementTree compatibility
........
r47271 | nick.coghlan | 2006-07-06 14:53:04 +0200 (Thu, 06 Jul 2006) | 1 line
Revert the __module_name__ changes made in rev 47142. We'll revisit this in Python 2.6
........
r47272 | nick.coghlan | 2006-07-06 15:04:56 +0200 (Thu, 06 Jul 2006) | 1 line
Update the tutorial section on relative imports
........
r47273 | nick.coghlan | 2006-07-06 15:35:27 +0200 (Thu, 06 Jul 2006) | 1 line
Ignore ImportWarning by default
........
r47274 | nick.coghlan | 2006-07-06 15:41:34 +0200 (Thu, 06 Jul 2006) | 1 line
Cover ImportWarning, PendingDeprecationWarning and simplefilter() in the warnings module docs
........
r47275 | nick.coghlan | 2006-07-06 15:47:18 +0200 (Thu, 06 Jul 2006) | 1 line
Add NEWS entries for the ImportWarning change and documentation update
........
r47276 | andrew.kuchling | 2006-07-06 15:57:28 +0200 (Thu, 06 Jul 2006) | 1 line
ImportWarning is now silent by default
........
r47277 | thomas.heller | 2006-07-06 17:06:05 +0200 (Thu, 06 Jul 2006) | 2 lines
Document the correct return type of PyLong_AsUnsignedLongLongMask.
........
r47278 | hyeshik.chang | 2006-07-06 17:21:52 +0200 (Thu, 06 Jul 2006) | 2 lines
Add a testcase for r47086 which fixed a bug in codec_getstreamcodec().
........
r47279 | hyeshik.chang | 2006-07-06 17:39:24 +0200 (Thu, 06 Jul 2006) | 3 lines
Test using all CJK encodings for the testcases which don't require
specific encodings.
........
r47280 | martin.v.loewis | 2006-07-06 21:28:03 +0200 (Thu, 06 Jul 2006) | 2 lines
Properly generate logical file ids. Fixes #1515998.
Also correct typo in Control.mapping.
........
r47287 | neal.norwitz | 2006-07-07 08:03:15 +0200 (Fri, 07 Jul 2006) | 17 lines
Restore rev 47014:
The hppa ubuntu box sometimes hangs forever in these tests. My guess
is that the wait is failing for some reason. Use WNOHANG, so we won't
wait until the buildbot kills the test suite.
I haven't been able to reproduce the failure, so I'm not sure if
this will help or not. Hopefully, this change will cause the test
to fail, rather than hang. That will be better since we will get
the rest of the test results. It may also help us debug the real problem.
*** The reason this originally failed was because there were many
zombie children outstanding before rev 47158 cleaned them up.
There are still hangs in test_subprocess that need to be addressed,
but that will take more work. This should close some holes.
........
r47289 | georg.brandl | 2006-07-07 10:15:12 +0200 (Fri, 07 Jul 2006) | 3 lines
Fix RFC number.
........
r50489 | neal.norwitz | 2006-07-08 07:31:37 +0200 (Sat, 08 Jul 2006) | 1 line
Fix SF bug #1519018: 'as' is now validated properly in import statements
........
r50490 | georg.brandl | 2006-07-08 14:15:27 +0200 (Sat, 08 Jul 2006) | 3 lines
Add an additional test for bug #1519018.
........
r50491 | tim.peters | 2006-07-08 21:55:05 +0200 (Sat, 08 Jul 2006) | 2 lines
Whitespace normalization.
........
r50493 | neil.schemenauer | 2006-07-09 18:16:34 +0200 (Sun, 09 Jul 2006) | 2 lines
Fix AST compiler bug #1501934: incorrect LOAD/STORE_GLOBAL generation.
........
r50495 | neil.schemenauer | 2006-07-09 23:19:29 +0200 (Sun, 09 Jul 2006) | 2 lines
Fix SF bug 1441486: bad unary minus folding in compiler.
........
r50497 | neal.norwitz | 2006-07-10 00:14:42 +0200 (Mon, 10 Jul 2006) | 4 lines
On 64 bit systems, int literals that use less than 64 bits are now ints
rather than longs. This also fixes the test for eval(-sys.maxint - 1).
........
r50500 | neal.norwitz | 2006-07-10 02:04:44 +0200 (Mon, 10 Jul 2006) | 4 lines
Bug #1512814, Fix incorrect lineno's when code at module scope
started after line 256.
........
r50501 | neal.norwitz | 2006-07-10 02:05:34 +0200 (Mon, 10 Jul 2006) | 1 line
Fix doco. Backport candidate.
........
r50503 | neal.norwitz | 2006-07-10 02:23:17 +0200 (Mon, 10 Jul 2006) | 5 lines
Part of SF patch #1484695. This removes dead code. The chksum was
already verified in .frombuf() on the lines above. If there was
a problem an exception is raised, so there was no way this condition
could have been true.
........
r50504 | neal.norwitz | 2006-07-10 03:18:57 +0200 (Mon, 10 Jul 2006) | 3 lines
Patch #1516912: improve Modules support for OpenVMS.
........
r50506 | neal.norwitz | 2006-07-10 04:36:41 +0200 (Mon, 10 Jul 2006) | 7 lines
Patch #1504046: Add documentation for xml.etree.
/F wrote the text docs, Englebert Gruber massaged it to latex and I
did some more massaging to try and improve the consistency and
fix some name mismatches between the declaration and text.
........
r50509 | martin.v.loewis | 2006-07-10 09:23:48 +0200 (Mon, 10 Jul 2006) | 2 lines
Introduce DISTUTILS_USE_SDK as a flag to determine whether the
SDK environment should be used. Fixes #1508010.
........
r50510 | martin.v.loewis | 2006-07-10 09:26:41 +0200 (Mon, 10 Jul 2006) | 1 line
Change error message to indicate that VS2003 is necessary to build extension modules, not the .NET SDK.
........
r50511 | martin.v.loewis | 2006-07-10 09:29:41 +0200 (Mon, 10 Jul 2006) | 1 line
Add svn:ignore.
........
r50512 | anthony.baxter | 2006-07-10 09:41:04 +0200 (Mon, 10 Jul 2006) | 1 line
preparing for 2.5b2
........
r50513 | thomas.heller | 2006-07-10 11:10:28 +0200 (Mon, 10 Jul 2006) | 2 lines
Fix bug #1518190: accept any integer or long value in the
ctypes.c_void_p constructor.
........
r50514 | thomas.heller | 2006-07-10 11:31:06 +0200 (Mon, 10 Jul 2006) | 3 lines
Fixed a segfault when ctypes.wintypes were imported on
non-Windows machines.
........
r50516 | thomas.heller | 2006-07-10 13:11:10 +0200 (Mon, 10 Jul 2006) | 3 lines
Assigning None to pointer type structure fields possible overwrote
wrong fields.
........
r50517 | thomas.heller | 2006-07-10 13:17:37 +0200 (Mon, 10 Jul 2006) | 5 lines
Moved the ctypes news entries from the 'Library' section into the
'Extension Modules' section where they belong, probably.
This destroyes the original order of the news entries, don't know
if that is important or not.
........
r50526 | phillip.eby | 2006-07-10 21:03:29 +0200 (Mon, 10 Jul 2006) | 2 lines
Fix SF#1516184 and add a test to prevent regression.
........
r50528 | phillip.eby | 2006-07-10 21:18:35 +0200 (Mon, 10 Jul 2006) | 2 lines
Fix SF#1457312: bad socket error handling in distutils "upload" command.
........
r50537 | peter.astrand | 2006-07-10 22:39:49 +0200 (Mon, 10 Jul 2006) | 1 line
Make it possible to run test_subprocess.py with Python 2.2, which lacks test_support.reap_children().
........
r50541 | tim.peters | 2006-07-10 23:08:24 +0200 (Mon, 10 Jul 2006) | 5 lines
After approval from Anthony, merge the tim-current_frames
branch into the trunk. This adds a new sys._current_frames()
function, which returns a dict mapping thread id to topmost
thread stack frame.
........
r50542 | tim.peters | 2006-07-10 23:11:49 +0200 (Mon, 10 Jul 2006) | 2 lines
Whitespace normalization.
........
r50553 | martin.v.loewis | 2006-07-11 00:11:28 +0200 (Tue, 11 Jul 2006) | 4 lines
Patch #1519566: Remove unused _tofill member.
Make begin_fill idempotent.
Update demo2 to demonstrate filling of concave shapes.
........
r50567 | anthony.baxter | 2006-07-11 04:04:09 +0200 (Tue, 11 Jul 2006) | 4 lines
#1494314: Fix a regression with high-numbered sockets in 2.4.3. This
means that select() on sockets > FD_SETSIZE (typically 1024) work again.
The patch makes sockets use poll() internally where available.
........
r50568 | tim.peters | 2006-07-11 04:17:48 +0200 (Tue, 11 Jul 2006) | 2 lines
Whitespace normalization.
........
r50575 | thomas.heller | 2006-07-11 18:42:05 +0200 (Tue, 11 Jul 2006) | 1 line
Add missing Py_DECREF.
........
r50576 | thomas.heller | 2006-07-11 18:44:25 +0200 (Tue, 11 Jul 2006) | 1 line
Add missing Py_DECREFs.
........
r50579 | andrew.kuchling | 2006-07-11 19:20:16 +0200 (Tue, 11 Jul 2006) | 1 line
Bump version number; add sys._current_frames
........
r50582 | thomas.heller | 2006-07-11 20:28:35 +0200 (Tue, 11 Jul 2006) | 3 lines
When a foreign function is retrived by calling __getitem__ on a ctypes
library instance, do not set it as attribute.
........
r50583 | thomas.heller | 2006-07-11 20:40:50 +0200 (Tue, 11 Jul 2006) | 2 lines
Change the ctypes version number to 1.0.0.
........
r50597 | neal.norwitz | 2006-07-12 07:26:17 +0200 (Wed, 12 Jul 2006) | 3 lines
Bug #1520864: unpacking singleton tuples in for loop (for x, in) work again.
........
r50598 | neal.norwitz | 2006-07-12 07:26:35 +0200 (Wed, 12 Jul 2006) | 1 line
Fix function name in error msg
........
r50599 | neal.norwitz | 2006-07-12 07:27:46 +0200 (Wed, 12 Jul 2006) | 4 lines
Fix uninitialized memory read reported by Valgrind when running doctest.
This could happen if size == 0.
........
r50600 | neal.norwitz | 2006-07-12 09:28:29 +0200 (Wed, 12 Jul 2006) | 1 line
Actually change the MAGIC #. Create a new section for 2.5c1 and mention the impact of changing the MAGIC #.
........
r50601 | thomas.heller | 2006-07-12 10:43:47 +0200 (Wed, 12 Jul 2006) | 3 lines
Fix #1467450: ctypes now uses RTLD_GLOBAL by default on OSX 10.3 to
load shared libraries.
........
r50604 | thomas.heller | 2006-07-12 16:25:18 +0200 (Wed, 12 Jul 2006) | 3 lines
Fix the wrong description of LibraryLoader.LoadLibrary, and document
the DEFAULT_MODE constant.
........
r50607 | georg.brandl | 2006-07-12 17:31:17 +0200 (Wed, 12 Jul 2006) | 3 lines
Accept long options "--help" and "--version".
........
r50617 | thomas.heller | 2006-07-13 11:53:47 +0200 (Thu, 13 Jul 2006) | 3 lines
A misspelled preprocessor symbol caused ctypes to be always compiled
without thread support. Replaced WITH_THREADS with WITH_THREAD.
........
r50619 | thomas.heller | 2006-07-13 19:01:14 +0200 (Thu, 13 Jul 2006) | 3 lines
Fix #1521375. When running with root priviledges, 'gcc -o /dev/null'
did overwrite /dev/null. Use a temporary file instead of /dev/null.
........
r50620 | thomas.heller | 2006-07-13 19:05:13 +0200 (Thu, 13 Jul 2006) | 2 lines
Fix misleading words.
........
r50622 | andrew.kuchling | 2006-07-13 19:37:26 +0200 (Thu, 13 Jul 2006) | 1 line
Typo fix
........
r50629 | georg.brandl | 2006-07-14 09:12:54 +0200 (Fri, 14 Jul 2006) | 3 lines
Patch #1521874: grammar errors in doanddont.tex.
........
r50630 | neal.norwitz | 2006-07-14 09:20:04 +0200 (Fri, 14 Jul 2006) | 1 line
Try to improve grammar further.
........
r50631 | martin.v.loewis | 2006-07-14 11:58:55 +0200 (Fri, 14 Jul 2006) | 1 line
Extend build_ssl to Win64, using VSExtComp.
........
r50632 | martin.v.loewis | 2006-07-14 14:10:09 +0200 (Fri, 14 Jul 2006) | 1 line
Add debug output to analyse buildbot failure.
........
r50633 | martin.v.loewis | 2006-07-14 14:31:05 +0200 (Fri, 14 Jul 2006) | 1 line
Fix Debug build of _ssl.
........
r50636 | andrew.kuchling | 2006-07-14 15:32:38 +0200 (Fri, 14 Jul 2006) | 1 line
Mention new options
........
r50638 | peter.astrand | 2006-07-14 16:04:45 +0200 (Fri, 14 Jul 2006) | 1 line
Bug #1223937: CalledProcessError.errno -> CalledProcessError.returncode.
........
r50640 | thomas.heller | 2006-07-14 17:01:05 +0200 (Fri, 14 Jul 2006) | 4 lines
Make the prototypes of our private PyUnicode_FromWideChar and
PyUnicode_AsWideChar replacement functions compatible to the official
functions by using Py_ssize_t instead of int.
........
r50643 | thomas.heller | 2006-07-14 19:51:14 +0200 (Fri, 14 Jul 2006) | 3 lines
Patch #1521817: The index range checking on ctypes arrays containing
exactly one element is enabled again.
........
r50647 | thomas.heller | 2006-07-14 20:22:50 +0200 (Fri, 14 Jul 2006) | 2 lines
Updates for the ctypes documentation.
........
r50655 | fredrik.lundh | 2006-07-14 23:45:48 +0200 (Fri, 14 Jul 2006) | 3 lines
typo
........
r50664 | george.yoshida | 2006-07-15 18:03:49 +0200 (Sat, 15 Jul 2006) | 2 lines
Bug #15187702 : ext/win-cookbook.html has a broken link to distutils
........
r50667 | bob.ippolito | 2006-07-15 18:53:15 +0200 (Sat, 15 Jul 2006) | 1 line
Patch #1220874: Update the binhex module for Mach-O.
........
r50671 | fred.drake | 2006-07-16 03:21:20 +0200 (Sun, 16 Jul 2006) | 1 line
clean up some link markup
........
r50673 | neal.norwitz | 2006-07-16 03:50:38 +0200 (Sun, 16 Jul 2006) | 4 lines
Bug #1512814, Fix incorrect lineno's when code within a function
had more than 255 blank lines. Byte codes need to go first, line #s second.
........
r50674 | neal.norwitz | 2006-07-16 04:00:32 +0200 (Sun, 16 Jul 2006) | 5 lines
a & b were dereffed above, so they are known to be valid pointers.
z is known to be NULL, nothing to DECREF.
Reported by Klockwork, #107.
........
r50675 | neal.norwitz | 2006-07-16 04:02:57 +0200 (Sun, 16 Jul 2006) | 5 lines
self is dereffed (and passed as first arg), so it's known to be good.
func is returned from PyArg_ParseTuple and also dereffed.
Reported by Klocwork, #30 (self one at least).
........
r50676 | neal.norwitz | 2006-07-16 04:05:35 +0200 (Sun, 16 Jul 2006) | 4 lines
proto was dereffed above and is known to be good. No need for X.
Reported by Klocwork, #39.
........
r50677 | neal.norwitz | 2006-07-16 04:15:27 +0200 (Sun, 16 Jul 2006) | 5 lines
Fix memory leaks in some conditions.
Reported by Klocwork #152.
........
r50678 | neal.norwitz | 2006-07-16 04:17:36 +0200 (Sun, 16 Jul 2006) | 4 lines
Fix memory leak under some conditions.
Reported by Klocwork, #98.
........
r50679 | neal.norwitz | 2006-07-16 04:22:30 +0200 (Sun, 16 Jul 2006) | 8 lines
Use sizeof(buffer) instead of duplicating the constants to ensure they won't
be wrong.
The real change is to pass (bufsz - 1) to PyOS_ascii_formatd and 1
to strncat. strncat copies n+1 bytes from src (not dest).
Reported by Klocwork #58.
........
r50680 | neal.norwitz | 2006-07-16 04:32:03 +0200 (Sun, 16 Jul 2006) | 5 lines
Handle a NULL name properly.
Reported by Klocwork #67
........
r50681 | neal.norwitz | 2006-07-16 04:35:47 +0200 (Sun, 16 Jul 2006) | 6 lines
PyFunction_SetDefaults() is documented as taking None or a tuple.
A NULL would crash the PyTuple_Check(). Now make NULL return a SystemError.
Reported by Klocwork #73.
........
r50683 | neal.norwitz | 2006-07-17 02:55:45 +0200 (Mon, 17 Jul 2006) | 5 lines
Stop INCREFing name, then checking if it's NULL. name (f_name) should never
be NULL so assert it. Fix one place where we could have passed NULL.
Reported by Klocwork #66.
........
r50684 | neal.norwitz | 2006-07-17 02:57:15 +0200 (Mon, 17 Jul 2006) | 5 lines
otherset is known to be non-NULL based on checks before and DECREF after.
DECREF otherset rather than XDECREF in error conditions too.
Reported by Klockwork #154.
........
r50685 | neal.norwitz | 2006-07-17 02:59:04 +0200 (Mon, 17 Jul 2006) | 7 lines
Reported by Klocwork #151.
v2 can be NULL if exception2 is NULL. I don't think that condition can happen,
but I'm not sure it can't either. Now the code will protect against either
being NULL.
........
r50686 | neal.norwitz | 2006-07-17 03:00:16 +0200 (Mon, 17 Jul 2006) | 1 line
Add NEWS entry for a bunch of fixes due to warnings produced by Klocworks static analysis tool.
........
r50687 | fred.drake | 2006-07-17 07:47:52 +0200 (Mon, 17 Jul 2006) | 3 lines
document xmlcore (still minimal; needs mention in each of the xml.* modules)
SF bug #1504456 (partial)
........
r50688 | georg.brandl | 2006-07-17 15:23:46 +0200 (Mon, 17 Jul 2006) | 3 lines
Remove usage of sets module (patch #1500609).
........
r50689 | georg.brandl | 2006-07-17 15:26:33 +0200 (Mon, 17 Jul 2006) | 3 lines
Add missing NEWS item (#1522771)
........
r50690 | andrew.kuchling | 2006-07-17 18:47:54 +0200 (Mon, 17 Jul 2006) | 1 line
Attribute more features
........
r50692 | kurt.kaiser | 2006-07-17 23:59:27 +0200 (Mon, 17 Jul 2006) | 8 lines
Patch 1479219 - Tal Einat
1. 'as' highlighted as builtin in comment string on import line
2. Comments such as "#False identity" which start with a keyword immediately
after the '#' character aren't colored as comments.
3. u or U beginning unicode string not correctly highlighted
Closes bug 1325071
........
r50693 | barry.warsaw | 2006-07-18 01:07:51 +0200 (Tue, 18 Jul 2006) | 16 lines
decode_rfc2231(): Be more robust against buggy RFC 2231 encodings.
Specifically, instead of raising a ValueError when there is a single tick in
the parameter, simply return that the entire string unquoted, with None for
both the charset and the language. Also, if there are more than 2 ticks in
the parameter, interpret the first three parts as the standard RFC 2231 parts,
then the rest of the parts as the encoded string.
Test cases added.
Original fewer-than-3-parts fix by Tokio Kikuchi.
Resolves SF bug # 1218081. I will back port the fix and tests to Python 2.4
(email 3.0) and Python 2.3 (email 2.5).
Also, bump the version number to email 4.0.1, removing the 'alpha' moniker.
........
r50695 | kurt.kaiser | 2006-07-18 06:03:16 +0200 (Tue, 18 Jul 2006) | 2 lines
Rebinding Tab key was inserting 'tab' instead of 'Tab'. Bug 1179168.
........
r50696 | brett.cannon | 2006-07-18 06:41:36 +0200 (Tue, 18 Jul 2006) | 6 lines
Fix bug #1520914. Starting in 2.4, time.strftime() began to check the bounds
of values in the time tuple passed in. Unfortunately people came to rely on
undocumented behaviour of setting unneeded values to 0, regardless of if it was
within the valid range. Now those values force the value internally to the
minimum value when 0 is passed in.
........
r50697 | facundo.batista | 2006-07-18 14:16:13 +0200 (Tue, 18 Jul 2006) | 1 line
Comments and docs cleanups, and some little fixes, provided by Santiágo Peresón
........
r50704 | martin.v.loewis | 2006-07-18 19:46:31 +0200 (Tue, 18 Jul 2006) | 2 lines
Patch #1524429: Use repr instead of backticks again.
........
r50706 | tim.peters | 2006-07-18 23:55:15 +0200 (Tue, 18 Jul 2006) | 2 lines
Whitespace normalization.
........
r50708 | tim.peters | 2006-07-19 02:03:19 +0200 (Wed, 19 Jul 2006) | 18 lines
SF bug 1524317: configure --without-threads fails to build
Moved the code for _PyThread_CurrentFrames() up, so it's no longer
in a huge "#ifdef WITH_THREAD" block (I didn't realize it /was/ in
one).
Changed test_sys's test_current_frames() so it passes with or without
thread supported compiled in.
Note that test_sys fails when Python is compiled without threads,
but for an unrelated reason (the old test_exit() fails with an
indirect ImportError on the `thread` module). There are also
other unrelated compilation failures without threads, in extension
modules (like ctypes); at least the core compiles again.
Do we really support --without-threads? If so, there are several
problems remaining.
........
r50713 | thomas.heller | 2006-07-19 11:09:32 +0200 (Wed, 19 Jul 2006) | 4 lines
Make sure the _ctypes extension can be compiled when WITH_THREAD is
not defined on Windows, even if that configuration is probably not
supported at all.
........
r50715 | martin.v.loewis | 2006-07-19 19:18:32 +0200 (Wed, 19 Jul 2006) | 4 lines
Revert r50706 (Whitespace normalization) and
r50697: Comments and docs cleanups, and some little fixes
per recommendation from Raymond Hettinger.
........
r50719 | phillip.eby | 2006-07-20 17:54:16 +0200 (Thu, 20 Jul 2006) | 4 lines
Fix SF#1516184 (again) and add a test to prevent regression.
(There was a problem with empty filenames still causing recursion)
........
r50720 | georg.brandl | 2006-07-20 18:28:39 +0200 (Thu, 20 Jul 2006) | 3 lines
Guard for _active being None in __del__ method.
........
r50721 | vinay.sajip | 2006-07-20 18:28:39 +0200 (Thu, 20 Jul 2006) | 1 line
Updated documentation for TimedRotatingFileHandler relating to how rollover files are named. The previous documentation was wrongly the same as for RotatingFileHandler.
........
r50731 | fred.drake | 2006-07-20 22:11:57 +0200 (Thu, 20 Jul 2006) | 1 line
markup fix
........
r50739 | kurt.kaiser | 2006-07-21 00:22:52 +0200 (Fri, 21 Jul 2006) | 7 lines
Avoid occasional failure to detect closing paren properly.
Patch 1407280 Tal Einat
M ParenMatch.py
M NEWS.txt
M CREDITS.txt
........
r50740 | vinay.sajip | 2006-07-21 01:20:12 +0200 (Fri, 21 Jul 2006) | 1 line
Addressed SF#1524081 by using a dictionary to map level names to syslog priority names, rather than a string.lower().
........
r50741 | neal.norwitz | 2006-07-21 07:29:58 +0200 (Fri, 21 Jul 2006) | 1 line
Add some asserts that we got good params passed
........
r50742 | neal.norwitz | 2006-07-21 07:31:02 +0200 (Fri, 21 Jul 2006) | 5 lines
Move the initialization of some pointers earlier. The problem is
that if we call Py_DECREF(frame) like we do if allocating locals fails,
frame_dealloc() will try to use these bogus values and crash.
........
r50743 | neal.norwitz | 2006-07-21 07:32:28 +0200 (Fri, 21 Jul 2006) | 4 lines
Handle allocation failures gracefully. Found with failmalloc.
Many (all?) of these could be backported.
........
r50745 | neal.norwitz | 2006-07-21 09:59:02 +0200 (Fri, 21 Jul 2006) | 1 line
Speel initialise write. Tanks Anthony.
........
r50746 | neal.norwitz | 2006-07-21 09:59:47 +0200 (Fri, 21 Jul 2006) | 2 lines
Handle more memory allocation failures without crashing.
........
r50754 | barry.warsaw | 2006-07-21 16:51:07 +0200 (Fri, 21 Jul 2006) | 23 lines
More RFC 2231 improvements for the email 4.0 package. As Mark Sapiro rightly
points out there are really two types of continued headers defined in this
RFC (i.e. "encoded" parameters with the form "name*0*=" and unencoded
parameters with the form "name*0="), but we were were handling them both the
same way and that isn't correct.
This patch should be much more RFC compliant in that only encoded params are
%-decoded and the charset/language information is only extract if there are
any encoded params in the segments. If there are no encoded params then the
RFC says that there will be no charset/language parts.
Note however that this will change the return value for Message.get_param() in
some cases. For example, whereas before if you had all unencoded param
continuations you would have still gotten a 3-tuple back from this method
(with charset and language == None), you will now get just a string. I don't
believe this is a backward incompatible change though because the
documentation for this method already indicates that either return value is
possible and that you must do an isinstance(val, tuple) check to discriminate
between the two. (Yeah that API kind of sucks but we can't change /that/
without breaking code.)
Test cases, some documentation updates, and a NEWS item accompany this patch.
........
r50759 | georg.brandl | 2006-07-21 19:36:31 +0200 (Fri, 21 Jul 2006) | 3 lines
Fix check for empty list (vs. None).
........
r50771 | brett.cannon | 2006-07-22 00:44:07 +0200 (Sat, 22 Jul 2006) | 2 lines
Remove an XXX marker in a comment.
........
r50773 | neal.norwitz | 2006-07-22 18:20:49 +0200 (Sat, 22 Jul 2006) | 1 line
Fix more memory allocation issues found with failmalloc.
........
r50774 | neal.norwitz | 2006-07-22 19:00:57 +0200 (Sat, 22 Jul 2006) | 1 line
Don't fail if the directory already exists
........
r50775 | greg.ward | 2006-07-23 04:25:53 +0200 (Sun, 23 Jul 2006) | 6 lines
Be a lot smarter about whether this test passes: instead of assuming
that a 2.93 sec audio file will always take 3.1 sec (as it did on the
hardware I had when I first wrote the test), expect that it will take
2.93 sec +/- 10%, and only fail if it's outside of that range.
Compute the expected
........
r50776 | kurt.kaiser | 2006-07-23 06:19:49 +0200 (Sun, 23 Jul 2006) | 2 lines
Tooltips failed on new-syle class __init__ args. Bug 1027566 Loren Guthrie
........
r50777 | neal.norwitz | 2006-07-23 09:50:36 +0200 (Sun, 23 Jul 2006) | 1 line
Handle more mem alloc issues found with failmalloc
........
r50778 | neal.norwitz | 2006-07-23 09:51:58 +0200 (Sun, 23 Jul 2006) | 5 lines
If the for loop isn't entered, entryblock will be NULL. If passed
to stackdepth_walk it will be dereffed.
Not sure if I found with failmalloc or Klockwork #55.
........
r50779 | neal.norwitz | 2006-07-23 09:53:14 +0200 (Sun, 23 Jul 2006) | 4 lines
Move the initialization of size_a down below the check for a being NULL.
Reported by Klocwork #106
........
r50780 | neal.norwitz | 2006-07-23 09:55:55 +0200 (Sun, 23 Jul 2006) | 9 lines
Check the allocation of b_objects and return if there was a failure.
Also fix a few memory leaks in other failure scenarios.
It seems that if b_objects == Py_None, we will have an extra ref to
b_objects. Add XXX comment so hopefully someone documents why the
else isn't necessary or adds it in.
Reported by Klocwork #20
........
r50781 | neal.norwitz | 2006-07-23 09:57:11 +0200 (Sun, 23 Jul 2006) | 2 lines
Fix memory leaks spotted by Klocwork #37.
........
r50782 | neal.norwitz | 2006-07-23 09:59:00 +0200 (Sun, 23 Jul 2006) | 5 lines
nextlink can be NULL if teedataobject_new fails, so use XINCREF.
Ensure that dataobj is never NULL.
Reported by Klocwork #102
........
r50783 | neal.norwitz | 2006-07-23 10:01:43 +0200 (Sun, 23 Jul 2006) | 8 lines
Ensure we don't write beyond errText. I think I got this right, but
it definitely could use some review to ensure I'm not off by one
and there's no possible overflow/wrap-around of bytes_left.
Reported by Klocwork #1.
Fix a problem if there is a failure allocating self->db.
Found with failmalloc.
........
r50784 | ronald.oussoren | 2006-07-23 11:41:09 +0200 (Sun, 23 Jul 2006) | 3 lines
Without this patch CMD-W won't close EditorWindows on MacOS X. This solves
part of bug #1517990.
........
r50785 | ronald.oussoren | 2006-07-23 11:46:11 +0200 (Sun, 23 Jul 2006) | 5 lines
Fix for bug #1517996: Class and Path browsers show Tk menu
This patch replaces the menubar that is used by AquaTk for windows without a
menubar of their own by one that is more appropriate for IDLE.
........
r50786 | andrew.macintyre | 2006-07-23 14:57:02 +0200 (Sun, 23 Jul 2006) | 2 lines
Build updates for OS/2 EMX port
........
r50787 | andrew.macintyre | 2006-07-23 15:00:04 +0200 (Sun, 23 Jul 2006) | 3 lines
bugfix: PyThread_start_new_thread() returns the thread ID, not a flag;
will backport.
........
r50789 | andrew.macintyre | 2006-07-23 15:04:00 +0200 (Sun, 23 Jul 2006) | 2 lines
Get mailbox module working on OS/2 EMX port.
........
r50791 | greg.ward | 2006-07-23 18:05:51 +0200 (Sun, 23 Jul 2006) | 1 line
Resync optparse with Optik 1.5.3: minor tweaks for/to tests.
........
r50794 | martin.v.loewis | 2006-07-24 07:05:22 +0200 (Mon, 24 Jul 2006) | 2 lines
Update list of unsupported systems. Fixes #1510853.
........
r50795 | martin.v.loewis | 2006-07-24 12:26:33 +0200 (Mon, 24 Jul 2006) | 1 line
Patch #1448199: Release GIL around ConnectRegistry.
........
r50796 | martin.v.loewis | 2006-07-24 13:54:53 +0200 (Mon, 24 Jul 2006) | 3 lines
Patch #1232023: Don't include empty path component from registry,
so that the current directory does not get added to sys.path.
Also fixes #1526785.
........
r50797 | martin.v.loewis | 2006-07-24 14:54:17 +0200 (Mon, 24 Jul 2006) | 3 lines
Bug #1524310: Properly report errors from FindNextFile in os.listdir.
Will backport to 2.4.
........
r50800 | georg.brandl | 2006-07-24 15:28:57 +0200 (Mon, 24 Jul 2006) | 7 lines
Patch #1523356: fix determining include dirs in python-config.
Also don't install "python-config" when doing altinstall, but
always install "python-config2.x" and make a link to it like
with the main executable.
........
r50802 | georg.brandl | 2006-07-24 15:46:47 +0200 (Mon, 24 Jul 2006) | 3 lines
Patch #1527744: right order of includes in order to have HAVE_CONIO_H defined properly.
........
r50803 | georg.brandl | 2006-07-24 16:09:56 +0200 (Mon, 24 Jul 2006) | 3 lines
Patch #1515343: Fix printing of deprecated string exceptions with a
value in the traceback module.
........
r50804 | kurt.kaiser | 2006-07-24 19:13:23 +0200 (Mon, 24 Jul 2006) | 7 lines
EditorWindow failed when used stand-alone if sys.ps1 not set.
Bug 1010370 Dave Florek
M EditorWindow.py
M PyShell.py
M NEWS.txt
........
r50805 | kurt.kaiser | 2006-07-24 20:05:51 +0200 (Mon, 24 Jul 2006) | 6 lines
- EditorWindow.test() was failing. Bug 1417598
M EditorWindow.py
M ScriptBinding.py
M NEWS.txt
........
r50808 | georg.brandl | 2006-07-24 22:11:35 +0200 (Mon, 24 Jul 2006) | 3 lines
Repair accidental NameError.
........
r50809 | tim.peters | 2006-07-24 23:02:15 +0200 (Mon, 24 Jul 2006) | 2 lines
Whitespace normalization.
........
r50810 | greg.ward | 2006-07-25 04:11:12 +0200 (Tue, 25 Jul 2006) | 3 lines
Don't use standard assert: want tests to fail even when run with -O.
Delete cruft.
........
r50811 | tim.peters | 2006-07-25 06:07:22 +0200 (Tue, 25 Jul 2006) | 10 lines
current_frames_with_threads(): There's actually no way
to guess /which/ line the spawned thread is in at the time
sys._current_frames() is called: we know it finished
enter_g.set(), but can't know whether the instruction
counter has advanced to the following leave_g.wait().
The latter is overwhelming most likely, but not guaranteed,
and I see that the "x86 Ubuntu dapper (icc) trunk" buildbot
found it on the other line once. Changed the test so it
passes in either case.
........
r50815 | martin.v.loewis | 2006-07-25 11:53:12 +0200 (Tue, 25 Jul 2006) | 2 lines
Bug #1525817: Don't truncate short lines in IDLE's tool tips.
........
r50816 | martin.v.loewis | 2006-07-25 12:05:47 +0200 (Tue, 25 Jul 2006) | 3 lines
Bug #978833: Really close underlying socket in _socketobject.close.
Will backport to 2.4.
........
r50817 | martin.v.loewis | 2006-07-25 12:11:14 +0200 (Tue, 25 Jul 2006) | 1 line
Revert incomplete checkin.
........
r50819 | georg.brandl | 2006-07-25 12:22:34 +0200 (Tue, 25 Jul 2006) | 4 lines
Patch #1525766: correctly pass onerror arg to recursive calls
of pkg.walk_packages. Also improve the docstrings.
........
r50825 | brett.cannon | 2006-07-25 19:32:20 +0200 (Tue, 25 Jul 2006) | 2 lines
Add comment for changes to test_ossaudiodev.
........
r50826 | brett.cannon | 2006-07-25 19:34:36 +0200 (Tue, 25 Jul 2006) | 3 lines
Fix a bug in the messages for an assert failure where not enough arguments to a string
were being converted in the format.
........
r50828 | armin.rigo | 2006-07-25 20:09:57 +0200 (Tue, 25 Jul 2006) | 2 lines
Document why is and is not a good way to fix the gc_inspection crasher.
........
r50829 | armin.rigo | 2006-07-25 20:11:07 +0200 (Tue, 25 Jul 2006) | 5 lines
Added another crasher, which hit me today (I was not intentionally
writing such code, of course, but it took some gdb time to figure out
what my bug was).
........
r50830 | armin.rigo | 2006-07-25 20:38:39 +0200 (Tue, 25 Jul 2006) | 3 lines
Document the crashers that will not go away soon as "won't fix",
and explain why.
........
r50831 | ronald.oussoren | 2006-07-25 21:13:35 +0200 (Tue, 25 Jul 2006) | 3 lines
Install the compatibility symlink to libpython.a on OSX using 'ln -sf' instead
of 'ln -s', this avoid problems when reinstalling python.
........
r50832 | ronald.oussoren | 2006-07-25 21:20:54 +0200 (Tue, 25 Jul 2006) | 7 lines
Fix for bug #1525447 (renaming to MacOSmodule.c would also work, but not
without causing problems for anyone that is on a case-insensitive filesystem).
Setup.py tries to compile the MacOS extension from MacOSmodule.c, while the
actual file is named macosmodule.c. This is no problem on the (default)
case-insensitive filesystem, but doesn't work on case-sensitive filesystems.
........
r50833 | ronald.oussoren | 2006-07-25 22:28:55 +0200 (Tue, 25 Jul 2006) | 7 lines
Fix bug #1517990: IDLE keybindings on OSX
This adds a new key definition for OSX, which is slightly different from the
classic mac definition.
Also add NEWS item for a couple of bugfixes I added recently.
........
r50834 | tim.peters | 2006-07-26 00:30:24 +0200 (Wed, 26 Jul 2006) | 2 lines
Whitespace normalization.
........
r50839 | neal.norwitz | 2006-07-26 06:00:18 +0200 (Wed, 26 Jul 2006) | 1 line
Hmm, only python2.x is installed, not plain python. Did that change recently?
........
r50840 | barry.warsaw | 2006-07-26 07:54:46 +0200 (Wed, 26 Jul 2006) | 6 lines
Forward port some fixes that were in email 2.5 but for some reason didn't make
it into email 4.0. Specifically, in Message.get_content_charset(), handle RFC
2231 headers that contain an encoding not known to Python, or a character in
the data that isn't in the charset encoding. Also forward port the
appropriate unit tests.
........
r50841 | georg.brandl | 2006-07-26 09:23:32 +0200 (Wed, 26 Jul 2006) | 3 lines
NEWS entry for #1525766.
........
r50842 | georg.brandl | 2006-07-26 09:40:17 +0200 (Wed, 26 Jul 2006) | 3 lines
Bug #1459963: properly capitalize HTTP header names.
........
r50843 | georg.brandl | 2006-07-26 10:03:10 +0200 (Wed, 26 Jul 2006) | 6 lines
Part of bug #1523610: fix miscalculation of buffer length.
Also add a guard against NULL in converttuple and add a test case
(that previously would have crashed).
........
r50844 | martin.v.loewis | 2006-07-26 14:12:56 +0200 (Wed, 26 Jul 2006) | 3 lines
Bug #978833: Really close underlying socket in _socketobject.close.
Fix httplib.HTTPConnection.getresponse to not close the
socket if it is still needed for the response.
........
r50845 | andrew.kuchling | 2006-07-26 19:16:52 +0200 (Wed, 26 Jul 2006) | 1 line
[Bug #1471938] Fix build problem on Solaris 8 by conditionalizing the use of mvwgetnstr(); it was conditionalized a few lines below. Fix from Paul Eggert. I also tried out the STRICT_SYSV_CURSES case and am therefore removing the 'untested' comment.
........
r50846 | andrew.kuchling | 2006-07-26 19:18:01 +0200 (Wed, 26 Jul 2006) | 1 line
Correct error message
........
r50847 | andrew.kuchling | 2006-07-26 19:19:39 +0200 (Wed, 26 Jul 2006) | 1 line
Minor grammar fix
........
r50848 | andrew.kuchling | 2006-07-26 19:22:21 +0200 (Wed, 26 Jul 2006) | 1 line
Put news item in right section
........
r50850 | andrew.kuchling | 2006-07-26 20:03:12 +0200 (Wed, 26 Jul 2006) | 1 line
Use sys.exc_info()
........
r50851 | andrew.kuchling | 2006-07-26 20:15:45 +0200 (Wed, 26 Jul 2006) | 1 line
Use sys.exc_info()
........
r50852 | phillip.eby | 2006-07-26 21:48:27 +0200 (Wed, 26 Jul 2006) | 4 lines
Allow the 'onerror' argument to walk_packages() to catch any Exception, not
just ImportError. This allows documentation tools to better skip unimportable
packages.
........
r50854 | tim.peters | 2006-07-27 01:23:15 +0200 (Thu, 27 Jul 2006) | 2 lines
Whitespace normalization.
........
r50855 | tim.peters | 2006-07-27 03:14:53 +0200 (Thu, 27 Jul 2006) | 21 lines
Bug #1521947: possible bug in mystrtol.c with recent gcc.
In general, C doesn't define anything about what happens when
an operation on a signed integral type overflows, and PyOS_strtol()
did several formally undefined things of that nature on signed
longs. Some version of gcc apparently tries to exploit that now,
and PyOS_strtol() could fail to detect overflow then.
Tried to repair all that, although it seems at least as likely to me
that we'll get screwed by bad platform definitions for LONG_MIN
and/or LONG_MAX now. For that reason, I don't recommend backporting
this.
Note that I have no box on which this makes a lick of difference --
can't really test it, except to note that it didn't break anything
on my boxes.
Silent change: PyOS_strtol() used to return the hard-coded 0x7fffffff
in case of overflow. Now it returns LONG_MAX. They're the same only on
32-bit boxes (although C doesn't guarantee that either ...).
........
r50856 | neal.norwitz | 2006-07-27 05:51:58 +0200 (Thu, 27 Jul 2006) | 6 lines
Don't kill a normal instance of python running on windows when checking
to kill a cygwin instance. build\\python.exe was matching a normal windows
instance. Prefix that with a \\ to ensure build is a directory and not
PCbuild. As discussed on python-dev.
........
r50857 | neal.norwitz | 2006-07-27 05:55:39 +0200 (Thu, 27 Jul 2006) | 5 lines
Closure can't be NULL at this point since we know it's a tuple.
Reported by Klocwork # 74.
........
r50858 | neal.norwitz | 2006-07-27 06:04:50 +0200 (Thu, 27 Jul 2006) | 1 line
No functional change. Add comment and assert to describe why there cannot be overflow which was reported by Klocwork. Discussed on python-dev
........
r50859 | martin.v.loewis | 2006-07-27 08:38:16 +0200 (Thu, 27 Jul 2006) | 3 lines
Bump distutils version to 2.5, as several new features
have been introduced since 2.4.
........
r50860 | andrew.kuchling | 2006-07-27 14:18:20 +0200 (Thu, 27 Jul 2006) | 1 line
Reformat docstring; fix typo
........
r50861 | georg.brandl | 2006-07-27 17:05:36 +0200 (Thu, 27 Jul 2006) | 6 lines
Add test_main() methods. These three tests were never run
by regrtest.py.
We really need a simpler testing framework.
........
r50862 | tim.peters | 2006-07-27 17:09:20 +0200 (Thu, 27 Jul 2006) | 2 lines
News for patch #1529686.
........
r50863 | tim.peters | 2006-07-27 17:11:00 +0200 (Thu, 27 Jul 2006) | 2 lines
Whitespace normalization.
........
r50864 | georg.brandl | 2006-07-27 17:38:33 +0200 (Thu, 27 Jul 2006) | 3 lines
Amend news entry.
........
r50865 | georg.brandl | 2006-07-27 18:08:15 +0200 (Thu, 27 Jul 2006) | 3 lines
Make uuid test suite pass on this box by requesting output with LC_ALL=C.
........
r50866 | andrew.kuchling | 2006-07-27 20:37:33 +0200 (Thu, 27 Jul 2006) | 1 line
Add example
........
r50867 | thomas.heller | 2006-07-27 20:39:55 +0200 (Thu, 27 Jul 2006) | 9 lines
Remove code that is no longer used (ctypes.com).
Fix the DllGetClassObject and DllCanUnloadNow so that they forward the
call to the comtypes.server.inprocserver module.
The latter was never documented, never used by published code, and
didn't work anyway, so I think it does not deserve a NEWS entry (but I
might be wrong).
........
r50868 | andrew.kuchling | 2006-07-27 20:41:21 +0200 (Thu, 27 Jul 2006) | 1 line
Typo fix ('publically' is rare, poss. non-standard)
........
r50869 | andrew.kuchling | 2006-07-27 20:42:41 +0200 (Thu, 27 Jul 2006) | 1 line
Add missing word
........
r50870 | andrew.kuchling | 2006-07-27 20:44:10 +0200 (Thu, 27 Jul 2006) | 1 line
Repair typos
........
r50872 | andrew.kuchling | 2006-07-27 20:53:33 +0200 (Thu, 27 Jul 2006) | 1 line
Update URL; add example
........
r50873 | andrew.kuchling | 2006-07-27 21:07:29 +0200 (Thu, 27 Jul 2006) | 1 line
Add punctuation mark; add some examples
........
r50874 | andrew.kuchling | 2006-07-27 21:11:07 +0200 (Thu, 27 Jul 2006) | 1 line
Mention base64 module; rewrite last sentence to be more positive
........
r50875 | andrew.kuchling | 2006-07-27 21:12:49 +0200 (Thu, 27 Jul 2006) | 1 line
If binhex is higher-level than binascii, it should come first in the chapter
........
r50876 | tim.peters | 2006-07-27 22:47:24 +0200 (Thu, 27 Jul 2006) | 28 lines
check_node(): stop spraying mystery output to stderr.
When a node number disagrees, keep track of all sources & the
node numbers they reported, and stick all that in the error message.
Changed all callers to supply a non-empty "source" argument; made
the "source" argument non-optional.
On my box, test_uuid still fails, but with the less confusing output:
AssertionError: different sources disagree on node:
from source 'getnode1', node was 00038a000015
from source 'getnode2', node was 00038a000015
from source 'ipconfig', node was 001111b2b7bf
Only the last one appears to be correct; e.g.,
C:\Code\python\PCbuild>getmac
Physical Address Transport Name
=================== ==========================================================
00-11-11-B2-B7-BF \Device\Tcpip_{190FB163-5AFD-4483-86A1-2FE16AC61FF1}
62-A1-AC-6C-FD-BE \Device\Tcpip_{8F77DF5A-EA3D-4F1D-975E-D472CEE6438A}
E2-1F-01-C6-5D-88 \Device\Tcpip_{CD18F76B-2EF3-409F-9B8A-6481EE70A1E4}
I can't find anything on my box with MAC 00-03-8a-00-00-15, and am
not clear on where that comes from.
........
r50878 | andrew.kuchling | 2006-07-28 00:40:05 +0200 (Fri, 28 Jul 2006) | 1 line
Reword paragraph
........
r50879 | andrew.kuchling | 2006-07-28 00:49:38 +0200 (Fri, 28 Jul 2006) | 1 line
Add example
........
r50880 | andrew.kuchling | 2006-07-28 00:49:54 +0200 (Fri, 28 Jul 2006) | 1 line
Add example
........
r50881 | barry.warsaw | 2006-07-28 01:43:15 +0200 (Fri, 28 Jul 2006) | 27 lines
Patch #1520294: Support for getset and member descriptors in types.py,
inspect.py, and pydoc.py. Specifically, this allows for querying the type of
an object against these built-in C types and more importantly, for getting
their docstrings printed in the interactive interpreter's help() function.
This patch includes a new built-in module called _types which provides
definitions of getset and member descriptors for use by the types.py module.
These types are exposed as types.GetSetDescriptorType and
types.MemberDescriptorType. Query functions are provided as
inspect.isgetsetdescriptor() and inspect.ismemberdescriptor(). The
implementations of these are robust enough to work with Python implementations
other than CPython, which may not have these fundamental types.
The patch also includes documentation and test suite updates.
I commit these changes now under these guiding principles:
1. Silence is assent. The release manager has not said "no", and of the few
people that cared enough to respond to the thread, the worst vote was "0".
2. It's easier to ask for forgiveness than permission.
3. It's so dang easy to revert stuff in svn, that you could view this as a
forcing function. :)
Windows build patches will follow.
........
r50882 | tim.peters | 2006-07-28 01:44:37 +0200 (Fri, 28 Jul 2006) | 4 lines
Bug #1529297: The rewrite of doctest for Python 2.4 unintentionally
lost that tests are sorted by name before being run. ``DocTestFinder``
has been changed to sort the list of tests it returns.
........
r50883 | tim.peters | 2006-07-28 01:45:48 +0200 (Fri, 28 Jul 2006) | 2 lines
Whitespace normalization.
........
r50884 | tim.peters | 2006-07-28 01:46:36 +0200 (Fri, 28 Jul 2006) | 2 lines
Add missing svn:eol-style property to text files.
........
r50885 | barry.warsaw | 2006-07-28 01:50:40 +0200 (Fri, 28 Jul 2006) | 4 lines
Enable the building of the _types module on Windows.
Note that this has only been tested for VS 2003 since that's all I have.
........
r50887 | tim.peters | 2006-07-28 02:23:15 +0200 (Fri, 28 Jul 2006) | 7 lines
defdict_reduce(): Plug leaks.
We didn't notice these before because test_defaultdict didn't
actually do anything before Georg fixed that earlier today.
Neal's next refleak run then showed test_defaultdict leaking
9 references on each run. That's repaired by this checkin.
........
r50888 | tim.peters | 2006-07-28 02:30:00 +0200 (Fri, 28 Jul 2006) | 2 lines
News about the repaired memory leak in defaultdict.
........
r50889 | gregory.p.smith | 2006-07-28 03:35:25 +0200 (Fri, 28 Jul 2006) | 7 lines
- pybsddb Bug #1527939: bsddb module DBEnv dbremove and dbrename
methods now allow their database parameter to be None as the
sleepycat API allows.
Also adds an appropriate test case for DBEnv.dbrename and dbremove.
........
r50895 | neal.norwitz | 2006-07-28 06:22:34 +0200 (Fri, 28 Jul 2006) | 1 line
Ensure the actual number matches the expected count
........
r50896 | tim.peters | 2006-07-28 06:51:59 +0200 (Fri, 28 Jul 2006) | 6 lines
Live with that "the hardware address" is an ill-defined
concept, and that different ways of trying to find "the
hardware address" may return different results. Certainly
true on both of my Windows boxes, and in different ways
(see whining on python-dev).
........
r50897 | neal.norwitz | 2006-07-28 09:21:27 +0200 (Fri, 28 Jul 2006) | 3 lines
Try to find the MAC addr on various flavours of Unix. This seems hopeless.
The reduces the test_uuid failures, but there's still another method failing.
........
r50898 | martin.v.loewis | 2006-07-28 09:45:49 +0200 (Fri, 28 Jul 2006) | 2 lines
Add UUID for upcoming 2.5b3.
........
r50899 | matt.fleming | 2006-07-28 13:27:27 +0200 (Fri, 28 Jul 2006) | 3 lines
Allow socketmodule to compile on NetBSD -current, whose bluetooth API
differs from both Linux and FreeBSD. Accepted by Neal Norwitz.
........
r50900 | andrew.kuchling | 2006-07-28 14:07:12 +0200 (Fri, 28 Jul 2006) | 1 line
[Patch #1529811] Correction to description of r|* mode
........
r50901 | andrew.kuchling | 2006-07-28 14:18:22 +0200 (Fri, 28 Jul 2006) | 1 line
Typo fix
........
r50902 | andrew.kuchling | 2006-07-28 14:32:43 +0200 (Fri, 28 Jul 2006) | 1 line
Add example
........
r50903 | andrew.kuchling | 2006-07-28 14:33:19 +0200 (Fri, 28 Jul 2006) | 1 line
Add example
........
r50904 | andrew.kuchling | 2006-07-28 14:45:55 +0200 (Fri, 28 Jul 2006) | 1 line
Don't overwrite built-in name; add some blank lines for readability
........
r50905 | andrew.kuchling | 2006-07-28 14:48:07 +0200 (Fri, 28 Jul 2006) | 1 line
Add example. Should I propagate this example to all the other DBM-ish modules, too?
........
r50912 | georg.brandl | 2006-07-28 20:31:39 +0200 (Fri, 28 Jul 2006) | 3 lines
Patch #1529686: also run test_email_codecs with regrtest.py.
........
r50913 | georg.brandl | 2006-07-28 20:36:01 +0200 (Fri, 28 Jul 2006) | 3 lines
Fix spelling.
........
r50915 | thomas.heller | 2006-07-28 21:42:40 +0200 (Fri, 28 Jul 2006) | 3 lines
Remove a useless XXX comment.
Cosmetic changes to the code so that the #ifdef _UNICODE block
doesn't mess emacs code formatting.
........
r50916 | phillip.eby | 2006-07-28 23:12:07 +0200 (Fri, 28 Jul 2006) | 5 lines
Bug #1529871: The speed enhancement patch #921466 broke Python's compliance
with PEP 302. This was fixed by adding an ``imp.NullImporter`` type that is
used in ``sys.path_importer_cache`` to cache non-directory paths and avoid
excessive filesystem operations during imports.
........
r50917 | phillip.eby | 2006-07-28 23:31:54 +0200 (Fri, 28 Jul 2006) | 2 lines
Fix svn merge spew.
........
r50918 | thomas.heller | 2006-07-28 23:43:20 +0200 (Fri, 28 Jul 2006) | 4 lines
Patch #1529514: More openbsd platforms for ctypes.
Regenerated Modules/_ctypes/libffi/configure with autoconf 2.59.
Approved by Neal.
........
r50922 | georg.brandl | 2006-07-29 10:51:21 +0200 (Sat, 29 Jul 2006) | 2 lines
Bug #835255: The "closure" argument to new.function() is now documented.
........
r50924 | georg.brandl | 2006-07-29 11:33:26 +0200 (Sat, 29 Jul 2006) | 3 lines
Bug #1441397: The compiler module now recognizes module and function
docstrings correctly as it did in Python 2.4.
........
r50925 | georg.brandl | 2006-07-29 12:25:46 +0200 (Sat, 29 Jul 2006) | 4 lines
Revert rev 42617, it was introduced to work around bug #1441397.
test_compiler now passes again.
........
r50926 | fred.drake | 2006-07-29 15:22:49 +0200 (Sat, 29 Jul 2006) | 1 line
update target version number
........
r50927 | andrew.kuchling | 2006-07-29 15:56:48 +0200 (Sat, 29 Jul 2006) | 1 line
Add example
........
r50928 | andrew.kuchling | 2006-07-29 16:04:47 +0200 (Sat, 29 Jul 2006) | 1 line
Update URL
........
r50930 | andrew.kuchling | 2006-07-29 16:08:15 +0200 (Sat, 29 Jul 2006) | 1 line
Reword paragraph to match the order of the subsequent sections
........
r50931 | andrew.kuchling | 2006-07-29 16:21:15 +0200 (Sat, 29 Jul 2006) | 1 line
[Bug #1529157] Mention raw_input() and input(); while I'm at it, reword the description a bit
........
r50932 | andrew.kuchling | 2006-07-29 16:42:48 +0200 (Sat, 29 Jul 2006) | 1 line
[Bug #1519571] Document some missing functions: setup(), title(), done()
........
r50933 | andrew.kuchling | 2006-07-29 16:43:55 +0200 (Sat, 29 Jul 2006) | 1 line
Fix docstring punctuation
........
r50934 | andrew.kuchling | 2006-07-29 17:10:32 +0200 (Sat, 29 Jul 2006) | 1 line
[Bug #1414697] Change docstring of set/frozenset types to specify that the contents are unique. Raymond, please feel free to edit or revert.
........
r50935 | andrew.kuchling | 2006-07-29 17:35:21 +0200 (Sat, 29 Jul 2006) | 1 line
[Bug #1530382] Document SSL.server(), .issuer() methods
........
r50936 | andrew.kuchling | 2006-07-29 17:42:46 +0200 (Sat, 29 Jul 2006) | 1 line
Typo fix
........
r50937 | andrew.kuchling | 2006-07-29 17:43:13 +0200 (Sat, 29 Jul 2006) | 1 line
Tweak wording
........
r50938 | matt.fleming | 2006-07-29 17:55:30 +0200 (Sat, 29 Jul 2006) | 2 lines
Fix typo
........
r50939 | andrew.kuchling | 2006-07-29 17:57:08 +0200 (Sat, 29 Jul 2006) | 6 lines
[Bug #1528258] Mention that the 'data' argument can be None.
The constructor docs referred the reader to the add_data() method's docs,
but they weren't very helpful. I've simply copied an earlier explanation
of 'data' that's more useful.
........
r50940 | andrew.kuchling | 2006-07-29 18:08:40 +0200 (Sat, 29 Jul 2006) | 1 line
Set bug/patch count. Take a bow, everyone!
........
r50941 | fred.drake | 2006-07-29 18:56:15 +0200 (Sat, 29 Jul 2006) | 18 lines
expunge the xmlcore changes:
41667, 41668 - initial switch to xmlcore
47044 - mention of xmlcore in What's New
50687 - mention of xmlcore in the library reference
re-apply xmlcore changes to xml:
41674 - line ending changes (re-applied manually), directory props
41677 - add cElementTree wrapper
41678 - PSF licensing for etree
41812 - whitespace normalization
42724 - fix svn:eol-style settings
43681, 43682 - remove Python version-compatibility cruft from minidom
46773 - fix encoding of \r\n\t in attr values in saxutils
47269 - added XMLParser alias for cElementTree compatibility
additional tests were added in Lib/test/test_sax.py that failed with
the xmlcore changes; these relate to SF bugs #1511497, #1513611
........
r50942 | andrew.kuchling | 2006-07-29 20:14:07 +0200 (Sat, 29 Jul 2006) | 17 lines
Reorganize the docs for 'file' and 'open()' after some discussion with Fred.
We want to encourage users to write open() when opening a file, but
open() was described with a single paragraph and
'file' had lots of explanation of the mode and bufsize arguments.
I've shrunk the description of 'file' to cross-reference to the 'File
objects' section, and to open() for an explanation of the arguments.
open() now has all the paragraphs about the mode string. The bufsize
argument was moved up so that it isn't buried at the end; now there's
1 paragraph on mode, 1 on bufsize, and then 3 more on mode. Various
other edits and rearrangements were made in the process.
It's probably best to read the final text and not to try to make sense
of the diffs.
........
r50943 | fred.drake | 2006-07-29 20:19:19 +0200 (Sat, 29 Jul 2006) | 1 line
restore test un-intentionally removed in the xmlcore purge (revision 50941)
........
r50944 | fred.drake | 2006-07-29 20:33:29 +0200 (Sat, 29 Jul 2006) | 3 lines
make the reference to older versions of the documentation a link
to the right page on python.org
........
r50945 | fred.drake | 2006-07-29 21:09:01 +0200 (Sat, 29 Jul 2006) | 1 line
document the footnote usage pattern
........
r50947 | fred.drake | 2006-07-29 21:14:10 +0200 (Sat, 29 Jul 2006) | 1 line
emphasize and oddball nuance of LaTeX comment syntax
........
r50948 | andrew.kuchling | 2006-07-29 21:24:04 +0200 (Sat, 29 Jul 2006) | 1 line
[Patch #1490989 from Skip Montanaro] Mention debugging builds in the API documentation. I've changed Skip's patch to point to Misc/SpecialBuilds and fiddled with the markup a bit.
........
r50949 | neal.norwitz | 2006-07-29 21:29:35 +0200 (Sat, 29 Jul 2006) | 6 lines
Disable these tests until they are reliable across platforms.
These problems may mask more important, real problems.
One or both methods are known to fail on: Solaris, OpenBSD, Debian, Ubuntu.
They pass on Windows and some Linux boxes.
........
r50950 | andrew.kuchling | 2006-07-29 21:50:37 +0200 (Sat, 29 Jul 2006) | 1 line
[Patch #1068277] Clarify that os.path.exists() can return False depending on permissions. Fred approved committing this patch in December 2004!
........
r50952 | fred.drake | 2006-07-29 22:04:42 +0200 (Sat, 29 Jul 2006) | 6 lines
SF bug #1193966: Weakref types documentation misplaced
The information about supporting weakrefs with types defined in C extensions
is moved to the Extending & Embedding manual. Py_TPFLAGS_HAVE_WEAKREFS is
no longer mentioned since it is part of Py_TPFLAGS_DEFAULT.
........
r50953 | skip.montanaro | 2006-07-29 22:06:05 +0200 (Sat, 29 Jul 2006) | 4 lines
Add a comment to the csv reader documentation that explains why the
treatment of newlines changed in 2.5. Pulled almost verbatim from a comment
by Andrew McNamara in <http://python.org/sf/1465014>.
........
r50954 | neal.norwitz | 2006-07-29 22:20:52 +0200 (Sat, 29 Jul 2006) | 3 lines
If the executable doesn't exist, there's no reason to try to start it.
This prevents garbage about command not found being printed on Solaris.
........
r50955 | fred.drake | 2006-07-29 22:21:25 +0200 (Sat, 29 Jul 2006) | 1 line
fix minor markup error that introduced extra punctuation
........
r50957 | neal.norwitz | 2006-07-29 22:37:08 +0200 (Sat, 29 Jul 2006) | 3 lines
Disable test_getnode too, since this is also unreliable.
........
r50958 | andrew.kuchling | 2006-07-29 23:27:12 +0200 (Sat, 29 Jul 2006) | 1 line
Follow TeX's conventions for hyphens
........
r50959 | andrew.kuchling | 2006-07-29 23:30:21 +0200 (Sat, 29 Jul 2006) | 1 line
Fix case for 'Unix'
........
r50960 | fred.drake | 2006-07-30 01:34:57 +0200 (Sun, 30 Jul 2006) | 1 line
markup cleanups
........
r50961 | andrew.kuchling | 2006-07-30 02:27:34 +0200 (Sun, 30 Jul 2006) | 1 line
Minor typo fixes
........
r50962 | andrew.kuchling | 2006-07-30 02:37:56 +0200 (Sun, 30 Jul 2006) | 1 line
[Bug #793553] Correct description of keyword arguments for SSL authentication
........
r50963 | tim.peters | 2006-07-30 02:58:15 +0200 (Sun, 30 Jul 2006) | 2 lines
Whitespace normalization.
........
r50964 | fred.drake | 2006-07-30 05:03:43 +0200 (Sun, 30 Jul 2006) | 1 line
lots of markup nits, most commonly Unix/unix --> \UNIX
........
r50965 | fred.drake | 2006-07-30 07:41:28 +0200 (Sun, 30 Jul 2006) | 1 line
update information on wxPython, from Robin Dunn
........
r50966 | fred.drake | 2006-07-30 07:49:49 +0200 (Sun, 30 Jul 2006) | 4 lines
remove possibly-outdated comment on what GUI toolkit is most commonly used;
it is hard to know whether this is right, and it does not add valuable reference information
at any rate
........
r50967 | fred.drake | 2006-07-30 07:55:39 +0200 (Sun, 30 Jul 2006) | 3 lines
- remove yet another reference to how commonly Tkinter is (thought to be) used
- fix an internal section reference
........
r50968 | neal.norwitz | 2006-07-30 08:53:31 +0200 (Sun, 30 Jul 2006) | 4 lines
Patch #1531113: Fix augmented assignment with yield expressions.
Also fix a SystemError when trying to assign to yield expressions.
........
r50969 | neal.norwitz | 2006-07-30 08:55:48 +0200 (Sun, 30 Jul 2006) | 5 lines
Add PyErr_WarnEx() so C code can pass the stacklevel to warnings.warn().
This provides the proper warning for struct.pack().
PyErr_Warn() is now deprecated in favor of PyErr_WarnEx().
As mentioned by Tim Peters on python-dev.
........
r50970 | neal.norwitz | 2006-07-30 08:57:04 +0200 (Sun, 30 Jul 2006) | 3 lines
Bug #1515471: string.replace() accepts character buffers again.
Pass the char* and size around rather than PyObject's.
........
r50971 | neal.norwitz | 2006-07-30 08:59:13 +0200 (Sun, 30 Jul 2006) | 1 line
Whitespace normalization
........
r50973 | georg.brandl | 2006-07-30 12:53:32 +0200 (Sun, 30 Jul 2006) | 3 lines
Clarify that __op__ methods must return NotImplemented if they don't support the operation.
........
r50974 | georg.brandl | 2006-07-30 13:07:23 +0200 (Sun, 30 Jul 2006) | 3 lines
Bug #1002398: The documentation for os.path.sameopenfile now correctly
refers to file descriptors, not file objects.
........
r50977 | martin.v.loewis | 2006-07-30 15:00:31 +0200 (Sun, 30 Jul 2006) | 3 lines
Don't copy directory stat times in shutil.copytree on Windows
Fixes #1525866.
........
r50978 | martin.v.loewis | 2006-07-30 15:14:05 +0200 (Sun, 30 Jul 2006) | 3 lines
Base __version__ on sys.version_info, as distutils is
no longer maintained separatedly.
........
r50979 | martin.v.loewis | 2006-07-30 15:27:31 +0200 (Sun, 30 Jul 2006) | 3 lines
Mention Cygwin in distutils error message about a missing VS 2003.
Fixes #1257728.
........
r50982 | martin.v.loewis | 2006-07-30 16:09:47 +0200 (Sun, 30 Jul 2006) | 5 lines
Drop usage of test -e in configure as it is not portable.
Fixes #1439538
Will backport to 2.4
Also regenerate pyconfig.h.in.
........
r50984 | georg.brandl | 2006-07-30 18:20:10 +0200 (Sun, 30 Jul 2006) | 3 lines
Fix makefile changes for python-config.
........
r50985 | george.yoshida | 2006-07-30 18:37:37 +0200 (Sun, 30 Jul 2006) | 2 lines
Rename struct.pack_to to struct.pack_into as changed in revision 46642.
........
r50986 | george.yoshida | 2006-07-30 18:41:30 +0200 (Sun, 30 Jul 2006) | 2 lines
Typo fix
........
r50987 | neal.norwitz | 2006-07-30 21:18:13 +0200 (Sun, 30 Jul 2006) | 1 line
Add some asserts and update comments
........
r50988 | neal.norwitz | 2006-07-30 21:18:38 +0200 (Sun, 30 Jul 2006) | 1 line
Verify that the signal handlers were really called
........
r50989 | neal.norwitz | 2006-07-30 21:20:42 +0200 (Sun, 30 Jul 2006) | 3 lines
Try to prevent hangs on Tru64/Alpha buildbot. I'm not certain this will help
and may need to be reverted if it causes problems.
........
r50990 | georg.brandl | 2006-07-30 22:18:51 +0200 (Sun, 30 Jul 2006) | 2 lines
Bug #1531349: right <-> left glitch in __rop__ description.
........
r50992 | tim.peters | 2006-07-31 03:46:03 +0200 (Mon, 31 Jul 2006) | 2 lines
Whitespace normalization.
........
r50993 | andrew.mcnamara | 2006-07-31 04:27:48 +0200 (Mon, 31 Jul 2006) | 2 lines
Redo the comment about the 2.5 change in quoted-newline handling.
........
r50994 | tim.peters | 2006-07-31 04:40:23 +0200 (Mon, 31 Jul 2006) | 10 lines
ZipFile.close(): Killed one of the struct.pack deprecation
warnings on Win32.
Also added an XXX about the line:
pos3 = self.fp.tell()
`pos3` is never referenced, and I have no idea what the code
intended to do instead.
........
r50996 | tim.peters | 2006-07-31 04:53:03 +0200 (Mon, 31 Jul 2006) | 8 lines
ZipFile.close(): Kill the other struct.pack deprecation
warning on Windows.
Afraid I can't detect a pattern to when the pack formats decide
to use a signed or unsigned format code -- appears nearly
arbitrary to my eyes. So I left all the pack formats alone and
changed the special-case data values instead.
........
r50997 | skip.montanaro | 2006-07-31 05:09:45 +0200 (Mon, 31 Jul 2006) | 1 line
minor tweaks
........
r50998 | skip.montanaro | 2006-07-31 05:11:11 +0200 (Mon, 31 Jul 2006) | 1 line
minor tweaks
........
r50999 | andrew.kuchling | 2006-07-31 14:20:24 +0200 (Mon, 31 Jul 2006) | 1 line
Add refcounts for PyErr_WarnEx
........
r51000 | andrew.kuchling | 2006-07-31 14:39:05 +0200 (Mon, 31 Jul 2006) | 9 lines
Document PyErr_WarnEx. (Bad Neal! No biscuit!)
Is the explanation of the 'stacklevel' parameter clear? Please feel free
to edit it.
I don't have LaTeX installed on this machine, so haven't verified that the
markup is correct. Will check tonight, or maybe the automatic doc build will
tell me.
........
r51001 | andrew.kuchling | 2006-07-31 14:52:26 +0200 (Mon, 31 Jul 2006) | 1 line
Add PyErr_WarnEx()
........
r51002 | andrew.kuchling | 2006-07-31 15:18:27 +0200 (Mon, 31 Jul 2006) | 1 line
Mention csv newline changes
........
r51003 | andrew.kuchling | 2006-07-31 17:22:58 +0200 (Mon, 31 Jul 2006) | 1 line
Typo fix
........
r51004 | andrew.kuchling | 2006-07-31 17:23:43 +0200 (Mon, 31 Jul 2006) | 1 line
Remove reference to notation
........
r51005 | georg.brandl | 2006-07-31 18:00:34 +0200 (Mon, 31 Jul 2006) | 3 lines
Fix function name.
........
r51006 | andrew.kuchling | 2006-07-31 18:10:24 +0200 (Mon, 31 Jul 2006) | 1 line
[Bug #1514540] Instead of putting the standard types in a section, put them in a chapter of their own. This means string methods will now show up in the ToC. (Should the types come before or after the functions+exceptions+constants chapter? I've put them after, for now.)
........
r51007 | andrew.kuchling | 2006-07-31 18:22:05 +0200 (Mon, 31 Jul 2006) | 1 line
[Bug #848556] Remove \d* from second alternative to avoid exponential case when repeating match
........
r51008 | andrew.kuchling | 2006-07-31 18:27:57 +0200 (Mon, 31 Jul 2006) | 1 line
Update list of files; fix a typo
........
r51013 | andrew.kuchling | 2006-08-01 18:24:30 +0200 (Tue, 01 Aug 2006) | 1 line
typo fix
........
r51018 | thomas.heller | 2006-08-01 18:54:43 +0200 (Tue, 01 Aug 2006) | 2 lines
Fix a potential segfault and various potentail refcount leaks
in the cast() function.
........
r51020 | thomas.heller | 2006-08-01 19:46:10 +0200 (Tue, 01 Aug 2006) | 1 line
Minimal useful docstring for CopyComPointer.
........
r51021 | andrew.kuchling | 2006-08-01 20:16:15 +0200 (Tue, 01 Aug 2006) | 8 lines
[Patch #1520905] Attempt to suppress core file created by test_subprocess.py.
Patch by Douglas Greiman.
The test_run_abort() testcase produces a core file on Unix systems,
even though the test is successful. This can be confusing or alarming
to someone who runs 'make test' and then finds that the Python
interpreter apparently crashed.
........
r51023 | georg.brandl | 2006-08-01 20:49:24 +0200 (Tue, 01 Aug 2006) | 3 lines
os.urandom no longer masks unrelated exceptions like SystemExit or
KeyboardInterrupt.
........
r51025 | thomas.heller | 2006-08-01 21:14:15 +0200 (Tue, 01 Aug 2006) | 2 lines
Speed up PyType_stgdict and PyObject_stgdict.
........
r51027 | ronald.oussoren | 2006-08-01 22:30:31 +0200 (Tue, 01 Aug 2006) | 3 lines
Make sure the postinstall action that optionally updates the user's profile
on MacOS X actually works correctly in all cases.
........
r51028 | ronald.oussoren | 2006-08-01 23:00:57 +0200 (Tue, 01 Aug 2006) | 4 lines
This fixes bug #1527397: PythonLauncher runs scripts with the wrong working
directory. It also fixes a bug where PythonLauncher failed to launch scripts
when the scriptname (or the path to the script) contains quotes.
........
r51031 | tim.peters | 2006-08-02 05:27:46 +0200 (Wed, 02 Aug 2006) | 2 lines
Whitespace normalization.
........
r51032 | tim.peters | 2006-08-02 06:12:36 +0200 (Wed, 02 Aug 2006) | 19 lines
Try to squash struct.pack warnings on the "amd64 gentoo trunk"
buildbot (& possibly other 64-bit boxes) during test_gzip.
The native zlib crc32 function returns an unsigned 32-bit integer,
which the Python wrapper implicitly casts to C long. Therefore the
same crc can "look negative" on a 32-bit box but "look positive" on
a 64-bit box. This patch papers over that platform difference when
writing the crc to file.
It may be better to change the Python wrapper, either to make
the result "look positive" on all platforms (which means it may
have to return a Python long at times on a 32-bit box), or to
keep the sign the same across boxes. But that would be a visible
change in what users see, while the current hack changes no
visible behavior (well, apart from stopping the struct deprecation
warning).
Note that the module-level write32() function is no longer used.
........
r51033 | neal.norwitz | 2006-08-02 06:27:11 +0200 (Wed, 02 Aug 2006) | 4 lines
Prevent memory leak on error.
Reported by Klocwork #36
........
r51034 | tim.peters | 2006-08-02 07:20:08 +0200 (Wed, 02 Aug 2006) | 9 lines
_Stream.close(): Try to kill struct.pack() warnings when
writing the crc to file on the "PPC64 Debian trunk" buildbot
when running test_tarfile.
This is again a case where the native zlib crc is an unsigned
32-bit int, but the Python wrapper implicitly casts it to
signed C long, so that "the sign bit looks different" on
different platforms.
........
r51035 | ronald.oussoren | 2006-08-02 08:10:10 +0200 (Wed, 02 Aug 2006) | 2 lines
Updated documentation for the script that builds the OSX installer.
........
r51036 | neal.norwitz | 2006-08-02 08:14:22 +0200 (Wed, 02 Aug 2006) | 2 lines
_PyWeakref_GetWeakrefCount() now returns a Py_ssize_t instead of long.
........
r51037 | neal.norwitz | 2006-08-02 08:15:10 +0200 (Wed, 02 Aug 2006) | 1 line
v is already checked for NULL, so just DECREF it
........
r51038 | neal.norwitz | 2006-08-02 08:19:19 +0200 (Wed, 02 Aug 2006) | 1 line
Let us know when there was a problem and the child had to kill the parent
........
r51039 | neal.norwitz | 2006-08-02 08:46:21 +0200 (Wed, 02 Aug 2006) | 5 lines
Patch #1519025 and bug #926423: If a KeyboardInterrupt occurs during
a socket operation on a socket with a timeout, the exception will be
caught correctly. Previously, the exception was not caught.
........
r51040 | neal.norwitz | 2006-08-02 09:09:32 +0200 (Wed, 02 Aug 2006) | 1 line
Add some explanation about Klocwork and Coverity static analysis
........
r51041 | anthony.baxter | 2006-08-02 09:43:09 +0200 (Wed, 02 Aug 2006) | 1 line
pre-release machinations
........
r51043 | thomas.heller | 2006-08-02 13:35:31 +0200 (Wed, 02 Aug 2006) | 4 lines
A few nore words about what ctypes does.
Document that using the wrong calling convention can also raise
'ValueError: Procedure called with the wrong number of arguments'.
........
r51045 | thomas.heller | 2006-08-02 14:00:13 +0200 (Wed, 02 Aug 2006) | 1 line
Fix a mistake.
........
r51046 | martin.v.loewis | 2006-08-02 15:53:55 +0200 (Wed, 02 Aug 2006) | 3 lines
Correction of patch #1455898: In the mbcs decoder, set final=False
for stream decoder, but final=True for the decode function.
........
r51049 | tim.peters | 2006-08-02 20:19:35 +0200 (Wed, 02 Aug 2006) | 2 lines
Add missing svn:eol-style property to text files.
........
r51079 | neal.norwitz | 2006-08-04 06:50:21 +0200 (Fri, 04 Aug 2006) | 3 lines
Bug #1531405, format_exception no longer raises an exception if
str(exception) raised an exception.
........
r51080 | neal.norwitz | 2006-08-04 06:58:47 +0200 (Fri, 04 Aug 2006) | 11 lines
Bug #1191458: tracing over for loops now produces a line event
on each iteration. I'm not positive this is the best way to handle
this. I'm also not sure that there aren't other cases where
the lnotab is generated incorrectly. It would be great if people
that use pdb or tracing could test heavily.
Also:
* Remove dead/duplicated code that wasn't used/necessary
because we already handled the docstring prior to entering the loop.
* add some debugging code into the compiler (#if 0'd out).
........
r51081 | neal.norwitz | 2006-08-04 07:09:28 +0200 (Fri, 04 Aug 2006) | 4 lines
Bug #1333982: string/number constants were inappropriately stored
in the byte code and co_consts even if they were not used, ie
immediately popped off the stack.
........
r51082 | neal.norwitz | 2006-08-04 07:12:19 +0200 (Fri, 04 Aug 2006) | 1 line
There were really two issues
........
r51084 | fred.drake | 2006-08-04 07:17:21 +0200 (Fri, 04 Aug 2006) | 1 line
SF patch #1534048 (bug #1531003): fix typo in error message
........
r51085 | gregory.p.smith | 2006-08-04 07:17:47 +0200 (Fri, 04 Aug 2006) | 3 lines
fix typos
........
r51087 | georg.brandl | 2006-08-04 08:03:53 +0200 (Fri, 04 Aug 2006) | 3 lines
Fix bug caused by first decrefing, then increfing.
........
r51109 | neil.schemenauer | 2006-08-04 18:20:30 +0200 (Fri, 04 Aug 2006) | 5 lines
Fix the 'compiler' package to generate correct code for MAKE_CLOSURE.
In the 2.5 development cycle, MAKE_CLOSURE as changed to take free
variables as a tuple rather than as individual items on the stack.
Closes patch #1534084.
........
r51110 | georg.brandl | 2006-08-04 20:03:37 +0200 (Fri, 04 Aug 2006) | 3 lines
Change fix for segfaulting property(), add a NEWS entry and a test.
........
r51111 | georg.brandl | 2006-08-04 20:07:34 +0200 (Fri, 04 Aug 2006) | 3 lines
Better fix for bug #1531405, not executing str(value) twice.
........
r51112 | thomas.heller | 2006-08-04 20:17:40 +0200 (Fri, 04 Aug 2006) | 1 line
On Windows, make PyErr_Warn an exported function again.
........
r51113 | thomas.heller | 2006-08-04 20:57:34 +0200 (Fri, 04 Aug 2006) | 4 lines
Fix #1530448 - fix ctypes build failure on solaris 10.
The '-mimpure-text' linker flag is required when linking _ctypes.so.
........
r51114 | thomas.heller | 2006-08-04 21:49:31 +0200 (Fri, 04 Aug 2006) | 3 lines
Fix #1534738: win32 debug version of _msi must be _msi_d.pyd, not _msi.pyd.
Fix the name of the pdb file as well.
........
r51115 | andrew.kuchling | 2006-08-04 22:37:43 +0200 (Fri, 04 Aug 2006) | 1 line
Typo fixes
........
r51116 | andrew.kuchling | 2006-08-04 23:10:03 +0200 (Fri, 04 Aug 2006) | 1 line
Fix mangled sentence
........
r51118 | tim.peters | 2006-08-05 00:00:35 +0200 (Sat, 05 Aug 2006) | 2 lines
Whitespace normalization.
........
r51119 | bob.ippolito | 2006-08-05 01:59:21 +0200 (Sat, 05 Aug 2006) | 5 lines
Fix #1530559, struct.pack raises TypeError where it used to convert.
Passing float arguments to struct.pack when integers are expected
now triggers a DeprecationWarning.
........
r51123 | georg.brandl | 2006-08-05 08:10:54 +0200 (Sat, 05 Aug 2006) | 3 lines
Patch #1534922: correct and enhance unittest docs.
........
r51126 | georg.brandl | 2006-08-06 09:06:33 +0200 (Sun, 06 Aug 2006) | 2 lines
Bug #1535182: really test the xreadlines() method of bz2 objects.
........
r51128 | georg.brandl | 2006-08-06 09:26:21 +0200 (Sun, 06 Aug 2006) | 4 lines
Bug #1535081: A leading underscore has been added to the names of
the md5 and sha modules, so add it in Modules/Setup.dist too.
........
r51129 | georg.brandl | 2006-08-06 10:23:54 +0200 (Sun, 06 Aug 2006) | 3 lines
Bug #1535165: fixed a segfault in input() and raw_input() when
sys.stdin is closed.
........
r51131 | georg.brandl | 2006-08-06 11:17:16 +0200 (Sun, 06 Aug 2006) | 2 lines
Don't produce output in test_builtin.
........
r51133 | andrew.macintyre | 2006-08-06 14:37:03 +0200 (Sun, 06 Aug 2006) | 4 lines
test_threading now skips testing alternate thread stack sizes on
platforms that don't support changing thread stack size.
........
r51134 | andrew.kuchling | 2006-08-07 00:07:04 +0200 (Mon, 07 Aug 2006) | 2 lines
[Patch #1464056] Ensure that we use the panelw library when linking with ncursesw.
Once I see how the buildbots react, I'll backport this to 2.4.
........
r51137 | georg.brandl | 2006-08-08 13:52:34 +0200 (Tue, 08 Aug 2006) | 3 lines
webbrowser: Silence stderr output if no gconftool or gnome browser found
........
r51138 | georg.brandl | 2006-08-08 13:56:21 +0200 (Tue, 08 Aug 2006) | 7 lines
Remove "non-mapping" and "non-sequence" from TypeErrors raised by
PyMapping_Size and PySequence_Size.
Because len() tries first sequence, then mapping size, it will always
raise a "non-mapping object has no len" error which is confusing.
........
r51139 | thomas.heller | 2006-08-08 19:37:00 +0200 (Tue, 08 Aug 2006) | 3 lines
memcmp() can return values other than -1, 0, and +1 but tp_compare
must not.
........
r51140 | thomas.heller | 2006-08-08 19:39:20 +0200 (Tue, 08 Aug 2006) | 1 line
Remove accidently committed, duplicated test.
........
r51147 | andrew.kuchling | 2006-08-08 20:50:14 +0200 (Tue, 08 Aug 2006) | 1 line
Reword paragraph to clarify
........
r51148 | andrew.kuchling | 2006-08-08 20:56:08 +0200 (Tue, 08 Aug 2006) | 1 line
Move obmalloc item into C API section
........
r51149 | andrew.kuchling | 2006-08-08 21:00:14 +0200 (Tue, 08 Aug 2006) | 1 line
'Other changes' section now has only one item; move the item elsewhere and remove the section
........
r51150 | andrew.kuchling | 2006-08-08 21:00:34 +0200 (Tue, 08 Aug 2006) | 1 line
Bump version number
........
r51151 | georg.brandl | 2006-08-08 22:11:22 +0200 (Tue, 08 Aug 2006) | 2 lines
Bug #1536828: typo: TypeType should have been StringType.
........
r51153 | georg.brandl | 2006-08-08 22:13:13 +0200 (Tue, 08 Aug 2006) | 2 lines
Bug #1536660: separate two words.
........
r51155 | georg.brandl | 2006-08-08 22:48:10 +0200 (Tue, 08 Aug 2006) | 3 lines
``str`` is now the same object as ``types.StringType``.
........
r51156 | tim.peters | 2006-08-09 02:52:26 +0200 (Wed, 09 Aug 2006) | 2 lines
Whitespace normalization.
........
r51158 | georg.brandl | 2006-08-09 09:03:22 +0200 (Wed, 09 Aug 2006) | 4 lines
Introduce an upper bound on tuple nesting depth in
C argument format strings; fixes rest of #1523610.
........
r51160 | martin.v.loewis | 2006-08-09 09:57:39 +0200 (Wed, 09 Aug 2006) | 4 lines
__hash__ may now return long int; the final hash
value is obtained by invoking hash on the long int.
Fixes #1536021.
........
r51168 | andrew.kuchling | 2006-08-09 15:03:41 +0200 (Wed, 09 Aug 2006) | 1 line
[Bug #1536021] Mention __hash__ change
........
r51169 | andrew.kuchling | 2006-08-09 15:57:05 +0200 (Wed, 09 Aug 2006) | 1 line
[Patch #1534027] Add notes on locale module changes
........
r51170 | andrew.kuchling | 2006-08-09 16:05:35 +0200 (Wed, 09 Aug 2006) | 1 line
Add missing 'self' parameters
........
r51171 | andrew.kuchling | 2006-08-09 16:06:19 +0200 (Wed, 09 Aug 2006) | 1 line
Reindent code
........
r51172 | armin.rigo | 2006-08-09 16:55:26 +0200 (Wed, 09 Aug 2006) | 2 lines
Fix and test for an infinite C recursion.
........
r51173 | ronald.oussoren | 2006-08-09 16:56:33 +0200 (Wed, 09 Aug 2006) | 2 lines
It's unlikely that future versions will require _POSIX_C_SOURCE
........
r51178 | armin.rigo | 2006-08-09 17:37:26 +0200 (Wed, 09 Aug 2006) | 2 lines
Concatenation on a long string breaks (SF #1526585).
........
r51180 | kurt.kaiser | 2006-08-09 18:46:15 +0200 (Wed, 09 Aug 2006) | 8 lines
1. When used w/o subprocess, all exceptions were preceeded by an error
message claiming they were IDLE internal errors (since 1.2a1).
2. Add Ronald Oussoren to CREDITS
M NEWS.txt
M PyShell.py
M CREDITS.txt
........
r51181 | kurt.kaiser | 2006-08-09 19:47:15 +0200 (Wed, 09 Aug 2006) | 4 lines
As a slight enhancement to the previous checkin, improve the
internal error reporting by moving message to IDLE console.
........
r51182 | andrew.kuchling | 2006-08-09 20:23:14 +0200 (Wed, 09 Aug 2006) | 1 line
Typo fix
........
r51183 | kurt.kaiser | 2006-08-09 22:34:46 +0200 (Wed, 09 Aug 2006) | 2 lines
ToggleTab dialog was setting indent to 8 even if cancelled (since 1.2a1).
........
r51184 | martin.v.loewis | 2006-08-10 01:42:18 +0200 (Thu, 10 Aug 2006) | 2 lines
Add some commentary on -mimpure-text.
........
r51185 | tim.peters | 2006-08-10 02:58:49 +0200 (Thu, 10 Aug 2006) | 2 lines
Add missing svn:eol-style property to text files.
........
r51186 | kurt.kaiser | 2006-08-10 03:41:17 +0200 (Thu, 10 Aug 2006) | 2 lines
Changing tokenize (39046) to detect dedent broke tabnanny check (since 1.2a1)
........
r51187 | tim.peters | 2006-08-10 05:01:26 +0200 (Thu, 10 Aug 2006) | 13 lines
test_copytree_simple(): This was leaving behind two new temp
directories each time it ran, at least on Windows.
Several changes: explicitly closed all files; wrapped long
lines; stopped suppressing errors when removing a file or
directory fails (removing /shouldn't/ fail!); and changed
what appeared to be incorrect usage of os.removedirs() (that
doesn't remove empty directories at and /under/ the given
path, instead it must be given an empty leaf directory and
then deletes empty directories moving /up/ the path -- could
be that the conceptually simpler shutil.rmtree() was really
actually intended here).
........
2006-08-11 11:57:12 -03:00
|
|
|
def setUp(self):
|
|
|
|
# Try to minimize the number of children we have so this test
|
|
|
|
# doesn't crash on some buildbots (Alphas in particular).
|
2010-02-27 18:12:37 -04:00
|
|
|
support.reap_children()
|
Merged revisions 46753-51188 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk
........
r46755 | brett.cannon | 2006-06-08 18:23:04 +0200 (Thu, 08 Jun 2006) | 4 lines
Make binascii.hexlify() use s# for its arguments instead of t# to actually
match its documentation stating it accepts any read-only buffer.
........
r46757 | brett.cannon | 2006-06-08 19:00:45 +0200 (Thu, 08 Jun 2006) | 8 lines
Buffer objects would return the read or write buffer for a wrapped object when
the char buffer was requested. Now it actually returns the char buffer if
available or raises a TypeError if it isn't (as is raised for the other buffer
types if they are not present but requested).
Not a backport candidate since it does change semantics of the buffer object
(although it could be argued this is enough of a bug to bother backporting).
........
r46760 | andrew.kuchling | 2006-06-09 03:10:17 +0200 (Fri, 09 Jun 2006) | 1 line
Update functools section
........
r46762 | tim.peters | 2006-06-09 04:11:02 +0200 (Fri, 09 Jun 2006) | 6 lines
Whitespace normalization.
Since test_file is implicated in mysterious test failures
when followed by test_optparse, if I had any brains I'd
look at the checkin that last changed test_file ;-)
........
r46763 | tim.peters | 2006-06-09 05:09:42 +0200 (Fri, 09 Jun 2006) | 5 lines
To boost morale :-), force test_optparse to run immediately
after test_file until we can figure out how to fix it.
(See python-dev; at the moment we don't even know which checkin
caused the problem.)
........
r46764 | tim.peters | 2006-06-09 05:51:41 +0200 (Fri, 09 Jun 2006) | 6 lines
AutoFileTests.tearDown(): Removed mysterious undocumented
try/except. Remove TESTFN.
Throughout: used open() instead of file(), and wrapped
long lines.
........
r46765 | tim.peters | 2006-06-09 06:02:06 +0200 (Fri, 09 Jun 2006) | 8 lines
testUnicodeOpen(): I have no idea why, but making this
test clean up after itself appears to fix the test failures
when test_optparse follows test_file.
test_main(): Get rid of TESTFN no matter what. That's
also enough to fix the mystery failures. Doesn't hurt
to fix them twice :-)
........
r46766 | tim.peters | 2006-06-09 07:12:40 +0200 (Fri, 09 Jun 2006) | 6 lines
Remove the temporary hack to force test_optparse to
run immediately after test_file. At least 8 buildbot
boxes passed since the underlying problem got fixed,
and they all failed before the fix, so there's no point
to this anymore.
........
r46767 | neal.norwitz | 2006-06-09 07:54:18 +0200 (Fri, 09 Jun 2006) | 1 line
Fix grammar and reflow
........
r46769 | andrew.kuchling | 2006-06-09 12:22:35 +0200 (Fri, 09 Jun 2006) | 1 line
Markup fix
........
r46773 | andrew.kuchling | 2006-06-09 15:15:57 +0200 (Fri, 09 Jun 2006) | 1 line
[Bug #1472827] Make saxutils.XMLGenerator handle \r\n\t in attribute values by escaping them properly. 2.4 bugfix candidate.
........
r46778 | kristjan.jonsson | 2006-06-09 18:28:01 +0200 (Fri, 09 Jun 2006) | 2 lines
Turn off warning about deprecated CRT functions on for VisualStudio .NET 2005.
Make the definition #ARRAYSIZE conditional. VisualStudio .NET 2005 already has it defined using a better gimmick.
........
r46779 | phillip.eby | 2006-06-09 18:40:18 +0200 (Fri, 09 Jun 2006) | 2 lines
Import wsgiref into the stdlib, as of the external version 0.1-r2181.
........
r46783 | andrew.kuchling | 2006-06-09 18:44:40 +0200 (Fri, 09 Jun 2006) | 1 line
Add note about XMLGenerator bugfix
........
r46784 | andrew.kuchling | 2006-06-09 18:46:51 +0200 (Fri, 09 Jun 2006) | 1 line
Add note about wsgiref
........
r46785 | brett.cannon | 2006-06-09 19:05:48 +0200 (Fri, 09 Jun 2006) | 2 lines
Fix inconsistency in naming within an enum.
........
r46787 | tim.peters | 2006-06-09 19:47:00 +0200 (Fri, 09 Jun 2006) | 2 lines
Whitespace normalization.
........
r46792 | georg.brandl | 2006-06-09 20:29:52 +0200 (Fri, 09 Jun 2006) | 3 lines
Test file.__exit__.
........
r46794 | brett.cannon | 2006-06-09 20:40:46 +0200 (Fri, 09 Jun 2006) | 2 lines
svn:ignore .pyc and .pyo files.
........
r46795 | georg.brandl | 2006-06-09 20:45:48 +0200 (Fri, 09 Jun 2006) | 3 lines
RFE #1491485: str/unicode.endswith()/startswith() now accept a tuple as first argument.
........
r46798 | andrew.kuchling | 2006-06-09 21:03:16 +0200 (Fri, 09 Jun 2006) | 1 line
Describe startswith()/endswiith() change; add reminder about wsgiref
........
r46799 | tim.peters | 2006-06-09 21:24:44 +0200 (Fri, 09 Jun 2006) | 11 lines
Implementing a happy idea from Georg Brandl: make runtest() try to
clean up files and directories the tests often leave behind by
mistake. This is the first time in history I don't have a bogus
"db_home" directory after running the tests ;-)
Also worked on runtest's docstring, to say something about all the
arguments, and to document the non-obvious return values.
New functions runtest_inner() and cleanup_test_droppings() in
support of the above.
........
r46800 | andrew.kuchling | 2006-06-09 21:43:25 +0200 (Fri, 09 Jun 2006) | 1 line
Remove unused variable
........
r46801 | andrew.kuchling | 2006-06-09 21:56:05 +0200 (Fri, 09 Jun 2006) | 1 line
Add some wsgiref text
........
r46803 | thomas.heller | 2006-06-09 21:59:11 +0200 (Fri, 09 Jun 2006) | 1 line
set eol-style svn property
........
r46804 | thomas.heller | 2006-06-09 22:01:01 +0200 (Fri, 09 Jun 2006) | 1 line
set eol-style svn property
........
r46805 | georg.brandl | 2006-06-09 22:43:48 +0200 (Fri, 09 Jun 2006) | 3 lines
Make use of new str.startswith/endswith semantics.
Occurences in email and compiler were ignored due to backwards compat requirements.
........
r46806 | brett.cannon | 2006-06-10 00:31:23 +0200 (Sat, 10 Jun 2006) | 4 lines
An object with __call__ as an attribute, when called, will have that attribute checked for __call__ itself, and will continue to look until it finds an object without the attribute. This can lead to an infinite recursion.
Closes bug #532646, again. Will be backported.
........
r46808 | brett.cannon | 2006-06-10 00:45:54 +0200 (Sat, 10 Jun 2006) | 2 lines
Fix bug introduced in rev. 46806 by not having variable declaration at the top of a block.
........
r46812 | georg.brandl | 2006-06-10 08:40:50 +0200 (Sat, 10 Jun 2006) | 4 lines
Apply perky's fix for #1503157: "/".join([u"", u""]) raising OverflowError.
Also improve error message on overflow.
........
r46817 | martin.v.loewis | 2006-06-10 10:14:03 +0200 (Sat, 10 Jun 2006) | 2 lines
Port cygwin kill_python changes from 2.4 branch.
........
r46818 | armin.rigo | 2006-06-10 12:57:40 +0200 (Sat, 10 Jun 2006) | 4 lines
SF bug #1503294.
PyThreadState_GET() complains if the tstate is NULL, but only in debug mode.
........
r46819 | martin.v.loewis | 2006-06-10 14:23:46 +0200 (Sat, 10 Jun 2006) | 4 lines
Patch #1495999: Part two of Windows CE changes.
- update header checks, using autoconf
- provide dummies for getenv, environ, and GetVersion
- adjust MSC_VER check in socketmodule.c
........
r46820 | skip.montanaro | 2006-06-10 16:09:11 +0200 (Sat, 10 Jun 2006) | 1 line
document the class, not its initializer
........
r46821 | greg.ward | 2006-06-10 18:40:01 +0200 (Sat, 10 Jun 2006) | 4 lines
Sync with Optik docs (rev 518):
* restore "Extending optparse" section
* document ALWAYS_TYPED_ACTIONS (SF #1449311)
........
r46824 | thomas.heller | 2006-06-10 21:51:46 +0200 (Sat, 10 Jun 2006) | 8 lines
Upgrade to ctypes version 0.9.9.7.
Summary of changes:
- support for 'variable sized' data
- support for anonymous structure/union fields
- fix severe bug with certain arrays or structures containing more than 256 fields
........
r46825 | thomas.heller | 2006-06-10 21:55:36 +0200 (Sat, 10 Jun 2006) | 8 lines
Upgrade to ctypes version 0.9.9.7.
Summary of changes:
- support for 'variable sized' data
- support for anonymous structure/union fields
- fix severe bug with certain arrays or structures containing more than 256 fields
........
r46826 | fred.drake | 2006-06-10 22:01:34 +0200 (Sat, 10 Jun 2006) | 4 lines
SF patch #1303595: improve description of __builtins__, explaining how it
varies between __main__ and other modules, and strongly suggest not touching
it but using __builtin__ if absolutely necessary
........
r46827 | fred.drake | 2006-06-10 22:02:58 +0200 (Sat, 10 Jun 2006) | 1 line
credit for SF patch #1303595
........
r46831 | thomas.heller | 2006-06-10 22:29:34 +0200 (Sat, 10 Jun 2006) | 2 lines
New docs for ctypes.
........
r46834 | thomas.heller | 2006-06-10 23:07:19 +0200 (Sat, 10 Jun 2006) | 1 line
Fix a wrong printf format.
........
r46835 | thomas.heller | 2006-06-10 23:17:58 +0200 (Sat, 10 Jun 2006) | 1 line
Fix the second occurrence of the problematic printf format.
........
r46837 | thomas.heller | 2006-06-10 23:56:03 +0200 (Sat, 10 Jun 2006) | 1 line
Don't use C++ comment.
........
r46838 | thomas.heller | 2006-06-11 00:01:50 +0200 (Sun, 11 Jun 2006) | 1 line
Handle failure of PyMem_Realloc.
........
r46839 | skip.montanaro | 2006-06-11 00:38:13 +0200 (Sun, 11 Jun 2006) | 2 lines
Suppress warning on MacOSX about possible use before set of proc.
........
r46840 | tim.peters | 2006-06-11 00:51:45 +0200 (Sun, 11 Jun 2006) | 8 lines
shuffle() doscstring: Removed warning about sequence length
versus generator period. While this was a real weakness of the
older WH generator for lists with just a few dozen elements,
and so could potentially bite the naive ;-), the Twister should
show excellent behavior up to at least 600 elements.
Module docstring: reflowed some jarringly short lines.
........
r46844 | greg.ward | 2006-06-11 02:40:49 +0200 (Sun, 11 Jun 2006) | 4 lines
Bug #1361643: fix textwrap.dedent() so it handles tabs appropriately,
i.e. do *not* expand tabs, but treat them as whitespace that is not
equivalent to spaces. Add a couple of test cases. Clarify docs.
........
r46850 | neal.norwitz | 2006-06-11 07:44:18 +0200 (Sun, 11 Jun 2006) | 5 lines
Fix Coverity # 146. newDBSequenceObject would deref dbobj, so it can't be NULL.
We know it's not NULL from the ParseTuple and DbObject_Check will verify
it's not NULL.
........
r46851 | neal.norwitz | 2006-06-11 07:45:25 +0200 (Sun, 11 Jun 2006) | 4 lines
Wrap some long lines
Top/Bottom factor out some common expressions
Add a XXX comment about widing offset.
........
r46852 | neal.norwitz | 2006-06-11 07:45:47 +0200 (Sun, 11 Jun 2006) | 1 line
Add versionadded to doc
........
r46853 | neal.norwitz | 2006-06-11 07:47:14 +0200 (Sun, 11 Jun 2006) | 3 lines
Update doc to make it agree with code.
Bottom factor out some common code.
........
r46854 | neal.norwitz | 2006-06-11 07:48:14 +0200 (Sun, 11 Jun 2006) | 3 lines
f_code can't be NULL based on Frame_New and other code that derefs it.
So there doesn't seem to be much point to checking here.
........
r46855 | neal.norwitz | 2006-06-11 09:26:27 +0200 (Sun, 11 Jun 2006) | 1 line
Fix errors found by pychecker
........
r46856 | neal.norwitz | 2006-06-11 09:26:50 +0200 (Sun, 11 Jun 2006) | 1 line
warnings was imported at module scope, no need to import again
........
r46857 | neal.norwitz | 2006-06-11 09:27:56 +0200 (Sun, 11 Jun 2006) | 5 lines
Fix errors found by pychecker.
I think these changes are correct, but I'm not sure. Could someone
who knows how this module works test it? It can at least start on
the cmd line.
........
r46858 | neal.norwitz | 2006-06-11 10:35:14 +0200 (Sun, 11 Jun 2006) | 1 line
Fix errors found by pychecker
........
r46859 | ronald.oussoren | 2006-06-11 16:33:36 +0200 (Sun, 11 Jun 2006) | 4 lines
This patch improves the L&F of IDLE on OSX. The changes are conditionalized on
being in an IDLE.app bundle on darwin. This does a slight reorganisation of the
menus and adds support for file-open events.
........
r46860 | greg.ward | 2006-06-11 16:42:41 +0200 (Sun, 11 Jun 2006) | 1 line
SF #1366250: optparse docs: fix inconsistency in variable name; minor tweaks.
........
r46861 | greg.ward | 2006-06-11 18:24:11 +0200 (Sun, 11 Jun 2006) | 3 lines
Bug #1498146: fix optparse to handle Unicode strings in option help,
description, and epilog.
........
r46862 | thomas.heller | 2006-06-11 19:04:22 +0200 (Sun, 11 Jun 2006) | 2 lines
Release the GIL during COM method calls, to avoid deadlocks in
Python coded COM objects.
........
r46863 | tim.peters | 2006-06-11 21:42:51 +0200 (Sun, 11 Jun 2006) | 2 lines
Whitespace normalization.
........
r46864 | tim.peters | 2006-06-11 21:43:49 +0200 (Sun, 11 Jun 2006) | 2 lines
Add missing svn:eol-style property to text files.
........
r46865 | ronald.oussoren | 2006-06-11 21:45:57 +0200 (Sun, 11 Jun 2006) | 2 lines
Remove message about using make frameworkinstall, that's no longer necesssary
........
r46866 | ronald.oussoren | 2006-06-11 22:23:29 +0200 (Sun, 11 Jun 2006) | 2 lines
Use configure to substitute the correct prefix instead of hardcoding
........
r46867 | ronald.oussoren | 2006-06-11 22:24:45 +0200 (Sun, 11 Jun 2006) | 4 lines
- Change fixapplepython23.py to ensure that it will run with /usr/bin/python
on intel macs.
- Fix some minor problems in the installer for OSX
........
r46868 | neal.norwitz | 2006-06-11 22:25:56 +0200 (Sun, 11 Jun 2006) | 5 lines
Try to fix several networking tests. The problem is that if hosts have
a search path setup, some of these hosts resolve to the wrong address.
By appending a period to the hostname, the hostname should only resolve
to what we want it to resolve to. Hopefully this doesn't break different bots.
........
r46869 | neal.norwitz | 2006-06-11 22:42:02 +0200 (Sun, 11 Jun 2006) | 7 lines
Try to fix another networking test. The problem is that if hosts have
a search path setup, some of these hosts resolve to the wrong address.
By appending a period to the hostname, the hostname should only resolve
to what we want it to resolve to. Hopefully this doesn't break different bots.
Also add more info to failure message to aid debugging test failure.
........
r46870 | neal.norwitz | 2006-06-11 22:46:46 +0200 (Sun, 11 Jun 2006) | 4 lines
Fix test on PPC64 buildbot. It raised an IOError (really an URLError which
derives from an IOError). That seems valid. Env Error includes both OSError
and IOError, so this seems like a reasonable fix.
........
r46871 | tim.peters | 2006-06-11 22:52:59 +0200 (Sun, 11 Jun 2006) | 10 lines
compare_generic_iter(): Fixed the failure of test_wsgiref's testFileWrapper
when running with -O.
test_simple_validation_error still fails under -O. That appears to be because
wsgiref's validate.py uses `assert` statements all over the place to check
arguments for sanity. That should all be changed (it's not a logical error
in the software if a user passes bogus arguments, so this isn't a reasonable
use for `assert` -- checking external preconditions should generally raise
ValueError or TypeError instead, as appropriate).
........
r46872 | neal.norwitz | 2006-06-11 23:38:38 +0200 (Sun, 11 Jun 2006) | 1 line
Get test to pass on S/390. Shout if you think this change is incorrect.
........
r46873 | neal.norwitz | 2006-06-12 04:05:55 +0200 (Mon, 12 Jun 2006) | 1 line
Cleanup Py_ssize_t a little (get rid of second #ifdef)
........
r46874 | neal.norwitz | 2006-06-12 04:06:17 +0200 (Mon, 12 Jun 2006) | 1 line
Fix some Py_ssize_t issues
........
r46875 | neal.norwitz | 2006-06-12 04:06:42 +0200 (Mon, 12 Jun 2006) | 1 line
Fix some Py_ssize_t issues
........
r46876 | neal.norwitz | 2006-06-12 04:07:24 +0200 (Mon, 12 Jun 2006) | 2 lines
Cleanup: Remove import of types to get StringTypes, we can just use basestring.
........
r46877 | neal.norwitz | 2006-06-12 04:07:57 +0200 (Mon, 12 Jun 2006) | 1 line
Don't truncate if size_t is bigger than uint
........
r46878 | neal.norwitz | 2006-06-12 04:08:41 +0200 (Mon, 12 Jun 2006) | 1 line
Don't leak the list object if there's an error allocating the item storage. Backport candidate
........
r46879 | neal.norwitz | 2006-06-12 04:09:03 +0200 (Mon, 12 Jun 2006) | 1 line
Fix typo. Backport if anyone cares. :-)
........
r46880 | neal.norwitz | 2006-06-12 04:09:34 +0200 (Mon, 12 Jun 2006) | 1 line
Fix indentation of case and a Py_ssize_t issue.
........
r46881 | neal.norwitz | 2006-06-12 04:11:18 +0200 (Mon, 12 Jun 2006) | 3 lines
Get rid of f_restricted too. Doc the other 4 ints that were already removed
at the NeedForSpeed sprint.
........
r46882 | neal.norwitz | 2006-06-12 04:13:21 +0200 (Mon, 12 Jun 2006) | 1 line
Fix the socket tests so they can be run concurrently. Backport candidate
........
r46883 | neal.norwitz | 2006-06-12 04:16:10 +0200 (Mon, 12 Jun 2006) | 1 line
i and j are initialized below when used. No need to do it twice
........
r46884 | neal.norwitz | 2006-06-12 05:05:03 +0200 (Mon, 12 Jun 2006) | 1 line
Remove unused import
........
r46885 | neal.norwitz | 2006-06-12 05:05:40 +0200 (Mon, 12 Jun 2006) | 1 line
Impl ssize_t
........
r46886 | neal.norwitz | 2006-06-12 05:33:09 +0200 (Mon, 12 Jun 2006) | 6 lines
Patch #1503046, Conditional compilation of zlib.(de)compressobj.copy
copy is only in newer versions of zlib. This should allow zlibmodule
to work with older versions like the Tru64 buildbot.
........
r46887 | phillip.eby | 2006-06-12 06:04:32 +0200 (Mon, 12 Jun 2006) | 2 lines
Sync w/external release 0.1.2. Please see PEP 360 before making changes to external packages.
........
r46888 | martin.v.loewis | 2006-06-12 06:26:31 +0200 (Mon, 12 Jun 2006) | 2 lines
Get rid of function pointer cast.
........
r46889 | thomas.heller | 2006-06-12 08:05:57 +0200 (Mon, 12 Jun 2006) | 3 lines
I don't know how that happend, but the entire file contents was
duplicated. Thanks to Simon Percivall for the heads up.
........
r46890 | nick.coghlan | 2006-06-12 10:19:37 +0200 (Mon, 12 Jun 2006) | 1 line
Fix site module docstring to match the code
........
r46891 | nick.coghlan | 2006-06-12 10:23:02 +0200 (Mon, 12 Jun 2006) | 1 line
Fix site module docstring to match the code for Mac OSX, too
........
r46892 | nick.coghlan | 2006-06-12 10:27:13 +0200 (Mon, 12 Jun 2006) | 1 line
The site module documentation also described the Windows behaviour incorrectly.
........
r46893 | nick.coghlan | 2006-06-12 12:17:11 +0200 (Mon, 12 Jun 2006) | 1 line
Make the -m switch conform to the documentation of sys.path by behaving like the -c switch
........
r46894 | kristjan.jonsson | 2006-06-12 17:45:12 +0200 (Mon, 12 Jun 2006) | 2 lines
Fix the CRT argument error handling for VisualStudio .NET 2005. Install a CRT error handler and disable the assertion for debug builds. This causes CRT to set errno to EINVAL.
This update fixes crash cases in the test suite where the default CRT error handler would cause process exit.
........
r46899 | thomas.heller | 2006-06-12 22:56:48 +0200 (Mon, 12 Jun 2006) | 1 line
Add pep-291 compatibility markers.
........
r46901 | ka-ping.yee | 2006-06-13 01:47:52 +0200 (Tue, 13 Jun 2006) | 5 lines
Add the uuid module.
This module has been tested so far on Windows XP (Python 2.4 and 2.5a2),
Mac OS X (Python 2.3, 2.4, and 2.5a2), and Linux (Python 2.4 and 2.5a2).
........
r46902 | tim.peters | 2006-06-13 02:30:01 +0200 (Tue, 13 Jun 2006) | 2 lines
Whitespace normalization.
........
r46903 | tim.peters | 2006-06-13 02:30:50 +0200 (Tue, 13 Jun 2006) | 2 lines
Added missing svn:eol-style property to text files.
........
r46905 | tim.peters | 2006-06-13 05:30:07 +0200 (Tue, 13 Jun 2006) | 5 lines
get_matching_blocks(): rewrote code & comments so they match; added
more comments about why it's this way at all; and removed what looked
like needless expense (sorting (i, j, k) triples directly should give
exactly the same order as sorting (i, (i, j, k)) pairs).
........
r46906 | neal.norwitz | 2006-06-13 06:08:53 +0200 (Tue, 13 Jun 2006) | 1 line
Don't fail if another process is listening on our port.
........
r46908 | neal.norwitz | 2006-06-13 10:28:19 +0200 (Tue, 13 Jun 2006) | 2 lines
Initialize the type object so pychecker can't crash the interpreter.
........
r46909 | neal.norwitz | 2006-06-13 10:41:06 +0200 (Tue, 13 Jun 2006) | 1 line
Verify the crash due to EncodingMap not initialized does not return
........
r46910 | thomas.heller | 2006-06-13 10:56:14 +0200 (Tue, 13 Jun 2006) | 3 lines
Add some windows datatypes that were missing from this file, and add
the aliases defined in windows header files for the structures.
........
r46911 | thomas.heller | 2006-06-13 11:40:14 +0200 (Tue, 13 Jun 2006) | 3 lines
Add back WCHAR, UINT, DOUBLE, _LARGE_INTEGER, _ULARGE_INTEGER.
VARIANT_BOOL is a special _ctypes data type, not c_short.
........
r46912 | ronald.oussoren | 2006-06-13 13:19:56 +0200 (Tue, 13 Jun 2006) | 4 lines
Linecache contains support for PEP302 loaders, but fails to deal with loaders
that return None to indicate that the module is valid but no source is
available. This patch fixes that.
........
r46913 | andrew.kuchling | 2006-06-13 13:57:04 +0200 (Tue, 13 Jun 2006) | 1 line
Mention uuid module
........
r46915 | walter.doerwald | 2006-06-13 14:02:12 +0200 (Tue, 13 Jun 2006) | 2 lines
Fix passing errors to the encoder and decoder functions.
........
r46917 | walter.doerwald | 2006-06-13 14:04:43 +0200 (Tue, 13 Jun 2006) | 3 lines
errors is an attribute in the incremental decoder
not an argument.
........
r46919 | andrew.macintyre | 2006-06-13 17:04:24 +0200 (Tue, 13 Jun 2006) | 11 lines
Patch #1454481: Make thread stack size runtime tunable.
Heavily revised, comprising revisions:
46640 - original trunk revision (backed out in r46655)
46647 - markup fix (backed out in r46655)
46692:46918 merged from branch aimacintyre-sf1454481
branch tested on buildbots (Windows buildbots had problems
not related to these changes).
........
r46920 | brett.cannon | 2006-06-13 18:06:55 +0200 (Tue, 13 Jun 2006) | 2 lines
Remove unused variable.
........
r46921 | andrew.kuchling | 2006-06-13 18:41:41 +0200 (Tue, 13 Jun 2006) | 1 line
Add ability to set stack size
........
r46923 | marc-andre.lemburg | 2006-06-13 19:04:26 +0200 (Tue, 13 Jun 2006) | 2 lines
Update pybench to version 2.0.
........
r46924 | marc-andre.lemburg | 2006-06-13 19:07:14 +0200 (Tue, 13 Jun 2006) | 2 lines
Revert wrong svn copy.
........
r46925 | andrew.macintyre | 2006-06-13 19:14:36 +0200 (Tue, 13 Jun 2006) | 2 lines
fix exception usage
........
r46927 | tim.peters | 2006-06-13 20:37:07 +0200 (Tue, 13 Jun 2006) | 2 lines
Whitespace normalization.
........
r46928 | marc-andre.lemburg | 2006-06-13 20:56:56 +0200 (Tue, 13 Jun 2006) | 9 lines
Updated to pybench 2.0.
See svn.python.org/external/pybench-2.0 for the original import of that
version.
Note that platform.py was not copied over from pybench-2.0 since
it is already part of Python 2.5.
........
r46929 | andrew.macintyre | 2006-06-13 21:02:35 +0200 (Tue, 13 Jun 2006) | 5 lines
Increase the small thread stack size to get the test
to pass reliably on the one buildbot that insists on
more than 32kB of thread stack.
........
r46930 | marc-andre.lemburg | 2006-06-13 21:20:07 +0200 (Tue, 13 Jun 2006) | 2 lines
Whitespace normalization.
........
r46931 | thomas.heller | 2006-06-13 22:18:43 +0200 (Tue, 13 Jun 2006) | 2 lines
More docs for ctypes.
........
r46932 | brett.cannon | 2006-06-13 23:34:24 +0200 (Tue, 13 Jun 2006) | 2 lines
Ignore .pyc and .pyo files in Pybench.
........
r46933 | brett.cannon | 2006-06-13 23:46:41 +0200 (Tue, 13 Jun 2006) | 7 lines
If a classic class defined a __coerce__() method that just returned its two
arguments in reverse, the interpreter would infinitely recourse trying to get a
coercion that worked. So put in a recursion check after a coercion is made and
the next call to attempt to use the coerced values.
Fixes bug #992017 and closes crashers/coerce.py .
........
r46936 | gerhard.haering | 2006-06-14 00:24:47 +0200 (Wed, 14 Jun 2006) | 3 lines
Merged changes from external pysqlite 2.3.0 release. Documentation updates will
follow in a few hours at the latest. Then we should be ready for beta1.
........
r46937 | brett.cannon | 2006-06-14 00:26:13 +0200 (Wed, 14 Jun 2006) | 2 lines
Missed test for rev. 46933; infinite recursion from __coerce__() returning its arguments reversed.
........
r46938 | gerhard.haering | 2006-06-14 00:53:48 +0200 (Wed, 14 Jun 2006) | 2 lines
Updated documentation for pysqlite 2.3.0 API.
........
r46939 | tim.peters | 2006-06-14 06:09:25 +0200 (Wed, 14 Jun 2006) | 10 lines
SequenceMatcher.get_matching_blocks(): This now guarantees that
adjacent triples in the result list describe non-adjacent matching
blocks. That's _nice_ to have, and Guido said he wanted it.
Not a bugfix candidate: Guido or not ;-), this changes visible
endcase semantics (note that some tests had to change), and
nothing about this was documented before. Since it was working
as designed, and behavior was consistent with the docs, it wasn't
"a bug".
........
r46940 | tim.peters | 2006-06-14 06:13:00 +0200 (Wed, 14 Jun 2006) | 2 lines
Repaired typo in new comment.
........
r46941 | tim.peters | 2006-06-14 06:15:27 +0200 (Wed, 14 Jun 2006) | 2 lines
Whitespace normalization.
........
r46942 | fred.drake | 2006-06-14 06:25:02 +0200 (Wed, 14 Jun 2006) | 3 lines
- make some disabled tests run what they intend when enabled
- remove some over-zealous triple-quoting
........
r46943 | fred.drake | 2006-06-14 07:04:47 +0200 (Wed, 14 Jun 2006) | 3 lines
add tests for two cases that are handled correctly in the current code,
but that SF patch 1504676 as written mis-handles
........
r46944 | fred.drake | 2006-06-14 07:15:51 +0200 (Wed, 14 Jun 2006) | 1 line
explain an XXX in more detail
........
r46945 | martin.v.loewis | 2006-06-14 07:21:04 +0200 (Wed, 14 Jun 2006) | 1 line
Patch #1455898: Incremental mode for "mbcs" codec.
........
r46946 | georg.brandl | 2006-06-14 08:08:31 +0200 (Wed, 14 Jun 2006) | 3 lines
Bug #1339007: Shelf objects now don't raise an exception in their
__del__ method when initialization failed.
........
r46948 | thomas.heller | 2006-06-14 08:18:15 +0200 (Wed, 14 Jun 2006) | 1 line
Fix docstring.
........
r46949 | georg.brandl | 2006-06-14 08:29:07 +0200 (Wed, 14 Jun 2006) | 2 lines
Bug #1501122: mention __gt__ &co in description of comparison order.
........
r46951 | thomas.heller | 2006-06-14 09:08:38 +0200 (Wed, 14 Jun 2006) | 1 line
Write more docs.
........
r46952 | georg.brandl | 2006-06-14 10:31:39 +0200 (Wed, 14 Jun 2006) | 3 lines
Bug #1153163: describe __add__ vs __radd__ behavior when adding
objects of same type/of subclasses of the other.
........
r46954 | georg.brandl | 2006-06-14 10:42:11 +0200 (Wed, 14 Jun 2006) | 3 lines
Bug #1202018: add some common mime.types locations.
........
r46955 | georg.brandl | 2006-06-14 10:50:03 +0200 (Wed, 14 Jun 2006) | 3 lines
Bug #1117556: SimpleHTTPServer now tries to find and use the system's
mime.types file for determining MIME types.
........
r46957 | thomas.heller | 2006-06-14 11:09:08 +0200 (Wed, 14 Jun 2006) | 1 line
Document paramflags.
........
r46958 | thomas.heller | 2006-06-14 11:20:11 +0200 (Wed, 14 Jun 2006) | 1 line
Add an __all__ list, since this module does 'from ctypes import *'.
........
r46959 | andrew.kuchling | 2006-06-14 15:59:15 +0200 (Wed, 14 Jun 2006) | 1 line
Add item
........
r46961 | georg.brandl | 2006-06-14 18:46:43 +0200 (Wed, 14 Jun 2006) | 3 lines
Bug #805015: doc error in PyUnicode_FromEncodedObject.
........
r46962 | gerhard.haering | 2006-06-15 00:28:37 +0200 (Thu, 15 Jun 2006) | 10 lines
- Added version checks in C code to make sure we don't trigger bugs in older
SQLite versions.
- Added version checks in test suite so that we don't execute tests that we
know will fail with older (buggy) SQLite versions.
Now, all tests should run against all SQLite versions from 3.0.8 until 3.3.6
(latest one now). The sqlite3 module can be built against all these SQLite
versions and the sqlite3 module does its best to not trigger bugs in SQLite,
but using SQLite 3.3.3 or later is recommended.
........
r46963 | tim.peters | 2006-06-15 00:38:13 +0200 (Thu, 15 Jun 2006) | 2 lines
Whitespace normalization.
........
r46964 | neal.norwitz | 2006-06-15 06:54:29 +0200 (Thu, 15 Jun 2006) | 9 lines
Speculative checkin (requires approval of Gerhard Haering)
This backs out the test changes in 46962 which prevented crashes
by not running the tests via a version check. All the version checks
added in that rev were removed from the tests.
Code was added to the error handler in connection.c that seems
to work with older versions of sqlite including 3.1.3.
........
r46965 | neal.norwitz | 2006-06-15 07:55:49 +0200 (Thu, 15 Jun 2006) | 1 line
Try to narrow window of failure on slow/busy boxes (ppc64 buildbot)
........
r46966 | martin.v.loewis | 2006-06-15 08:45:05 +0200 (Thu, 15 Jun 2006) | 2 lines
Make import/lookup of mbcs fail on non-Windows systems.
........
r46967 | ronald.oussoren | 2006-06-15 10:14:18 +0200 (Thu, 15 Jun 2006) | 2 lines
Patch #1446489 (zipfile: support for ZIP64)
........
r46968 | neal.norwitz | 2006-06-15 10:16:44 +0200 (Thu, 15 Jun 2006) | 6 lines
Re-revert this change. Install the version check and don't run the test
until Gerhard has time to fully debug the issue. This affects versions
before 3.2.1 (possibly only versions earlier than 3.1.3).
Based on discussion on python-checkins.
........
r46969 | gregory.p.smith | 2006-06-15 10:52:32 +0200 (Thu, 15 Jun 2006) | 6 lines
- bsddb: multithreaded DB access using the simple bsddb module interface
now works reliably. It has been updated to use automatic BerkeleyDB
deadlock detection and the bsddb.dbutils.DeadlockWrap wrapper to retry
database calls that would previously deadlock. [SF python bug #775414]
........
r46970 | gregory.p.smith | 2006-06-15 11:23:52 +0200 (Thu, 15 Jun 2006) | 2 lines
minor documentation cleanup. mention the bsddb.db interface explicitly by name.
........
r46971 | neal.norwitz | 2006-06-15 11:57:03 +0200 (Thu, 15 Jun 2006) | 5 lines
Steal the trick from test_compiler to print out a slow msg.
This will hopefully get the buildbots to pass. Not sure this
test will be feasible or even work. But everything is red now,
so it can't get much worse.
........
r46972 | neal.norwitz | 2006-06-15 12:24:49 +0200 (Thu, 15 Jun 2006) | 1 line
Print some more info to get an idea of how much longer the test will last
........
r46981 | tim.peters | 2006-06-15 20:04:40 +0200 (Thu, 15 Jun 2006) | 6 lines
Try to reduce the extreme peak memory and disk-space use
of this test. It probably still requires more disk space
than most buildbots have, and in any case is still so
intrusive that if we don't find another way to test this I'm
taking my buildbot offline permanently ;-)
........
r46982 | tim.peters | 2006-06-15 20:06:29 +0200 (Thu, 15 Jun 2006) | 2 lines
Whitespace normalization.
........
r46983 | tim.peters | 2006-06-15 20:07:28 +0200 (Thu, 15 Jun 2006) | 2 lines
Add missing svn:eol-style property to text files.
........
r46984 | tim.peters | 2006-06-15 20:38:19 +0200 (Thu, 15 Jun 2006) | 2 lines
Oops -- I introduced an off-by-6436159488 error.
........
r46990 | neal.norwitz | 2006-06-16 06:30:34 +0200 (Fri, 16 Jun 2006) | 1 line
Disable this test until we can determine what to do about it
........
r46991 | neal.norwitz | 2006-06-16 06:31:06 +0200 (Fri, 16 Jun 2006) | 1 line
Param name is dir, not directory. Update docstring. Backport candidate
........
r46992 | neal.norwitz | 2006-06-16 06:31:28 +0200 (Fri, 16 Jun 2006) | 1 line
Add missing period in comment.
........
r46993 | neal.norwitz | 2006-06-16 06:32:43 +0200 (Fri, 16 Jun 2006) | 1 line
Fix whitespace, there are memory leaks in this module.
........
r46995 | fred.drake | 2006-06-17 01:45:06 +0200 (Sat, 17 Jun 2006) | 3 lines
SF patch 1504676: Make sgmllib char and entity references pluggable
(implementation/tests contributed by Sam Ruby)
........
r46996 | fred.drake | 2006-06-17 03:07:54 +0200 (Sat, 17 Jun 2006) | 1 line
fix change that broke the htmllib tests
........
r46998 | martin.v.loewis | 2006-06-17 11:15:14 +0200 (Sat, 17 Jun 2006) | 3 lines
Patch #763580: Add name and value arguments to
Tkinter variable classes.
........
r46999 | martin.v.loewis | 2006-06-17 11:20:41 +0200 (Sat, 17 Jun 2006) | 2 lines
Patch #1096231: Add default argument to wm_iconbitmap.
........
r47000 | martin.v.loewis | 2006-06-17 11:25:15 +0200 (Sat, 17 Jun 2006) | 2 lines
Patch #1494750: Destroy master after deleting children.
........
r47003 | george.yoshida | 2006-06-17 18:31:52 +0200 (Sat, 17 Jun 2006) | 2 lines
markup fix
........
r47005 | george.yoshida | 2006-06-17 18:39:13 +0200 (Sat, 17 Jun 2006) | 4 lines
Update url.
Old url returned status code:301 Moved permanently.
........
r47007 | martin.v.loewis | 2006-06-17 20:44:27 +0200 (Sat, 17 Jun 2006) | 2 lines
Patch #812986: Update the canvas even if not tracing.
........
r47008 | martin.v.loewis | 2006-06-17 21:03:26 +0200 (Sat, 17 Jun 2006) | 2 lines
Patch #815924: Restore ability to pass type= and icon=
........
r47009 | neal.norwitz | 2006-06-18 00:37:45 +0200 (Sun, 18 Jun 2006) | 1 line
Fix typo in docstring
........
r47010 | neal.norwitz | 2006-06-18 00:38:15 +0200 (Sun, 18 Jun 2006) | 1 line
Fix memory leak reported by valgrind while running test_subprocess
........
r47011 | fred.drake | 2006-06-18 04:57:35 +0200 (Sun, 18 Jun 2006) | 1 line
remove unnecessary markup
........
r47013 | neal.norwitz | 2006-06-18 21:35:01 +0200 (Sun, 18 Jun 2006) | 7 lines
Prevent spurious leaks when running regrtest.py -R. There may be more
issues that crop up from time to time, but this change seems to have been
pretty stable (no spurious warnings) for about a week.
Other modules which use threads may require similar use of
threading_setup/threading_cleanup from test_support.
........
r47014 | neal.norwitz | 2006-06-18 21:37:40 +0200 (Sun, 18 Jun 2006) | 9 lines
The hppa ubuntu box sometimes hangs forever in these tests. My guess
is that the wait is failing for some reason. Use WNOHANG, so we won't
wait until the buildbot kills the test suite.
I haven't been able to reproduce the failure, so I'm not sure if
this will help or not. Hopefully, this change will cause the test
to fail, rather than hang. That will be better since we will get
the rest of the test results. It may also help us debug the real problem.
........
r47015 | neal.norwitz | 2006-06-18 22:10:24 +0200 (Sun, 18 Jun 2006) | 1 line
Revert 47014 until it is more robust
........
r47016 | thomas.heller | 2006-06-18 23:27:04 +0200 (Sun, 18 Jun 2006) | 6 lines
Fix typos.
Fix doctest example.
Mention in the tutorial that 'errcheck' is explained in the ref manual.
Use better wording in some places.
Remoce code examples that shouldn't be in the tutorial.
Remove some XXX notices.
........
r47017 | georg.brandl | 2006-06-19 00:17:29 +0200 (Mon, 19 Jun 2006) | 3 lines
Patch #1507676: improve exception messages in abstract.c, object.c and typeobject.c.
........
r47018 | neal.norwitz | 2006-06-19 07:40:44 +0200 (Mon, 19 Jun 2006) | 1 line
Use Py_ssize_t
........
r47019 | georg.brandl | 2006-06-19 08:35:54 +0200 (Mon, 19 Jun 2006) | 3 lines
Add news entry about error msg improvement.
........
r47020 | thomas.heller | 2006-06-19 09:07:49 +0200 (Mon, 19 Jun 2006) | 2 lines
Try to repair the failing test on the OpenBSD buildbot. Trial and error...
........
r47021 | tim.peters | 2006-06-19 09:45:16 +0200 (Mon, 19 Jun 2006) | 2 lines
Whitespace normalization.
........
r47022 | walter.doerwald | 2006-06-19 10:07:50 +0200 (Mon, 19 Jun 2006) | 4 lines
Patch #1506645: add Python wrappers for the curses functions
is_term_resized, resize_term and resizeterm. This uses three
separate configure checks (one for each function).
........
r47023 | walter.doerwald | 2006-06-19 10:14:09 +0200 (Mon, 19 Jun 2006) | 2 lines
Make check order match in configure and configure.in.
........
r47024 | tim.peters | 2006-06-19 10:14:28 +0200 (Mon, 19 Jun 2006) | 3 lines
Repair KeyError when running test_threaded_import under -R,
as reported by Neal on python-dev.
........
r47025 | thomas.heller | 2006-06-19 10:32:46 +0200 (Mon, 19 Jun 2006) | 3 lines
Next try to fix the OpenBSD buildbot tests:
Use ctypes.util.find_library to locate the C runtime library
on platforms where is returns useful results.
........
r47026 | tim.peters | 2006-06-19 11:09:44 +0200 (Mon, 19 Jun 2006) | 13 lines
TestHelp.make_parser(): This was making a permanent change to
os.environ (setting envar COLUMNS), which at least caused
test_float_default() to fail if the tests were run more than once.
This repairs the test_optparse -R failures Neal reported on
python-dev. It also explains some seemingly bizarre test_optparse
failures we saw a couple weeks ago on the buildbots, when
test_optparse failed due to test_file failing to clean up after
itself, and then test_optparse failed in an entirely different
way when regrtest's -w option ran test_optparse a second time.
It's now obvious that make_parser() permanently changing os.environ
was responsible for the second half of that.
........
r47027 | anthony.baxter | 2006-06-19 14:04:15 +0200 (Mon, 19 Jun 2006) | 2 lines
Preparing for 2.5b1.
........
r47029 | fred.drake | 2006-06-19 19:31:16 +0200 (Mon, 19 Jun 2006) | 1 line
remove non-working document formats from edist
........
r47030 | gerhard.haering | 2006-06-19 23:17:35 +0200 (Mon, 19 Jun 2006) | 5 lines
Fixed a memory leak that was introduced with incorrect usage of the Python weak
reference API in pysqlite 2.2.1.
Bumbed pysqlite version number to upcoming pysqlite 2.3.1 release.
........
r47032 | ka-ping.yee | 2006-06-20 00:49:36 +0200 (Tue, 20 Jun 2006) | 2 lines
Remove Python 2.3 compatibility comment.
........
r47033 | trent.mick | 2006-06-20 01:21:25 +0200 (Tue, 20 Jun 2006) | 2 lines
Upgrade pyexpat to expat 2.0.0 (http://python.org/sf/1462338).
........
r47034 | trent.mick | 2006-06-20 01:57:41 +0200 (Tue, 20 Jun 2006) | 3 lines
[ 1295808 ] expat symbols should be namespaced in pyexpat
(http://python.org/sf/1295808)
........
r47039 | andrew.kuchling | 2006-06-20 13:52:16 +0200 (Tue, 20 Jun 2006) | 1 line
Uncomment wsgiref section
........
r47040 | andrew.kuchling | 2006-06-20 14:15:09 +0200 (Tue, 20 Jun 2006) | 1 line
Add four library items
........
r47041 | andrew.kuchling | 2006-06-20 14:19:54 +0200 (Tue, 20 Jun 2006) | 1 line
Terminology and typography fixes
........
r47042 | andrew.kuchling | 2006-06-20 15:05:12 +0200 (Tue, 20 Jun 2006) | 1 line
Add introductory paragraphs summarizing the release; minor edits
........
r47043 | andrew.kuchling | 2006-06-20 15:11:29 +0200 (Tue, 20 Jun 2006) | 1 line
Minor edits and rearrangements; markup fix
........
r47044 | andrew.kuchling | 2006-06-20 15:20:30 +0200 (Tue, 20 Jun 2006) | 1 line
[Bug #1504456] Mention xml -> xmlcore change
........
r47047 | brett.cannon | 2006-06-20 19:30:26 +0200 (Tue, 20 Jun 2006) | 2 lines
Raise TestSkipped when the test socket connection is refused.
........
r47049 | brett.cannon | 2006-06-20 21:20:17 +0200 (Tue, 20 Jun 2006) | 2 lines
Fix typo of exception name.
........
r47053 | brett.cannon | 2006-06-21 18:57:57 +0200 (Wed, 21 Jun 2006) | 5 lines
At the C level, tuple arguments are passed in directly to the exception
constructor, meaning it is treated as *args, not as a single argument. This
means using the 'message' attribute won't work (until Py3K comes around),
and so one must grab from 'arg' to get the error number.
........
r47054 | andrew.kuchling | 2006-06-21 19:10:18 +0200 (Wed, 21 Jun 2006) | 1 line
Link to LibRef module documentation
........
r47055 | andrew.kuchling | 2006-06-21 19:17:10 +0200 (Wed, 21 Jun 2006) | 1 line
Note some of Barry's work
........
r47056 | andrew.kuchling | 2006-06-21 19:17:28 +0200 (Wed, 21 Jun 2006) | 1 line
Bump version
........
r47057 | georg.brandl | 2006-06-21 19:45:17 +0200 (Wed, 21 Jun 2006) | 3 lines
fix [ 1509132 ] compiler module builds incorrect AST for TryExceptFinally
........
r47058 | georg.brandl | 2006-06-21 19:52:36 +0200 (Wed, 21 Jun 2006) | 3 lines
Make test_fcntl aware of netbsd3.
........
r47059 | georg.brandl | 2006-06-21 19:53:17 +0200 (Wed, 21 Jun 2006) | 3 lines
Patch #1509001: expected skips for netbsd3.
........
r47060 | gerhard.haering | 2006-06-21 22:55:04 +0200 (Wed, 21 Jun 2006) | 2 lines
Removed call to enable_callback_tracebacks that slipped in by accident.
........
r47061 | armin.rigo | 2006-06-21 23:58:50 +0200 (Wed, 21 Jun 2006) | 13 lines
Fix for an obscure bug introduced by revs 46806 and 46808, with a test.
The problem of checking too eagerly for recursive calls is the
following: if a RuntimeError is caused by recursion, and if code needs
to normalize it immediately (as in the 2nd test), then
PyErr_NormalizeException() needs a call to the RuntimeError class to
instantiate it, and this hits the recursion limit again... causing
PyErr_NormalizeException() to never finish.
Moved this particular recursion check to slot_tp_call(), which is not
involved in instantiating built-in exceptions.
Backport candidate.
........
r47064 | neal.norwitz | 2006-06-22 08:30:50 +0200 (Thu, 22 Jun 2006) | 3 lines
Copy the wsgiref package during make install.
........
r47065 | neal.norwitz | 2006-06-22 08:35:30 +0200 (Thu, 22 Jun 2006) | 1 line
Reset the doc date to today for the automatic doc builds
........
r47067 | andrew.kuchling | 2006-06-22 15:10:23 +0200 (Thu, 22 Jun 2006) | 1 line
Mention how to suppress warnings
........
r47069 | georg.brandl | 2006-06-22 16:46:17 +0200 (Thu, 22 Jun 2006) | 3 lines
Set lineno correctly on list, tuple and dict literals.
........
r47070 | georg.brandl | 2006-06-22 16:46:46 +0200 (Thu, 22 Jun 2006) | 4 lines
Test for correct compilation of try-except-finally stmt.
Test for correct lineno on list, tuple, dict literals.
........
r47071 | fred.drake | 2006-06-22 17:50:08 +0200 (Thu, 22 Jun 2006) | 1 line
fix markup nit
........
r47072 | brett.cannon | 2006-06-22 18:49:14 +0200 (Thu, 22 Jun 2006) | 6 lines
'warning's was improperly requiring that a command-line Warning category be
both a subclass of Warning and a subclass of types.ClassType. The latter is no
longer true thanks to new-style exceptions.
Closes bug #1510580. Thanks to AMK for the test.
........
r47073 | ronald.oussoren | 2006-06-22 20:33:54 +0200 (Thu, 22 Jun 2006) | 3 lines
MacOSX: Add a message to the first screen of the installer that tells
users how to avoid updates to their shell profile.
........
r47074 | georg.brandl | 2006-06-22 21:02:18 +0200 (Thu, 22 Jun 2006) | 3 lines
Fix my name ;)
........
r47075 | thomas.heller | 2006-06-22 21:07:36 +0200 (Thu, 22 Jun 2006) | 2 lines
Small fixes, mostly in the markup.
........
r47076 | peter.astrand | 2006-06-22 22:06:46 +0200 (Thu, 22 Jun 2006) | 1 line
Make it possible to run test_subprocess.py on Python 2.2, which lacks test_support.is_resource_enabled.
........
r47077 | peter.astrand | 2006-06-22 22:21:26 +0200 (Thu, 22 Jun 2006) | 1 line
Applied patch #1506758: Prevent MemoryErrors with large MAXFD.
........
r47079 | neal.norwitz | 2006-06-23 05:32:44 +0200 (Fri, 23 Jun 2006) | 1 line
Fix refleak
........
r47080 | fred.drake | 2006-06-23 08:03:45 +0200 (Fri, 23 Jun 2006) | 9 lines
- SF bug #853506: IP6 address parsing in sgmllib
('[' and ']' were not accepted in unquoted attribute values)
- cleaned up tests of character and entity reference decoding so the
tests cover the documented relationships among handle_charref,
handle_entityref, convert_charref, convert_codepoint, and
convert_entityref, without bringing up Unicode issues that sgmllib
cannot be involved in
........
r47085 | andrew.kuchling | 2006-06-23 21:23:40 +0200 (Fri, 23 Jun 2006) | 11 lines
Fit Makefile for the Python doc environment better; this is a step toward
including the howtos in the build process.
* Put LaTeX output in ../paper-<whatever>/.
* Put HTML output in ../html/
* Explain some of the Makefile variables
* Remove some cruft dating to my environment (e.g. the 'web' target)
This makefile isn't currently invoked by the documentation build process,
so these changes won't destabilize anything.
........
r47086 | hyeshik.chang | 2006-06-23 23:16:18 +0200 (Fri, 23 Jun 2006) | 5 lines
Bug #1511381: codec_getstreamcodec() in codec.c is corrected to
omit a default "error" argument for NULL pointer. This allows
the parser to take a codec from cjkcodecs again.
(Reported by Taewook Kang and reviewed by Walter Doerwald)
........
r47091 | ronald.oussoren | 2006-06-25 22:44:16 +0200 (Sun, 25 Jun 2006) | 6 lines
Workaround for bug #1512124
Without this patch IDLE will get unresponsive when you open the debugger
window on OSX. This is both using the system Tcl/Tk on Tiger as the latest
universal download from tk-components.sf.net.
........
r47092 | ronald.oussoren | 2006-06-25 23:14:19 +0200 (Sun, 25 Jun 2006) | 3 lines
Drop the calldll demo's for macos, calldll isn't present anymore, no need
to keep the demo's around.
........
r47093 | ronald.oussoren | 2006-06-25 23:15:58 +0200 (Sun, 25 Jun 2006) | 3 lines
Use a path without a double slash to compile the .py files after installation
(macosx, binary installer). This fixes bug #1508369 for python 2.5.
........
r47094 | ronald.oussoren | 2006-06-25 23:19:06 +0200 (Sun, 25 Jun 2006) | 3 lines
Also install the .egg-info files in Lib. This will cause wsgiref.egg-info to
be installed.
........
r47097 | andrew.kuchling | 2006-06-26 14:40:02 +0200 (Mon, 26 Jun 2006) | 1 line
[Bug #1511998] Various comments from Nick Coghlan; thanks!
........
r47098 | andrew.kuchling | 2006-06-26 14:43:43 +0200 (Mon, 26 Jun 2006) | 1 line
Describe workaround for PyRange_New()'s removal
........
r47099 | andrew.kuchling | 2006-06-26 15:08:24 +0200 (Mon, 26 Jun 2006) | 5 lines
[Bug #1512163] Fix typo.
This change will probably break tests on FreeBSD buildbots, but I'll check in
a fix for that next.
........
r47100 | andrew.kuchling | 2006-06-26 15:12:16 +0200 (Mon, 26 Jun 2006) | 9 lines
[Bug #1512163] Use one set of locking methods, lockf();
remove the flock() calls.
On FreeBSD, the two methods lockf() and flock() end up using the same
mechanism and the second one fails. A Linux man page claims that the
two methods are orthogonal (so locks acquired one way don't interact
with locks acquired the other way) but that clearly must be false.
........
r47101 | andrew.kuchling | 2006-06-26 15:23:10 +0200 (Mon, 26 Jun 2006) | 5 lines
Add a test for a conflicting lock.
On slow machines, maybe the time intervals (2 sec, 0.5 sec) will be too tight.
I'll see how the buildbots like it.
........
r47103 | andrew.kuchling | 2006-06-26 16:33:24 +0200 (Mon, 26 Jun 2006) | 1 line
Windows doesn't have os.fork(). I'll just disable this test for now
........
r47106 | andrew.kuchling | 2006-06-26 19:00:35 +0200 (Mon, 26 Jun 2006) | 9 lines
Attempt to fix build failure on OS X and Debian alpha; the symptom is
consistent with os.wait() returning immediately because some other
subprocess had previously exited; the test suite then immediately
tries to lock the mailbox and gets an error saying it's already
locked.
To fix this, do a waitpid() so the test suite only continues once
the intended child process has exited.
........
r47113 | neal.norwitz | 2006-06-27 06:06:46 +0200 (Tue, 27 Jun 2006) | 1 line
Ignore some more warnings in the dynamic linker on an older gentoo
........
r47114 | neal.norwitz | 2006-06-27 06:09:13 +0200 (Tue, 27 Jun 2006) | 6 lines
Instead of doing a make test, run the regression tests out of the installed
copy. This will hopefully catch problems where directories are added
under Lib/ but not to Makefile.pre.in. This breaks out the 2 runs
of the test suite with and without -O which is also nicer.
........
r47115 | neal.norwitz | 2006-06-27 06:12:58 +0200 (Tue, 27 Jun 2006) | 5 lines
Fix SF bug #1513032, 'make install' failure on FreeBSD 5.3.
No need to install lib-old, it's empty in 2.5.
........
r47116 | neal.norwitz | 2006-06-27 06:23:06 +0200 (Tue, 27 Jun 2006) | 1 line
Test unimportant change to verify buildbot does not try to build
........
r47117 | neal.norwitz | 2006-06-27 06:26:30 +0200 (Tue, 27 Jun 2006) | 1 line
Try again: test unimportant change to verify buildbot does not try to build
........
r47118 | neal.norwitz | 2006-06-27 06:28:56 +0200 (Tue, 27 Jun 2006) | 1 line
Verify buildbot picks up these changes (really needs testing after last change to Makefile.pre.in)
........
r47121 | vinay.sajip | 2006-06-27 09:34:37 +0200 (Tue, 27 Jun 2006) | 1 line
Removed buggy exception handling in doRollover of rotating file handlers. Exceptions now propagate to caller.
........
r47123 | ronald.oussoren | 2006-06-27 12:08:25 +0200 (Tue, 27 Jun 2006) | 3 lines
MacOSX: fix rather dumb buglet that made it impossible to create extensions on
OSX 10.3 when using a binary distribution build on 10.4.
........
r47125 | tim.peters | 2006-06-27 13:52:49 +0200 (Tue, 27 Jun 2006) | 2 lines
Whitespace normalization.
........
r47128 | ronald.oussoren | 2006-06-27 14:53:52 +0200 (Tue, 27 Jun 2006) | 8 lines
Use staticly build copies of zlib and bzip2 to build the OSX installer, that
way the resulting binaries have a better change of running on 10.3.
This patch also updates the search logic for sleepycat db3/4, without this
patch you cannot use a sleepycat build with a non-standard prefix; with this
you can (at least on OSX) if you add the prefix to CPPFLAGS/LDFLAGS at
configure-time. This change is needed to build the binary installer for OSX.
........
r47131 | ronald.oussoren | 2006-06-27 17:45:32 +0200 (Tue, 27 Jun 2006) | 5 lines
macosx: Install a libpython2.5.a inside the framework as a symlink to the actual
dylib at the root of the framework, that way tools that expect a unix-like
install (python-config, but more importantly external products like
mod_python) work correctly.
........
r47137 | neal.norwitz | 2006-06-28 07:03:22 +0200 (Wed, 28 Jun 2006) | 4 lines
According to the man pages on Gentoo Linux and Tru64, EACCES or EAGAIN
can be returned if fcntl (lockf) fails. This fixes the test failure
on Tru64 by checking for either error rather than just EAGAIN.
........
r47139 | neal.norwitz | 2006-06-28 08:28:31 +0200 (Wed, 28 Jun 2006) | 5 lines
Fix bug #1512695: cPickle.loads could crash if it was interrupted with
a KeyboardInterrupt since PyTuple_Pack was passed a NULL.
Will backport.
........
r47142 | nick.coghlan | 2006-06-28 12:41:47 +0200 (Wed, 28 Jun 2006) | 1 line
Make full module name available as __module_name__ even when __name__ is set to something else (like '__main__')
........
r47143 | armin.rigo | 2006-06-28 12:49:51 +0200 (Wed, 28 Jun 2006) | 2 lines
A couple of crashers of the "won't fix" kind.
........
r47147 | andrew.kuchling | 2006-06-28 16:25:20 +0200 (Wed, 28 Jun 2006) | 1 line
[Bug #1508766] Add docs for uuid module; docs written by George Yoshida, with minor rearrangements by me.
........
r47148 | andrew.kuchling | 2006-06-28 16:27:21 +0200 (Wed, 28 Jun 2006) | 1 line
[Bug #1508766] Add docs for uuid module; this puts the module in the 'Internet Protocols' section. Arguably this module could also have gone in the chapters on strings or encodings, maybe even the crypto chapter. Fred, please move if you see fit.
........
r47151 | georg.brandl | 2006-06-28 22:23:25 +0200 (Wed, 28 Jun 2006) | 3 lines
Fix end_fill().
........
r47153 | trent.mick | 2006-06-28 22:30:41 +0200 (Wed, 28 Jun 2006) | 2 lines
Mention the expat upgrade and pyexpat fix I put in 2.5b1.
........
r47154 | fred.drake | 2006-06-29 02:51:53 +0200 (Thu, 29 Jun 2006) | 6 lines
SF bug #1504333: sgmlib should allow angle brackets in quoted values
(modified patch by Sam Ruby; changed to use separate REs for start and end
tags to reduce matching cost for end tags; extended tests; updated to avoid
breaking previous changes to support IPv6 addresses in unquoted attribute
values)
........
r47156 | fred.drake | 2006-06-29 04:57:48 +0200 (Thu, 29 Jun 2006) | 1 line
document recent bugfixes in sgmllib
........
r47158 | neal.norwitz | 2006-06-29 06:10:08 +0200 (Thu, 29 Jun 2006) | 10 lines
Add new utility function, reap_children(), to test_support. This should
be called at the end of each test that spawns children (perhaps it
should be called from regrtest instead?). This will hopefully prevent
some of the unexplained failures in the buildbots (hppa and alpha)
during tests that spawn children. The problems were not reproducible.
There were many zombies that remained at the end of several tests.
In the worst case, this shouldn't cause any more problems,
though it may not help either. Time will tell.
........
r47159 | neal.norwitz | 2006-06-29 07:48:14 +0200 (Thu, 29 Jun 2006) | 5 lines
This should fix the buildbot failure on s/390 which can't connect to gmail.org.
It makes the error message consistent and always sends to stderr.
It would be much better for all the networking tests to hit only python.org.
........
r47161 | thomas.heller | 2006-06-29 20:34:15 +0200 (Thu, 29 Jun 2006) | 3 lines
Protect the thread api calls in the _ctypes extension module within
#ifdef WITH_THREADS/#endif blocks. Found by Sam Rushing.
........
r47162 | martin.v.loewis | 2006-06-29 20:58:44 +0200 (Thu, 29 Jun 2006) | 2 lines
Patch #1509163: MS Toolkit Compiler no longer available
........
r47163 | skip.montanaro | 2006-06-29 21:20:09 +0200 (Thu, 29 Jun 2006) | 1 line
add string methods to index
........
r47164 | vinay.sajip | 2006-06-30 02:13:08 +0200 (Fri, 30 Jun 2006) | 1 line
Fixed bug in fileConfig() which failed to clear logging._handlerList
........
r47166 | tim.peters | 2006-06-30 08:18:39 +0200 (Fri, 30 Jun 2006) | 2 lines
Whitespace normalization.
........
r47170 | neal.norwitz | 2006-06-30 09:32:16 +0200 (Fri, 30 Jun 2006) | 1 line
Silence compiler warning
........
r47171 | neal.norwitz | 2006-06-30 09:32:46 +0200 (Fri, 30 Jun 2006) | 1 line
Another problem reported by Coverity. Backport candidate.
........
r47175 | thomas.heller | 2006-06-30 19:44:54 +0200 (Fri, 30 Jun 2006) | 2 lines
Revert the use of PY_FORMAT_SIZE_T in PyErr_Format.
........
r47176 | tim.peters | 2006-06-30 20:34:51 +0200 (Fri, 30 Jun 2006) | 2 lines
Remove now-unused fidding with PY_FORMAT_SIZE_T.
........
r47177 | georg.brandl | 2006-06-30 20:47:56 +0200 (Fri, 30 Jun 2006) | 3 lines
Document decorator usage of property.
........
r47181 | fred.drake | 2006-06-30 21:29:25 +0200 (Fri, 30 Jun 2006) | 4 lines
- consistency nit: always include "()" in \function and \method
(*should* be done by the presentation, but that requires changes all over)
- avoid spreading the __name meme
........
r47188 | vinay.sajip | 2006-07-01 12:45:20 +0200 (Sat, 01 Jul 2006) | 1 line
Added entry for fileConfig() bugfix.
........
r47189 | vinay.sajip | 2006-07-01 12:47:20 +0200 (Sat, 01 Jul 2006) | 1 line
Added duplicate call to fileConfig() to ensure that it cleans up after itself correctly.
........
r47190 | martin.v.loewis | 2006-07-01 17:33:37 +0200 (Sat, 01 Jul 2006) | 2 lines
Release all forwarded functions in .close. Fixes #1513223.
........
r47191 | fred.drake | 2006-07-01 18:28:20 +0200 (Sat, 01 Jul 2006) | 7 lines
SF bug #1296433 (Expat bug #1515266): Unchecked calls to character data
handler would cause a segfault. This merges in Expat's lib/xmlparse.c
revisions 1.154 and 1.155, which fix this and a closely related problem
(the later does not affect Python).
Moved the crasher test to the tests for xml.parsers.expat.
........
r47197 | gerhard.haering | 2006-07-02 19:48:30 +0200 (Sun, 02 Jul 2006) | 4 lines
The sqlite3 module did cut off data from the SQLite database at the first null
character before sending it to a custom converter. This has been fixed now.
........
r47198 | martin.v.loewis | 2006-07-02 20:44:00 +0200 (Sun, 02 Jul 2006) | 1 line
Correct arithmetic in access on Win32. Fixes #1513646.
........
r47203 | thomas.heller | 2006-07-03 09:58:09 +0200 (Mon, 03 Jul 2006) | 1 line
Cleanup: Remove commented out code.
........
r47204 | thomas.heller | 2006-07-03 09:59:50 +0200 (Mon, 03 Jul 2006) | 1 line
Don't run the doctests with Python 2.3 because it doesn't have the ELLIPSIS flag.
........
r47205 | thomas.heller | 2006-07-03 10:04:05 +0200 (Mon, 03 Jul 2006) | 7 lines
Fixes so that _ctypes can be compiled with the MingW compiler.
It seems that the definition of '__attribute__(x)' was responsible for
the compiler ignoring the '__fastcall' attribute on the
ffi_closure_SYSV function in libffi_msvc/ffi.c, took me quite some
time to figure this out.
........
r47206 | thomas.heller | 2006-07-03 10:08:14 +0200 (Mon, 03 Jul 2006) | 11 lines
Add a new function uses_seh() to the _ctypes extension module. This
will return True if Windows Structured Exception handling (SEH) is
used when calling functions, False otherwise.
Currently, only MSVC supports SEH.
Fix the test so that it doesn't crash when run with MingW compiled
_ctypes. Note that two tests are still failing when mingw is used, I
suspect structure layout differences and function calling conventions
between MSVC and MingW.
........
r47207 | tim.peters | 2006-07-03 10:23:19 +0200 (Mon, 03 Jul 2006) | 2 lines
Whitespace normalization.
........
r47208 | martin.v.loewis | 2006-07-03 11:44:00 +0200 (Mon, 03 Jul 2006) | 3 lines
Only setup canvas when it is first created.
Fixes #1514703
........
r47209 | martin.v.loewis | 2006-07-03 12:05:30 +0200 (Mon, 03 Jul 2006) | 3 lines
Reimplement turtle.circle using a polyline, to allow correct
filling of arcs. Also fixes #1514693.
........
r47210 | martin.v.loewis | 2006-07-03 12:19:49 +0200 (Mon, 03 Jul 2006) | 3 lines
Bug #1514693: Update turtle's heading when switching between
degrees and radians.
........
r47211 | martin.v.loewis | 2006-07-03 13:12:06 +0200 (Mon, 03 Jul 2006) | 2 lines
Document functions added in 2.3 and 2.5.
........
r47212 | martin.v.loewis | 2006-07-03 14:19:50 +0200 (Mon, 03 Jul 2006) | 3 lines
Bug #1417699: Reject locale-specific decimal point in float()
and atof().
........
r47213 | martin.v.loewis | 2006-07-03 14:28:58 +0200 (Mon, 03 Jul 2006) | 3 lines
Bug #1267547: Put proper recursive setup.py call into the
spec file generated by bdist_rpm.
........
r47215 | martin.v.loewis | 2006-07-03 15:01:35 +0200 (Mon, 03 Jul 2006) | 3 lines
Patch #825417: Fix timeout processing in expect,
read_until. Will backport to 2.4.
........
r47218 | martin.v.loewis | 2006-07-03 15:47:40 +0200 (Mon, 03 Jul 2006) | 2 lines
Put method-wrappers into trashcan. Fixes #927248.
........
r47219 | andrew.kuchling | 2006-07-03 16:07:30 +0200 (Mon, 03 Jul 2006) | 1 line
[Bug #1515932] Clarify description of slice assignment
........
r47220 | andrew.kuchling | 2006-07-03 16:16:09 +0200 (Mon, 03 Jul 2006) | 4 lines
[Bug #1511911] Clarify description of optional arguments to sorted()
by improving the xref to the section on lists, and by
copying the explanations of the arguments (with a slight modification).
........
r47223 | kristjan.jonsson | 2006-07-03 16:59:05 +0200 (Mon, 03 Jul 2006) | 1 line
Fix build problems with the platform SDK on windows. It is not sufficient to test for the C compiler version when determining if we have the secure CRT from microsoft. Must test with an undocumented macro, __STDC_SECURE_LIB__ too.
........
r47224 | ronald.oussoren | 2006-07-04 14:30:22 +0200 (Tue, 04 Jul 2006) | 7 lines
Sync the darwin/x86 port libffi with the copy in PyObjC. This fixes a number
of bugs in that port. The most annoying ones were due to some subtle differences
between the document ABI and the actual implementation :-(
(there are no python unittests that fail without this patch, but without it
some of libffi's unittests fail).
........
r47234 | georg.brandl | 2006-07-05 10:21:00 +0200 (Wed, 05 Jul 2006) | 3 lines
Remove remaining references to OverflowWarning.
........
r47236 | thomas.heller | 2006-07-05 11:13:56 +0200 (Wed, 05 Jul 2006) | 3 lines
Fix the bitfield test when _ctypes is compiled with MingW. Structures
containing bitfields may have different layout on MSVC and MingW .
........
r47237 | thomas.wouters | 2006-07-05 13:03:49 +0200 (Wed, 05 Jul 2006) | 15 lines
Fix bug in passing tuples to string.Template. All other values (with working
str() or repr()) would work, just not multi-value tuples. Probably not a
backport candidate, since it changes the behaviour of passing a
single-element tuple:
>>> string.Template("$foo").substitute(dict(foo=(1,)))
'(1,)'
versus
'1'
........
r47241 | georg.brandl | 2006-07-05 16:18:45 +0200 (Wed, 05 Jul 2006) | 2 lines
Patch #1517490: fix glitches in filter() docs.
........
r47244 | georg.brandl | 2006-07-05 17:50:05 +0200 (Wed, 05 Jul 2006) | 2 lines
no need to elaborate "string".
........
r47251 | neal.norwitz | 2006-07-06 06:28:59 +0200 (Thu, 06 Jul 2006) | 3 lines
Fix refleaks reported by Shane Hathaway in SF patch #1515361. This change
contains only the changes related to leaking the copy variable.
........
r47253 | fred.drake | 2006-07-06 07:13:22 +0200 (Thu, 06 Jul 2006) | 4 lines
- back out Expat change; the final fix to Expat will be different
- change the pyexpat wrapper to not be so sensitive to this detail of the
Expat implementation (the ex-crasher test still passes)
........
r47257 | neal.norwitz | 2006-07-06 08:45:08 +0200 (Thu, 06 Jul 2006) | 1 line
Add a NEWS entry for a recent pyexpat fix
........
r47258 | martin.v.loewis | 2006-07-06 08:55:58 +0200 (Thu, 06 Jul 2006) | 2 lines
Add sqlite3.dll to the DLLs component, not to the TkDLLs component.
Fixes #1517388.
........
r47259 | martin.v.loewis | 2006-07-06 09:05:21 +0200 (Thu, 06 Jul 2006) | 1 line
Properly quote compileall and Lib paths in case TARGETDIR has a space.
........
r47260 | thomas.heller | 2006-07-06 09:50:18 +0200 (Thu, 06 Jul 2006) | 5 lines
Revert the change done in svn revision 47206:
Add a new function uses_seh() to the _ctypes extension module. This
will return True if Windows Structured Exception handling (SEH) is
used when calling functions, False otherwise.
........
r47261 | armin.rigo | 2006-07-06 09:58:18 +0200 (Thu, 06 Jul 2006) | 3 lines
A couple of examples about how to attack the fact that _PyType_Lookup()
returns a borrowed ref. Many of the calls are open to attack.
........
r47262 | thomas.heller | 2006-07-06 10:28:14 +0200 (Thu, 06 Jul 2006) | 2 lines
The test that calls a function with invalid arguments and catches the
resulting Windows access violation will not be run by default.
........
r47263 | thomas.heller | 2006-07-06 10:48:35 +0200 (Thu, 06 Jul 2006) | 5 lines
Patch #1517790: It is now possible to use custom objects in the ctypes
foreign function argtypes sequence as long as they provide a
from_param method, no longer is it required that the object is a
ctypes type.
........
r47264 | thomas.heller | 2006-07-06 10:58:40 +0200 (Thu, 06 Jul 2006) | 2 lines
Document the Struture and Union constructors.
........
r47265 | thomas.heller | 2006-07-06 11:11:22 +0200 (Thu, 06 Jul 2006) | 2 lines
Document the changes in svn revision 47263, from patch #1517790.
........
r47267 | ronald.oussoren | 2006-07-06 12:13:35 +0200 (Thu, 06 Jul 2006) | 7 lines
This patch solves the problem Skip was seeing with zlib, this patch ensures that
configure uses similar compiler flags as setup.py when doing the zlib test.
Without this patch configure would use the first shared library on the linker
path, with this patch it uses the first shared or static library on that path
just like setup.py.
........
r47268 | thomas.wouters | 2006-07-06 12:48:28 +0200 (Thu, 06 Jul 2006) | 4 lines
NEWS entry for r47267: fixing configure's zlib probing.
........
r47269 | fredrik.lundh | 2006-07-06 14:29:24 +0200 (Thu, 06 Jul 2006) | 3 lines
added XMLParser alias for cElementTree compatibility
........
r47271 | nick.coghlan | 2006-07-06 14:53:04 +0200 (Thu, 06 Jul 2006) | 1 line
Revert the __module_name__ changes made in rev 47142. We'll revisit this in Python 2.6
........
r47272 | nick.coghlan | 2006-07-06 15:04:56 +0200 (Thu, 06 Jul 2006) | 1 line
Update the tutorial section on relative imports
........
r47273 | nick.coghlan | 2006-07-06 15:35:27 +0200 (Thu, 06 Jul 2006) | 1 line
Ignore ImportWarning by default
........
r47274 | nick.coghlan | 2006-07-06 15:41:34 +0200 (Thu, 06 Jul 2006) | 1 line
Cover ImportWarning, PendingDeprecationWarning and simplefilter() in the warnings module docs
........
r47275 | nick.coghlan | 2006-07-06 15:47:18 +0200 (Thu, 06 Jul 2006) | 1 line
Add NEWS entries for the ImportWarning change and documentation update
........
r47276 | andrew.kuchling | 2006-07-06 15:57:28 +0200 (Thu, 06 Jul 2006) | 1 line
ImportWarning is now silent by default
........
r47277 | thomas.heller | 2006-07-06 17:06:05 +0200 (Thu, 06 Jul 2006) | 2 lines
Document the correct return type of PyLong_AsUnsignedLongLongMask.
........
r47278 | hyeshik.chang | 2006-07-06 17:21:52 +0200 (Thu, 06 Jul 2006) | 2 lines
Add a testcase for r47086 which fixed a bug in codec_getstreamcodec().
........
r47279 | hyeshik.chang | 2006-07-06 17:39:24 +0200 (Thu, 06 Jul 2006) | 3 lines
Test using all CJK encodings for the testcases which don't require
specific encodings.
........
r47280 | martin.v.loewis | 2006-07-06 21:28:03 +0200 (Thu, 06 Jul 2006) | 2 lines
Properly generate logical file ids. Fixes #1515998.
Also correct typo in Control.mapping.
........
r47287 | neal.norwitz | 2006-07-07 08:03:15 +0200 (Fri, 07 Jul 2006) | 17 lines
Restore rev 47014:
The hppa ubuntu box sometimes hangs forever in these tests. My guess
is that the wait is failing for some reason. Use WNOHANG, so we won't
wait until the buildbot kills the test suite.
I haven't been able to reproduce the failure, so I'm not sure if
this will help or not. Hopefully, this change will cause the test
to fail, rather than hang. That will be better since we will get
the rest of the test results. It may also help us debug the real problem.
*** The reason this originally failed was because there were many
zombie children outstanding before rev 47158 cleaned them up.
There are still hangs in test_subprocess that need to be addressed,
but that will take more work. This should close some holes.
........
r47289 | georg.brandl | 2006-07-07 10:15:12 +0200 (Fri, 07 Jul 2006) | 3 lines
Fix RFC number.
........
r50489 | neal.norwitz | 2006-07-08 07:31:37 +0200 (Sat, 08 Jul 2006) | 1 line
Fix SF bug #1519018: 'as' is now validated properly in import statements
........
r50490 | georg.brandl | 2006-07-08 14:15:27 +0200 (Sat, 08 Jul 2006) | 3 lines
Add an additional test for bug #1519018.
........
r50491 | tim.peters | 2006-07-08 21:55:05 +0200 (Sat, 08 Jul 2006) | 2 lines
Whitespace normalization.
........
r50493 | neil.schemenauer | 2006-07-09 18:16:34 +0200 (Sun, 09 Jul 2006) | 2 lines
Fix AST compiler bug #1501934: incorrect LOAD/STORE_GLOBAL generation.
........
r50495 | neil.schemenauer | 2006-07-09 23:19:29 +0200 (Sun, 09 Jul 2006) | 2 lines
Fix SF bug 1441486: bad unary minus folding in compiler.
........
r50497 | neal.norwitz | 2006-07-10 00:14:42 +0200 (Mon, 10 Jul 2006) | 4 lines
On 64 bit systems, int literals that use less than 64 bits are now ints
rather than longs. This also fixes the test for eval(-sys.maxint - 1).
........
r50500 | neal.norwitz | 2006-07-10 02:04:44 +0200 (Mon, 10 Jul 2006) | 4 lines
Bug #1512814, Fix incorrect lineno's when code at module scope
started after line 256.
........
r50501 | neal.norwitz | 2006-07-10 02:05:34 +0200 (Mon, 10 Jul 2006) | 1 line
Fix doco. Backport candidate.
........
r50503 | neal.norwitz | 2006-07-10 02:23:17 +0200 (Mon, 10 Jul 2006) | 5 lines
Part of SF patch #1484695. This removes dead code. The chksum was
already verified in .frombuf() on the lines above. If there was
a problem an exception is raised, so there was no way this condition
could have been true.
........
r50504 | neal.norwitz | 2006-07-10 03:18:57 +0200 (Mon, 10 Jul 2006) | 3 lines
Patch #1516912: improve Modules support for OpenVMS.
........
r50506 | neal.norwitz | 2006-07-10 04:36:41 +0200 (Mon, 10 Jul 2006) | 7 lines
Patch #1504046: Add documentation for xml.etree.
/F wrote the text docs, Englebert Gruber massaged it to latex and I
did some more massaging to try and improve the consistency and
fix some name mismatches between the declaration and text.
........
r50509 | martin.v.loewis | 2006-07-10 09:23:48 +0200 (Mon, 10 Jul 2006) | 2 lines
Introduce DISTUTILS_USE_SDK as a flag to determine whether the
SDK environment should be used. Fixes #1508010.
........
r50510 | martin.v.loewis | 2006-07-10 09:26:41 +0200 (Mon, 10 Jul 2006) | 1 line
Change error message to indicate that VS2003 is necessary to build extension modules, not the .NET SDK.
........
r50511 | martin.v.loewis | 2006-07-10 09:29:41 +0200 (Mon, 10 Jul 2006) | 1 line
Add svn:ignore.
........
r50512 | anthony.baxter | 2006-07-10 09:41:04 +0200 (Mon, 10 Jul 2006) | 1 line
preparing for 2.5b2
........
r50513 | thomas.heller | 2006-07-10 11:10:28 +0200 (Mon, 10 Jul 2006) | 2 lines
Fix bug #1518190: accept any integer or long value in the
ctypes.c_void_p constructor.
........
r50514 | thomas.heller | 2006-07-10 11:31:06 +0200 (Mon, 10 Jul 2006) | 3 lines
Fixed a segfault when ctypes.wintypes were imported on
non-Windows machines.
........
r50516 | thomas.heller | 2006-07-10 13:11:10 +0200 (Mon, 10 Jul 2006) | 3 lines
Assigning None to pointer type structure fields possible overwrote
wrong fields.
........
r50517 | thomas.heller | 2006-07-10 13:17:37 +0200 (Mon, 10 Jul 2006) | 5 lines
Moved the ctypes news entries from the 'Library' section into the
'Extension Modules' section where they belong, probably.
This destroyes the original order of the news entries, don't know
if that is important or not.
........
r50526 | phillip.eby | 2006-07-10 21:03:29 +0200 (Mon, 10 Jul 2006) | 2 lines
Fix SF#1516184 and add a test to prevent regression.
........
r50528 | phillip.eby | 2006-07-10 21:18:35 +0200 (Mon, 10 Jul 2006) | 2 lines
Fix SF#1457312: bad socket error handling in distutils "upload" command.
........
r50537 | peter.astrand | 2006-07-10 22:39:49 +0200 (Mon, 10 Jul 2006) | 1 line
Make it possible to run test_subprocess.py with Python 2.2, which lacks test_support.reap_children().
........
r50541 | tim.peters | 2006-07-10 23:08:24 +0200 (Mon, 10 Jul 2006) | 5 lines
After approval from Anthony, merge the tim-current_frames
branch into the trunk. This adds a new sys._current_frames()
function, which returns a dict mapping thread id to topmost
thread stack frame.
........
r50542 | tim.peters | 2006-07-10 23:11:49 +0200 (Mon, 10 Jul 2006) | 2 lines
Whitespace normalization.
........
r50553 | martin.v.loewis | 2006-07-11 00:11:28 +0200 (Tue, 11 Jul 2006) | 4 lines
Patch #1519566: Remove unused _tofill member.
Make begin_fill idempotent.
Update demo2 to demonstrate filling of concave shapes.
........
r50567 | anthony.baxter | 2006-07-11 04:04:09 +0200 (Tue, 11 Jul 2006) | 4 lines
#1494314: Fix a regression with high-numbered sockets in 2.4.3. This
means that select() on sockets > FD_SETSIZE (typically 1024) work again.
The patch makes sockets use poll() internally where available.
........
r50568 | tim.peters | 2006-07-11 04:17:48 +0200 (Tue, 11 Jul 2006) | 2 lines
Whitespace normalization.
........
r50575 | thomas.heller | 2006-07-11 18:42:05 +0200 (Tue, 11 Jul 2006) | 1 line
Add missing Py_DECREF.
........
r50576 | thomas.heller | 2006-07-11 18:44:25 +0200 (Tue, 11 Jul 2006) | 1 line
Add missing Py_DECREFs.
........
r50579 | andrew.kuchling | 2006-07-11 19:20:16 +0200 (Tue, 11 Jul 2006) | 1 line
Bump version number; add sys._current_frames
........
r50582 | thomas.heller | 2006-07-11 20:28:35 +0200 (Tue, 11 Jul 2006) | 3 lines
When a foreign function is retrived by calling __getitem__ on a ctypes
library instance, do not set it as attribute.
........
r50583 | thomas.heller | 2006-07-11 20:40:50 +0200 (Tue, 11 Jul 2006) | 2 lines
Change the ctypes version number to 1.0.0.
........
r50597 | neal.norwitz | 2006-07-12 07:26:17 +0200 (Wed, 12 Jul 2006) | 3 lines
Bug #1520864: unpacking singleton tuples in for loop (for x, in) work again.
........
r50598 | neal.norwitz | 2006-07-12 07:26:35 +0200 (Wed, 12 Jul 2006) | 1 line
Fix function name in error msg
........
r50599 | neal.norwitz | 2006-07-12 07:27:46 +0200 (Wed, 12 Jul 2006) | 4 lines
Fix uninitialized memory read reported by Valgrind when running doctest.
This could happen if size == 0.
........
r50600 | neal.norwitz | 2006-07-12 09:28:29 +0200 (Wed, 12 Jul 2006) | 1 line
Actually change the MAGIC #. Create a new section for 2.5c1 and mention the impact of changing the MAGIC #.
........
r50601 | thomas.heller | 2006-07-12 10:43:47 +0200 (Wed, 12 Jul 2006) | 3 lines
Fix #1467450: ctypes now uses RTLD_GLOBAL by default on OSX 10.3 to
load shared libraries.
........
r50604 | thomas.heller | 2006-07-12 16:25:18 +0200 (Wed, 12 Jul 2006) | 3 lines
Fix the wrong description of LibraryLoader.LoadLibrary, and document
the DEFAULT_MODE constant.
........
r50607 | georg.brandl | 2006-07-12 17:31:17 +0200 (Wed, 12 Jul 2006) | 3 lines
Accept long options "--help" and "--version".
........
r50617 | thomas.heller | 2006-07-13 11:53:47 +0200 (Thu, 13 Jul 2006) | 3 lines
A misspelled preprocessor symbol caused ctypes to be always compiled
without thread support. Replaced WITH_THREADS with WITH_THREAD.
........
r50619 | thomas.heller | 2006-07-13 19:01:14 +0200 (Thu, 13 Jul 2006) | 3 lines
Fix #1521375. When running with root priviledges, 'gcc -o /dev/null'
did overwrite /dev/null. Use a temporary file instead of /dev/null.
........
r50620 | thomas.heller | 2006-07-13 19:05:13 +0200 (Thu, 13 Jul 2006) | 2 lines
Fix misleading words.
........
r50622 | andrew.kuchling | 2006-07-13 19:37:26 +0200 (Thu, 13 Jul 2006) | 1 line
Typo fix
........
r50629 | georg.brandl | 2006-07-14 09:12:54 +0200 (Fri, 14 Jul 2006) | 3 lines
Patch #1521874: grammar errors in doanddont.tex.
........
r50630 | neal.norwitz | 2006-07-14 09:20:04 +0200 (Fri, 14 Jul 2006) | 1 line
Try to improve grammar further.
........
r50631 | martin.v.loewis | 2006-07-14 11:58:55 +0200 (Fri, 14 Jul 2006) | 1 line
Extend build_ssl to Win64, using VSExtComp.
........
r50632 | martin.v.loewis | 2006-07-14 14:10:09 +0200 (Fri, 14 Jul 2006) | 1 line
Add debug output to analyse buildbot failure.
........
r50633 | martin.v.loewis | 2006-07-14 14:31:05 +0200 (Fri, 14 Jul 2006) | 1 line
Fix Debug build of _ssl.
........
r50636 | andrew.kuchling | 2006-07-14 15:32:38 +0200 (Fri, 14 Jul 2006) | 1 line
Mention new options
........
r50638 | peter.astrand | 2006-07-14 16:04:45 +0200 (Fri, 14 Jul 2006) | 1 line
Bug #1223937: CalledProcessError.errno -> CalledProcessError.returncode.
........
r50640 | thomas.heller | 2006-07-14 17:01:05 +0200 (Fri, 14 Jul 2006) | 4 lines
Make the prototypes of our private PyUnicode_FromWideChar and
PyUnicode_AsWideChar replacement functions compatible to the official
functions by using Py_ssize_t instead of int.
........
r50643 | thomas.heller | 2006-07-14 19:51:14 +0200 (Fri, 14 Jul 2006) | 3 lines
Patch #1521817: The index range checking on ctypes arrays containing
exactly one element is enabled again.
........
r50647 | thomas.heller | 2006-07-14 20:22:50 +0200 (Fri, 14 Jul 2006) | 2 lines
Updates for the ctypes documentation.
........
r50655 | fredrik.lundh | 2006-07-14 23:45:48 +0200 (Fri, 14 Jul 2006) | 3 lines
typo
........
r50664 | george.yoshida | 2006-07-15 18:03:49 +0200 (Sat, 15 Jul 2006) | 2 lines
Bug #15187702 : ext/win-cookbook.html has a broken link to distutils
........
r50667 | bob.ippolito | 2006-07-15 18:53:15 +0200 (Sat, 15 Jul 2006) | 1 line
Patch #1220874: Update the binhex module for Mach-O.
........
r50671 | fred.drake | 2006-07-16 03:21:20 +0200 (Sun, 16 Jul 2006) | 1 line
clean up some link markup
........
r50673 | neal.norwitz | 2006-07-16 03:50:38 +0200 (Sun, 16 Jul 2006) | 4 lines
Bug #1512814, Fix incorrect lineno's when code within a function
had more than 255 blank lines. Byte codes need to go first, line #s second.
........
r50674 | neal.norwitz | 2006-07-16 04:00:32 +0200 (Sun, 16 Jul 2006) | 5 lines
a & b were dereffed above, so they are known to be valid pointers.
z is known to be NULL, nothing to DECREF.
Reported by Klockwork, #107.
........
r50675 | neal.norwitz | 2006-07-16 04:02:57 +0200 (Sun, 16 Jul 2006) | 5 lines
self is dereffed (and passed as first arg), so it's known to be good.
func is returned from PyArg_ParseTuple and also dereffed.
Reported by Klocwork, #30 (self one at least).
........
r50676 | neal.norwitz | 2006-07-16 04:05:35 +0200 (Sun, 16 Jul 2006) | 4 lines
proto was dereffed above and is known to be good. No need for X.
Reported by Klocwork, #39.
........
r50677 | neal.norwitz | 2006-07-16 04:15:27 +0200 (Sun, 16 Jul 2006) | 5 lines
Fix memory leaks in some conditions.
Reported by Klocwork #152.
........
r50678 | neal.norwitz | 2006-07-16 04:17:36 +0200 (Sun, 16 Jul 2006) | 4 lines
Fix memory leak under some conditions.
Reported by Klocwork, #98.
........
r50679 | neal.norwitz | 2006-07-16 04:22:30 +0200 (Sun, 16 Jul 2006) | 8 lines
Use sizeof(buffer) instead of duplicating the constants to ensure they won't
be wrong.
The real change is to pass (bufsz - 1) to PyOS_ascii_formatd and 1
to strncat. strncat copies n+1 bytes from src (not dest).
Reported by Klocwork #58.
........
r50680 | neal.norwitz | 2006-07-16 04:32:03 +0200 (Sun, 16 Jul 2006) | 5 lines
Handle a NULL name properly.
Reported by Klocwork #67
........
r50681 | neal.norwitz | 2006-07-16 04:35:47 +0200 (Sun, 16 Jul 2006) | 6 lines
PyFunction_SetDefaults() is documented as taking None or a tuple.
A NULL would crash the PyTuple_Check(). Now make NULL return a SystemError.
Reported by Klocwork #73.
........
r50683 | neal.norwitz | 2006-07-17 02:55:45 +0200 (Mon, 17 Jul 2006) | 5 lines
Stop INCREFing name, then checking if it's NULL. name (f_name) should never
be NULL so assert it. Fix one place where we could have passed NULL.
Reported by Klocwork #66.
........
r50684 | neal.norwitz | 2006-07-17 02:57:15 +0200 (Mon, 17 Jul 2006) | 5 lines
otherset is known to be non-NULL based on checks before and DECREF after.
DECREF otherset rather than XDECREF in error conditions too.
Reported by Klockwork #154.
........
r50685 | neal.norwitz | 2006-07-17 02:59:04 +0200 (Mon, 17 Jul 2006) | 7 lines
Reported by Klocwork #151.
v2 can be NULL if exception2 is NULL. I don't think that condition can happen,
but I'm not sure it can't either. Now the code will protect against either
being NULL.
........
r50686 | neal.norwitz | 2006-07-17 03:00:16 +0200 (Mon, 17 Jul 2006) | 1 line
Add NEWS entry for a bunch of fixes due to warnings produced by Klocworks static analysis tool.
........
r50687 | fred.drake | 2006-07-17 07:47:52 +0200 (Mon, 17 Jul 2006) | 3 lines
document xmlcore (still minimal; needs mention in each of the xml.* modules)
SF bug #1504456 (partial)
........
r50688 | georg.brandl | 2006-07-17 15:23:46 +0200 (Mon, 17 Jul 2006) | 3 lines
Remove usage of sets module (patch #1500609).
........
r50689 | georg.brandl | 2006-07-17 15:26:33 +0200 (Mon, 17 Jul 2006) | 3 lines
Add missing NEWS item (#1522771)
........
r50690 | andrew.kuchling | 2006-07-17 18:47:54 +0200 (Mon, 17 Jul 2006) | 1 line
Attribute more features
........
r50692 | kurt.kaiser | 2006-07-17 23:59:27 +0200 (Mon, 17 Jul 2006) | 8 lines
Patch 1479219 - Tal Einat
1. 'as' highlighted as builtin in comment string on import line
2. Comments such as "#False identity" which start with a keyword immediately
after the '#' character aren't colored as comments.
3. u or U beginning unicode string not correctly highlighted
Closes bug 1325071
........
r50693 | barry.warsaw | 2006-07-18 01:07:51 +0200 (Tue, 18 Jul 2006) | 16 lines
decode_rfc2231(): Be more robust against buggy RFC 2231 encodings.
Specifically, instead of raising a ValueError when there is a single tick in
the parameter, simply return that the entire string unquoted, with None for
both the charset and the language. Also, if there are more than 2 ticks in
the parameter, interpret the first three parts as the standard RFC 2231 parts,
then the rest of the parts as the encoded string.
Test cases added.
Original fewer-than-3-parts fix by Tokio Kikuchi.
Resolves SF bug # 1218081. I will back port the fix and tests to Python 2.4
(email 3.0) and Python 2.3 (email 2.5).
Also, bump the version number to email 4.0.1, removing the 'alpha' moniker.
........
r50695 | kurt.kaiser | 2006-07-18 06:03:16 +0200 (Tue, 18 Jul 2006) | 2 lines
Rebinding Tab key was inserting 'tab' instead of 'Tab'. Bug 1179168.
........
r50696 | brett.cannon | 2006-07-18 06:41:36 +0200 (Tue, 18 Jul 2006) | 6 lines
Fix bug #1520914. Starting in 2.4, time.strftime() began to check the bounds
of values in the time tuple passed in. Unfortunately people came to rely on
undocumented behaviour of setting unneeded values to 0, regardless of if it was
within the valid range. Now those values force the value internally to the
minimum value when 0 is passed in.
........
r50697 | facundo.batista | 2006-07-18 14:16:13 +0200 (Tue, 18 Jul 2006) | 1 line
Comments and docs cleanups, and some little fixes, provided by Santiágo Peresón
........
r50704 | martin.v.loewis | 2006-07-18 19:46:31 +0200 (Tue, 18 Jul 2006) | 2 lines
Patch #1524429: Use repr instead of backticks again.
........
r50706 | tim.peters | 2006-07-18 23:55:15 +0200 (Tue, 18 Jul 2006) | 2 lines
Whitespace normalization.
........
r50708 | tim.peters | 2006-07-19 02:03:19 +0200 (Wed, 19 Jul 2006) | 18 lines
SF bug 1524317: configure --without-threads fails to build
Moved the code for _PyThread_CurrentFrames() up, so it's no longer
in a huge "#ifdef WITH_THREAD" block (I didn't realize it /was/ in
one).
Changed test_sys's test_current_frames() so it passes with or without
thread supported compiled in.
Note that test_sys fails when Python is compiled without threads,
but for an unrelated reason (the old test_exit() fails with an
indirect ImportError on the `thread` module). There are also
other unrelated compilation failures without threads, in extension
modules (like ctypes); at least the core compiles again.
Do we really support --without-threads? If so, there are several
problems remaining.
........
r50713 | thomas.heller | 2006-07-19 11:09:32 +0200 (Wed, 19 Jul 2006) | 4 lines
Make sure the _ctypes extension can be compiled when WITH_THREAD is
not defined on Windows, even if that configuration is probably not
supported at all.
........
r50715 | martin.v.loewis | 2006-07-19 19:18:32 +0200 (Wed, 19 Jul 2006) | 4 lines
Revert r50706 (Whitespace normalization) and
r50697: Comments and docs cleanups, and some little fixes
per recommendation from Raymond Hettinger.
........
r50719 | phillip.eby | 2006-07-20 17:54:16 +0200 (Thu, 20 Jul 2006) | 4 lines
Fix SF#1516184 (again) and add a test to prevent regression.
(There was a problem with empty filenames still causing recursion)
........
r50720 | georg.brandl | 2006-07-20 18:28:39 +0200 (Thu, 20 Jul 2006) | 3 lines
Guard for _active being None in __del__ method.
........
r50721 | vinay.sajip | 2006-07-20 18:28:39 +0200 (Thu, 20 Jul 2006) | 1 line
Updated documentation for TimedRotatingFileHandler relating to how rollover files are named. The previous documentation was wrongly the same as for RotatingFileHandler.
........
r50731 | fred.drake | 2006-07-20 22:11:57 +0200 (Thu, 20 Jul 2006) | 1 line
markup fix
........
r50739 | kurt.kaiser | 2006-07-21 00:22:52 +0200 (Fri, 21 Jul 2006) | 7 lines
Avoid occasional failure to detect closing paren properly.
Patch 1407280 Tal Einat
M ParenMatch.py
M NEWS.txt
M CREDITS.txt
........
r50740 | vinay.sajip | 2006-07-21 01:20:12 +0200 (Fri, 21 Jul 2006) | 1 line
Addressed SF#1524081 by using a dictionary to map level names to syslog priority names, rather than a string.lower().
........
r50741 | neal.norwitz | 2006-07-21 07:29:58 +0200 (Fri, 21 Jul 2006) | 1 line
Add some asserts that we got good params passed
........
r50742 | neal.norwitz | 2006-07-21 07:31:02 +0200 (Fri, 21 Jul 2006) | 5 lines
Move the initialization of some pointers earlier. The problem is
that if we call Py_DECREF(frame) like we do if allocating locals fails,
frame_dealloc() will try to use these bogus values and crash.
........
r50743 | neal.norwitz | 2006-07-21 07:32:28 +0200 (Fri, 21 Jul 2006) | 4 lines
Handle allocation failures gracefully. Found with failmalloc.
Many (all?) of these could be backported.
........
r50745 | neal.norwitz | 2006-07-21 09:59:02 +0200 (Fri, 21 Jul 2006) | 1 line
Speel initialise write. Tanks Anthony.
........
r50746 | neal.norwitz | 2006-07-21 09:59:47 +0200 (Fri, 21 Jul 2006) | 2 lines
Handle more memory allocation failures without crashing.
........
r50754 | barry.warsaw | 2006-07-21 16:51:07 +0200 (Fri, 21 Jul 2006) | 23 lines
More RFC 2231 improvements for the email 4.0 package. As Mark Sapiro rightly
points out there are really two types of continued headers defined in this
RFC (i.e. "encoded" parameters with the form "name*0*=" and unencoded
parameters with the form "name*0="), but we were were handling them both the
same way and that isn't correct.
This patch should be much more RFC compliant in that only encoded params are
%-decoded and the charset/language information is only extract if there are
any encoded params in the segments. If there are no encoded params then the
RFC says that there will be no charset/language parts.
Note however that this will change the return value for Message.get_param() in
some cases. For example, whereas before if you had all unencoded param
continuations you would have still gotten a 3-tuple back from this method
(with charset and language == None), you will now get just a string. I don't
believe this is a backward incompatible change though because the
documentation for this method already indicates that either return value is
possible and that you must do an isinstance(val, tuple) check to discriminate
between the two. (Yeah that API kind of sucks but we can't change /that/
without breaking code.)
Test cases, some documentation updates, and a NEWS item accompany this patch.
........
r50759 | georg.brandl | 2006-07-21 19:36:31 +0200 (Fri, 21 Jul 2006) | 3 lines
Fix check for empty list (vs. None).
........
r50771 | brett.cannon | 2006-07-22 00:44:07 +0200 (Sat, 22 Jul 2006) | 2 lines
Remove an XXX marker in a comment.
........
r50773 | neal.norwitz | 2006-07-22 18:20:49 +0200 (Sat, 22 Jul 2006) | 1 line
Fix more memory allocation issues found with failmalloc.
........
r50774 | neal.norwitz | 2006-07-22 19:00:57 +0200 (Sat, 22 Jul 2006) | 1 line
Don't fail if the directory already exists
........
r50775 | greg.ward | 2006-07-23 04:25:53 +0200 (Sun, 23 Jul 2006) | 6 lines
Be a lot smarter about whether this test passes: instead of assuming
that a 2.93 sec audio file will always take 3.1 sec (as it did on the
hardware I had when I first wrote the test), expect that it will take
2.93 sec +/- 10%, and only fail if it's outside of that range.
Compute the expected
........
r50776 | kurt.kaiser | 2006-07-23 06:19:49 +0200 (Sun, 23 Jul 2006) | 2 lines
Tooltips failed on new-syle class __init__ args. Bug 1027566 Loren Guthrie
........
r50777 | neal.norwitz | 2006-07-23 09:50:36 +0200 (Sun, 23 Jul 2006) | 1 line
Handle more mem alloc issues found with failmalloc
........
r50778 | neal.norwitz | 2006-07-23 09:51:58 +0200 (Sun, 23 Jul 2006) | 5 lines
If the for loop isn't entered, entryblock will be NULL. If passed
to stackdepth_walk it will be dereffed.
Not sure if I found with failmalloc or Klockwork #55.
........
r50779 | neal.norwitz | 2006-07-23 09:53:14 +0200 (Sun, 23 Jul 2006) | 4 lines
Move the initialization of size_a down below the check for a being NULL.
Reported by Klocwork #106
........
r50780 | neal.norwitz | 2006-07-23 09:55:55 +0200 (Sun, 23 Jul 2006) | 9 lines
Check the allocation of b_objects and return if there was a failure.
Also fix a few memory leaks in other failure scenarios.
It seems that if b_objects == Py_None, we will have an extra ref to
b_objects. Add XXX comment so hopefully someone documents why the
else isn't necessary or adds it in.
Reported by Klocwork #20
........
r50781 | neal.norwitz | 2006-07-23 09:57:11 +0200 (Sun, 23 Jul 2006) | 2 lines
Fix memory leaks spotted by Klocwork #37.
........
r50782 | neal.norwitz | 2006-07-23 09:59:00 +0200 (Sun, 23 Jul 2006) | 5 lines
nextlink can be NULL if teedataobject_new fails, so use XINCREF.
Ensure that dataobj is never NULL.
Reported by Klocwork #102
........
r50783 | neal.norwitz | 2006-07-23 10:01:43 +0200 (Sun, 23 Jul 2006) | 8 lines
Ensure we don't write beyond errText. I think I got this right, but
it definitely could use some review to ensure I'm not off by one
and there's no possible overflow/wrap-around of bytes_left.
Reported by Klocwork #1.
Fix a problem if there is a failure allocating self->db.
Found with failmalloc.
........
r50784 | ronald.oussoren | 2006-07-23 11:41:09 +0200 (Sun, 23 Jul 2006) | 3 lines
Without this patch CMD-W won't close EditorWindows on MacOS X. This solves
part of bug #1517990.
........
r50785 | ronald.oussoren | 2006-07-23 11:46:11 +0200 (Sun, 23 Jul 2006) | 5 lines
Fix for bug #1517996: Class and Path browsers show Tk menu
This patch replaces the menubar that is used by AquaTk for windows without a
menubar of their own by one that is more appropriate for IDLE.
........
r50786 | andrew.macintyre | 2006-07-23 14:57:02 +0200 (Sun, 23 Jul 2006) | 2 lines
Build updates for OS/2 EMX port
........
r50787 | andrew.macintyre | 2006-07-23 15:00:04 +0200 (Sun, 23 Jul 2006) | 3 lines
bugfix: PyThread_start_new_thread() returns the thread ID, not a flag;
will backport.
........
r50789 | andrew.macintyre | 2006-07-23 15:04:00 +0200 (Sun, 23 Jul 2006) | 2 lines
Get mailbox module working on OS/2 EMX port.
........
r50791 | greg.ward | 2006-07-23 18:05:51 +0200 (Sun, 23 Jul 2006) | 1 line
Resync optparse with Optik 1.5.3: minor tweaks for/to tests.
........
r50794 | martin.v.loewis | 2006-07-24 07:05:22 +0200 (Mon, 24 Jul 2006) | 2 lines
Update list of unsupported systems. Fixes #1510853.
........
r50795 | martin.v.loewis | 2006-07-24 12:26:33 +0200 (Mon, 24 Jul 2006) | 1 line
Patch #1448199: Release GIL around ConnectRegistry.
........
r50796 | martin.v.loewis | 2006-07-24 13:54:53 +0200 (Mon, 24 Jul 2006) | 3 lines
Patch #1232023: Don't include empty path component from registry,
so that the current directory does not get added to sys.path.
Also fixes #1526785.
........
r50797 | martin.v.loewis | 2006-07-24 14:54:17 +0200 (Mon, 24 Jul 2006) | 3 lines
Bug #1524310: Properly report errors from FindNextFile in os.listdir.
Will backport to 2.4.
........
r50800 | georg.brandl | 2006-07-24 15:28:57 +0200 (Mon, 24 Jul 2006) | 7 lines
Patch #1523356: fix determining include dirs in python-config.
Also don't install "python-config" when doing altinstall, but
always install "python-config2.x" and make a link to it like
with the main executable.
........
r50802 | georg.brandl | 2006-07-24 15:46:47 +0200 (Mon, 24 Jul 2006) | 3 lines
Patch #1527744: right order of includes in order to have HAVE_CONIO_H defined properly.
........
r50803 | georg.brandl | 2006-07-24 16:09:56 +0200 (Mon, 24 Jul 2006) | 3 lines
Patch #1515343: Fix printing of deprecated string exceptions with a
value in the traceback module.
........
r50804 | kurt.kaiser | 2006-07-24 19:13:23 +0200 (Mon, 24 Jul 2006) | 7 lines
EditorWindow failed when used stand-alone if sys.ps1 not set.
Bug 1010370 Dave Florek
M EditorWindow.py
M PyShell.py
M NEWS.txt
........
r50805 | kurt.kaiser | 2006-07-24 20:05:51 +0200 (Mon, 24 Jul 2006) | 6 lines
- EditorWindow.test() was failing. Bug 1417598
M EditorWindow.py
M ScriptBinding.py
M NEWS.txt
........
r50808 | georg.brandl | 2006-07-24 22:11:35 +0200 (Mon, 24 Jul 2006) | 3 lines
Repair accidental NameError.
........
r50809 | tim.peters | 2006-07-24 23:02:15 +0200 (Mon, 24 Jul 2006) | 2 lines
Whitespace normalization.
........
r50810 | greg.ward | 2006-07-25 04:11:12 +0200 (Tue, 25 Jul 2006) | 3 lines
Don't use standard assert: want tests to fail even when run with -O.
Delete cruft.
........
r50811 | tim.peters | 2006-07-25 06:07:22 +0200 (Tue, 25 Jul 2006) | 10 lines
current_frames_with_threads(): There's actually no way
to guess /which/ line the spawned thread is in at the time
sys._current_frames() is called: we know it finished
enter_g.set(), but can't know whether the instruction
counter has advanced to the following leave_g.wait().
The latter is overwhelming most likely, but not guaranteed,
and I see that the "x86 Ubuntu dapper (icc) trunk" buildbot
found it on the other line once. Changed the test so it
passes in either case.
........
r50815 | martin.v.loewis | 2006-07-25 11:53:12 +0200 (Tue, 25 Jul 2006) | 2 lines
Bug #1525817: Don't truncate short lines in IDLE's tool tips.
........
r50816 | martin.v.loewis | 2006-07-25 12:05:47 +0200 (Tue, 25 Jul 2006) | 3 lines
Bug #978833: Really close underlying socket in _socketobject.close.
Will backport to 2.4.
........
r50817 | martin.v.loewis | 2006-07-25 12:11:14 +0200 (Tue, 25 Jul 2006) | 1 line
Revert incomplete checkin.
........
r50819 | georg.brandl | 2006-07-25 12:22:34 +0200 (Tue, 25 Jul 2006) | 4 lines
Patch #1525766: correctly pass onerror arg to recursive calls
of pkg.walk_packages. Also improve the docstrings.
........
r50825 | brett.cannon | 2006-07-25 19:32:20 +0200 (Tue, 25 Jul 2006) | 2 lines
Add comment for changes to test_ossaudiodev.
........
r50826 | brett.cannon | 2006-07-25 19:34:36 +0200 (Tue, 25 Jul 2006) | 3 lines
Fix a bug in the messages for an assert failure where not enough arguments to a string
were being converted in the format.
........
r50828 | armin.rigo | 2006-07-25 20:09:57 +0200 (Tue, 25 Jul 2006) | 2 lines
Document why is and is not a good way to fix the gc_inspection crasher.
........
r50829 | armin.rigo | 2006-07-25 20:11:07 +0200 (Tue, 25 Jul 2006) | 5 lines
Added another crasher, which hit me today (I was not intentionally
writing such code, of course, but it took some gdb time to figure out
what my bug was).
........
r50830 | armin.rigo | 2006-07-25 20:38:39 +0200 (Tue, 25 Jul 2006) | 3 lines
Document the crashers that will not go away soon as "won't fix",
and explain why.
........
r50831 | ronald.oussoren | 2006-07-25 21:13:35 +0200 (Tue, 25 Jul 2006) | 3 lines
Install the compatibility symlink to libpython.a on OSX using 'ln -sf' instead
of 'ln -s', this avoid problems when reinstalling python.
........
r50832 | ronald.oussoren | 2006-07-25 21:20:54 +0200 (Tue, 25 Jul 2006) | 7 lines
Fix for bug #1525447 (renaming to MacOSmodule.c would also work, but not
without causing problems for anyone that is on a case-insensitive filesystem).
Setup.py tries to compile the MacOS extension from MacOSmodule.c, while the
actual file is named macosmodule.c. This is no problem on the (default)
case-insensitive filesystem, but doesn't work on case-sensitive filesystems.
........
r50833 | ronald.oussoren | 2006-07-25 22:28:55 +0200 (Tue, 25 Jul 2006) | 7 lines
Fix bug #1517990: IDLE keybindings on OSX
This adds a new key definition for OSX, which is slightly different from the
classic mac definition.
Also add NEWS item for a couple of bugfixes I added recently.
........
r50834 | tim.peters | 2006-07-26 00:30:24 +0200 (Wed, 26 Jul 2006) | 2 lines
Whitespace normalization.
........
r50839 | neal.norwitz | 2006-07-26 06:00:18 +0200 (Wed, 26 Jul 2006) | 1 line
Hmm, only python2.x is installed, not plain python. Did that change recently?
........
r50840 | barry.warsaw | 2006-07-26 07:54:46 +0200 (Wed, 26 Jul 2006) | 6 lines
Forward port some fixes that were in email 2.5 but for some reason didn't make
it into email 4.0. Specifically, in Message.get_content_charset(), handle RFC
2231 headers that contain an encoding not known to Python, or a character in
the data that isn't in the charset encoding. Also forward port the
appropriate unit tests.
........
r50841 | georg.brandl | 2006-07-26 09:23:32 +0200 (Wed, 26 Jul 2006) | 3 lines
NEWS entry for #1525766.
........
r50842 | georg.brandl | 2006-07-26 09:40:17 +0200 (Wed, 26 Jul 2006) | 3 lines
Bug #1459963: properly capitalize HTTP header names.
........
r50843 | georg.brandl | 2006-07-26 10:03:10 +0200 (Wed, 26 Jul 2006) | 6 lines
Part of bug #1523610: fix miscalculation of buffer length.
Also add a guard against NULL in converttuple and add a test case
(that previously would have crashed).
........
r50844 | martin.v.loewis | 2006-07-26 14:12:56 +0200 (Wed, 26 Jul 2006) | 3 lines
Bug #978833: Really close underlying socket in _socketobject.close.
Fix httplib.HTTPConnection.getresponse to not close the
socket if it is still needed for the response.
........
r50845 | andrew.kuchling | 2006-07-26 19:16:52 +0200 (Wed, 26 Jul 2006) | 1 line
[Bug #1471938] Fix build problem on Solaris 8 by conditionalizing the use of mvwgetnstr(); it was conditionalized a few lines below. Fix from Paul Eggert. I also tried out the STRICT_SYSV_CURSES case and am therefore removing the 'untested' comment.
........
r50846 | andrew.kuchling | 2006-07-26 19:18:01 +0200 (Wed, 26 Jul 2006) | 1 line
Correct error message
........
r50847 | andrew.kuchling | 2006-07-26 19:19:39 +0200 (Wed, 26 Jul 2006) | 1 line
Minor grammar fix
........
r50848 | andrew.kuchling | 2006-07-26 19:22:21 +0200 (Wed, 26 Jul 2006) | 1 line
Put news item in right section
........
r50850 | andrew.kuchling | 2006-07-26 20:03:12 +0200 (Wed, 26 Jul 2006) | 1 line
Use sys.exc_info()
........
r50851 | andrew.kuchling | 2006-07-26 20:15:45 +0200 (Wed, 26 Jul 2006) | 1 line
Use sys.exc_info()
........
r50852 | phillip.eby | 2006-07-26 21:48:27 +0200 (Wed, 26 Jul 2006) | 4 lines
Allow the 'onerror' argument to walk_packages() to catch any Exception, not
just ImportError. This allows documentation tools to better skip unimportable
packages.
........
r50854 | tim.peters | 2006-07-27 01:23:15 +0200 (Thu, 27 Jul 2006) | 2 lines
Whitespace normalization.
........
r50855 | tim.peters | 2006-07-27 03:14:53 +0200 (Thu, 27 Jul 2006) | 21 lines
Bug #1521947: possible bug in mystrtol.c with recent gcc.
In general, C doesn't define anything about what happens when
an operation on a signed integral type overflows, and PyOS_strtol()
did several formally undefined things of that nature on signed
longs. Some version of gcc apparently tries to exploit that now,
and PyOS_strtol() could fail to detect overflow then.
Tried to repair all that, although it seems at least as likely to me
that we'll get screwed by bad platform definitions for LONG_MIN
and/or LONG_MAX now. For that reason, I don't recommend backporting
this.
Note that I have no box on which this makes a lick of difference --
can't really test it, except to note that it didn't break anything
on my boxes.
Silent change: PyOS_strtol() used to return the hard-coded 0x7fffffff
in case of overflow. Now it returns LONG_MAX. They're the same only on
32-bit boxes (although C doesn't guarantee that either ...).
........
r50856 | neal.norwitz | 2006-07-27 05:51:58 +0200 (Thu, 27 Jul 2006) | 6 lines
Don't kill a normal instance of python running on windows when checking
to kill a cygwin instance. build\\python.exe was matching a normal windows
instance. Prefix that with a \\ to ensure build is a directory and not
PCbuild. As discussed on python-dev.
........
r50857 | neal.norwitz | 2006-07-27 05:55:39 +0200 (Thu, 27 Jul 2006) | 5 lines
Closure can't be NULL at this point since we know it's a tuple.
Reported by Klocwork # 74.
........
r50858 | neal.norwitz | 2006-07-27 06:04:50 +0200 (Thu, 27 Jul 2006) | 1 line
No functional change. Add comment and assert to describe why there cannot be overflow which was reported by Klocwork. Discussed on python-dev
........
r50859 | martin.v.loewis | 2006-07-27 08:38:16 +0200 (Thu, 27 Jul 2006) | 3 lines
Bump distutils version to 2.5, as several new features
have been introduced since 2.4.
........
r50860 | andrew.kuchling | 2006-07-27 14:18:20 +0200 (Thu, 27 Jul 2006) | 1 line
Reformat docstring; fix typo
........
r50861 | georg.brandl | 2006-07-27 17:05:36 +0200 (Thu, 27 Jul 2006) | 6 lines
Add test_main() methods. These three tests were never run
by regrtest.py.
We really need a simpler testing framework.
........
r50862 | tim.peters | 2006-07-27 17:09:20 +0200 (Thu, 27 Jul 2006) | 2 lines
News for patch #1529686.
........
r50863 | tim.peters | 2006-07-27 17:11:00 +0200 (Thu, 27 Jul 2006) | 2 lines
Whitespace normalization.
........
r50864 | georg.brandl | 2006-07-27 17:38:33 +0200 (Thu, 27 Jul 2006) | 3 lines
Amend news entry.
........
r50865 | georg.brandl | 2006-07-27 18:08:15 +0200 (Thu, 27 Jul 2006) | 3 lines
Make uuid test suite pass on this box by requesting output with LC_ALL=C.
........
r50866 | andrew.kuchling | 2006-07-27 20:37:33 +0200 (Thu, 27 Jul 2006) | 1 line
Add example
........
r50867 | thomas.heller | 2006-07-27 20:39:55 +0200 (Thu, 27 Jul 2006) | 9 lines
Remove code that is no longer used (ctypes.com).
Fix the DllGetClassObject and DllCanUnloadNow so that they forward the
call to the comtypes.server.inprocserver module.
The latter was never documented, never used by published code, and
didn't work anyway, so I think it does not deserve a NEWS entry (but I
might be wrong).
........
r50868 | andrew.kuchling | 2006-07-27 20:41:21 +0200 (Thu, 27 Jul 2006) | 1 line
Typo fix ('publically' is rare, poss. non-standard)
........
r50869 | andrew.kuchling | 2006-07-27 20:42:41 +0200 (Thu, 27 Jul 2006) | 1 line
Add missing word
........
r50870 | andrew.kuchling | 2006-07-27 20:44:10 +0200 (Thu, 27 Jul 2006) | 1 line
Repair typos
........
r50872 | andrew.kuchling | 2006-07-27 20:53:33 +0200 (Thu, 27 Jul 2006) | 1 line
Update URL; add example
........
r50873 | andrew.kuchling | 2006-07-27 21:07:29 +0200 (Thu, 27 Jul 2006) | 1 line
Add punctuation mark; add some examples
........
r50874 | andrew.kuchling | 2006-07-27 21:11:07 +0200 (Thu, 27 Jul 2006) | 1 line
Mention base64 module; rewrite last sentence to be more positive
........
r50875 | andrew.kuchling | 2006-07-27 21:12:49 +0200 (Thu, 27 Jul 2006) | 1 line
If binhex is higher-level than binascii, it should come first in the chapter
........
r50876 | tim.peters | 2006-07-27 22:47:24 +0200 (Thu, 27 Jul 2006) | 28 lines
check_node(): stop spraying mystery output to stderr.
When a node number disagrees, keep track of all sources & the
node numbers they reported, and stick all that in the error message.
Changed all callers to supply a non-empty "source" argument; made
the "source" argument non-optional.
On my box, test_uuid still fails, but with the less confusing output:
AssertionError: different sources disagree on node:
from source 'getnode1', node was 00038a000015
from source 'getnode2', node was 00038a000015
from source 'ipconfig', node was 001111b2b7bf
Only the last one appears to be correct; e.g.,
C:\Code\python\PCbuild>getmac
Physical Address Transport Name
=================== ==========================================================
00-11-11-B2-B7-BF \Device\Tcpip_{190FB163-5AFD-4483-86A1-2FE16AC61FF1}
62-A1-AC-6C-FD-BE \Device\Tcpip_{8F77DF5A-EA3D-4F1D-975E-D472CEE6438A}
E2-1F-01-C6-5D-88 \Device\Tcpip_{CD18F76B-2EF3-409F-9B8A-6481EE70A1E4}
I can't find anything on my box with MAC 00-03-8a-00-00-15, and am
not clear on where that comes from.
........
r50878 | andrew.kuchling | 2006-07-28 00:40:05 +0200 (Fri, 28 Jul 2006) | 1 line
Reword paragraph
........
r50879 | andrew.kuchling | 2006-07-28 00:49:38 +0200 (Fri, 28 Jul 2006) | 1 line
Add example
........
r50880 | andrew.kuchling | 2006-07-28 00:49:54 +0200 (Fri, 28 Jul 2006) | 1 line
Add example
........
r50881 | barry.warsaw | 2006-07-28 01:43:15 +0200 (Fri, 28 Jul 2006) | 27 lines
Patch #1520294: Support for getset and member descriptors in types.py,
inspect.py, and pydoc.py. Specifically, this allows for querying the type of
an object against these built-in C types and more importantly, for getting
their docstrings printed in the interactive interpreter's help() function.
This patch includes a new built-in module called _types which provides
definitions of getset and member descriptors for use by the types.py module.
These types are exposed as types.GetSetDescriptorType and
types.MemberDescriptorType. Query functions are provided as
inspect.isgetsetdescriptor() and inspect.ismemberdescriptor(). The
implementations of these are robust enough to work with Python implementations
other than CPython, which may not have these fundamental types.
The patch also includes documentation and test suite updates.
I commit these changes now under these guiding principles:
1. Silence is assent. The release manager has not said "no", and of the few
people that cared enough to respond to the thread, the worst vote was "0".
2. It's easier to ask for forgiveness than permission.
3. It's so dang easy to revert stuff in svn, that you could view this as a
forcing function. :)
Windows build patches will follow.
........
r50882 | tim.peters | 2006-07-28 01:44:37 +0200 (Fri, 28 Jul 2006) | 4 lines
Bug #1529297: The rewrite of doctest for Python 2.4 unintentionally
lost that tests are sorted by name before being run. ``DocTestFinder``
has been changed to sort the list of tests it returns.
........
r50883 | tim.peters | 2006-07-28 01:45:48 +0200 (Fri, 28 Jul 2006) | 2 lines
Whitespace normalization.
........
r50884 | tim.peters | 2006-07-28 01:46:36 +0200 (Fri, 28 Jul 2006) | 2 lines
Add missing svn:eol-style property to text files.
........
r50885 | barry.warsaw | 2006-07-28 01:50:40 +0200 (Fri, 28 Jul 2006) | 4 lines
Enable the building of the _types module on Windows.
Note that this has only been tested for VS 2003 since that's all I have.
........
r50887 | tim.peters | 2006-07-28 02:23:15 +0200 (Fri, 28 Jul 2006) | 7 lines
defdict_reduce(): Plug leaks.
We didn't notice these before because test_defaultdict didn't
actually do anything before Georg fixed that earlier today.
Neal's next refleak run then showed test_defaultdict leaking
9 references on each run. That's repaired by this checkin.
........
r50888 | tim.peters | 2006-07-28 02:30:00 +0200 (Fri, 28 Jul 2006) | 2 lines
News about the repaired memory leak in defaultdict.
........
r50889 | gregory.p.smith | 2006-07-28 03:35:25 +0200 (Fri, 28 Jul 2006) | 7 lines
- pybsddb Bug #1527939: bsddb module DBEnv dbremove and dbrename
methods now allow their database parameter to be None as the
sleepycat API allows.
Also adds an appropriate test case for DBEnv.dbrename and dbremove.
........
r50895 | neal.norwitz | 2006-07-28 06:22:34 +0200 (Fri, 28 Jul 2006) | 1 line
Ensure the actual number matches the expected count
........
r50896 | tim.peters | 2006-07-28 06:51:59 +0200 (Fri, 28 Jul 2006) | 6 lines
Live with that "the hardware address" is an ill-defined
concept, and that different ways of trying to find "the
hardware address" may return different results. Certainly
true on both of my Windows boxes, and in different ways
(see whining on python-dev).
........
r50897 | neal.norwitz | 2006-07-28 09:21:27 +0200 (Fri, 28 Jul 2006) | 3 lines
Try to find the MAC addr on various flavours of Unix. This seems hopeless.
The reduces the test_uuid failures, but there's still another method failing.
........
r50898 | martin.v.loewis | 2006-07-28 09:45:49 +0200 (Fri, 28 Jul 2006) | 2 lines
Add UUID for upcoming 2.5b3.
........
r50899 | matt.fleming | 2006-07-28 13:27:27 +0200 (Fri, 28 Jul 2006) | 3 lines
Allow socketmodule to compile on NetBSD -current, whose bluetooth API
differs from both Linux and FreeBSD. Accepted by Neal Norwitz.
........
r50900 | andrew.kuchling | 2006-07-28 14:07:12 +0200 (Fri, 28 Jul 2006) | 1 line
[Patch #1529811] Correction to description of r|* mode
........
r50901 | andrew.kuchling | 2006-07-28 14:18:22 +0200 (Fri, 28 Jul 2006) | 1 line
Typo fix
........
r50902 | andrew.kuchling | 2006-07-28 14:32:43 +0200 (Fri, 28 Jul 2006) | 1 line
Add example
........
r50903 | andrew.kuchling | 2006-07-28 14:33:19 +0200 (Fri, 28 Jul 2006) | 1 line
Add example
........
r50904 | andrew.kuchling | 2006-07-28 14:45:55 +0200 (Fri, 28 Jul 2006) | 1 line
Don't overwrite built-in name; add some blank lines for readability
........
r50905 | andrew.kuchling | 2006-07-28 14:48:07 +0200 (Fri, 28 Jul 2006) | 1 line
Add example. Should I propagate this example to all the other DBM-ish modules, too?
........
r50912 | georg.brandl | 2006-07-28 20:31:39 +0200 (Fri, 28 Jul 2006) | 3 lines
Patch #1529686: also run test_email_codecs with regrtest.py.
........
r50913 | georg.brandl | 2006-07-28 20:36:01 +0200 (Fri, 28 Jul 2006) | 3 lines
Fix spelling.
........
r50915 | thomas.heller | 2006-07-28 21:42:40 +0200 (Fri, 28 Jul 2006) | 3 lines
Remove a useless XXX comment.
Cosmetic changes to the code so that the #ifdef _UNICODE block
doesn't mess emacs code formatting.
........
r50916 | phillip.eby | 2006-07-28 23:12:07 +0200 (Fri, 28 Jul 2006) | 5 lines
Bug #1529871: The speed enhancement patch #921466 broke Python's compliance
with PEP 302. This was fixed by adding an ``imp.NullImporter`` type that is
used in ``sys.path_importer_cache`` to cache non-directory paths and avoid
excessive filesystem operations during imports.
........
r50917 | phillip.eby | 2006-07-28 23:31:54 +0200 (Fri, 28 Jul 2006) | 2 lines
Fix svn merge spew.
........
r50918 | thomas.heller | 2006-07-28 23:43:20 +0200 (Fri, 28 Jul 2006) | 4 lines
Patch #1529514: More openbsd platforms for ctypes.
Regenerated Modules/_ctypes/libffi/configure with autoconf 2.59.
Approved by Neal.
........
r50922 | georg.brandl | 2006-07-29 10:51:21 +0200 (Sat, 29 Jul 2006) | 2 lines
Bug #835255: The "closure" argument to new.function() is now documented.
........
r50924 | georg.brandl | 2006-07-29 11:33:26 +0200 (Sat, 29 Jul 2006) | 3 lines
Bug #1441397: The compiler module now recognizes module and function
docstrings correctly as it did in Python 2.4.
........
r50925 | georg.brandl | 2006-07-29 12:25:46 +0200 (Sat, 29 Jul 2006) | 4 lines
Revert rev 42617, it was introduced to work around bug #1441397.
test_compiler now passes again.
........
r50926 | fred.drake | 2006-07-29 15:22:49 +0200 (Sat, 29 Jul 2006) | 1 line
update target version number
........
r50927 | andrew.kuchling | 2006-07-29 15:56:48 +0200 (Sat, 29 Jul 2006) | 1 line
Add example
........
r50928 | andrew.kuchling | 2006-07-29 16:04:47 +0200 (Sat, 29 Jul 2006) | 1 line
Update URL
........
r50930 | andrew.kuchling | 2006-07-29 16:08:15 +0200 (Sat, 29 Jul 2006) | 1 line
Reword paragraph to match the order of the subsequent sections
........
r50931 | andrew.kuchling | 2006-07-29 16:21:15 +0200 (Sat, 29 Jul 2006) | 1 line
[Bug #1529157] Mention raw_input() and input(); while I'm at it, reword the description a bit
........
r50932 | andrew.kuchling | 2006-07-29 16:42:48 +0200 (Sat, 29 Jul 2006) | 1 line
[Bug #1519571] Document some missing functions: setup(), title(), done()
........
r50933 | andrew.kuchling | 2006-07-29 16:43:55 +0200 (Sat, 29 Jul 2006) | 1 line
Fix docstring punctuation
........
r50934 | andrew.kuchling | 2006-07-29 17:10:32 +0200 (Sat, 29 Jul 2006) | 1 line
[Bug #1414697] Change docstring of set/frozenset types to specify that the contents are unique. Raymond, please feel free to edit or revert.
........
r50935 | andrew.kuchling | 2006-07-29 17:35:21 +0200 (Sat, 29 Jul 2006) | 1 line
[Bug #1530382] Document SSL.server(), .issuer() methods
........
r50936 | andrew.kuchling | 2006-07-29 17:42:46 +0200 (Sat, 29 Jul 2006) | 1 line
Typo fix
........
r50937 | andrew.kuchling | 2006-07-29 17:43:13 +0200 (Sat, 29 Jul 2006) | 1 line
Tweak wording
........
r50938 | matt.fleming | 2006-07-29 17:55:30 +0200 (Sat, 29 Jul 2006) | 2 lines
Fix typo
........
r50939 | andrew.kuchling | 2006-07-29 17:57:08 +0200 (Sat, 29 Jul 2006) | 6 lines
[Bug #1528258] Mention that the 'data' argument can be None.
The constructor docs referred the reader to the add_data() method's docs,
but they weren't very helpful. I've simply copied an earlier explanation
of 'data' that's more useful.
........
r50940 | andrew.kuchling | 2006-07-29 18:08:40 +0200 (Sat, 29 Jul 2006) | 1 line
Set bug/patch count. Take a bow, everyone!
........
r50941 | fred.drake | 2006-07-29 18:56:15 +0200 (Sat, 29 Jul 2006) | 18 lines
expunge the xmlcore changes:
41667, 41668 - initial switch to xmlcore
47044 - mention of xmlcore in What's New
50687 - mention of xmlcore in the library reference
re-apply xmlcore changes to xml:
41674 - line ending changes (re-applied manually), directory props
41677 - add cElementTree wrapper
41678 - PSF licensing for etree
41812 - whitespace normalization
42724 - fix svn:eol-style settings
43681, 43682 - remove Python version-compatibility cruft from minidom
46773 - fix encoding of \r\n\t in attr values in saxutils
47269 - added XMLParser alias for cElementTree compatibility
additional tests were added in Lib/test/test_sax.py that failed with
the xmlcore changes; these relate to SF bugs #1511497, #1513611
........
r50942 | andrew.kuchling | 2006-07-29 20:14:07 +0200 (Sat, 29 Jul 2006) | 17 lines
Reorganize the docs for 'file' and 'open()' after some discussion with Fred.
We want to encourage users to write open() when opening a file, but
open() was described with a single paragraph and
'file' had lots of explanation of the mode and bufsize arguments.
I've shrunk the description of 'file' to cross-reference to the 'File
objects' section, and to open() for an explanation of the arguments.
open() now has all the paragraphs about the mode string. The bufsize
argument was moved up so that it isn't buried at the end; now there's
1 paragraph on mode, 1 on bufsize, and then 3 more on mode. Various
other edits and rearrangements were made in the process.
It's probably best to read the final text and not to try to make sense
of the diffs.
........
r50943 | fred.drake | 2006-07-29 20:19:19 +0200 (Sat, 29 Jul 2006) | 1 line
restore test un-intentionally removed in the xmlcore purge (revision 50941)
........
r50944 | fred.drake | 2006-07-29 20:33:29 +0200 (Sat, 29 Jul 2006) | 3 lines
make the reference to older versions of the documentation a link
to the right page on python.org
........
r50945 | fred.drake | 2006-07-29 21:09:01 +0200 (Sat, 29 Jul 2006) | 1 line
document the footnote usage pattern
........
r50947 | fred.drake | 2006-07-29 21:14:10 +0200 (Sat, 29 Jul 2006) | 1 line
emphasize and oddball nuance of LaTeX comment syntax
........
r50948 | andrew.kuchling | 2006-07-29 21:24:04 +0200 (Sat, 29 Jul 2006) | 1 line
[Patch #1490989 from Skip Montanaro] Mention debugging builds in the API documentation. I've changed Skip's patch to point to Misc/SpecialBuilds and fiddled with the markup a bit.
........
r50949 | neal.norwitz | 2006-07-29 21:29:35 +0200 (Sat, 29 Jul 2006) | 6 lines
Disable these tests until they are reliable across platforms.
These problems may mask more important, real problems.
One or both methods are known to fail on: Solaris, OpenBSD, Debian, Ubuntu.
They pass on Windows and some Linux boxes.
........
r50950 | andrew.kuchling | 2006-07-29 21:50:37 +0200 (Sat, 29 Jul 2006) | 1 line
[Patch #1068277] Clarify that os.path.exists() can return False depending on permissions. Fred approved committing this patch in December 2004!
........
r50952 | fred.drake | 2006-07-29 22:04:42 +0200 (Sat, 29 Jul 2006) | 6 lines
SF bug #1193966: Weakref types documentation misplaced
The information about supporting weakrefs with types defined in C extensions
is moved to the Extending & Embedding manual. Py_TPFLAGS_HAVE_WEAKREFS is
no longer mentioned since it is part of Py_TPFLAGS_DEFAULT.
........
r50953 | skip.montanaro | 2006-07-29 22:06:05 +0200 (Sat, 29 Jul 2006) | 4 lines
Add a comment to the csv reader documentation that explains why the
treatment of newlines changed in 2.5. Pulled almost verbatim from a comment
by Andrew McNamara in <http://python.org/sf/1465014>.
........
r50954 | neal.norwitz | 2006-07-29 22:20:52 +0200 (Sat, 29 Jul 2006) | 3 lines
If the executable doesn't exist, there's no reason to try to start it.
This prevents garbage about command not found being printed on Solaris.
........
r50955 | fred.drake | 2006-07-29 22:21:25 +0200 (Sat, 29 Jul 2006) | 1 line
fix minor markup error that introduced extra punctuation
........
r50957 | neal.norwitz | 2006-07-29 22:37:08 +0200 (Sat, 29 Jul 2006) | 3 lines
Disable test_getnode too, since this is also unreliable.
........
r50958 | andrew.kuchling | 2006-07-29 23:27:12 +0200 (Sat, 29 Jul 2006) | 1 line
Follow TeX's conventions for hyphens
........
r50959 | andrew.kuchling | 2006-07-29 23:30:21 +0200 (Sat, 29 Jul 2006) | 1 line
Fix case for 'Unix'
........
r50960 | fred.drake | 2006-07-30 01:34:57 +0200 (Sun, 30 Jul 2006) | 1 line
markup cleanups
........
r50961 | andrew.kuchling | 2006-07-30 02:27:34 +0200 (Sun, 30 Jul 2006) | 1 line
Minor typo fixes
........
r50962 | andrew.kuchling | 2006-07-30 02:37:56 +0200 (Sun, 30 Jul 2006) | 1 line
[Bug #793553] Correct description of keyword arguments for SSL authentication
........
r50963 | tim.peters | 2006-07-30 02:58:15 +0200 (Sun, 30 Jul 2006) | 2 lines
Whitespace normalization.
........
r50964 | fred.drake | 2006-07-30 05:03:43 +0200 (Sun, 30 Jul 2006) | 1 line
lots of markup nits, most commonly Unix/unix --> \UNIX
........
r50965 | fred.drake | 2006-07-30 07:41:28 +0200 (Sun, 30 Jul 2006) | 1 line
update information on wxPython, from Robin Dunn
........
r50966 | fred.drake | 2006-07-30 07:49:49 +0200 (Sun, 30 Jul 2006) | 4 lines
remove possibly-outdated comment on what GUI toolkit is most commonly used;
it is hard to know whether this is right, and it does not add valuable reference information
at any rate
........
r50967 | fred.drake | 2006-07-30 07:55:39 +0200 (Sun, 30 Jul 2006) | 3 lines
- remove yet another reference to how commonly Tkinter is (thought to be) used
- fix an internal section reference
........
r50968 | neal.norwitz | 2006-07-30 08:53:31 +0200 (Sun, 30 Jul 2006) | 4 lines
Patch #1531113: Fix augmented assignment with yield expressions.
Also fix a SystemError when trying to assign to yield expressions.
........
r50969 | neal.norwitz | 2006-07-30 08:55:48 +0200 (Sun, 30 Jul 2006) | 5 lines
Add PyErr_WarnEx() so C code can pass the stacklevel to warnings.warn().
This provides the proper warning for struct.pack().
PyErr_Warn() is now deprecated in favor of PyErr_WarnEx().
As mentioned by Tim Peters on python-dev.
........
r50970 | neal.norwitz | 2006-07-30 08:57:04 +0200 (Sun, 30 Jul 2006) | 3 lines
Bug #1515471: string.replace() accepts character buffers again.
Pass the char* and size around rather than PyObject's.
........
r50971 | neal.norwitz | 2006-07-30 08:59:13 +0200 (Sun, 30 Jul 2006) | 1 line
Whitespace normalization
........
r50973 | georg.brandl | 2006-07-30 12:53:32 +0200 (Sun, 30 Jul 2006) | 3 lines
Clarify that __op__ methods must return NotImplemented if they don't support the operation.
........
r50974 | georg.brandl | 2006-07-30 13:07:23 +0200 (Sun, 30 Jul 2006) | 3 lines
Bug #1002398: The documentation for os.path.sameopenfile now correctly
refers to file descriptors, not file objects.
........
r50977 | martin.v.loewis | 2006-07-30 15:00:31 +0200 (Sun, 30 Jul 2006) | 3 lines
Don't copy directory stat times in shutil.copytree on Windows
Fixes #1525866.
........
r50978 | martin.v.loewis | 2006-07-30 15:14:05 +0200 (Sun, 30 Jul 2006) | 3 lines
Base __version__ on sys.version_info, as distutils is
no longer maintained separatedly.
........
r50979 | martin.v.loewis | 2006-07-30 15:27:31 +0200 (Sun, 30 Jul 2006) | 3 lines
Mention Cygwin in distutils error message about a missing VS 2003.
Fixes #1257728.
........
r50982 | martin.v.loewis | 2006-07-30 16:09:47 +0200 (Sun, 30 Jul 2006) | 5 lines
Drop usage of test -e in configure as it is not portable.
Fixes #1439538
Will backport to 2.4
Also regenerate pyconfig.h.in.
........
r50984 | georg.brandl | 2006-07-30 18:20:10 +0200 (Sun, 30 Jul 2006) | 3 lines
Fix makefile changes for python-config.
........
r50985 | george.yoshida | 2006-07-30 18:37:37 +0200 (Sun, 30 Jul 2006) | 2 lines
Rename struct.pack_to to struct.pack_into as changed in revision 46642.
........
r50986 | george.yoshida | 2006-07-30 18:41:30 +0200 (Sun, 30 Jul 2006) | 2 lines
Typo fix
........
r50987 | neal.norwitz | 2006-07-30 21:18:13 +0200 (Sun, 30 Jul 2006) | 1 line
Add some asserts and update comments
........
r50988 | neal.norwitz | 2006-07-30 21:18:38 +0200 (Sun, 30 Jul 2006) | 1 line
Verify that the signal handlers were really called
........
r50989 | neal.norwitz | 2006-07-30 21:20:42 +0200 (Sun, 30 Jul 2006) | 3 lines
Try to prevent hangs on Tru64/Alpha buildbot. I'm not certain this will help
and may need to be reverted if it causes problems.
........
r50990 | georg.brandl | 2006-07-30 22:18:51 +0200 (Sun, 30 Jul 2006) | 2 lines
Bug #1531349: right <-> left glitch in __rop__ description.
........
r50992 | tim.peters | 2006-07-31 03:46:03 +0200 (Mon, 31 Jul 2006) | 2 lines
Whitespace normalization.
........
r50993 | andrew.mcnamara | 2006-07-31 04:27:48 +0200 (Mon, 31 Jul 2006) | 2 lines
Redo the comment about the 2.5 change in quoted-newline handling.
........
r50994 | tim.peters | 2006-07-31 04:40:23 +0200 (Mon, 31 Jul 2006) | 10 lines
ZipFile.close(): Killed one of the struct.pack deprecation
warnings on Win32.
Also added an XXX about the line:
pos3 = self.fp.tell()
`pos3` is never referenced, and I have no idea what the code
intended to do instead.
........
r50996 | tim.peters | 2006-07-31 04:53:03 +0200 (Mon, 31 Jul 2006) | 8 lines
ZipFile.close(): Kill the other struct.pack deprecation
warning on Windows.
Afraid I can't detect a pattern to when the pack formats decide
to use a signed or unsigned format code -- appears nearly
arbitrary to my eyes. So I left all the pack formats alone and
changed the special-case data values instead.
........
r50997 | skip.montanaro | 2006-07-31 05:09:45 +0200 (Mon, 31 Jul 2006) | 1 line
minor tweaks
........
r50998 | skip.montanaro | 2006-07-31 05:11:11 +0200 (Mon, 31 Jul 2006) | 1 line
minor tweaks
........
r50999 | andrew.kuchling | 2006-07-31 14:20:24 +0200 (Mon, 31 Jul 2006) | 1 line
Add refcounts for PyErr_WarnEx
........
r51000 | andrew.kuchling | 2006-07-31 14:39:05 +0200 (Mon, 31 Jul 2006) | 9 lines
Document PyErr_WarnEx. (Bad Neal! No biscuit!)
Is the explanation of the 'stacklevel' parameter clear? Please feel free
to edit it.
I don't have LaTeX installed on this machine, so haven't verified that the
markup is correct. Will check tonight, or maybe the automatic doc build will
tell me.
........
r51001 | andrew.kuchling | 2006-07-31 14:52:26 +0200 (Mon, 31 Jul 2006) | 1 line
Add PyErr_WarnEx()
........
r51002 | andrew.kuchling | 2006-07-31 15:18:27 +0200 (Mon, 31 Jul 2006) | 1 line
Mention csv newline changes
........
r51003 | andrew.kuchling | 2006-07-31 17:22:58 +0200 (Mon, 31 Jul 2006) | 1 line
Typo fix
........
r51004 | andrew.kuchling | 2006-07-31 17:23:43 +0200 (Mon, 31 Jul 2006) | 1 line
Remove reference to notation
........
r51005 | georg.brandl | 2006-07-31 18:00:34 +0200 (Mon, 31 Jul 2006) | 3 lines
Fix function name.
........
r51006 | andrew.kuchling | 2006-07-31 18:10:24 +0200 (Mon, 31 Jul 2006) | 1 line
[Bug #1514540] Instead of putting the standard types in a section, put them in a chapter of their own. This means string methods will now show up in the ToC. (Should the types come before or after the functions+exceptions+constants chapter? I've put them after, for now.)
........
r51007 | andrew.kuchling | 2006-07-31 18:22:05 +0200 (Mon, 31 Jul 2006) | 1 line
[Bug #848556] Remove \d* from second alternative to avoid exponential case when repeating match
........
r51008 | andrew.kuchling | 2006-07-31 18:27:57 +0200 (Mon, 31 Jul 2006) | 1 line
Update list of files; fix a typo
........
r51013 | andrew.kuchling | 2006-08-01 18:24:30 +0200 (Tue, 01 Aug 2006) | 1 line
typo fix
........
r51018 | thomas.heller | 2006-08-01 18:54:43 +0200 (Tue, 01 Aug 2006) | 2 lines
Fix a potential segfault and various potentail refcount leaks
in the cast() function.
........
r51020 | thomas.heller | 2006-08-01 19:46:10 +0200 (Tue, 01 Aug 2006) | 1 line
Minimal useful docstring for CopyComPointer.
........
r51021 | andrew.kuchling | 2006-08-01 20:16:15 +0200 (Tue, 01 Aug 2006) | 8 lines
[Patch #1520905] Attempt to suppress core file created by test_subprocess.py.
Patch by Douglas Greiman.
The test_run_abort() testcase produces a core file on Unix systems,
even though the test is successful. This can be confusing or alarming
to someone who runs 'make test' and then finds that the Python
interpreter apparently crashed.
........
r51023 | georg.brandl | 2006-08-01 20:49:24 +0200 (Tue, 01 Aug 2006) | 3 lines
os.urandom no longer masks unrelated exceptions like SystemExit or
KeyboardInterrupt.
........
r51025 | thomas.heller | 2006-08-01 21:14:15 +0200 (Tue, 01 Aug 2006) | 2 lines
Speed up PyType_stgdict and PyObject_stgdict.
........
r51027 | ronald.oussoren | 2006-08-01 22:30:31 +0200 (Tue, 01 Aug 2006) | 3 lines
Make sure the postinstall action that optionally updates the user's profile
on MacOS X actually works correctly in all cases.
........
r51028 | ronald.oussoren | 2006-08-01 23:00:57 +0200 (Tue, 01 Aug 2006) | 4 lines
This fixes bug #1527397: PythonLauncher runs scripts with the wrong working
directory. It also fixes a bug where PythonLauncher failed to launch scripts
when the scriptname (or the path to the script) contains quotes.
........
r51031 | tim.peters | 2006-08-02 05:27:46 +0200 (Wed, 02 Aug 2006) | 2 lines
Whitespace normalization.
........
r51032 | tim.peters | 2006-08-02 06:12:36 +0200 (Wed, 02 Aug 2006) | 19 lines
Try to squash struct.pack warnings on the "amd64 gentoo trunk"
buildbot (& possibly other 64-bit boxes) during test_gzip.
The native zlib crc32 function returns an unsigned 32-bit integer,
which the Python wrapper implicitly casts to C long. Therefore the
same crc can "look negative" on a 32-bit box but "look positive" on
a 64-bit box. This patch papers over that platform difference when
writing the crc to file.
It may be better to change the Python wrapper, either to make
the result "look positive" on all platforms (which means it may
have to return a Python long at times on a 32-bit box), or to
keep the sign the same across boxes. But that would be a visible
change in what users see, while the current hack changes no
visible behavior (well, apart from stopping the struct deprecation
warning).
Note that the module-level write32() function is no longer used.
........
r51033 | neal.norwitz | 2006-08-02 06:27:11 +0200 (Wed, 02 Aug 2006) | 4 lines
Prevent memory leak on error.
Reported by Klocwork #36
........
r51034 | tim.peters | 2006-08-02 07:20:08 +0200 (Wed, 02 Aug 2006) | 9 lines
_Stream.close(): Try to kill struct.pack() warnings when
writing the crc to file on the "PPC64 Debian trunk" buildbot
when running test_tarfile.
This is again a case where the native zlib crc is an unsigned
32-bit int, but the Python wrapper implicitly casts it to
signed C long, so that "the sign bit looks different" on
different platforms.
........
r51035 | ronald.oussoren | 2006-08-02 08:10:10 +0200 (Wed, 02 Aug 2006) | 2 lines
Updated documentation for the script that builds the OSX installer.
........
r51036 | neal.norwitz | 2006-08-02 08:14:22 +0200 (Wed, 02 Aug 2006) | 2 lines
_PyWeakref_GetWeakrefCount() now returns a Py_ssize_t instead of long.
........
r51037 | neal.norwitz | 2006-08-02 08:15:10 +0200 (Wed, 02 Aug 2006) | 1 line
v is already checked for NULL, so just DECREF it
........
r51038 | neal.norwitz | 2006-08-02 08:19:19 +0200 (Wed, 02 Aug 2006) | 1 line
Let us know when there was a problem and the child had to kill the parent
........
r51039 | neal.norwitz | 2006-08-02 08:46:21 +0200 (Wed, 02 Aug 2006) | 5 lines
Patch #1519025 and bug #926423: If a KeyboardInterrupt occurs during
a socket operation on a socket with a timeout, the exception will be
caught correctly. Previously, the exception was not caught.
........
r51040 | neal.norwitz | 2006-08-02 09:09:32 +0200 (Wed, 02 Aug 2006) | 1 line
Add some explanation about Klocwork and Coverity static analysis
........
r51041 | anthony.baxter | 2006-08-02 09:43:09 +0200 (Wed, 02 Aug 2006) | 1 line
pre-release machinations
........
r51043 | thomas.heller | 2006-08-02 13:35:31 +0200 (Wed, 02 Aug 2006) | 4 lines
A few nore words about what ctypes does.
Document that using the wrong calling convention can also raise
'ValueError: Procedure called with the wrong number of arguments'.
........
r51045 | thomas.heller | 2006-08-02 14:00:13 +0200 (Wed, 02 Aug 2006) | 1 line
Fix a mistake.
........
r51046 | martin.v.loewis | 2006-08-02 15:53:55 +0200 (Wed, 02 Aug 2006) | 3 lines
Correction of patch #1455898: In the mbcs decoder, set final=False
for stream decoder, but final=True for the decode function.
........
r51049 | tim.peters | 2006-08-02 20:19:35 +0200 (Wed, 02 Aug 2006) | 2 lines
Add missing svn:eol-style property to text files.
........
r51079 | neal.norwitz | 2006-08-04 06:50:21 +0200 (Fri, 04 Aug 2006) | 3 lines
Bug #1531405, format_exception no longer raises an exception if
str(exception) raised an exception.
........
r51080 | neal.norwitz | 2006-08-04 06:58:47 +0200 (Fri, 04 Aug 2006) | 11 lines
Bug #1191458: tracing over for loops now produces a line event
on each iteration. I'm not positive this is the best way to handle
this. I'm also not sure that there aren't other cases where
the lnotab is generated incorrectly. It would be great if people
that use pdb or tracing could test heavily.
Also:
* Remove dead/duplicated code that wasn't used/necessary
because we already handled the docstring prior to entering the loop.
* add some debugging code into the compiler (#if 0'd out).
........
r51081 | neal.norwitz | 2006-08-04 07:09:28 +0200 (Fri, 04 Aug 2006) | 4 lines
Bug #1333982: string/number constants were inappropriately stored
in the byte code and co_consts even if they were not used, ie
immediately popped off the stack.
........
r51082 | neal.norwitz | 2006-08-04 07:12:19 +0200 (Fri, 04 Aug 2006) | 1 line
There were really two issues
........
r51084 | fred.drake | 2006-08-04 07:17:21 +0200 (Fri, 04 Aug 2006) | 1 line
SF patch #1534048 (bug #1531003): fix typo in error message
........
r51085 | gregory.p.smith | 2006-08-04 07:17:47 +0200 (Fri, 04 Aug 2006) | 3 lines
fix typos
........
r51087 | georg.brandl | 2006-08-04 08:03:53 +0200 (Fri, 04 Aug 2006) | 3 lines
Fix bug caused by first decrefing, then increfing.
........
r51109 | neil.schemenauer | 2006-08-04 18:20:30 +0200 (Fri, 04 Aug 2006) | 5 lines
Fix the 'compiler' package to generate correct code for MAKE_CLOSURE.
In the 2.5 development cycle, MAKE_CLOSURE as changed to take free
variables as a tuple rather than as individual items on the stack.
Closes patch #1534084.
........
r51110 | georg.brandl | 2006-08-04 20:03:37 +0200 (Fri, 04 Aug 2006) | 3 lines
Change fix for segfaulting property(), add a NEWS entry and a test.
........
r51111 | georg.brandl | 2006-08-04 20:07:34 +0200 (Fri, 04 Aug 2006) | 3 lines
Better fix for bug #1531405, not executing str(value) twice.
........
r51112 | thomas.heller | 2006-08-04 20:17:40 +0200 (Fri, 04 Aug 2006) | 1 line
On Windows, make PyErr_Warn an exported function again.
........
r51113 | thomas.heller | 2006-08-04 20:57:34 +0200 (Fri, 04 Aug 2006) | 4 lines
Fix #1530448 - fix ctypes build failure on solaris 10.
The '-mimpure-text' linker flag is required when linking _ctypes.so.
........
r51114 | thomas.heller | 2006-08-04 21:49:31 +0200 (Fri, 04 Aug 2006) | 3 lines
Fix #1534738: win32 debug version of _msi must be _msi_d.pyd, not _msi.pyd.
Fix the name of the pdb file as well.
........
r51115 | andrew.kuchling | 2006-08-04 22:37:43 +0200 (Fri, 04 Aug 2006) | 1 line
Typo fixes
........
r51116 | andrew.kuchling | 2006-08-04 23:10:03 +0200 (Fri, 04 Aug 2006) | 1 line
Fix mangled sentence
........
r51118 | tim.peters | 2006-08-05 00:00:35 +0200 (Sat, 05 Aug 2006) | 2 lines
Whitespace normalization.
........
r51119 | bob.ippolito | 2006-08-05 01:59:21 +0200 (Sat, 05 Aug 2006) | 5 lines
Fix #1530559, struct.pack raises TypeError where it used to convert.
Passing float arguments to struct.pack when integers are expected
now triggers a DeprecationWarning.
........
r51123 | georg.brandl | 2006-08-05 08:10:54 +0200 (Sat, 05 Aug 2006) | 3 lines
Patch #1534922: correct and enhance unittest docs.
........
r51126 | georg.brandl | 2006-08-06 09:06:33 +0200 (Sun, 06 Aug 2006) | 2 lines
Bug #1535182: really test the xreadlines() method of bz2 objects.
........
r51128 | georg.brandl | 2006-08-06 09:26:21 +0200 (Sun, 06 Aug 2006) | 4 lines
Bug #1535081: A leading underscore has been added to the names of
the md5 and sha modules, so add it in Modules/Setup.dist too.
........
r51129 | georg.brandl | 2006-08-06 10:23:54 +0200 (Sun, 06 Aug 2006) | 3 lines
Bug #1535165: fixed a segfault in input() and raw_input() when
sys.stdin is closed.
........
r51131 | georg.brandl | 2006-08-06 11:17:16 +0200 (Sun, 06 Aug 2006) | 2 lines
Don't produce output in test_builtin.
........
r51133 | andrew.macintyre | 2006-08-06 14:37:03 +0200 (Sun, 06 Aug 2006) | 4 lines
test_threading now skips testing alternate thread stack sizes on
platforms that don't support changing thread stack size.
........
r51134 | andrew.kuchling | 2006-08-07 00:07:04 +0200 (Mon, 07 Aug 2006) | 2 lines
[Patch #1464056] Ensure that we use the panelw library when linking with ncursesw.
Once I see how the buildbots react, I'll backport this to 2.4.
........
r51137 | georg.brandl | 2006-08-08 13:52:34 +0200 (Tue, 08 Aug 2006) | 3 lines
webbrowser: Silence stderr output if no gconftool or gnome browser found
........
r51138 | georg.brandl | 2006-08-08 13:56:21 +0200 (Tue, 08 Aug 2006) | 7 lines
Remove "non-mapping" and "non-sequence" from TypeErrors raised by
PyMapping_Size and PySequence_Size.
Because len() tries first sequence, then mapping size, it will always
raise a "non-mapping object has no len" error which is confusing.
........
r51139 | thomas.heller | 2006-08-08 19:37:00 +0200 (Tue, 08 Aug 2006) | 3 lines
memcmp() can return values other than -1, 0, and +1 but tp_compare
must not.
........
r51140 | thomas.heller | 2006-08-08 19:39:20 +0200 (Tue, 08 Aug 2006) | 1 line
Remove accidently committed, duplicated test.
........
r51147 | andrew.kuchling | 2006-08-08 20:50:14 +0200 (Tue, 08 Aug 2006) | 1 line
Reword paragraph to clarify
........
r51148 | andrew.kuchling | 2006-08-08 20:56:08 +0200 (Tue, 08 Aug 2006) | 1 line
Move obmalloc item into C API section
........
r51149 | andrew.kuchling | 2006-08-08 21:00:14 +0200 (Tue, 08 Aug 2006) | 1 line
'Other changes' section now has only one item; move the item elsewhere and remove the section
........
r51150 | andrew.kuchling | 2006-08-08 21:00:34 +0200 (Tue, 08 Aug 2006) | 1 line
Bump version number
........
r51151 | georg.brandl | 2006-08-08 22:11:22 +0200 (Tue, 08 Aug 2006) | 2 lines
Bug #1536828: typo: TypeType should have been StringType.
........
r51153 | georg.brandl | 2006-08-08 22:13:13 +0200 (Tue, 08 Aug 2006) | 2 lines
Bug #1536660: separate two words.
........
r51155 | georg.brandl | 2006-08-08 22:48:10 +0200 (Tue, 08 Aug 2006) | 3 lines
``str`` is now the same object as ``types.StringType``.
........
r51156 | tim.peters | 2006-08-09 02:52:26 +0200 (Wed, 09 Aug 2006) | 2 lines
Whitespace normalization.
........
r51158 | georg.brandl | 2006-08-09 09:03:22 +0200 (Wed, 09 Aug 2006) | 4 lines
Introduce an upper bound on tuple nesting depth in
C argument format strings; fixes rest of #1523610.
........
r51160 | martin.v.loewis | 2006-08-09 09:57:39 +0200 (Wed, 09 Aug 2006) | 4 lines
__hash__ may now return long int; the final hash
value is obtained by invoking hash on the long int.
Fixes #1536021.
........
r51168 | andrew.kuchling | 2006-08-09 15:03:41 +0200 (Wed, 09 Aug 2006) | 1 line
[Bug #1536021] Mention __hash__ change
........
r51169 | andrew.kuchling | 2006-08-09 15:57:05 +0200 (Wed, 09 Aug 2006) | 1 line
[Patch #1534027] Add notes on locale module changes
........
r51170 | andrew.kuchling | 2006-08-09 16:05:35 +0200 (Wed, 09 Aug 2006) | 1 line
Add missing 'self' parameters
........
r51171 | andrew.kuchling | 2006-08-09 16:06:19 +0200 (Wed, 09 Aug 2006) | 1 line
Reindent code
........
r51172 | armin.rigo | 2006-08-09 16:55:26 +0200 (Wed, 09 Aug 2006) | 2 lines
Fix and test for an infinite C recursion.
........
r51173 | ronald.oussoren | 2006-08-09 16:56:33 +0200 (Wed, 09 Aug 2006) | 2 lines
It's unlikely that future versions will require _POSIX_C_SOURCE
........
r51178 | armin.rigo | 2006-08-09 17:37:26 +0200 (Wed, 09 Aug 2006) | 2 lines
Concatenation on a long string breaks (SF #1526585).
........
r51180 | kurt.kaiser | 2006-08-09 18:46:15 +0200 (Wed, 09 Aug 2006) | 8 lines
1. When used w/o subprocess, all exceptions were preceeded by an error
message claiming they were IDLE internal errors (since 1.2a1).
2. Add Ronald Oussoren to CREDITS
M NEWS.txt
M PyShell.py
M CREDITS.txt
........
r51181 | kurt.kaiser | 2006-08-09 19:47:15 +0200 (Wed, 09 Aug 2006) | 4 lines
As a slight enhancement to the previous checkin, improve the
internal error reporting by moving message to IDLE console.
........
r51182 | andrew.kuchling | 2006-08-09 20:23:14 +0200 (Wed, 09 Aug 2006) | 1 line
Typo fix
........
r51183 | kurt.kaiser | 2006-08-09 22:34:46 +0200 (Wed, 09 Aug 2006) | 2 lines
ToggleTab dialog was setting indent to 8 even if cancelled (since 1.2a1).
........
r51184 | martin.v.loewis | 2006-08-10 01:42:18 +0200 (Thu, 10 Aug 2006) | 2 lines
Add some commentary on -mimpure-text.
........
r51185 | tim.peters | 2006-08-10 02:58:49 +0200 (Thu, 10 Aug 2006) | 2 lines
Add missing svn:eol-style property to text files.
........
r51186 | kurt.kaiser | 2006-08-10 03:41:17 +0200 (Thu, 10 Aug 2006) | 2 lines
Changing tokenize (39046) to detect dedent broke tabnanny check (since 1.2a1)
........
r51187 | tim.peters | 2006-08-10 05:01:26 +0200 (Thu, 10 Aug 2006) | 13 lines
test_copytree_simple(): This was leaving behind two new temp
directories each time it ran, at least on Windows.
Several changes: explicitly closed all files; wrapped long
lines; stopped suppressing errors when removing a file or
directory fails (removing /shouldn't/ fail!); and changed
what appeared to be incorrect usage of os.removedirs() (that
doesn't remove empty directories at and /under/ the given
path, instead it must be given an empty leaf directory and
then deletes empty directories moving /up/ the path -- could
be that the conceptually simpler shutil.rmtree() was really
actually intended here).
........
2006-08-11 11:57:12 -03:00
|
|
|
|
2010-03-04 17:50:56 -04:00
|
|
|
def tearDown(self):
|
2019-09-06 06:14:31 -03:00
|
|
|
if not mswindows:
|
|
|
|
# subprocess._active is not used on Windows and is set to None.
|
|
|
|
for inst in subprocess._active:
|
|
|
|
inst.wait()
|
|
|
|
subprocess._cleanup()
|
|
|
|
self.assertFalse(
|
|
|
|
subprocess._active, "subprocess._active not empty"
|
|
|
|
)
|
2017-07-28 13:00:22 -03:00
|
|
|
self.doCleanups()
|
|
|
|
support.reap_children()
|
2010-03-04 17:50:56 -04:00
|
|
|
|
2010-02-27 18:12:37 -04:00
|
|
|
def assertStderrEqual(self, stderr, expected, msg=None):
|
|
|
|
# In a debug build, stuff like "[6580 refs]" is printed to stderr at
|
|
|
|
# shutdown time. That frustrates tests trying to check stderr produced
|
|
|
|
# from a spawned Python process.
|
2010-08-04 08:48:56 -03:00
|
|
|
actual = support.strip_python_stderr(stderr)
|
2011-03-14 13:02:10 -03:00
|
|
|
# strip_python_stderr also strips whitespace, so we do too.
|
|
|
|
expected = expected.strip()
|
2010-02-27 18:12:37 -04:00
|
|
|
self.assertEqual(actual, expected, msg)
|
Merged revisions 46753-51188 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk
........
r46755 | brett.cannon | 2006-06-08 18:23:04 +0200 (Thu, 08 Jun 2006) | 4 lines
Make binascii.hexlify() use s# for its arguments instead of t# to actually
match its documentation stating it accepts any read-only buffer.
........
r46757 | brett.cannon | 2006-06-08 19:00:45 +0200 (Thu, 08 Jun 2006) | 8 lines
Buffer objects would return the read or write buffer for a wrapped object when
the char buffer was requested. Now it actually returns the char buffer if
available or raises a TypeError if it isn't (as is raised for the other buffer
types if they are not present but requested).
Not a backport candidate since it does change semantics of the buffer object
(although it could be argued this is enough of a bug to bother backporting).
........
r46760 | andrew.kuchling | 2006-06-09 03:10:17 +0200 (Fri, 09 Jun 2006) | 1 line
Update functools section
........
r46762 | tim.peters | 2006-06-09 04:11:02 +0200 (Fri, 09 Jun 2006) | 6 lines
Whitespace normalization.
Since test_file is implicated in mysterious test failures
when followed by test_optparse, if I had any brains I'd
look at the checkin that last changed test_file ;-)
........
r46763 | tim.peters | 2006-06-09 05:09:42 +0200 (Fri, 09 Jun 2006) | 5 lines
To boost morale :-), force test_optparse to run immediately
after test_file until we can figure out how to fix it.
(See python-dev; at the moment we don't even know which checkin
caused the problem.)
........
r46764 | tim.peters | 2006-06-09 05:51:41 +0200 (Fri, 09 Jun 2006) | 6 lines
AutoFileTests.tearDown(): Removed mysterious undocumented
try/except. Remove TESTFN.
Throughout: used open() instead of file(), and wrapped
long lines.
........
r46765 | tim.peters | 2006-06-09 06:02:06 +0200 (Fri, 09 Jun 2006) | 8 lines
testUnicodeOpen(): I have no idea why, but making this
test clean up after itself appears to fix the test failures
when test_optparse follows test_file.
test_main(): Get rid of TESTFN no matter what. That's
also enough to fix the mystery failures. Doesn't hurt
to fix them twice :-)
........
r46766 | tim.peters | 2006-06-09 07:12:40 +0200 (Fri, 09 Jun 2006) | 6 lines
Remove the temporary hack to force test_optparse to
run immediately after test_file. At least 8 buildbot
boxes passed since the underlying problem got fixed,
and they all failed before the fix, so there's no point
to this anymore.
........
r46767 | neal.norwitz | 2006-06-09 07:54:18 +0200 (Fri, 09 Jun 2006) | 1 line
Fix grammar and reflow
........
r46769 | andrew.kuchling | 2006-06-09 12:22:35 +0200 (Fri, 09 Jun 2006) | 1 line
Markup fix
........
r46773 | andrew.kuchling | 2006-06-09 15:15:57 +0200 (Fri, 09 Jun 2006) | 1 line
[Bug #1472827] Make saxutils.XMLGenerator handle \r\n\t in attribute values by escaping them properly. 2.4 bugfix candidate.
........
r46778 | kristjan.jonsson | 2006-06-09 18:28:01 +0200 (Fri, 09 Jun 2006) | 2 lines
Turn off warning about deprecated CRT functions on for VisualStudio .NET 2005.
Make the definition #ARRAYSIZE conditional. VisualStudio .NET 2005 already has it defined using a better gimmick.
........
r46779 | phillip.eby | 2006-06-09 18:40:18 +0200 (Fri, 09 Jun 2006) | 2 lines
Import wsgiref into the stdlib, as of the external version 0.1-r2181.
........
r46783 | andrew.kuchling | 2006-06-09 18:44:40 +0200 (Fri, 09 Jun 2006) | 1 line
Add note about XMLGenerator bugfix
........
r46784 | andrew.kuchling | 2006-06-09 18:46:51 +0200 (Fri, 09 Jun 2006) | 1 line
Add note about wsgiref
........
r46785 | brett.cannon | 2006-06-09 19:05:48 +0200 (Fri, 09 Jun 2006) | 2 lines
Fix inconsistency in naming within an enum.
........
r46787 | tim.peters | 2006-06-09 19:47:00 +0200 (Fri, 09 Jun 2006) | 2 lines
Whitespace normalization.
........
r46792 | georg.brandl | 2006-06-09 20:29:52 +0200 (Fri, 09 Jun 2006) | 3 lines
Test file.__exit__.
........
r46794 | brett.cannon | 2006-06-09 20:40:46 +0200 (Fri, 09 Jun 2006) | 2 lines
svn:ignore .pyc and .pyo files.
........
r46795 | georg.brandl | 2006-06-09 20:45:48 +0200 (Fri, 09 Jun 2006) | 3 lines
RFE #1491485: str/unicode.endswith()/startswith() now accept a tuple as first argument.
........
r46798 | andrew.kuchling | 2006-06-09 21:03:16 +0200 (Fri, 09 Jun 2006) | 1 line
Describe startswith()/endswiith() change; add reminder about wsgiref
........
r46799 | tim.peters | 2006-06-09 21:24:44 +0200 (Fri, 09 Jun 2006) | 11 lines
Implementing a happy idea from Georg Brandl: make runtest() try to
clean up files and directories the tests often leave behind by
mistake. This is the first time in history I don't have a bogus
"db_home" directory after running the tests ;-)
Also worked on runtest's docstring, to say something about all the
arguments, and to document the non-obvious return values.
New functions runtest_inner() and cleanup_test_droppings() in
support of the above.
........
r46800 | andrew.kuchling | 2006-06-09 21:43:25 +0200 (Fri, 09 Jun 2006) | 1 line
Remove unused variable
........
r46801 | andrew.kuchling | 2006-06-09 21:56:05 +0200 (Fri, 09 Jun 2006) | 1 line
Add some wsgiref text
........
r46803 | thomas.heller | 2006-06-09 21:59:11 +0200 (Fri, 09 Jun 2006) | 1 line
set eol-style svn property
........
r46804 | thomas.heller | 2006-06-09 22:01:01 +0200 (Fri, 09 Jun 2006) | 1 line
set eol-style svn property
........
r46805 | georg.brandl | 2006-06-09 22:43:48 +0200 (Fri, 09 Jun 2006) | 3 lines
Make use of new str.startswith/endswith semantics.
Occurences in email and compiler were ignored due to backwards compat requirements.
........
r46806 | brett.cannon | 2006-06-10 00:31:23 +0200 (Sat, 10 Jun 2006) | 4 lines
An object with __call__ as an attribute, when called, will have that attribute checked for __call__ itself, and will continue to look until it finds an object without the attribute. This can lead to an infinite recursion.
Closes bug #532646, again. Will be backported.
........
r46808 | brett.cannon | 2006-06-10 00:45:54 +0200 (Sat, 10 Jun 2006) | 2 lines
Fix bug introduced in rev. 46806 by not having variable declaration at the top of a block.
........
r46812 | georg.brandl | 2006-06-10 08:40:50 +0200 (Sat, 10 Jun 2006) | 4 lines
Apply perky's fix for #1503157: "/".join([u"", u""]) raising OverflowError.
Also improve error message on overflow.
........
r46817 | martin.v.loewis | 2006-06-10 10:14:03 +0200 (Sat, 10 Jun 2006) | 2 lines
Port cygwin kill_python changes from 2.4 branch.
........
r46818 | armin.rigo | 2006-06-10 12:57:40 +0200 (Sat, 10 Jun 2006) | 4 lines
SF bug #1503294.
PyThreadState_GET() complains if the tstate is NULL, but only in debug mode.
........
r46819 | martin.v.loewis | 2006-06-10 14:23:46 +0200 (Sat, 10 Jun 2006) | 4 lines
Patch #1495999: Part two of Windows CE changes.
- update header checks, using autoconf
- provide dummies for getenv, environ, and GetVersion
- adjust MSC_VER check in socketmodule.c
........
r46820 | skip.montanaro | 2006-06-10 16:09:11 +0200 (Sat, 10 Jun 2006) | 1 line
document the class, not its initializer
........
r46821 | greg.ward | 2006-06-10 18:40:01 +0200 (Sat, 10 Jun 2006) | 4 lines
Sync with Optik docs (rev 518):
* restore "Extending optparse" section
* document ALWAYS_TYPED_ACTIONS (SF #1449311)
........
r46824 | thomas.heller | 2006-06-10 21:51:46 +0200 (Sat, 10 Jun 2006) | 8 lines
Upgrade to ctypes version 0.9.9.7.
Summary of changes:
- support for 'variable sized' data
- support for anonymous structure/union fields
- fix severe bug with certain arrays or structures containing more than 256 fields
........
r46825 | thomas.heller | 2006-06-10 21:55:36 +0200 (Sat, 10 Jun 2006) | 8 lines
Upgrade to ctypes version 0.9.9.7.
Summary of changes:
- support for 'variable sized' data
- support for anonymous structure/union fields
- fix severe bug with certain arrays or structures containing more than 256 fields
........
r46826 | fred.drake | 2006-06-10 22:01:34 +0200 (Sat, 10 Jun 2006) | 4 lines
SF patch #1303595: improve description of __builtins__, explaining how it
varies between __main__ and other modules, and strongly suggest not touching
it but using __builtin__ if absolutely necessary
........
r46827 | fred.drake | 2006-06-10 22:02:58 +0200 (Sat, 10 Jun 2006) | 1 line
credit for SF patch #1303595
........
r46831 | thomas.heller | 2006-06-10 22:29:34 +0200 (Sat, 10 Jun 2006) | 2 lines
New docs for ctypes.
........
r46834 | thomas.heller | 2006-06-10 23:07:19 +0200 (Sat, 10 Jun 2006) | 1 line
Fix a wrong printf format.
........
r46835 | thomas.heller | 2006-06-10 23:17:58 +0200 (Sat, 10 Jun 2006) | 1 line
Fix the second occurrence of the problematic printf format.
........
r46837 | thomas.heller | 2006-06-10 23:56:03 +0200 (Sat, 10 Jun 2006) | 1 line
Don't use C++ comment.
........
r46838 | thomas.heller | 2006-06-11 00:01:50 +0200 (Sun, 11 Jun 2006) | 1 line
Handle failure of PyMem_Realloc.
........
r46839 | skip.montanaro | 2006-06-11 00:38:13 +0200 (Sun, 11 Jun 2006) | 2 lines
Suppress warning on MacOSX about possible use before set of proc.
........
r46840 | tim.peters | 2006-06-11 00:51:45 +0200 (Sun, 11 Jun 2006) | 8 lines
shuffle() doscstring: Removed warning about sequence length
versus generator period. While this was a real weakness of the
older WH generator for lists with just a few dozen elements,
and so could potentially bite the naive ;-), the Twister should
show excellent behavior up to at least 600 elements.
Module docstring: reflowed some jarringly short lines.
........
r46844 | greg.ward | 2006-06-11 02:40:49 +0200 (Sun, 11 Jun 2006) | 4 lines
Bug #1361643: fix textwrap.dedent() so it handles tabs appropriately,
i.e. do *not* expand tabs, but treat them as whitespace that is not
equivalent to spaces. Add a couple of test cases. Clarify docs.
........
r46850 | neal.norwitz | 2006-06-11 07:44:18 +0200 (Sun, 11 Jun 2006) | 5 lines
Fix Coverity # 146. newDBSequenceObject would deref dbobj, so it can't be NULL.
We know it's not NULL from the ParseTuple and DbObject_Check will verify
it's not NULL.
........
r46851 | neal.norwitz | 2006-06-11 07:45:25 +0200 (Sun, 11 Jun 2006) | 4 lines
Wrap some long lines
Top/Bottom factor out some common expressions
Add a XXX comment about widing offset.
........
r46852 | neal.norwitz | 2006-06-11 07:45:47 +0200 (Sun, 11 Jun 2006) | 1 line
Add versionadded to doc
........
r46853 | neal.norwitz | 2006-06-11 07:47:14 +0200 (Sun, 11 Jun 2006) | 3 lines
Update doc to make it agree with code.
Bottom factor out some common code.
........
r46854 | neal.norwitz | 2006-06-11 07:48:14 +0200 (Sun, 11 Jun 2006) | 3 lines
f_code can't be NULL based on Frame_New and other code that derefs it.
So there doesn't seem to be much point to checking here.
........
r46855 | neal.norwitz | 2006-06-11 09:26:27 +0200 (Sun, 11 Jun 2006) | 1 line
Fix errors found by pychecker
........
r46856 | neal.norwitz | 2006-06-11 09:26:50 +0200 (Sun, 11 Jun 2006) | 1 line
warnings was imported at module scope, no need to import again
........
r46857 | neal.norwitz | 2006-06-11 09:27:56 +0200 (Sun, 11 Jun 2006) | 5 lines
Fix errors found by pychecker.
I think these changes are correct, but I'm not sure. Could someone
who knows how this module works test it? It can at least start on
the cmd line.
........
r46858 | neal.norwitz | 2006-06-11 10:35:14 +0200 (Sun, 11 Jun 2006) | 1 line
Fix errors found by pychecker
........
r46859 | ronald.oussoren | 2006-06-11 16:33:36 +0200 (Sun, 11 Jun 2006) | 4 lines
This patch improves the L&F of IDLE on OSX. The changes are conditionalized on
being in an IDLE.app bundle on darwin. This does a slight reorganisation of the
menus and adds support for file-open events.
........
r46860 | greg.ward | 2006-06-11 16:42:41 +0200 (Sun, 11 Jun 2006) | 1 line
SF #1366250: optparse docs: fix inconsistency in variable name; minor tweaks.
........
r46861 | greg.ward | 2006-06-11 18:24:11 +0200 (Sun, 11 Jun 2006) | 3 lines
Bug #1498146: fix optparse to handle Unicode strings in option help,
description, and epilog.
........
r46862 | thomas.heller | 2006-06-11 19:04:22 +0200 (Sun, 11 Jun 2006) | 2 lines
Release the GIL during COM method calls, to avoid deadlocks in
Python coded COM objects.
........
r46863 | tim.peters | 2006-06-11 21:42:51 +0200 (Sun, 11 Jun 2006) | 2 lines
Whitespace normalization.
........
r46864 | tim.peters | 2006-06-11 21:43:49 +0200 (Sun, 11 Jun 2006) | 2 lines
Add missing svn:eol-style property to text files.
........
r46865 | ronald.oussoren | 2006-06-11 21:45:57 +0200 (Sun, 11 Jun 2006) | 2 lines
Remove message about using make frameworkinstall, that's no longer necesssary
........
r46866 | ronald.oussoren | 2006-06-11 22:23:29 +0200 (Sun, 11 Jun 2006) | 2 lines
Use configure to substitute the correct prefix instead of hardcoding
........
r46867 | ronald.oussoren | 2006-06-11 22:24:45 +0200 (Sun, 11 Jun 2006) | 4 lines
- Change fixapplepython23.py to ensure that it will run with /usr/bin/python
on intel macs.
- Fix some minor problems in the installer for OSX
........
r46868 | neal.norwitz | 2006-06-11 22:25:56 +0200 (Sun, 11 Jun 2006) | 5 lines
Try to fix several networking tests. The problem is that if hosts have
a search path setup, some of these hosts resolve to the wrong address.
By appending a period to the hostname, the hostname should only resolve
to what we want it to resolve to. Hopefully this doesn't break different bots.
........
r46869 | neal.norwitz | 2006-06-11 22:42:02 +0200 (Sun, 11 Jun 2006) | 7 lines
Try to fix another networking test. The problem is that if hosts have
a search path setup, some of these hosts resolve to the wrong address.
By appending a period to the hostname, the hostname should only resolve
to what we want it to resolve to. Hopefully this doesn't break different bots.
Also add more info to failure message to aid debugging test failure.
........
r46870 | neal.norwitz | 2006-06-11 22:46:46 +0200 (Sun, 11 Jun 2006) | 4 lines
Fix test on PPC64 buildbot. It raised an IOError (really an URLError which
derives from an IOError). That seems valid. Env Error includes both OSError
and IOError, so this seems like a reasonable fix.
........
r46871 | tim.peters | 2006-06-11 22:52:59 +0200 (Sun, 11 Jun 2006) | 10 lines
compare_generic_iter(): Fixed the failure of test_wsgiref's testFileWrapper
when running with -O.
test_simple_validation_error still fails under -O. That appears to be because
wsgiref's validate.py uses `assert` statements all over the place to check
arguments for sanity. That should all be changed (it's not a logical error
in the software if a user passes bogus arguments, so this isn't a reasonable
use for `assert` -- checking external preconditions should generally raise
ValueError or TypeError instead, as appropriate).
........
r46872 | neal.norwitz | 2006-06-11 23:38:38 +0200 (Sun, 11 Jun 2006) | 1 line
Get test to pass on S/390. Shout if you think this change is incorrect.
........
r46873 | neal.norwitz | 2006-06-12 04:05:55 +0200 (Mon, 12 Jun 2006) | 1 line
Cleanup Py_ssize_t a little (get rid of second #ifdef)
........
r46874 | neal.norwitz | 2006-06-12 04:06:17 +0200 (Mon, 12 Jun 2006) | 1 line
Fix some Py_ssize_t issues
........
r46875 | neal.norwitz | 2006-06-12 04:06:42 +0200 (Mon, 12 Jun 2006) | 1 line
Fix some Py_ssize_t issues
........
r46876 | neal.norwitz | 2006-06-12 04:07:24 +0200 (Mon, 12 Jun 2006) | 2 lines
Cleanup: Remove import of types to get StringTypes, we can just use basestring.
........
r46877 | neal.norwitz | 2006-06-12 04:07:57 +0200 (Mon, 12 Jun 2006) | 1 line
Don't truncate if size_t is bigger than uint
........
r46878 | neal.norwitz | 2006-06-12 04:08:41 +0200 (Mon, 12 Jun 2006) | 1 line
Don't leak the list object if there's an error allocating the item storage. Backport candidate
........
r46879 | neal.norwitz | 2006-06-12 04:09:03 +0200 (Mon, 12 Jun 2006) | 1 line
Fix typo. Backport if anyone cares. :-)
........
r46880 | neal.norwitz | 2006-06-12 04:09:34 +0200 (Mon, 12 Jun 2006) | 1 line
Fix indentation of case and a Py_ssize_t issue.
........
r46881 | neal.norwitz | 2006-06-12 04:11:18 +0200 (Mon, 12 Jun 2006) | 3 lines
Get rid of f_restricted too. Doc the other 4 ints that were already removed
at the NeedForSpeed sprint.
........
r46882 | neal.norwitz | 2006-06-12 04:13:21 +0200 (Mon, 12 Jun 2006) | 1 line
Fix the socket tests so they can be run concurrently. Backport candidate
........
r46883 | neal.norwitz | 2006-06-12 04:16:10 +0200 (Mon, 12 Jun 2006) | 1 line
i and j are initialized below when used. No need to do it twice
........
r46884 | neal.norwitz | 2006-06-12 05:05:03 +0200 (Mon, 12 Jun 2006) | 1 line
Remove unused import
........
r46885 | neal.norwitz | 2006-06-12 05:05:40 +0200 (Mon, 12 Jun 2006) | 1 line
Impl ssize_t
........
r46886 | neal.norwitz | 2006-06-12 05:33:09 +0200 (Mon, 12 Jun 2006) | 6 lines
Patch #1503046, Conditional compilation of zlib.(de)compressobj.copy
copy is only in newer versions of zlib. This should allow zlibmodule
to work with older versions like the Tru64 buildbot.
........
r46887 | phillip.eby | 2006-06-12 06:04:32 +0200 (Mon, 12 Jun 2006) | 2 lines
Sync w/external release 0.1.2. Please see PEP 360 before making changes to external packages.
........
r46888 | martin.v.loewis | 2006-06-12 06:26:31 +0200 (Mon, 12 Jun 2006) | 2 lines
Get rid of function pointer cast.
........
r46889 | thomas.heller | 2006-06-12 08:05:57 +0200 (Mon, 12 Jun 2006) | 3 lines
I don't know how that happend, but the entire file contents was
duplicated. Thanks to Simon Percivall for the heads up.
........
r46890 | nick.coghlan | 2006-06-12 10:19:37 +0200 (Mon, 12 Jun 2006) | 1 line
Fix site module docstring to match the code
........
r46891 | nick.coghlan | 2006-06-12 10:23:02 +0200 (Mon, 12 Jun 2006) | 1 line
Fix site module docstring to match the code for Mac OSX, too
........
r46892 | nick.coghlan | 2006-06-12 10:27:13 +0200 (Mon, 12 Jun 2006) | 1 line
The site module documentation also described the Windows behaviour incorrectly.
........
r46893 | nick.coghlan | 2006-06-12 12:17:11 +0200 (Mon, 12 Jun 2006) | 1 line
Make the -m switch conform to the documentation of sys.path by behaving like the -c switch
........
r46894 | kristjan.jonsson | 2006-06-12 17:45:12 +0200 (Mon, 12 Jun 2006) | 2 lines
Fix the CRT argument error handling for VisualStudio .NET 2005. Install a CRT error handler and disable the assertion for debug builds. This causes CRT to set errno to EINVAL.
This update fixes crash cases in the test suite where the default CRT error handler would cause process exit.
........
r46899 | thomas.heller | 2006-06-12 22:56:48 +0200 (Mon, 12 Jun 2006) | 1 line
Add pep-291 compatibility markers.
........
r46901 | ka-ping.yee | 2006-06-13 01:47:52 +0200 (Tue, 13 Jun 2006) | 5 lines
Add the uuid module.
This module has been tested so far on Windows XP (Python 2.4 and 2.5a2),
Mac OS X (Python 2.3, 2.4, and 2.5a2), and Linux (Python 2.4 and 2.5a2).
........
r46902 | tim.peters | 2006-06-13 02:30:01 +0200 (Tue, 13 Jun 2006) | 2 lines
Whitespace normalization.
........
r46903 | tim.peters | 2006-06-13 02:30:50 +0200 (Tue, 13 Jun 2006) | 2 lines
Added missing svn:eol-style property to text files.
........
r46905 | tim.peters | 2006-06-13 05:30:07 +0200 (Tue, 13 Jun 2006) | 5 lines
get_matching_blocks(): rewrote code & comments so they match; added
more comments about why it's this way at all; and removed what looked
like needless expense (sorting (i, j, k) triples directly should give
exactly the same order as sorting (i, (i, j, k)) pairs).
........
r46906 | neal.norwitz | 2006-06-13 06:08:53 +0200 (Tue, 13 Jun 2006) | 1 line
Don't fail if another process is listening on our port.
........
r46908 | neal.norwitz | 2006-06-13 10:28:19 +0200 (Tue, 13 Jun 2006) | 2 lines
Initialize the type object so pychecker can't crash the interpreter.
........
r46909 | neal.norwitz | 2006-06-13 10:41:06 +0200 (Tue, 13 Jun 2006) | 1 line
Verify the crash due to EncodingMap not initialized does not return
........
r46910 | thomas.heller | 2006-06-13 10:56:14 +0200 (Tue, 13 Jun 2006) | 3 lines
Add some windows datatypes that were missing from this file, and add
the aliases defined in windows header files for the structures.
........
r46911 | thomas.heller | 2006-06-13 11:40:14 +0200 (Tue, 13 Jun 2006) | 3 lines
Add back WCHAR, UINT, DOUBLE, _LARGE_INTEGER, _ULARGE_INTEGER.
VARIANT_BOOL is a special _ctypes data type, not c_short.
........
r46912 | ronald.oussoren | 2006-06-13 13:19:56 +0200 (Tue, 13 Jun 2006) | 4 lines
Linecache contains support for PEP302 loaders, but fails to deal with loaders
that return None to indicate that the module is valid but no source is
available. This patch fixes that.
........
r46913 | andrew.kuchling | 2006-06-13 13:57:04 +0200 (Tue, 13 Jun 2006) | 1 line
Mention uuid module
........
r46915 | walter.doerwald | 2006-06-13 14:02:12 +0200 (Tue, 13 Jun 2006) | 2 lines
Fix passing errors to the encoder and decoder functions.
........
r46917 | walter.doerwald | 2006-06-13 14:04:43 +0200 (Tue, 13 Jun 2006) | 3 lines
errors is an attribute in the incremental decoder
not an argument.
........
r46919 | andrew.macintyre | 2006-06-13 17:04:24 +0200 (Tue, 13 Jun 2006) | 11 lines
Patch #1454481: Make thread stack size runtime tunable.
Heavily revised, comprising revisions:
46640 - original trunk revision (backed out in r46655)
46647 - markup fix (backed out in r46655)
46692:46918 merged from branch aimacintyre-sf1454481
branch tested on buildbots (Windows buildbots had problems
not related to these changes).
........
r46920 | brett.cannon | 2006-06-13 18:06:55 +0200 (Tue, 13 Jun 2006) | 2 lines
Remove unused variable.
........
r46921 | andrew.kuchling | 2006-06-13 18:41:41 +0200 (Tue, 13 Jun 2006) | 1 line
Add ability to set stack size
........
r46923 | marc-andre.lemburg | 2006-06-13 19:04:26 +0200 (Tue, 13 Jun 2006) | 2 lines
Update pybench to version 2.0.
........
r46924 | marc-andre.lemburg | 2006-06-13 19:07:14 +0200 (Tue, 13 Jun 2006) | 2 lines
Revert wrong svn copy.
........
r46925 | andrew.macintyre | 2006-06-13 19:14:36 +0200 (Tue, 13 Jun 2006) | 2 lines
fix exception usage
........
r46927 | tim.peters | 2006-06-13 20:37:07 +0200 (Tue, 13 Jun 2006) | 2 lines
Whitespace normalization.
........
r46928 | marc-andre.lemburg | 2006-06-13 20:56:56 +0200 (Tue, 13 Jun 2006) | 9 lines
Updated to pybench 2.0.
See svn.python.org/external/pybench-2.0 for the original import of that
version.
Note that platform.py was not copied over from pybench-2.0 since
it is already part of Python 2.5.
........
r46929 | andrew.macintyre | 2006-06-13 21:02:35 +0200 (Tue, 13 Jun 2006) | 5 lines
Increase the small thread stack size to get the test
to pass reliably on the one buildbot that insists on
more than 32kB of thread stack.
........
r46930 | marc-andre.lemburg | 2006-06-13 21:20:07 +0200 (Tue, 13 Jun 2006) | 2 lines
Whitespace normalization.
........
r46931 | thomas.heller | 2006-06-13 22:18:43 +0200 (Tue, 13 Jun 2006) | 2 lines
More docs for ctypes.
........
r46932 | brett.cannon | 2006-06-13 23:34:24 +0200 (Tue, 13 Jun 2006) | 2 lines
Ignore .pyc and .pyo files in Pybench.
........
r46933 | brett.cannon | 2006-06-13 23:46:41 +0200 (Tue, 13 Jun 2006) | 7 lines
If a classic class defined a __coerce__() method that just returned its two
arguments in reverse, the interpreter would infinitely recourse trying to get a
coercion that worked. So put in a recursion check after a coercion is made and
the next call to attempt to use the coerced values.
Fixes bug #992017 and closes crashers/coerce.py .
........
r46936 | gerhard.haering | 2006-06-14 00:24:47 +0200 (Wed, 14 Jun 2006) | 3 lines
Merged changes from external pysqlite 2.3.0 release. Documentation updates will
follow in a few hours at the latest. Then we should be ready for beta1.
........
r46937 | brett.cannon | 2006-06-14 00:26:13 +0200 (Wed, 14 Jun 2006) | 2 lines
Missed test for rev. 46933; infinite recursion from __coerce__() returning its arguments reversed.
........
r46938 | gerhard.haering | 2006-06-14 00:53:48 +0200 (Wed, 14 Jun 2006) | 2 lines
Updated documentation for pysqlite 2.3.0 API.
........
r46939 | tim.peters | 2006-06-14 06:09:25 +0200 (Wed, 14 Jun 2006) | 10 lines
SequenceMatcher.get_matching_blocks(): This now guarantees that
adjacent triples in the result list describe non-adjacent matching
blocks. That's _nice_ to have, and Guido said he wanted it.
Not a bugfix candidate: Guido or not ;-), this changes visible
endcase semantics (note that some tests had to change), and
nothing about this was documented before. Since it was working
as designed, and behavior was consistent with the docs, it wasn't
"a bug".
........
r46940 | tim.peters | 2006-06-14 06:13:00 +0200 (Wed, 14 Jun 2006) | 2 lines
Repaired typo in new comment.
........
r46941 | tim.peters | 2006-06-14 06:15:27 +0200 (Wed, 14 Jun 2006) | 2 lines
Whitespace normalization.
........
r46942 | fred.drake | 2006-06-14 06:25:02 +0200 (Wed, 14 Jun 2006) | 3 lines
- make some disabled tests run what they intend when enabled
- remove some over-zealous triple-quoting
........
r46943 | fred.drake | 2006-06-14 07:04:47 +0200 (Wed, 14 Jun 2006) | 3 lines
add tests for two cases that are handled correctly in the current code,
but that SF patch 1504676 as written mis-handles
........
r46944 | fred.drake | 2006-06-14 07:15:51 +0200 (Wed, 14 Jun 2006) | 1 line
explain an XXX in more detail
........
r46945 | martin.v.loewis | 2006-06-14 07:21:04 +0200 (Wed, 14 Jun 2006) | 1 line
Patch #1455898: Incremental mode for "mbcs" codec.
........
r46946 | georg.brandl | 2006-06-14 08:08:31 +0200 (Wed, 14 Jun 2006) | 3 lines
Bug #1339007: Shelf objects now don't raise an exception in their
__del__ method when initialization failed.
........
r46948 | thomas.heller | 2006-06-14 08:18:15 +0200 (Wed, 14 Jun 2006) | 1 line
Fix docstring.
........
r46949 | georg.brandl | 2006-06-14 08:29:07 +0200 (Wed, 14 Jun 2006) | 2 lines
Bug #1501122: mention __gt__ &co in description of comparison order.
........
r46951 | thomas.heller | 2006-06-14 09:08:38 +0200 (Wed, 14 Jun 2006) | 1 line
Write more docs.
........
r46952 | georg.brandl | 2006-06-14 10:31:39 +0200 (Wed, 14 Jun 2006) | 3 lines
Bug #1153163: describe __add__ vs __radd__ behavior when adding
objects of same type/of subclasses of the other.
........
r46954 | georg.brandl | 2006-06-14 10:42:11 +0200 (Wed, 14 Jun 2006) | 3 lines
Bug #1202018: add some common mime.types locations.
........
r46955 | georg.brandl | 2006-06-14 10:50:03 +0200 (Wed, 14 Jun 2006) | 3 lines
Bug #1117556: SimpleHTTPServer now tries to find and use the system's
mime.types file for determining MIME types.
........
r46957 | thomas.heller | 2006-06-14 11:09:08 +0200 (Wed, 14 Jun 2006) | 1 line
Document paramflags.
........
r46958 | thomas.heller | 2006-06-14 11:20:11 +0200 (Wed, 14 Jun 2006) | 1 line
Add an __all__ list, since this module does 'from ctypes import *'.
........
r46959 | andrew.kuchling | 2006-06-14 15:59:15 +0200 (Wed, 14 Jun 2006) | 1 line
Add item
........
r46961 | georg.brandl | 2006-06-14 18:46:43 +0200 (Wed, 14 Jun 2006) | 3 lines
Bug #805015: doc error in PyUnicode_FromEncodedObject.
........
r46962 | gerhard.haering | 2006-06-15 00:28:37 +0200 (Thu, 15 Jun 2006) | 10 lines
- Added version checks in C code to make sure we don't trigger bugs in older
SQLite versions.
- Added version checks in test suite so that we don't execute tests that we
know will fail with older (buggy) SQLite versions.
Now, all tests should run against all SQLite versions from 3.0.8 until 3.3.6
(latest one now). The sqlite3 module can be built against all these SQLite
versions and the sqlite3 module does its best to not trigger bugs in SQLite,
but using SQLite 3.3.3 or later is recommended.
........
r46963 | tim.peters | 2006-06-15 00:38:13 +0200 (Thu, 15 Jun 2006) | 2 lines
Whitespace normalization.
........
r46964 | neal.norwitz | 2006-06-15 06:54:29 +0200 (Thu, 15 Jun 2006) | 9 lines
Speculative checkin (requires approval of Gerhard Haering)
This backs out the test changes in 46962 which prevented crashes
by not running the tests via a version check. All the version checks
added in that rev were removed from the tests.
Code was added to the error handler in connection.c that seems
to work with older versions of sqlite including 3.1.3.
........
r46965 | neal.norwitz | 2006-06-15 07:55:49 +0200 (Thu, 15 Jun 2006) | 1 line
Try to narrow window of failure on slow/busy boxes (ppc64 buildbot)
........
r46966 | martin.v.loewis | 2006-06-15 08:45:05 +0200 (Thu, 15 Jun 2006) | 2 lines
Make import/lookup of mbcs fail on non-Windows systems.
........
r46967 | ronald.oussoren | 2006-06-15 10:14:18 +0200 (Thu, 15 Jun 2006) | 2 lines
Patch #1446489 (zipfile: support for ZIP64)
........
r46968 | neal.norwitz | 2006-06-15 10:16:44 +0200 (Thu, 15 Jun 2006) | 6 lines
Re-revert this change. Install the version check and don't run the test
until Gerhard has time to fully debug the issue. This affects versions
before 3.2.1 (possibly only versions earlier than 3.1.3).
Based on discussion on python-checkins.
........
r46969 | gregory.p.smith | 2006-06-15 10:52:32 +0200 (Thu, 15 Jun 2006) | 6 lines
- bsddb: multithreaded DB access using the simple bsddb module interface
now works reliably. It has been updated to use automatic BerkeleyDB
deadlock detection and the bsddb.dbutils.DeadlockWrap wrapper to retry
database calls that would previously deadlock. [SF python bug #775414]
........
r46970 | gregory.p.smith | 2006-06-15 11:23:52 +0200 (Thu, 15 Jun 2006) | 2 lines
minor documentation cleanup. mention the bsddb.db interface explicitly by name.
........
r46971 | neal.norwitz | 2006-06-15 11:57:03 +0200 (Thu, 15 Jun 2006) | 5 lines
Steal the trick from test_compiler to print out a slow msg.
This will hopefully get the buildbots to pass. Not sure this
test will be feasible or even work. But everything is red now,
so it can't get much worse.
........
r46972 | neal.norwitz | 2006-06-15 12:24:49 +0200 (Thu, 15 Jun 2006) | 1 line
Print some more info to get an idea of how much longer the test will last
........
r46981 | tim.peters | 2006-06-15 20:04:40 +0200 (Thu, 15 Jun 2006) | 6 lines
Try to reduce the extreme peak memory and disk-space use
of this test. It probably still requires more disk space
than most buildbots have, and in any case is still so
intrusive that if we don't find another way to test this I'm
taking my buildbot offline permanently ;-)
........
r46982 | tim.peters | 2006-06-15 20:06:29 +0200 (Thu, 15 Jun 2006) | 2 lines
Whitespace normalization.
........
r46983 | tim.peters | 2006-06-15 20:07:28 +0200 (Thu, 15 Jun 2006) | 2 lines
Add missing svn:eol-style property to text files.
........
r46984 | tim.peters | 2006-06-15 20:38:19 +0200 (Thu, 15 Jun 2006) | 2 lines
Oops -- I introduced an off-by-6436159488 error.
........
r46990 | neal.norwitz | 2006-06-16 06:30:34 +0200 (Fri, 16 Jun 2006) | 1 line
Disable this test until we can determine what to do about it
........
r46991 | neal.norwitz | 2006-06-16 06:31:06 +0200 (Fri, 16 Jun 2006) | 1 line
Param name is dir, not directory. Update docstring. Backport candidate
........
r46992 | neal.norwitz | 2006-06-16 06:31:28 +0200 (Fri, 16 Jun 2006) | 1 line
Add missing period in comment.
........
r46993 | neal.norwitz | 2006-06-16 06:32:43 +0200 (Fri, 16 Jun 2006) | 1 line
Fix whitespace, there are memory leaks in this module.
........
r46995 | fred.drake | 2006-06-17 01:45:06 +0200 (Sat, 17 Jun 2006) | 3 lines
SF patch 1504676: Make sgmllib char and entity references pluggable
(implementation/tests contributed by Sam Ruby)
........
r46996 | fred.drake | 2006-06-17 03:07:54 +0200 (Sat, 17 Jun 2006) | 1 line
fix change that broke the htmllib tests
........
r46998 | martin.v.loewis | 2006-06-17 11:15:14 +0200 (Sat, 17 Jun 2006) | 3 lines
Patch #763580: Add name and value arguments to
Tkinter variable classes.
........
r46999 | martin.v.loewis | 2006-06-17 11:20:41 +0200 (Sat, 17 Jun 2006) | 2 lines
Patch #1096231: Add default argument to wm_iconbitmap.
........
r47000 | martin.v.loewis | 2006-06-17 11:25:15 +0200 (Sat, 17 Jun 2006) | 2 lines
Patch #1494750: Destroy master after deleting children.
........
r47003 | george.yoshida | 2006-06-17 18:31:52 +0200 (Sat, 17 Jun 2006) | 2 lines
markup fix
........
r47005 | george.yoshida | 2006-06-17 18:39:13 +0200 (Sat, 17 Jun 2006) | 4 lines
Update url.
Old url returned status code:301 Moved permanently.
........
r47007 | martin.v.loewis | 2006-06-17 20:44:27 +0200 (Sat, 17 Jun 2006) | 2 lines
Patch #812986: Update the canvas even if not tracing.
........
r47008 | martin.v.loewis | 2006-06-17 21:03:26 +0200 (Sat, 17 Jun 2006) | 2 lines
Patch #815924: Restore ability to pass type= and icon=
........
r47009 | neal.norwitz | 2006-06-18 00:37:45 +0200 (Sun, 18 Jun 2006) | 1 line
Fix typo in docstring
........
r47010 | neal.norwitz | 2006-06-18 00:38:15 +0200 (Sun, 18 Jun 2006) | 1 line
Fix memory leak reported by valgrind while running test_subprocess
........
r47011 | fred.drake | 2006-06-18 04:57:35 +0200 (Sun, 18 Jun 2006) | 1 line
remove unnecessary markup
........
r47013 | neal.norwitz | 2006-06-18 21:35:01 +0200 (Sun, 18 Jun 2006) | 7 lines
Prevent spurious leaks when running regrtest.py -R. There may be more
issues that crop up from time to time, but this change seems to have been
pretty stable (no spurious warnings) for about a week.
Other modules which use threads may require similar use of
threading_setup/threading_cleanup from test_support.
........
r47014 | neal.norwitz | 2006-06-18 21:37:40 +0200 (Sun, 18 Jun 2006) | 9 lines
The hppa ubuntu box sometimes hangs forever in these tests. My guess
is that the wait is failing for some reason. Use WNOHANG, so we won't
wait until the buildbot kills the test suite.
I haven't been able to reproduce the failure, so I'm not sure if
this will help or not. Hopefully, this change will cause the test
to fail, rather than hang. That will be better since we will get
the rest of the test results. It may also help us debug the real problem.
........
r47015 | neal.norwitz | 2006-06-18 22:10:24 +0200 (Sun, 18 Jun 2006) | 1 line
Revert 47014 until it is more robust
........
r47016 | thomas.heller | 2006-06-18 23:27:04 +0200 (Sun, 18 Jun 2006) | 6 lines
Fix typos.
Fix doctest example.
Mention in the tutorial that 'errcheck' is explained in the ref manual.
Use better wording in some places.
Remoce code examples that shouldn't be in the tutorial.
Remove some XXX notices.
........
r47017 | georg.brandl | 2006-06-19 00:17:29 +0200 (Mon, 19 Jun 2006) | 3 lines
Patch #1507676: improve exception messages in abstract.c, object.c and typeobject.c.
........
r47018 | neal.norwitz | 2006-06-19 07:40:44 +0200 (Mon, 19 Jun 2006) | 1 line
Use Py_ssize_t
........
r47019 | georg.brandl | 2006-06-19 08:35:54 +0200 (Mon, 19 Jun 2006) | 3 lines
Add news entry about error msg improvement.
........
r47020 | thomas.heller | 2006-06-19 09:07:49 +0200 (Mon, 19 Jun 2006) | 2 lines
Try to repair the failing test on the OpenBSD buildbot. Trial and error...
........
r47021 | tim.peters | 2006-06-19 09:45:16 +0200 (Mon, 19 Jun 2006) | 2 lines
Whitespace normalization.
........
r47022 | walter.doerwald | 2006-06-19 10:07:50 +0200 (Mon, 19 Jun 2006) | 4 lines
Patch #1506645: add Python wrappers for the curses functions
is_term_resized, resize_term and resizeterm. This uses three
separate configure checks (one for each function).
........
r47023 | walter.doerwald | 2006-06-19 10:14:09 +0200 (Mon, 19 Jun 2006) | 2 lines
Make check order match in configure and configure.in.
........
r47024 | tim.peters | 2006-06-19 10:14:28 +0200 (Mon, 19 Jun 2006) | 3 lines
Repair KeyError when running test_threaded_import under -R,
as reported by Neal on python-dev.
........
r47025 | thomas.heller | 2006-06-19 10:32:46 +0200 (Mon, 19 Jun 2006) | 3 lines
Next try to fix the OpenBSD buildbot tests:
Use ctypes.util.find_library to locate the C runtime library
on platforms where is returns useful results.
........
r47026 | tim.peters | 2006-06-19 11:09:44 +0200 (Mon, 19 Jun 2006) | 13 lines
TestHelp.make_parser(): This was making a permanent change to
os.environ (setting envar COLUMNS), which at least caused
test_float_default() to fail if the tests were run more than once.
This repairs the test_optparse -R failures Neal reported on
python-dev. It also explains some seemingly bizarre test_optparse
failures we saw a couple weeks ago on the buildbots, when
test_optparse failed due to test_file failing to clean up after
itself, and then test_optparse failed in an entirely different
way when regrtest's -w option ran test_optparse a second time.
It's now obvious that make_parser() permanently changing os.environ
was responsible for the second half of that.
........
r47027 | anthony.baxter | 2006-06-19 14:04:15 +0200 (Mon, 19 Jun 2006) | 2 lines
Preparing for 2.5b1.
........
r47029 | fred.drake | 2006-06-19 19:31:16 +0200 (Mon, 19 Jun 2006) | 1 line
remove non-working document formats from edist
........
r47030 | gerhard.haering | 2006-06-19 23:17:35 +0200 (Mon, 19 Jun 2006) | 5 lines
Fixed a memory leak that was introduced with incorrect usage of the Python weak
reference API in pysqlite 2.2.1.
Bumbed pysqlite version number to upcoming pysqlite 2.3.1 release.
........
r47032 | ka-ping.yee | 2006-06-20 00:49:36 +0200 (Tue, 20 Jun 2006) | 2 lines
Remove Python 2.3 compatibility comment.
........
r47033 | trent.mick | 2006-06-20 01:21:25 +0200 (Tue, 20 Jun 2006) | 2 lines
Upgrade pyexpat to expat 2.0.0 (http://python.org/sf/1462338).
........
r47034 | trent.mick | 2006-06-20 01:57:41 +0200 (Tue, 20 Jun 2006) | 3 lines
[ 1295808 ] expat symbols should be namespaced in pyexpat
(http://python.org/sf/1295808)
........
r47039 | andrew.kuchling | 2006-06-20 13:52:16 +0200 (Tue, 20 Jun 2006) | 1 line
Uncomment wsgiref section
........
r47040 | andrew.kuchling | 2006-06-20 14:15:09 +0200 (Tue, 20 Jun 2006) | 1 line
Add four library items
........
r47041 | andrew.kuchling | 2006-06-20 14:19:54 +0200 (Tue, 20 Jun 2006) | 1 line
Terminology and typography fixes
........
r47042 | andrew.kuchling | 2006-06-20 15:05:12 +0200 (Tue, 20 Jun 2006) | 1 line
Add introductory paragraphs summarizing the release; minor edits
........
r47043 | andrew.kuchling | 2006-06-20 15:11:29 +0200 (Tue, 20 Jun 2006) | 1 line
Minor edits and rearrangements; markup fix
........
r47044 | andrew.kuchling | 2006-06-20 15:20:30 +0200 (Tue, 20 Jun 2006) | 1 line
[Bug #1504456] Mention xml -> xmlcore change
........
r47047 | brett.cannon | 2006-06-20 19:30:26 +0200 (Tue, 20 Jun 2006) | 2 lines
Raise TestSkipped when the test socket connection is refused.
........
r47049 | brett.cannon | 2006-06-20 21:20:17 +0200 (Tue, 20 Jun 2006) | 2 lines
Fix typo of exception name.
........
r47053 | brett.cannon | 2006-06-21 18:57:57 +0200 (Wed, 21 Jun 2006) | 5 lines
At the C level, tuple arguments are passed in directly to the exception
constructor, meaning it is treated as *args, not as a single argument. This
means using the 'message' attribute won't work (until Py3K comes around),
and so one must grab from 'arg' to get the error number.
........
r47054 | andrew.kuchling | 2006-06-21 19:10:18 +0200 (Wed, 21 Jun 2006) | 1 line
Link to LibRef module documentation
........
r47055 | andrew.kuchling | 2006-06-21 19:17:10 +0200 (Wed, 21 Jun 2006) | 1 line
Note some of Barry's work
........
r47056 | andrew.kuchling | 2006-06-21 19:17:28 +0200 (Wed, 21 Jun 2006) | 1 line
Bump version
........
r47057 | georg.brandl | 2006-06-21 19:45:17 +0200 (Wed, 21 Jun 2006) | 3 lines
fix [ 1509132 ] compiler module builds incorrect AST for TryExceptFinally
........
r47058 | georg.brandl | 2006-06-21 19:52:36 +0200 (Wed, 21 Jun 2006) | 3 lines
Make test_fcntl aware of netbsd3.
........
r47059 | georg.brandl | 2006-06-21 19:53:17 +0200 (Wed, 21 Jun 2006) | 3 lines
Patch #1509001: expected skips for netbsd3.
........
r47060 | gerhard.haering | 2006-06-21 22:55:04 +0200 (Wed, 21 Jun 2006) | 2 lines
Removed call to enable_callback_tracebacks that slipped in by accident.
........
r47061 | armin.rigo | 2006-06-21 23:58:50 +0200 (Wed, 21 Jun 2006) | 13 lines
Fix for an obscure bug introduced by revs 46806 and 46808, with a test.
The problem of checking too eagerly for recursive calls is the
following: if a RuntimeError is caused by recursion, and if code needs
to normalize it immediately (as in the 2nd test), then
PyErr_NormalizeException() needs a call to the RuntimeError class to
instantiate it, and this hits the recursion limit again... causing
PyErr_NormalizeException() to never finish.
Moved this particular recursion check to slot_tp_call(), which is not
involved in instantiating built-in exceptions.
Backport candidate.
........
r47064 | neal.norwitz | 2006-06-22 08:30:50 +0200 (Thu, 22 Jun 2006) | 3 lines
Copy the wsgiref package during make install.
........
r47065 | neal.norwitz | 2006-06-22 08:35:30 +0200 (Thu, 22 Jun 2006) | 1 line
Reset the doc date to today for the automatic doc builds
........
r47067 | andrew.kuchling | 2006-06-22 15:10:23 +0200 (Thu, 22 Jun 2006) | 1 line
Mention how to suppress warnings
........
r47069 | georg.brandl | 2006-06-22 16:46:17 +0200 (Thu, 22 Jun 2006) | 3 lines
Set lineno correctly on list, tuple and dict literals.
........
r47070 | georg.brandl | 2006-06-22 16:46:46 +0200 (Thu, 22 Jun 2006) | 4 lines
Test for correct compilation of try-except-finally stmt.
Test for correct lineno on list, tuple, dict literals.
........
r47071 | fred.drake | 2006-06-22 17:50:08 +0200 (Thu, 22 Jun 2006) | 1 line
fix markup nit
........
r47072 | brett.cannon | 2006-06-22 18:49:14 +0200 (Thu, 22 Jun 2006) | 6 lines
'warning's was improperly requiring that a command-line Warning category be
both a subclass of Warning and a subclass of types.ClassType. The latter is no
longer true thanks to new-style exceptions.
Closes bug #1510580. Thanks to AMK for the test.
........
r47073 | ronald.oussoren | 2006-06-22 20:33:54 +0200 (Thu, 22 Jun 2006) | 3 lines
MacOSX: Add a message to the first screen of the installer that tells
users how to avoid updates to their shell profile.
........
r47074 | georg.brandl | 2006-06-22 21:02:18 +0200 (Thu, 22 Jun 2006) | 3 lines
Fix my name ;)
........
r47075 | thomas.heller | 2006-06-22 21:07:36 +0200 (Thu, 22 Jun 2006) | 2 lines
Small fixes, mostly in the markup.
........
r47076 | peter.astrand | 2006-06-22 22:06:46 +0200 (Thu, 22 Jun 2006) | 1 line
Make it possible to run test_subprocess.py on Python 2.2, which lacks test_support.is_resource_enabled.
........
r47077 | peter.astrand | 2006-06-22 22:21:26 +0200 (Thu, 22 Jun 2006) | 1 line
Applied patch #1506758: Prevent MemoryErrors with large MAXFD.
........
r47079 | neal.norwitz | 2006-06-23 05:32:44 +0200 (Fri, 23 Jun 2006) | 1 line
Fix refleak
........
r47080 | fred.drake | 2006-06-23 08:03:45 +0200 (Fri, 23 Jun 2006) | 9 lines
- SF bug #853506: IP6 address parsing in sgmllib
('[' and ']' were not accepted in unquoted attribute values)
- cleaned up tests of character and entity reference decoding so the
tests cover the documented relationships among handle_charref,
handle_entityref, convert_charref, convert_codepoint, and
convert_entityref, without bringing up Unicode issues that sgmllib
cannot be involved in
........
r47085 | andrew.kuchling | 2006-06-23 21:23:40 +0200 (Fri, 23 Jun 2006) | 11 lines
Fit Makefile for the Python doc environment better; this is a step toward
including the howtos in the build process.
* Put LaTeX output in ../paper-<whatever>/.
* Put HTML output in ../html/
* Explain some of the Makefile variables
* Remove some cruft dating to my environment (e.g. the 'web' target)
This makefile isn't currently invoked by the documentation build process,
so these changes won't destabilize anything.
........
r47086 | hyeshik.chang | 2006-06-23 23:16:18 +0200 (Fri, 23 Jun 2006) | 5 lines
Bug #1511381: codec_getstreamcodec() in codec.c is corrected to
omit a default "error" argument for NULL pointer. This allows
the parser to take a codec from cjkcodecs again.
(Reported by Taewook Kang and reviewed by Walter Doerwald)
........
r47091 | ronald.oussoren | 2006-06-25 22:44:16 +0200 (Sun, 25 Jun 2006) | 6 lines
Workaround for bug #1512124
Without this patch IDLE will get unresponsive when you open the debugger
window on OSX. This is both using the system Tcl/Tk on Tiger as the latest
universal download from tk-components.sf.net.
........
r47092 | ronald.oussoren | 2006-06-25 23:14:19 +0200 (Sun, 25 Jun 2006) | 3 lines
Drop the calldll demo's for macos, calldll isn't present anymore, no need
to keep the demo's around.
........
r47093 | ronald.oussoren | 2006-06-25 23:15:58 +0200 (Sun, 25 Jun 2006) | 3 lines
Use a path without a double slash to compile the .py files after installation
(macosx, binary installer). This fixes bug #1508369 for python 2.5.
........
r47094 | ronald.oussoren | 2006-06-25 23:19:06 +0200 (Sun, 25 Jun 2006) | 3 lines
Also install the .egg-info files in Lib. This will cause wsgiref.egg-info to
be installed.
........
r47097 | andrew.kuchling | 2006-06-26 14:40:02 +0200 (Mon, 26 Jun 2006) | 1 line
[Bug #1511998] Various comments from Nick Coghlan; thanks!
........
r47098 | andrew.kuchling | 2006-06-26 14:43:43 +0200 (Mon, 26 Jun 2006) | 1 line
Describe workaround for PyRange_New()'s removal
........
r47099 | andrew.kuchling | 2006-06-26 15:08:24 +0200 (Mon, 26 Jun 2006) | 5 lines
[Bug #1512163] Fix typo.
This change will probably break tests on FreeBSD buildbots, but I'll check in
a fix for that next.
........
r47100 | andrew.kuchling | 2006-06-26 15:12:16 +0200 (Mon, 26 Jun 2006) | 9 lines
[Bug #1512163] Use one set of locking methods, lockf();
remove the flock() calls.
On FreeBSD, the two methods lockf() and flock() end up using the same
mechanism and the second one fails. A Linux man page claims that the
two methods are orthogonal (so locks acquired one way don't interact
with locks acquired the other way) but that clearly must be false.
........
r47101 | andrew.kuchling | 2006-06-26 15:23:10 +0200 (Mon, 26 Jun 2006) | 5 lines
Add a test for a conflicting lock.
On slow machines, maybe the time intervals (2 sec, 0.5 sec) will be too tight.
I'll see how the buildbots like it.
........
r47103 | andrew.kuchling | 2006-06-26 16:33:24 +0200 (Mon, 26 Jun 2006) | 1 line
Windows doesn't have os.fork(). I'll just disable this test for now
........
r47106 | andrew.kuchling | 2006-06-26 19:00:35 +0200 (Mon, 26 Jun 2006) | 9 lines
Attempt to fix build failure on OS X and Debian alpha; the symptom is
consistent with os.wait() returning immediately because some other
subprocess had previously exited; the test suite then immediately
tries to lock the mailbox and gets an error saying it's already
locked.
To fix this, do a waitpid() so the test suite only continues once
the intended child process has exited.
........
r47113 | neal.norwitz | 2006-06-27 06:06:46 +0200 (Tue, 27 Jun 2006) | 1 line
Ignore some more warnings in the dynamic linker on an older gentoo
........
r47114 | neal.norwitz | 2006-06-27 06:09:13 +0200 (Tue, 27 Jun 2006) | 6 lines
Instead of doing a make test, run the regression tests out of the installed
copy. This will hopefully catch problems where directories are added
under Lib/ but not to Makefile.pre.in. This breaks out the 2 runs
of the test suite with and without -O which is also nicer.
........
r47115 | neal.norwitz | 2006-06-27 06:12:58 +0200 (Tue, 27 Jun 2006) | 5 lines
Fix SF bug #1513032, 'make install' failure on FreeBSD 5.3.
No need to install lib-old, it's empty in 2.5.
........
r47116 | neal.norwitz | 2006-06-27 06:23:06 +0200 (Tue, 27 Jun 2006) | 1 line
Test unimportant change to verify buildbot does not try to build
........
r47117 | neal.norwitz | 2006-06-27 06:26:30 +0200 (Tue, 27 Jun 2006) | 1 line
Try again: test unimportant change to verify buildbot does not try to build
........
r47118 | neal.norwitz | 2006-06-27 06:28:56 +0200 (Tue, 27 Jun 2006) | 1 line
Verify buildbot picks up these changes (really needs testing after last change to Makefile.pre.in)
........
r47121 | vinay.sajip | 2006-06-27 09:34:37 +0200 (Tue, 27 Jun 2006) | 1 line
Removed buggy exception handling in doRollover of rotating file handlers. Exceptions now propagate to caller.
........
r47123 | ronald.oussoren | 2006-06-27 12:08:25 +0200 (Tue, 27 Jun 2006) | 3 lines
MacOSX: fix rather dumb buglet that made it impossible to create extensions on
OSX 10.3 when using a binary distribution build on 10.4.
........
r47125 | tim.peters | 2006-06-27 13:52:49 +0200 (Tue, 27 Jun 2006) | 2 lines
Whitespace normalization.
........
r47128 | ronald.oussoren | 2006-06-27 14:53:52 +0200 (Tue, 27 Jun 2006) | 8 lines
Use staticly build copies of zlib and bzip2 to build the OSX installer, that
way the resulting binaries have a better change of running on 10.3.
This patch also updates the search logic for sleepycat db3/4, without this
patch you cannot use a sleepycat build with a non-standard prefix; with this
you can (at least on OSX) if you add the prefix to CPPFLAGS/LDFLAGS at
configure-time. This change is needed to build the binary installer for OSX.
........
r47131 | ronald.oussoren | 2006-06-27 17:45:32 +0200 (Tue, 27 Jun 2006) | 5 lines
macosx: Install a libpython2.5.a inside the framework as a symlink to the actual
dylib at the root of the framework, that way tools that expect a unix-like
install (python-config, but more importantly external products like
mod_python) work correctly.
........
r47137 | neal.norwitz | 2006-06-28 07:03:22 +0200 (Wed, 28 Jun 2006) | 4 lines
According to the man pages on Gentoo Linux and Tru64, EACCES or EAGAIN
can be returned if fcntl (lockf) fails. This fixes the test failure
on Tru64 by checking for either error rather than just EAGAIN.
........
r47139 | neal.norwitz | 2006-06-28 08:28:31 +0200 (Wed, 28 Jun 2006) | 5 lines
Fix bug #1512695: cPickle.loads could crash if it was interrupted with
a KeyboardInterrupt since PyTuple_Pack was passed a NULL.
Will backport.
........
r47142 | nick.coghlan | 2006-06-28 12:41:47 +0200 (Wed, 28 Jun 2006) | 1 line
Make full module name available as __module_name__ even when __name__ is set to something else (like '__main__')
........
r47143 | armin.rigo | 2006-06-28 12:49:51 +0200 (Wed, 28 Jun 2006) | 2 lines
A couple of crashers of the "won't fix" kind.
........
r47147 | andrew.kuchling | 2006-06-28 16:25:20 +0200 (Wed, 28 Jun 2006) | 1 line
[Bug #1508766] Add docs for uuid module; docs written by George Yoshida, with minor rearrangements by me.
........
r47148 | andrew.kuchling | 2006-06-28 16:27:21 +0200 (Wed, 28 Jun 2006) | 1 line
[Bug #1508766] Add docs for uuid module; this puts the module in the 'Internet Protocols' section. Arguably this module could also have gone in the chapters on strings or encodings, maybe even the crypto chapter. Fred, please move if you see fit.
........
r47151 | georg.brandl | 2006-06-28 22:23:25 +0200 (Wed, 28 Jun 2006) | 3 lines
Fix end_fill().
........
r47153 | trent.mick | 2006-06-28 22:30:41 +0200 (Wed, 28 Jun 2006) | 2 lines
Mention the expat upgrade and pyexpat fix I put in 2.5b1.
........
r47154 | fred.drake | 2006-06-29 02:51:53 +0200 (Thu, 29 Jun 2006) | 6 lines
SF bug #1504333: sgmlib should allow angle brackets in quoted values
(modified patch by Sam Ruby; changed to use separate REs for start and end
tags to reduce matching cost for end tags; extended tests; updated to avoid
breaking previous changes to support IPv6 addresses in unquoted attribute
values)
........
r47156 | fred.drake | 2006-06-29 04:57:48 +0200 (Thu, 29 Jun 2006) | 1 line
document recent bugfixes in sgmllib
........
r47158 | neal.norwitz | 2006-06-29 06:10:08 +0200 (Thu, 29 Jun 2006) | 10 lines
Add new utility function, reap_children(), to test_support. This should
be called at the end of each test that spawns children (perhaps it
should be called from regrtest instead?). This will hopefully prevent
some of the unexplained failures in the buildbots (hppa and alpha)
during tests that spawn children. The problems were not reproducible.
There were many zombies that remained at the end of several tests.
In the worst case, this shouldn't cause any more problems,
though it may not help either. Time will tell.
........
r47159 | neal.norwitz | 2006-06-29 07:48:14 +0200 (Thu, 29 Jun 2006) | 5 lines
This should fix the buildbot failure on s/390 which can't connect to gmail.org.
It makes the error message consistent and always sends to stderr.
It would be much better for all the networking tests to hit only python.org.
........
r47161 | thomas.heller | 2006-06-29 20:34:15 +0200 (Thu, 29 Jun 2006) | 3 lines
Protect the thread api calls in the _ctypes extension module within
#ifdef WITH_THREADS/#endif blocks. Found by Sam Rushing.
........
r47162 | martin.v.loewis | 2006-06-29 20:58:44 +0200 (Thu, 29 Jun 2006) | 2 lines
Patch #1509163: MS Toolkit Compiler no longer available
........
r47163 | skip.montanaro | 2006-06-29 21:20:09 +0200 (Thu, 29 Jun 2006) | 1 line
add string methods to index
........
r47164 | vinay.sajip | 2006-06-30 02:13:08 +0200 (Fri, 30 Jun 2006) | 1 line
Fixed bug in fileConfig() which failed to clear logging._handlerList
........
r47166 | tim.peters | 2006-06-30 08:18:39 +0200 (Fri, 30 Jun 2006) | 2 lines
Whitespace normalization.
........
r47170 | neal.norwitz | 2006-06-30 09:32:16 +0200 (Fri, 30 Jun 2006) | 1 line
Silence compiler warning
........
r47171 | neal.norwitz | 2006-06-30 09:32:46 +0200 (Fri, 30 Jun 2006) | 1 line
Another problem reported by Coverity. Backport candidate.
........
r47175 | thomas.heller | 2006-06-30 19:44:54 +0200 (Fri, 30 Jun 2006) | 2 lines
Revert the use of PY_FORMAT_SIZE_T in PyErr_Format.
........
r47176 | tim.peters | 2006-06-30 20:34:51 +0200 (Fri, 30 Jun 2006) | 2 lines
Remove now-unused fidding with PY_FORMAT_SIZE_T.
........
r47177 | georg.brandl | 2006-06-30 20:47:56 +0200 (Fri, 30 Jun 2006) | 3 lines
Document decorator usage of property.
........
r47181 | fred.drake | 2006-06-30 21:29:25 +0200 (Fri, 30 Jun 2006) | 4 lines
- consistency nit: always include "()" in \function and \method
(*should* be done by the presentation, but that requires changes all over)
- avoid spreading the __name meme
........
r47188 | vinay.sajip | 2006-07-01 12:45:20 +0200 (Sat, 01 Jul 2006) | 1 line
Added entry for fileConfig() bugfix.
........
r47189 | vinay.sajip | 2006-07-01 12:47:20 +0200 (Sat, 01 Jul 2006) | 1 line
Added duplicate call to fileConfig() to ensure that it cleans up after itself correctly.
........
r47190 | martin.v.loewis | 2006-07-01 17:33:37 +0200 (Sat, 01 Jul 2006) | 2 lines
Release all forwarded functions in .close. Fixes #1513223.
........
r47191 | fred.drake | 2006-07-01 18:28:20 +0200 (Sat, 01 Jul 2006) | 7 lines
SF bug #1296433 (Expat bug #1515266): Unchecked calls to character data
handler would cause a segfault. This merges in Expat's lib/xmlparse.c
revisions 1.154 and 1.155, which fix this and a closely related problem
(the later does not affect Python).
Moved the crasher test to the tests for xml.parsers.expat.
........
r47197 | gerhard.haering | 2006-07-02 19:48:30 +0200 (Sun, 02 Jul 2006) | 4 lines
The sqlite3 module did cut off data from the SQLite database at the first null
character before sending it to a custom converter. This has been fixed now.
........
r47198 | martin.v.loewis | 2006-07-02 20:44:00 +0200 (Sun, 02 Jul 2006) | 1 line
Correct arithmetic in access on Win32. Fixes #1513646.
........
r47203 | thomas.heller | 2006-07-03 09:58:09 +0200 (Mon, 03 Jul 2006) | 1 line
Cleanup: Remove commented out code.
........
r47204 | thomas.heller | 2006-07-03 09:59:50 +0200 (Mon, 03 Jul 2006) | 1 line
Don't run the doctests with Python 2.3 because it doesn't have the ELLIPSIS flag.
........
r47205 | thomas.heller | 2006-07-03 10:04:05 +0200 (Mon, 03 Jul 2006) | 7 lines
Fixes so that _ctypes can be compiled with the MingW compiler.
It seems that the definition of '__attribute__(x)' was responsible for
the compiler ignoring the '__fastcall' attribute on the
ffi_closure_SYSV function in libffi_msvc/ffi.c, took me quite some
time to figure this out.
........
r47206 | thomas.heller | 2006-07-03 10:08:14 +0200 (Mon, 03 Jul 2006) | 11 lines
Add a new function uses_seh() to the _ctypes extension module. This
will return True if Windows Structured Exception handling (SEH) is
used when calling functions, False otherwise.
Currently, only MSVC supports SEH.
Fix the test so that it doesn't crash when run with MingW compiled
_ctypes. Note that two tests are still failing when mingw is used, I
suspect structure layout differences and function calling conventions
between MSVC and MingW.
........
r47207 | tim.peters | 2006-07-03 10:23:19 +0200 (Mon, 03 Jul 2006) | 2 lines
Whitespace normalization.
........
r47208 | martin.v.loewis | 2006-07-03 11:44:00 +0200 (Mon, 03 Jul 2006) | 3 lines
Only setup canvas when it is first created.
Fixes #1514703
........
r47209 | martin.v.loewis | 2006-07-03 12:05:30 +0200 (Mon, 03 Jul 2006) | 3 lines
Reimplement turtle.circle using a polyline, to allow correct
filling of arcs. Also fixes #1514693.
........
r47210 | martin.v.loewis | 2006-07-03 12:19:49 +0200 (Mon, 03 Jul 2006) | 3 lines
Bug #1514693: Update turtle's heading when switching between
degrees and radians.
........
r47211 | martin.v.loewis | 2006-07-03 13:12:06 +0200 (Mon, 03 Jul 2006) | 2 lines
Document functions added in 2.3 and 2.5.
........
r47212 | martin.v.loewis | 2006-07-03 14:19:50 +0200 (Mon, 03 Jul 2006) | 3 lines
Bug #1417699: Reject locale-specific decimal point in float()
and atof().
........
r47213 | martin.v.loewis | 2006-07-03 14:28:58 +0200 (Mon, 03 Jul 2006) | 3 lines
Bug #1267547: Put proper recursive setup.py call into the
spec file generated by bdist_rpm.
........
r47215 | martin.v.loewis | 2006-07-03 15:01:35 +0200 (Mon, 03 Jul 2006) | 3 lines
Patch #825417: Fix timeout processing in expect,
read_until. Will backport to 2.4.
........
r47218 | martin.v.loewis | 2006-07-03 15:47:40 +0200 (Mon, 03 Jul 2006) | 2 lines
Put method-wrappers into trashcan. Fixes #927248.
........
r47219 | andrew.kuchling | 2006-07-03 16:07:30 +0200 (Mon, 03 Jul 2006) | 1 line
[Bug #1515932] Clarify description of slice assignment
........
r47220 | andrew.kuchling | 2006-07-03 16:16:09 +0200 (Mon, 03 Jul 2006) | 4 lines
[Bug #1511911] Clarify description of optional arguments to sorted()
by improving the xref to the section on lists, and by
copying the explanations of the arguments (with a slight modification).
........
r47223 | kristjan.jonsson | 2006-07-03 16:59:05 +0200 (Mon, 03 Jul 2006) | 1 line
Fix build problems with the platform SDK on windows. It is not sufficient to test for the C compiler version when determining if we have the secure CRT from microsoft. Must test with an undocumented macro, __STDC_SECURE_LIB__ too.
........
r47224 | ronald.oussoren | 2006-07-04 14:30:22 +0200 (Tue, 04 Jul 2006) | 7 lines
Sync the darwin/x86 port libffi with the copy in PyObjC. This fixes a number
of bugs in that port. The most annoying ones were due to some subtle differences
between the document ABI and the actual implementation :-(
(there are no python unittests that fail without this patch, but without it
some of libffi's unittests fail).
........
r47234 | georg.brandl | 2006-07-05 10:21:00 +0200 (Wed, 05 Jul 2006) | 3 lines
Remove remaining references to OverflowWarning.
........
r47236 | thomas.heller | 2006-07-05 11:13:56 +0200 (Wed, 05 Jul 2006) | 3 lines
Fix the bitfield test when _ctypes is compiled with MingW. Structures
containing bitfields may have different layout on MSVC and MingW .
........
r47237 | thomas.wouters | 2006-07-05 13:03:49 +0200 (Wed, 05 Jul 2006) | 15 lines
Fix bug in passing tuples to string.Template. All other values (with working
str() or repr()) would work, just not multi-value tuples. Probably not a
backport candidate, since it changes the behaviour of passing a
single-element tuple:
>>> string.Template("$foo").substitute(dict(foo=(1,)))
'(1,)'
versus
'1'
........
r47241 | georg.brandl | 2006-07-05 16:18:45 +0200 (Wed, 05 Jul 2006) | 2 lines
Patch #1517490: fix glitches in filter() docs.
........
r47244 | georg.brandl | 2006-07-05 17:50:05 +0200 (Wed, 05 Jul 2006) | 2 lines
no need to elaborate "string".
........
r47251 | neal.norwitz | 2006-07-06 06:28:59 +0200 (Thu, 06 Jul 2006) | 3 lines
Fix refleaks reported by Shane Hathaway in SF patch #1515361. This change
contains only the changes related to leaking the copy variable.
........
r47253 | fred.drake | 2006-07-06 07:13:22 +0200 (Thu, 06 Jul 2006) | 4 lines
- back out Expat change; the final fix to Expat will be different
- change the pyexpat wrapper to not be so sensitive to this detail of the
Expat implementation (the ex-crasher test still passes)
........
r47257 | neal.norwitz | 2006-07-06 08:45:08 +0200 (Thu, 06 Jul 2006) | 1 line
Add a NEWS entry for a recent pyexpat fix
........
r47258 | martin.v.loewis | 2006-07-06 08:55:58 +0200 (Thu, 06 Jul 2006) | 2 lines
Add sqlite3.dll to the DLLs component, not to the TkDLLs component.
Fixes #1517388.
........
r47259 | martin.v.loewis | 2006-07-06 09:05:21 +0200 (Thu, 06 Jul 2006) | 1 line
Properly quote compileall and Lib paths in case TARGETDIR has a space.
........
r47260 | thomas.heller | 2006-07-06 09:50:18 +0200 (Thu, 06 Jul 2006) | 5 lines
Revert the change done in svn revision 47206:
Add a new function uses_seh() to the _ctypes extension module. This
will return True if Windows Structured Exception handling (SEH) is
used when calling functions, False otherwise.
........
r47261 | armin.rigo | 2006-07-06 09:58:18 +0200 (Thu, 06 Jul 2006) | 3 lines
A couple of examples about how to attack the fact that _PyType_Lookup()
returns a borrowed ref. Many of the calls are open to attack.
........
r47262 | thomas.heller | 2006-07-06 10:28:14 +0200 (Thu, 06 Jul 2006) | 2 lines
The test that calls a function with invalid arguments and catches the
resulting Windows access violation will not be run by default.
........
r47263 | thomas.heller | 2006-07-06 10:48:35 +0200 (Thu, 06 Jul 2006) | 5 lines
Patch #1517790: It is now possible to use custom objects in the ctypes
foreign function argtypes sequence as long as they provide a
from_param method, no longer is it required that the object is a
ctypes type.
........
r47264 | thomas.heller | 2006-07-06 10:58:40 +0200 (Thu, 06 Jul 2006) | 2 lines
Document the Struture and Union constructors.
........
r47265 | thomas.heller | 2006-07-06 11:11:22 +0200 (Thu, 06 Jul 2006) | 2 lines
Document the changes in svn revision 47263, from patch #1517790.
........
r47267 | ronald.oussoren | 2006-07-06 12:13:35 +0200 (Thu, 06 Jul 2006) | 7 lines
This patch solves the problem Skip was seeing with zlib, this patch ensures that
configure uses similar compiler flags as setup.py when doing the zlib test.
Without this patch configure would use the first shared library on the linker
path, with this patch it uses the first shared or static library on that path
just like setup.py.
........
r47268 | thomas.wouters | 2006-07-06 12:48:28 +0200 (Thu, 06 Jul 2006) | 4 lines
NEWS entry for r47267: fixing configure's zlib probing.
........
r47269 | fredrik.lundh | 2006-07-06 14:29:24 +0200 (Thu, 06 Jul 2006) | 3 lines
added XMLParser alias for cElementTree compatibility
........
r47271 | nick.coghlan | 2006-07-06 14:53:04 +0200 (Thu, 06 Jul 2006) | 1 line
Revert the __module_name__ changes made in rev 47142. We'll revisit this in Python 2.6
........
r47272 | nick.coghlan | 2006-07-06 15:04:56 +0200 (Thu, 06 Jul 2006) | 1 line
Update the tutorial section on relative imports
........
r47273 | nick.coghlan | 2006-07-06 15:35:27 +0200 (Thu, 06 Jul 2006) | 1 line
Ignore ImportWarning by default
........
r47274 | nick.coghlan | 2006-07-06 15:41:34 +0200 (Thu, 06 Jul 2006) | 1 line
Cover ImportWarning, PendingDeprecationWarning and simplefilter() in the warnings module docs
........
r47275 | nick.coghlan | 2006-07-06 15:47:18 +0200 (Thu, 06 Jul 2006) | 1 line
Add NEWS entries for the ImportWarning change and documentation update
........
r47276 | andrew.kuchling | 2006-07-06 15:57:28 +0200 (Thu, 06 Jul 2006) | 1 line
ImportWarning is now silent by default
........
r47277 | thomas.heller | 2006-07-06 17:06:05 +0200 (Thu, 06 Jul 2006) | 2 lines
Document the correct return type of PyLong_AsUnsignedLongLongMask.
........
r47278 | hyeshik.chang | 2006-07-06 17:21:52 +0200 (Thu, 06 Jul 2006) | 2 lines
Add a testcase for r47086 which fixed a bug in codec_getstreamcodec().
........
r47279 | hyeshik.chang | 2006-07-06 17:39:24 +0200 (Thu, 06 Jul 2006) | 3 lines
Test using all CJK encodings for the testcases which don't require
specific encodings.
........
r47280 | martin.v.loewis | 2006-07-06 21:28:03 +0200 (Thu, 06 Jul 2006) | 2 lines
Properly generate logical file ids. Fixes #1515998.
Also correct typo in Control.mapping.
........
r47287 | neal.norwitz | 2006-07-07 08:03:15 +0200 (Fri, 07 Jul 2006) | 17 lines
Restore rev 47014:
The hppa ubuntu box sometimes hangs forever in these tests. My guess
is that the wait is failing for some reason. Use WNOHANG, so we won't
wait until the buildbot kills the test suite.
I haven't been able to reproduce the failure, so I'm not sure if
this will help or not. Hopefully, this change will cause the test
to fail, rather than hang. That will be better since we will get
the rest of the test results. It may also help us debug the real problem.
*** The reason this originally failed was because there were many
zombie children outstanding before rev 47158 cleaned them up.
There are still hangs in test_subprocess that need to be addressed,
but that will take more work. This should close some holes.
........
r47289 | georg.brandl | 2006-07-07 10:15:12 +0200 (Fri, 07 Jul 2006) | 3 lines
Fix RFC number.
........
r50489 | neal.norwitz | 2006-07-08 07:31:37 +0200 (Sat, 08 Jul 2006) | 1 line
Fix SF bug #1519018: 'as' is now validated properly in import statements
........
r50490 | georg.brandl | 2006-07-08 14:15:27 +0200 (Sat, 08 Jul 2006) | 3 lines
Add an additional test for bug #1519018.
........
r50491 | tim.peters | 2006-07-08 21:55:05 +0200 (Sat, 08 Jul 2006) | 2 lines
Whitespace normalization.
........
r50493 | neil.schemenauer | 2006-07-09 18:16:34 +0200 (Sun, 09 Jul 2006) | 2 lines
Fix AST compiler bug #1501934: incorrect LOAD/STORE_GLOBAL generation.
........
r50495 | neil.schemenauer | 2006-07-09 23:19:29 +0200 (Sun, 09 Jul 2006) | 2 lines
Fix SF bug 1441486: bad unary minus folding in compiler.
........
r50497 | neal.norwitz | 2006-07-10 00:14:42 +0200 (Mon, 10 Jul 2006) | 4 lines
On 64 bit systems, int literals that use less than 64 bits are now ints
rather than longs. This also fixes the test for eval(-sys.maxint - 1).
........
r50500 | neal.norwitz | 2006-07-10 02:04:44 +0200 (Mon, 10 Jul 2006) | 4 lines
Bug #1512814, Fix incorrect lineno's when code at module scope
started after line 256.
........
r50501 | neal.norwitz | 2006-07-10 02:05:34 +0200 (Mon, 10 Jul 2006) | 1 line
Fix doco. Backport candidate.
........
r50503 | neal.norwitz | 2006-07-10 02:23:17 +0200 (Mon, 10 Jul 2006) | 5 lines
Part of SF patch #1484695. This removes dead code. The chksum was
already verified in .frombuf() on the lines above. If there was
a problem an exception is raised, so there was no way this condition
could have been true.
........
r50504 | neal.norwitz | 2006-07-10 03:18:57 +0200 (Mon, 10 Jul 2006) | 3 lines
Patch #1516912: improve Modules support for OpenVMS.
........
r50506 | neal.norwitz | 2006-07-10 04:36:41 +0200 (Mon, 10 Jul 2006) | 7 lines
Patch #1504046: Add documentation for xml.etree.
/F wrote the text docs, Englebert Gruber massaged it to latex and I
did some more massaging to try and improve the consistency and
fix some name mismatches between the declaration and text.
........
r50509 | martin.v.loewis | 2006-07-10 09:23:48 +0200 (Mon, 10 Jul 2006) | 2 lines
Introduce DISTUTILS_USE_SDK as a flag to determine whether the
SDK environment should be used. Fixes #1508010.
........
r50510 | martin.v.loewis | 2006-07-10 09:26:41 +0200 (Mon, 10 Jul 2006) | 1 line
Change error message to indicate that VS2003 is necessary to build extension modules, not the .NET SDK.
........
r50511 | martin.v.loewis | 2006-07-10 09:29:41 +0200 (Mon, 10 Jul 2006) | 1 line
Add svn:ignore.
........
r50512 | anthony.baxter | 2006-07-10 09:41:04 +0200 (Mon, 10 Jul 2006) | 1 line
preparing for 2.5b2
........
r50513 | thomas.heller | 2006-07-10 11:10:28 +0200 (Mon, 10 Jul 2006) | 2 lines
Fix bug #1518190: accept any integer or long value in the
ctypes.c_void_p constructor.
........
r50514 | thomas.heller | 2006-07-10 11:31:06 +0200 (Mon, 10 Jul 2006) | 3 lines
Fixed a segfault when ctypes.wintypes were imported on
non-Windows machines.
........
r50516 | thomas.heller | 2006-07-10 13:11:10 +0200 (Mon, 10 Jul 2006) | 3 lines
Assigning None to pointer type structure fields possible overwrote
wrong fields.
........
r50517 | thomas.heller | 2006-07-10 13:17:37 +0200 (Mon, 10 Jul 2006) | 5 lines
Moved the ctypes news entries from the 'Library' section into the
'Extension Modules' section where they belong, probably.
This destroyes the original order of the news entries, don't know
if that is important or not.
........
r50526 | phillip.eby | 2006-07-10 21:03:29 +0200 (Mon, 10 Jul 2006) | 2 lines
Fix SF#1516184 and add a test to prevent regression.
........
r50528 | phillip.eby | 2006-07-10 21:18:35 +0200 (Mon, 10 Jul 2006) | 2 lines
Fix SF#1457312: bad socket error handling in distutils "upload" command.
........
r50537 | peter.astrand | 2006-07-10 22:39:49 +0200 (Mon, 10 Jul 2006) | 1 line
Make it possible to run test_subprocess.py with Python 2.2, which lacks test_support.reap_children().
........
r50541 | tim.peters | 2006-07-10 23:08:24 +0200 (Mon, 10 Jul 2006) | 5 lines
After approval from Anthony, merge the tim-current_frames
branch into the trunk. This adds a new sys._current_frames()
function, which returns a dict mapping thread id to topmost
thread stack frame.
........
r50542 | tim.peters | 2006-07-10 23:11:49 +0200 (Mon, 10 Jul 2006) | 2 lines
Whitespace normalization.
........
r50553 | martin.v.loewis | 2006-07-11 00:11:28 +0200 (Tue, 11 Jul 2006) | 4 lines
Patch #1519566: Remove unused _tofill member.
Make begin_fill idempotent.
Update demo2 to demonstrate filling of concave shapes.
........
r50567 | anthony.baxter | 2006-07-11 04:04:09 +0200 (Tue, 11 Jul 2006) | 4 lines
#1494314: Fix a regression with high-numbered sockets in 2.4.3. This
means that select() on sockets > FD_SETSIZE (typically 1024) work again.
The patch makes sockets use poll() internally where available.
........
r50568 | tim.peters | 2006-07-11 04:17:48 +0200 (Tue, 11 Jul 2006) | 2 lines
Whitespace normalization.
........
r50575 | thomas.heller | 2006-07-11 18:42:05 +0200 (Tue, 11 Jul 2006) | 1 line
Add missing Py_DECREF.
........
r50576 | thomas.heller | 2006-07-11 18:44:25 +0200 (Tue, 11 Jul 2006) | 1 line
Add missing Py_DECREFs.
........
r50579 | andrew.kuchling | 2006-07-11 19:20:16 +0200 (Tue, 11 Jul 2006) | 1 line
Bump version number; add sys._current_frames
........
r50582 | thomas.heller | 2006-07-11 20:28:35 +0200 (Tue, 11 Jul 2006) | 3 lines
When a foreign function is retrived by calling __getitem__ on a ctypes
library instance, do not set it as attribute.
........
r50583 | thomas.heller | 2006-07-11 20:40:50 +0200 (Tue, 11 Jul 2006) | 2 lines
Change the ctypes version number to 1.0.0.
........
r50597 | neal.norwitz | 2006-07-12 07:26:17 +0200 (Wed, 12 Jul 2006) | 3 lines
Bug #1520864: unpacking singleton tuples in for loop (for x, in) work again.
........
r50598 | neal.norwitz | 2006-07-12 07:26:35 +0200 (Wed, 12 Jul 2006) | 1 line
Fix function name in error msg
........
r50599 | neal.norwitz | 2006-07-12 07:27:46 +0200 (Wed, 12 Jul 2006) | 4 lines
Fix uninitialized memory read reported by Valgrind when running doctest.
This could happen if size == 0.
........
r50600 | neal.norwitz | 2006-07-12 09:28:29 +0200 (Wed, 12 Jul 2006) | 1 line
Actually change the MAGIC #. Create a new section for 2.5c1 and mention the impact of changing the MAGIC #.
........
r50601 | thomas.heller | 2006-07-12 10:43:47 +0200 (Wed, 12 Jul 2006) | 3 lines
Fix #1467450: ctypes now uses RTLD_GLOBAL by default on OSX 10.3 to
load shared libraries.
........
r50604 | thomas.heller | 2006-07-12 16:25:18 +0200 (Wed, 12 Jul 2006) | 3 lines
Fix the wrong description of LibraryLoader.LoadLibrary, and document
the DEFAULT_MODE constant.
........
r50607 | georg.brandl | 2006-07-12 17:31:17 +0200 (Wed, 12 Jul 2006) | 3 lines
Accept long options "--help" and "--version".
........
r50617 | thomas.heller | 2006-07-13 11:53:47 +0200 (Thu, 13 Jul 2006) | 3 lines
A misspelled preprocessor symbol caused ctypes to be always compiled
without thread support. Replaced WITH_THREADS with WITH_THREAD.
........
r50619 | thomas.heller | 2006-07-13 19:01:14 +0200 (Thu, 13 Jul 2006) | 3 lines
Fix #1521375. When running with root priviledges, 'gcc -o /dev/null'
did overwrite /dev/null. Use a temporary file instead of /dev/null.
........
r50620 | thomas.heller | 2006-07-13 19:05:13 +0200 (Thu, 13 Jul 2006) | 2 lines
Fix misleading words.
........
r50622 | andrew.kuchling | 2006-07-13 19:37:26 +0200 (Thu, 13 Jul 2006) | 1 line
Typo fix
........
r50629 | georg.brandl | 2006-07-14 09:12:54 +0200 (Fri, 14 Jul 2006) | 3 lines
Patch #1521874: grammar errors in doanddont.tex.
........
r50630 | neal.norwitz | 2006-07-14 09:20:04 +0200 (Fri, 14 Jul 2006) | 1 line
Try to improve grammar further.
........
r50631 | martin.v.loewis | 2006-07-14 11:58:55 +0200 (Fri, 14 Jul 2006) | 1 line
Extend build_ssl to Win64, using VSExtComp.
........
r50632 | martin.v.loewis | 2006-07-14 14:10:09 +0200 (Fri, 14 Jul 2006) | 1 line
Add debug output to analyse buildbot failure.
........
r50633 | martin.v.loewis | 2006-07-14 14:31:05 +0200 (Fri, 14 Jul 2006) | 1 line
Fix Debug build of _ssl.
........
r50636 | andrew.kuchling | 2006-07-14 15:32:38 +0200 (Fri, 14 Jul 2006) | 1 line
Mention new options
........
r50638 | peter.astrand | 2006-07-14 16:04:45 +0200 (Fri, 14 Jul 2006) | 1 line
Bug #1223937: CalledProcessError.errno -> CalledProcessError.returncode.
........
r50640 | thomas.heller | 2006-07-14 17:01:05 +0200 (Fri, 14 Jul 2006) | 4 lines
Make the prototypes of our private PyUnicode_FromWideChar and
PyUnicode_AsWideChar replacement functions compatible to the official
functions by using Py_ssize_t instead of int.
........
r50643 | thomas.heller | 2006-07-14 19:51:14 +0200 (Fri, 14 Jul 2006) | 3 lines
Patch #1521817: The index range checking on ctypes arrays containing
exactly one element is enabled again.
........
r50647 | thomas.heller | 2006-07-14 20:22:50 +0200 (Fri, 14 Jul 2006) | 2 lines
Updates for the ctypes documentation.
........
r50655 | fredrik.lundh | 2006-07-14 23:45:48 +0200 (Fri, 14 Jul 2006) | 3 lines
typo
........
r50664 | george.yoshida | 2006-07-15 18:03:49 +0200 (Sat, 15 Jul 2006) | 2 lines
Bug #15187702 : ext/win-cookbook.html has a broken link to distutils
........
r50667 | bob.ippolito | 2006-07-15 18:53:15 +0200 (Sat, 15 Jul 2006) | 1 line
Patch #1220874: Update the binhex module for Mach-O.
........
r50671 | fred.drake | 2006-07-16 03:21:20 +0200 (Sun, 16 Jul 2006) | 1 line
clean up some link markup
........
r50673 | neal.norwitz | 2006-07-16 03:50:38 +0200 (Sun, 16 Jul 2006) | 4 lines
Bug #1512814, Fix incorrect lineno's when code within a function
had more than 255 blank lines. Byte codes need to go first, line #s second.
........
r50674 | neal.norwitz | 2006-07-16 04:00:32 +0200 (Sun, 16 Jul 2006) | 5 lines
a & b were dereffed above, so they are known to be valid pointers.
z is known to be NULL, nothing to DECREF.
Reported by Klockwork, #107.
........
r50675 | neal.norwitz | 2006-07-16 04:02:57 +0200 (Sun, 16 Jul 2006) | 5 lines
self is dereffed (and passed as first arg), so it's known to be good.
func is returned from PyArg_ParseTuple and also dereffed.
Reported by Klocwork, #30 (self one at least).
........
r50676 | neal.norwitz | 2006-07-16 04:05:35 +0200 (Sun, 16 Jul 2006) | 4 lines
proto was dereffed above and is known to be good. No need for X.
Reported by Klocwork, #39.
........
r50677 | neal.norwitz | 2006-07-16 04:15:27 +0200 (Sun, 16 Jul 2006) | 5 lines
Fix memory leaks in some conditions.
Reported by Klocwork #152.
........
r50678 | neal.norwitz | 2006-07-16 04:17:36 +0200 (Sun, 16 Jul 2006) | 4 lines
Fix memory leak under some conditions.
Reported by Klocwork, #98.
........
r50679 | neal.norwitz | 2006-07-16 04:22:30 +0200 (Sun, 16 Jul 2006) | 8 lines
Use sizeof(buffer) instead of duplicating the constants to ensure they won't
be wrong.
The real change is to pass (bufsz - 1) to PyOS_ascii_formatd and 1
to strncat. strncat copies n+1 bytes from src (not dest).
Reported by Klocwork #58.
........
r50680 | neal.norwitz | 2006-07-16 04:32:03 +0200 (Sun, 16 Jul 2006) | 5 lines
Handle a NULL name properly.
Reported by Klocwork #67
........
r50681 | neal.norwitz | 2006-07-16 04:35:47 +0200 (Sun, 16 Jul 2006) | 6 lines
PyFunction_SetDefaults() is documented as taking None or a tuple.
A NULL would crash the PyTuple_Check(). Now make NULL return a SystemError.
Reported by Klocwork #73.
........
r50683 | neal.norwitz | 2006-07-17 02:55:45 +0200 (Mon, 17 Jul 2006) | 5 lines
Stop INCREFing name, then checking if it's NULL. name (f_name) should never
be NULL so assert it. Fix one place where we could have passed NULL.
Reported by Klocwork #66.
........
r50684 | neal.norwitz | 2006-07-17 02:57:15 +0200 (Mon, 17 Jul 2006) | 5 lines
otherset is known to be non-NULL based on checks before and DECREF after.
DECREF otherset rather than XDECREF in error conditions too.
Reported by Klockwork #154.
........
r50685 | neal.norwitz | 2006-07-17 02:59:04 +0200 (Mon, 17 Jul 2006) | 7 lines
Reported by Klocwork #151.
v2 can be NULL if exception2 is NULL. I don't think that condition can happen,
but I'm not sure it can't either. Now the code will protect against either
being NULL.
........
r50686 | neal.norwitz | 2006-07-17 03:00:16 +0200 (Mon, 17 Jul 2006) | 1 line
Add NEWS entry for a bunch of fixes due to warnings produced by Klocworks static analysis tool.
........
r50687 | fred.drake | 2006-07-17 07:47:52 +0200 (Mon, 17 Jul 2006) | 3 lines
document xmlcore (still minimal; needs mention in each of the xml.* modules)
SF bug #1504456 (partial)
........
r50688 | georg.brandl | 2006-07-17 15:23:46 +0200 (Mon, 17 Jul 2006) | 3 lines
Remove usage of sets module (patch #1500609).
........
r50689 | georg.brandl | 2006-07-17 15:26:33 +0200 (Mon, 17 Jul 2006) | 3 lines
Add missing NEWS item (#1522771)
........
r50690 | andrew.kuchling | 2006-07-17 18:47:54 +0200 (Mon, 17 Jul 2006) | 1 line
Attribute more features
........
r50692 | kurt.kaiser | 2006-07-17 23:59:27 +0200 (Mon, 17 Jul 2006) | 8 lines
Patch 1479219 - Tal Einat
1. 'as' highlighted as builtin in comment string on import line
2. Comments such as "#False identity" which start with a keyword immediately
after the '#' character aren't colored as comments.
3. u or U beginning unicode string not correctly highlighted
Closes bug 1325071
........
r50693 | barry.warsaw | 2006-07-18 01:07:51 +0200 (Tue, 18 Jul 2006) | 16 lines
decode_rfc2231(): Be more robust against buggy RFC 2231 encodings.
Specifically, instead of raising a ValueError when there is a single tick in
the parameter, simply return that the entire string unquoted, with None for
both the charset and the language. Also, if there are more than 2 ticks in
the parameter, interpret the first three parts as the standard RFC 2231 parts,
then the rest of the parts as the encoded string.
Test cases added.
Original fewer-than-3-parts fix by Tokio Kikuchi.
Resolves SF bug # 1218081. I will back port the fix and tests to Python 2.4
(email 3.0) and Python 2.3 (email 2.5).
Also, bump the version number to email 4.0.1, removing the 'alpha' moniker.
........
r50695 | kurt.kaiser | 2006-07-18 06:03:16 +0200 (Tue, 18 Jul 2006) | 2 lines
Rebinding Tab key was inserting 'tab' instead of 'Tab'. Bug 1179168.
........
r50696 | brett.cannon | 2006-07-18 06:41:36 +0200 (Tue, 18 Jul 2006) | 6 lines
Fix bug #1520914. Starting in 2.4, time.strftime() began to check the bounds
of values in the time tuple passed in. Unfortunately people came to rely on
undocumented behaviour of setting unneeded values to 0, regardless of if it was
within the valid range. Now those values force the value internally to the
minimum value when 0 is passed in.
........
r50697 | facundo.batista | 2006-07-18 14:16:13 +0200 (Tue, 18 Jul 2006) | 1 line
Comments and docs cleanups, and some little fixes, provided by Santiágo Peresón
........
r50704 | martin.v.loewis | 2006-07-18 19:46:31 +0200 (Tue, 18 Jul 2006) | 2 lines
Patch #1524429: Use repr instead of backticks again.
........
r50706 | tim.peters | 2006-07-18 23:55:15 +0200 (Tue, 18 Jul 2006) | 2 lines
Whitespace normalization.
........
r50708 | tim.peters | 2006-07-19 02:03:19 +0200 (Wed, 19 Jul 2006) | 18 lines
SF bug 1524317: configure --without-threads fails to build
Moved the code for _PyThread_CurrentFrames() up, so it's no longer
in a huge "#ifdef WITH_THREAD" block (I didn't realize it /was/ in
one).
Changed test_sys's test_current_frames() so it passes with or without
thread supported compiled in.
Note that test_sys fails when Python is compiled without threads,
but for an unrelated reason (the old test_exit() fails with an
indirect ImportError on the `thread` module). There are also
other unrelated compilation failures without threads, in extension
modules (like ctypes); at least the core compiles again.
Do we really support --without-threads? If so, there are several
problems remaining.
........
r50713 | thomas.heller | 2006-07-19 11:09:32 +0200 (Wed, 19 Jul 2006) | 4 lines
Make sure the _ctypes extension can be compiled when WITH_THREAD is
not defined on Windows, even if that configuration is probably not
supported at all.
........
r50715 | martin.v.loewis | 2006-07-19 19:18:32 +0200 (Wed, 19 Jul 2006) | 4 lines
Revert r50706 (Whitespace normalization) and
r50697: Comments and docs cleanups, and some little fixes
per recommendation from Raymond Hettinger.
........
r50719 | phillip.eby | 2006-07-20 17:54:16 +0200 (Thu, 20 Jul 2006) | 4 lines
Fix SF#1516184 (again) and add a test to prevent regression.
(There was a problem with empty filenames still causing recursion)
........
r50720 | georg.brandl | 2006-07-20 18:28:39 +0200 (Thu, 20 Jul 2006) | 3 lines
Guard for _active being None in __del__ method.
........
r50721 | vinay.sajip | 2006-07-20 18:28:39 +0200 (Thu, 20 Jul 2006) | 1 line
Updated documentation for TimedRotatingFileHandler relating to how rollover files are named. The previous documentation was wrongly the same as for RotatingFileHandler.
........
r50731 | fred.drake | 2006-07-20 22:11:57 +0200 (Thu, 20 Jul 2006) | 1 line
markup fix
........
r50739 | kurt.kaiser | 2006-07-21 00:22:52 +0200 (Fri, 21 Jul 2006) | 7 lines
Avoid occasional failure to detect closing paren properly.
Patch 1407280 Tal Einat
M ParenMatch.py
M NEWS.txt
M CREDITS.txt
........
r50740 | vinay.sajip | 2006-07-21 01:20:12 +0200 (Fri, 21 Jul 2006) | 1 line
Addressed SF#1524081 by using a dictionary to map level names to syslog priority names, rather than a string.lower().
........
r50741 | neal.norwitz | 2006-07-21 07:29:58 +0200 (Fri, 21 Jul 2006) | 1 line
Add some asserts that we got good params passed
........
r50742 | neal.norwitz | 2006-07-21 07:31:02 +0200 (Fri, 21 Jul 2006) | 5 lines
Move the initialization of some pointers earlier. The problem is
that if we call Py_DECREF(frame) like we do if allocating locals fails,
frame_dealloc() will try to use these bogus values and crash.
........
r50743 | neal.norwitz | 2006-07-21 07:32:28 +0200 (Fri, 21 Jul 2006) | 4 lines
Handle allocation failures gracefully. Found with failmalloc.
Many (all?) of these could be backported.
........
r50745 | neal.norwitz | 2006-07-21 09:59:02 +0200 (Fri, 21 Jul 2006) | 1 line
Speel initialise write. Tanks Anthony.
........
r50746 | neal.norwitz | 2006-07-21 09:59:47 +0200 (Fri, 21 Jul 2006) | 2 lines
Handle more memory allocation failures without crashing.
........
r50754 | barry.warsaw | 2006-07-21 16:51:07 +0200 (Fri, 21 Jul 2006) | 23 lines
More RFC 2231 improvements for the email 4.0 package. As Mark Sapiro rightly
points out there are really two types of continued headers defined in this
RFC (i.e. "encoded" parameters with the form "name*0*=" and unencoded
parameters with the form "name*0="), but we were were handling them both the
same way and that isn't correct.
This patch should be much more RFC compliant in that only encoded params are
%-decoded and the charset/language information is only extract if there are
any encoded params in the segments. If there are no encoded params then the
RFC says that there will be no charset/language parts.
Note however that this will change the return value for Message.get_param() in
some cases. For example, whereas before if you had all unencoded param
continuations you would have still gotten a 3-tuple back from this method
(with charset and language == None), you will now get just a string. I don't
believe this is a backward incompatible change though because the
documentation for this method already indicates that either return value is
possible and that you must do an isinstance(val, tuple) check to discriminate
between the two. (Yeah that API kind of sucks but we can't change /that/
without breaking code.)
Test cases, some documentation updates, and a NEWS item accompany this patch.
........
r50759 | georg.brandl | 2006-07-21 19:36:31 +0200 (Fri, 21 Jul 2006) | 3 lines
Fix check for empty list (vs. None).
........
r50771 | brett.cannon | 2006-07-22 00:44:07 +0200 (Sat, 22 Jul 2006) | 2 lines
Remove an XXX marker in a comment.
........
r50773 | neal.norwitz | 2006-07-22 18:20:49 +0200 (Sat, 22 Jul 2006) | 1 line
Fix more memory allocation issues found with failmalloc.
........
r50774 | neal.norwitz | 2006-07-22 19:00:57 +0200 (Sat, 22 Jul 2006) | 1 line
Don't fail if the directory already exists
........
r50775 | greg.ward | 2006-07-23 04:25:53 +0200 (Sun, 23 Jul 2006) | 6 lines
Be a lot smarter about whether this test passes: instead of assuming
that a 2.93 sec audio file will always take 3.1 sec (as it did on the
hardware I had when I first wrote the test), expect that it will take
2.93 sec +/- 10%, and only fail if it's outside of that range.
Compute the expected
........
r50776 | kurt.kaiser | 2006-07-23 06:19:49 +0200 (Sun, 23 Jul 2006) | 2 lines
Tooltips failed on new-syle class __init__ args. Bug 1027566 Loren Guthrie
........
r50777 | neal.norwitz | 2006-07-23 09:50:36 +0200 (Sun, 23 Jul 2006) | 1 line
Handle more mem alloc issues found with failmalloc
........
r50778 | neal.norwitz | 2006-07-23 09:51:58 +0200 (Sun, 23 Jul 2006) | 5 lines
If the for loop isn't entered, entryblock will be NULL. If passed
to stackdepth_walk it will be dereffed.
Not sure if I found with failmalloc or Klockwork #55.
........
r50779 | neal.norwitz | 2006-07-23 09:53:14 +0200 (Sun, 23 Jul 2006) | 4 lines
Move the initialization of size_a down below the check for a being NULL.
Reported by Klocwork #106
........
r50780 | neal.norwitz | 2006-07-23 09:55:55 +0200 (Sun, 23 Jul 2006) | 9 lines
Check the allocation of b_objects and return if there was a failure.
Also fix a few memory leaks in other failure scenarios.
It seems that if b_objects == Py_None, we will have an extra ref to
b_objects. Add XXX comment so hopefully someone documents why the
else isn't necessary or adds it in.
Reported by Klocwork #20
........
r50781 | neal.norwitz | 2006-07-23 09:57:11 +0200 (Sun, 23 Jul 2006) | 2 lines
Fix memory leaks spotted by Klocwork #37.
........
r50782 | neal.norwitz | 2006-07-23 09:59:00 +0200 (Sun, 23 Jul 2006) | 5 lines
nextlink can be NULL if teedataobject_new fails, so use XINCREF.
Ensure that dataobj is never NULL.
Reported by Klocwork #102
........
r50783 | neal.norwitz | 2006-07-23 10:01:43 +0200 (Sun, 23 Jul 2006) | 8 lines
Ensure we don't write beyond errText. I think I got this right, but
it definitely could use some review to ensure I'm not off by one
and there's no possible overflow/wrap-around of bytes_left.
Reported by Klocwork #1.
Fix a problem if there is a failure allocating self->db.
Found with failmalloc.
........
r50784 | ronald.oussoren | 2006-07-23 11:41:09 +0200 (Sun, 23 Jul 2006) | 3 lines
Without this patch CMD-W won't close EditorWindows on MacOS X. This solves
part of bug #1517990.
........
r50785 | ronald.oussoren | 2006-07-23 11:46:11 +0200 (Sun, 23 Jul 2006) | 5 lines
Fix for bug #1517996: Class and Path browsers show Tk menu
This patch replaces the menubar that is used by AquaTk for windows without a
menubar of their own by one that is more appropriate for IDLE.
........
r50786 | andrew.macintyre | 2006-07-23 14:57:02 +0200 (Sun, 23 Jul 2006) | 2 lines
Build updates for OS/2 EMX port
........
r50787 | andrew.macintyre | 2006-07-23 15:00:04 +0200 (Sun, 23 Jul 2006) | 3 lines
bugfix: PyThread_start_new_thread() returns the thread ID, not a flag;
will backport.
........
r50789 | andrew.macintyre | 2006-07-23 15:04:00 +0200 (Sun, 23 Jul 2006) | 2 lines
Get mailbox module working on OS/2 EMX port.
........
r50791 | greg.ward | 2006-07-23 18:05:51 +0200 (Sun, 23 Jul 2006) | 1 line
Resync optparse with Optik 1.5.3: minor tweaks for/to tests.
........
r50794 | martin.v.loewis | 2006-07-24 07:05:22 +0200 (Mon, 24 Jul 2006) | 2 lines
Update list of unsupported systems. Fixes #1510853.
........
r50795 | martin.v.loewis | 2006-07-24 12:26:33 +0200 (Mon, 24 Jul 2006) | 1 line
Patch #1448199: Release GIL around ConnectRegistry.
........
r50796 | martin.v.loewis | 2006-07-24 13:54:53 +0200 (Mon, 24 Jul 2006) | 3 lines
Patch #1232023: Don't include empty path component from registry,
so that the current directory does not get added to sys.path.
Also fixes #1526785.
........
r50797 | martin.v.loewis | 2006-07-24 14:54:17 +0200 (Mon, 24 Jul 2006) | 3 lines
Bug #1524310: Properly report errors from FindNextFile in os.listdir.
Will backport to 2.4.
........
r50800 | georg.brandl | 2006-07-24 15:28:57 +0200 (Mon, 24 Jul 2006) | 7 lines
Patch #1523356: fix determining include dirs in python-config.
Also don't install "python-config" when doing altinstall, but
always install "python-config2.x" and make a link to it like
with the main executable.
........
r50802 | georg.brandl | 2006-07-24 15:46:47 +0200 (Mon, 24 Jul 2006) | 3 lines
Patch #1527744: right order of includes in order to have HAVE_CONIO_H defined properly.
........
r50803 | georg.brandl | 2006-07-24 16:09:56 +0200 (Mon, 24 Jul 2006) | 3 lines
Patch #1515343: Fix printing of deprecated string exceptions with a
value in the traceback module.
........
r50804 | kurt.kaiser | 2006-07-24 19:13:23 +0200 (Mon, 24 Jul 2006) | 7 lines
EditorWindow failed when used stand-alone if sys.ps1 not set.
Bug 1010370 Dave Florek
M EditorWindow.py
M PyShell.py
M NEWS.txt
........
r50805 | kurt.kaiser | 2006-07-24 20:05:51 +0200 (Mon, 24 Jul 2006) | 6 lines
- EditorWindow.test() was failing. Bug 1417598
M EditorWindow.py
M ScriptBinding.py
M NEWS.txt
........
r50808 | georg.brandl | 2006-07-24 22:11:35 +0200 (Mon, 24 Jul 2006) | 3 lines
Repair accidental NameError.
........
r50809 | tim.peters | 2006-07-24 23:02:15 +0200 (Mon, 24 Jul 2006) | 2 lines
Whitespace normalization.
........
r50810 | greg.ward | 2006-07-25 04:11:12 +0200 (Tue, 25 Jul 2006) | 3 lines
Don't use standard assert: want tests to fail even when run with -O.
Delete cruft.
........
r50811 | tim.peters | 2006-07-25 06:07:22 +0200 (Tue, 25 Jul 2006) | 10 lines
current_frames_with_threads(): There's actually no way
to guess /which/ line the spawned thread is in at the time
sys._current_frames() is called: we know it finished
enter_g.set(), but can't know whether the instruction
counter has advanced to the following leave_g.wait().
The latter is overwhelming most likely, but not guaranteed,
and I see that the "x86 Ubuntu dapper (icc) trunk" buildbot
found it on the other line once. Changed the test so it
passes in either case.
........
r50815 | martin.v.loewis | 2006-07-25 11:53:12 +0200 (Tue, 25 Jul 2006) | 2 lines
Bug #1525817: Don't truncate short lines in IDLE's tool tips.
........
r50816 | martin.v.loewis | 2006-07-25 12:05:47 +0200 (Tue, 25 Jul 2006) | 3 lines
Bug #978833: Really close underlying socket in _socketobject.close.
Will backport to 2.4.
........
r50817 | martin.v.loewis | 2006-07-25 12:11:14 +0200 (Tue, 25 Jul 2006) | 1 line
Revert incomplete checkin.
........
r50819 | georg.brandl | 2006-07-25 12:22:34 +0200 (Tue, 25 Jul 2006) | 4 lines
Patch #1525766: correctly pass onerror arg to recursive calls
of pkg.walk_packages. Also improve the docstrings.
........
r50825 | brett.cannon | 2006-07-25 19:32:20 +0200 (Tue, 25 Jul 2006) | 2 lines
Add comment for changes to test_ossaudiodev.
........
r50826 | brett.cannon | 2006-07-25 19:34:36 +0200 (Tue, 25 Jul 2006) | 3 lines
Fix a bug in the messages for an assert failure where not enough arguments to a string
were being converted in the format.
........
r50828 | armin.rigo | 2006-07-25 20:09:57 +0200 (Tue, 25 Jul 2006) | 2 lines
Document why is and is not a good way to fix the gc_inspection crasher.
........
r50829 | armin.rigo | 2006-07-25 20:11:07 +0200 (Tue, 25 Jul 2006) | 5 lines
Added another crasher, which hit me today (I was not intentionally
writing such code, of course, but it took some gdb time to figure out
what my bug was).
........
r50830 | armin.rigo | 2006-07-25 20:38:39 +0200 (Tue, 25 Jul 2006) | 3 lines
Document the crashers that will not go away soon as "won't fix",
and explain why.
........
r50831 | ronald.oussoren | 2006-07-25 21:13:35 +0200 (Tue, 25 Jul 2006) | 3 lines
Install the compatibility symlink to libpython.a on OSX using 'ln -sf' instead
of 'ln -s', this avoid problems when reinstalling python.
........
r50832 | ronald.oussoren | 2006-07-25 21:20:54 +0200 (Tue, 25 Jul 2006) | 7 lines
Fix for bug #1525447 (renaming to MacOSmodule.c would also work, but not
without causing problems for anyone that is on a case-insensitive filesystem).
Setup.py tries to compile the MacOS extension from MacOSmodule.c, while the
actual file is named macosmodule.c. This is no problem on the (default)
case-insensitive filesystem, but doesn't work on case-sensitive filesystems.
........
r50833 | ronald.oussoren | 2006-07-25 22:28:55 +0200 (Tue, 25 Jul 2006) | 7 lines
Fix bug #1517990: IDLE keybindings on OSX
This adds a new key definition for OSX, which is slightly different from the
classic mac definition.
Also add NEWS item for a couple of bugfixes I added recently.
........
r50834 | tim.peters | 2006-07-26 00:30:24 +0200 (Wed, 26 Jul 2006) | 2 lines
Whitespace normalization.
........
r50839 | neal.norwitz | 2006-07-26 06:00:18 +0200 (Wed, 26 Jul 2006) | 1 line
Hmm, only python2.x is installed, not plain python. Did that change recently?
........
r50840 | barry.warsaw | 2006-07-26 07:54:46 +0200 (Wed, 26 Jul 2006) | 6 lines
Forward port some fixes that were in email 2.5 but for some reason didn't make
it into email 4.0. Specifically, in Message.get_content_charset(), handle RFC
2231 headers that contain an encoding not known to Python, or a character in
the data that isn't in the charset encoding. Also forward port the
appropriate unit tests.
........
r50841 | georg.brandl | 2006-07-26 09:23:32 +0200 (Wed, 26 Jul 2006) | 3 lines
NEWS entry for #1525766.
........
r50842 | georg.brandl | 2006-07-26 09:40:17 +0200 (Wed, 26 Jul 2006) | 3 lines
Bug #1459963: properly capitalize HTTP header names.
........
r50843 | georg.brandl | 2006-07-26 10:03:10 +0200 (Wed, 26 Jul 2006) | 6 lines
Part of bug #1523610: fix miscalculation of buffer length.
Also add a guard against NULL in converttuple and add a test case
(that previously would have crashed).
........
r50844 | martin.v.loewis | 2006-07-26 14:12:56 +0200 (Wed, 26 Jul 2006) | 3 lines
Bug #978833: Really close underlying socket in _socketobject.close.
Fix httplib.HTTPConnection.getresponse to not close the
socket if it is still needed for the response.
........
r50845 | andrew.kuchling | 2006-07-26 19:16:52 +0200 (Wed, 26 Jul 2006) | 1 line
[Bug #1471938] Fix build problem on Solaris 8 by conditionalizing the use of mvwgetnstr(); it was conditionalized a few lines below. Fix from Paul Eggert. I also tried out the STRICT_SYSV_CURSES case and am therefore removing the 'untested' comment.
........
r50846 | andrew.kuchling | 2006-07-26 19:18:01 +0200 (Wed, 26 Jul 2006) | 1 line
Correct error message
........
r50847 | andrew.kuchling | 2006-07-26 19:19:39 +0200 (Wed, 26 Jul 2006) | 1 line
Minor grammar fix
........
r50848 | andrew.kuchling | 2006-07-26 19:22:21 +0200 (Wed, 26 Jul 2006) | 1 line
Put news item in right section
........
r50850 | andrew.kuchling | 2006-07-26 20:03:12 +0200 (Wed, 26 Jul 2006) | 1 line
Use sys.exc_info()
........
r50851 | andrew.kuchling | 2006-07-26 20:15:45 +0200 (Wed, 26 Jul 2006) | 1 line
Use sys.exc_info()
........
r50852 | phillip.eby | 2006-07-26 21:48:27 +0200 (Wed, 26 Jul 2006) | 4 lines
Allow the 'onerror' argument to walk_packages() to catch any Exception, not
just ImportError. This allows documentation tools to better skip unimportable
packages.
........
r50854 | tim.peters | 2006-07-27 01:23:15 +0200 (Thu, 27 Jul 2006) | 2 lines
Whitespace normalization.
........
r50855 | tim.peters | 2006-07-27 03:14:53 +0200 (Thu, 27 Jul 2006) | 21 lines
Bug #1521947: possible bug in mystrtol.c with recent gcc.
In general, C doesn't define anything about what happens when
an operation on a signed integral type overflows, and PyOS_strtol()
did several formally undefined things of that nature on signed
longs. Some version of gcc apparently tries to exploit that now,
and PyOS_strtol() could fail to detect overflow then.
Tried to repair all that, although it seems at least as likely to me
that we'll get screwed by bad platform definitions for LONG_MIN
and/or LONG_MAX now. For that reason, I don't recommend backporting
this.
Note that I have no box on which this makes a lick of difference --
can't really test it, except to note that it didn't break anything
on my boxes.
Silent change: PyOS_strtol() used to return the hard-coded 0x7fffffff
in case of overflow. Now it returns LONG_MAX. They're the same only on
32-bit boxes (although C doesn't guarantee that either ...).
........
r50856 | neal.norwitz | 2006-07-27 05:51:58 +0200 (Thu, 27 Jul 2006) | 6 lines
Don't kill a normal instance of python running on windows when checking
to kill a cygwin instance. build\\python.exe was matching a normal windows
instance. Prefix that with a \\ to ensure build is a directory and not
PCbuild. As discussed on python-dev.
........
r50857 | neal.norwitz | 2006-07-27 05:55:39 +0200 (Thu, 27 Jul 2006) | 5 lines
Closure can't be NULL at this point since we know it's a tuple.
Reported by Klocwork # 74.
........
r50858 | neal.norwitz | 2006-07-27 06:04:50 +0200 (Thu, 27 Jul 2006) | 1 line
No functional change. Add comment and assert to describe why there cannot be overflow which was reported by Klocwork. Discussed on python-dev
........
r50859 | martin.v.loewis | 2006-07-27 08:38:16 +0200 (Thu, 27 Jul 2006) | 3 lines
Bump distutils version to 2.5, as several new features
have been introduced since 2.4.
........
r50860 | andrew.kuchling | 2006-07-27 14:18:20 +0200 (Thu, 27 Jul 2006) | 1 line
Reformat docstring; fix typo
........
r50861 | georg.brandl | 2006-07-27 17:05:36 +0200 (Thu, 27 Jul 2006) | 6 lines
Add test_main() methods. These three tests were never run
by regrtest.py.
We really need a simpler testing framework.
........
r50862 | tim.peters | 2006-07-27 17:09:20 +0200 (Thu, 27 Jul 2006) | 2 lines
News for patch #1529686.
........
r50863 | tim.peters | 2006-07-27 17:11:00 +0200 (Thu, 27 Jul 2006) | 2 lines
Whitespace normalization.
........
r50864 | georg.brandl | 2006-07-27 17:38:33 +0200 (Thu, 27 Jul 2006) | 3 lines
Amend news entry.
........
r50865 | georg.brandl | 2006-07-27 18:08:15 +0200 (Thu, 27 Jul 2006) | 3 lines
Make uuid test suite pass on this box by requesting output with LC_ALL=C.
........
r50866 | andrew.kuchling | 2006-07-27 20:37:33 +0200 (Thu, 27 Jul 2006) | 1 line
Add example
........
r50867 | thomas.heller | 2006-07-27 20:39:55 +0200 (Thu, 27 Jul 2006) | 9 lines
Remove code that is no longer used (ctypes.com).
Fix the DllGetClassObject and DllCanUnloadNow so that they forward the
call to the comtypes.server.inprocserver module.
The latter was never documented, never used by published code, and
didn't work anyway, so I think it does not deserve a NEWS entry (but I
might be wrong).
........
r50868 | andrew.kuchling | 2006-07-27 20:41:21 +0200 (Thu, 27 Jul 2006) | 1 line
Typo fix ('publically' is rare, poss. non-standard)
........
r50869 | andrew.kuchling | 2006-07-27 20:42:41 +0200 (Thu, 27 Jul 2006) | 1 line
Add missing word
........
r50870 | andrew.kuchling | 2006-07-27 20:44:10 +0200 (Thu, 27 Jul 2006) | 1 line
Repair typos
........
r50872 | andrew.kuchling | 2006-07-27 20:53:33 +0200 (Thu, 27 Jul 2006) | 1 line
Update URL; add example
........
r50873 | andrew.kuchling | 2006-07-27 21:07:29 +0200 (Thu, 27 Jul 2006) | 1 line
Add punctuation mark; add some examples
........
r50874 | andrew.kuchling | 2006-07-27 21:11:07 +0200 (Thu, 27 Jul 2006) | 1 line
Mention base64 module; rewrite last sentence to be more positive
........
r50875 | andrew.kuchling | 2006-07-27 21:12:49 +0200 (Thu, 27 Jul 2006) | 1 line
If binhex is higher-level than binascii, it should come first in the chapter
........
r50876 | tim.peters | 2006-07-27 22:47:24 +0200 (Thu, 27 Jul 2006) | 28 lines
check_node(): stop spraying mystery output to stderr.
When a node number disagrees, keep track of all sources & the
node numbers they reported, and stick all that in the error message.
Changed all callers to supply a non-empty "source" argument; made
the "source" argument non-optional.
On my box, test_uuid still fails, but with the less confusing output:
AssertionError: different sources disagree on node:
from source 'getnode1', node was 00038a000015
from source 'getnode2', node was 00038a000015
from source 'ipconfig', node was 001111b2b7bf
Only the last one appears to be correct; e.g.,
C:\Code\python\PCbuild>getmac
Physical Address Transport Name
=================== ==========================================================
00-11-11-B2-B7-BF \Device\Tcpip_{190FB163-5AFD-4483-86A1-2FE16AC61FF1}
62-A1-AC-6C-FD-BE \Device\Tcpip_{8F77DF5A-EA3D-4F1D-975E-D472CEE6438A}
E2-1F-01-C6-5D-88 \Device\Tcpip_{CD18F76B-2EF3-409F-9B8A-6481EE70A1E4}
I can't find anything on my box with MAC 00-03-8a-00-00-15, and am
not clear on where that comes from.
........
r50878 | andrew.kuchling | 2006-07-28 00:40:05 +0200 (Fri, 28 Jul 2006) | 1 line
Reword paragraph
........
r50879 | andrew.kuchling | 2006-07-28 00:49:38 +0200 (Fri, 28 Jul 2006) | 1 line
Add example
........
r50880 | andrew.kuchling | 2006-07-28 00:49:54 +0200 (Fri, 28 Jul 2006) | 1 line
Add example
........
r50881 | barry.warsaw | 2006-07-28 01:43:15 +0200 (Fri, 28 Jul 2006) | 27 lines
Patch #1520294: Support for getset and member descriptors in types.py,
inspect.py, and pydoc.py. Specifically, this allows for querying the type of
an object against these built-in C types and more importantly, for getting
their docstrings printed in the interactive interpreter's help() function.
This patch includes a new built-in module called _types which provides
definitions of getset and member descriptors for use by the types.py module.
These types are exposed as types.GetSetDescriptorType and
types.MemberDescriptorType. Query functions are provided as
inspect.isgetsetdescriptor() and inspect.ismemberdescriptor(). The
implementations of these are robust enough to work with Python implementations
other than CPython, which may not have these fundamental types.
The patch also includes documentation and test suite updates.
I commit these changes now under these guiding principles:
1. Silence is assent. The release manager has not said "no", and of the few
people that cared enough to respond to the thread, the worst vote was "0".
2. It's easier to ask for forgiveness than permission.
3. It's so dang easy to revert stuff in svn, that you could view this as a
forcing function. :)
Windows build patches will follow.
........
r50882 | tim.peters | 2006-07-28 01:44:37 +0200 (Fri, 28 Jul 2006) | 4 lines
Bug #1529297: The rewrite of doctest for Python 2.4 unintentionally
lost that tests are sorted by name before being run. ``DocTestFinder``
has been changed to sort the list of tests it returns.
........
r50883 | tim.peters | 2006-07-28 01:45:48 +0200 (Fri, 28 Jul 2006) | 2 lines
Whitespace normalization.
........
r50884 | tim.peters | 2006-07-28 01:46:36 +0200 (Fri, 28 Jul 2006) | 2 lines
Add missing svn:eol-style property to text files.
........
r50885 | barry.warsaw | 2006-07-28 01:50:40 +0200 (Fri, 28 Jul 2006) | 4 lines
Enable the building of the _types module on Windows.
Note that this has only been tested for VS 2003 since that's all I have.
........
r50887 | tim.peters | 2006-07-28 02:23:15 +0200 (Fri, 28 Jul 2006) | 7 lines
defdict_reduce(): Plug leaks.
We didn't notice these before because test_defaultdict didn't
actually do anything before Georg fixed that earlier today.
Neal's next refleak run then showed test_defaultdict leaking
9 references on each run. That's repaired by this checkin.
........
r50888 | tim.peters | 2006-07-28 02:30:00 +0200 (Fri, 28 Jul 2006) | 2 lines
News about the repaired memory leak in defaultdict.
........
r50889 | gregory.p.smith | 2006-07-28 03:35:25 +0200 (Fri, 28 Jul 2006) | 7 lines
- pybsddb Bug #1527939: bsddb module DBEnv dbremove and dbrename
methods now allow their database parameter to be None as the
sleepycat API allows.
Also adds an appropriate test case for DBEnv.dbrename and dbremove.
........
r50895 | neal.norwitz | 2006-07-28 06:22:34 +0200 (Fri, 28 Jul 2006) | 1 line
Ensure the actual number matches the expected count
........
r50896 | tim.peters | 2006-07-28 06:51:59 +0200 (Fri, 28 Jul 2006) | 6 lines
Live with that "the hardware address" is an ill-defined
concept, and that different ways of trying to find "the
hardware address" may return different results. Certainly
true on both of my Windows boxes, and in different ways
(see whining on python-dev).
........
r50897 | neal.norwitz | 2006-07-28 09:21:27 +0200 (Fri, 28 Jul 2006) | 3 lines
Try to find the MAC addr on various flavours of Unix. This seems hopeless.
The reduces the test_uuid failures, but there's still another method failing.
........
r50898 | martin.v.loewis | 2006-07-28 09:45:49 +0200 (Fri, 28 Jul 2006) | 2 lines
Add UUID for upcoming 2.5b3.
........
r50899 | matt.fleming | 2006-07-28 13:27:27 +0200 (Fri, 28 Jul 2006) | 3 lines
Allow socketmodule to compile on NetBSD -current, whose bluetooth API
differs from both Linux and FreeBSD. Accepted by Neal Norwitz.
........
r50900 | andrew.kuchling | 2006-07-28 14:07:12 +0200 (Fri, 28 Jul 2006) | 1 line
[Patch #1529811] Correction to description of r|* mode
........
r50901 | andrew.kuchling | 2006-07-28 14:18:22 +0200 (Fri, 28 Jul 2006) | 1 line
Typo fix
........
r50902 | andrew.kuchling | 2006-07-28 14:32:43 +0200 (Fri, 28 Jul 2006) | 1 line
Add example
........
r50903 | andrew.kuchling | 2006-07-28 14:33:19 +0200 (Fri, 28 Jul 2006) | 1 line
Add example
........
r50904 | andrew.kuchling | 2006-07-28 14:45:55 +0200 (Fri, 28 Jul 2006) | 1 line
Don't overwrite built-in name; add some blank lines for readability
........
r50905 | andrew.kuchling | 2006-07-28 14:48:07 +0200 (Fri, 28 Jul 2006) | 1 line
Add example. Should I propagate this example to all the other DBM-ish modules, too?
........
r50912 | georg.brandl | 2006-07-28 20:31:39 +0200 (Fri, 28 Jul 2006) | 3 lines
Patch #1529686: also run test_email_codecs with regrtest.py.
........
r50913 | georg.brandl | 2006-07-28 20:36:01 +0200 (Fri, 28 Jul 2006) | 3 lines
Fix spelling.
........
r50915 | thomas.heller | 2006-07-28 21:42:40 +0200 (Fri, 28 Jul 2006) | 3 lines
Remove a useless XXX comment.
Cosmetic changes to the code so that the #ifdef _UNICODE block
doesn't mess emacs code formatting.
........
r50916 | phillip.eby | 2006-07-28 23:12:07 +0200 (Fri, 28 Jul 2006) | 5 lines
Bug #1529871: The speed enhancement patch #921466 broke Python's compliance
with PEP 302. This was fixed by adding an ``imp.NullImporter`` type that is
used in ``sys.path_importer_cache`` to cache non-directory paths and avoid
excessive filesystem operations during imports.
........
r50917 | phillip.eby | 2006-07-28 23:31:54 +0200 (Fri, 28 Jul 2006) | 2 lines
Fix svn merge spew.
........
r50918 | thomas.heller | 2006-07-28 23:43:20 +0200 (Fri, 28 Jul 2006) | 4 lines
Patch #1529514: More openbsd platforms for ctypes.
Regenerated Modules/_ctypes/libffi/configure with autoconf 2.59.
Approved by Neal.
........
r50922 | georg.brandl | 2006-07-29 10:51:21 +0200 (Sat, 29 Jul 2006) | 2 lines
Bug #835255: The "closure" argument to new.function() is now documented.
........
r50924 | georg.brandl | 2006-07-29 11:33:26 +0200 (Sat, 29 Jul 2006) | 3 lines
Bug #1441397: The compiler module now recognizes module and function
docstrings correctly as it did in Python 2.4.
........
r50925 | georg.brandl | 2006-07-29 12:25:46 +0200 (Sat, 29 Jul 2006) | 4 lines
Revert rev 42617, it was introduced to work around bug #1441397.
test_compiler now passes again.
........
r50926 | fred.drake | 2006-07-29 15:22:49 +0200 (Sat, 29 Jul 2006) | 1 line
update target version number
........
r50927 | andrew.kuchling | 2006-07-29 15:56:48 +0200 (Sat, 29 Jul 2006) | 1 line
Add example
........
r50928 | andrew.kuchling | 2006-07-29 16:04:47 +0200 (Sat, 29 Jul 2006) | 1 line
Update URL
........
r50930 | andrew.kuchling | 2006-07-29 16:08:15 +0200 (Sat, 29 Jul 2006) | 1 line
Reword paragraph to match the order of the subsequent sections
........
r50931 | andrew.kuchling | 2006-07-29 16:21:15 +0200 (Sat, 29 Jul 2006) | 1 line
[Bug #1529157] Mention raw_input() and input(); while I'm at it, reword the description a bit
........
r50932 | andrew.kuchling | 2006-07-29 16:42:48 +0200 (Sat, 29 Jul 2006) | 1 line
[Bug #1519571] Document some missing functions: setup(), title(), done()
........
r50933 | andrew.kuchling | 2006-07-29 16:43:55 +0200 (Sat, 29 Jul 2006) | 1 line
Fix docstring punctuation
........
r50934 | andrew.kuchling | 2006-07-29 17:10:32 +0200 (Sat, 29 Jul 2006) | 1 line
[Bug #1414697] Change docstring of set/frozenset types to specify that the contents are unique. Raymond, please feel free to edit or revert.
........
r50935 | andrew.kuchling | 2006-07-29 17:35:21 +0200 (Sat, 29 Jul 2006) | 1 line
[Bug #1530382] Document SSL.server(), .issuer() methods
........
r50936 | andrew.kuchling | 2006-07-29 17:42:46 +0200 (Sat, 29 Jul 2006) | 1 line
Typo fix
........
r50937 | andrew.kuchling | 2006-07-29 17:43:13 +0200 (Sat, 29 Jul 2006) | 1 line
Tweak wording
........
r50938 | matt.fleming | 2006-07-29 17:55:30 +0200 (Sat, 29 Jul 2006) | 2 lines
Fix typo
........
r50939 | andrew.kuchling | 2006-07-29 17:57:08 +0200 (Sat, 29 Jul 2006) | 6 lines
[Bug #1528258] Mention that the 'data' argument can be None.
The constructor docs referred the reader to the add_data() method's docs,
but they weren't very helpful. I've simply copied an earlier explanation
of 'data' that's more useful.
........
r50940 | andrew.kuchling | 2006-07-29 18:08:40 +0200 (Sat, 29 Jul 2006) | 1 line
Set bug/patch count. Take a bow, everyone!
........
r50941 | fred.drake | 2006-07-29 18:56:15 +0200 (Sat, 29 Jul 2006) | 18 lines
expunge the xmlcore changes:
41667, 41668 - initial switch to xmlcore
47044 - mention of xmlcore in What's New
50687 - mention of xmlcore in the library reference
re-apply xmlcore changes to xml:
41674 - line ending changes (re-applied manually), directory props
41677 - add cElementTree wrapper
41678 - PSF licensing for etree
41812 - whitespace normalization
42724 - fix svn:eol-style settings
43681, 43682 - remove Python version-compatibility cruft from minidom
46773 - fix encoding of \r\n\t in attr values in saxutils
47269 - added XMLParser alias for cElementTree compatibility
additional tests were added in Lib/test/test_sax.py that failed with
the xmlcore changes; these relate to SF bugs #1511497, #1513611
........
r50942 | andrew.kuchling | 2006-07-29 20:14:07 +0200 (Sat, 29 Jul 2006) | 17 lines
Reorganize the docs for 'file' and 'open()' after some discussion with Fred.
We want to encourage users to write open() when opening a file, but
open() was described with a single paragraph and
'file' had lots of explanation of the mode and bufsize arguments.
I've shrunk the description of 'file' to cross-reference to the 'File
objects' section, and to open() for an explanation of the arguments.
open() now has all the paragraphs about the mode string. The bufsize
argument was moved up so that it isn't buried at the end; now there's
1 paragraph on mode, 1 on bufsize, and then 3 more on mode. Various
other edits and rearrangements were made in the process.
It's probably best to read the final text and not to try to make sense
of the diffs.
........
r50943 | fred.drake | 2006-07-29 20:19:19 +0200 (Sat, 29 Jul 2006) | 1 line
restore test un-intentionally removed in the xmlcore purge (revision 50941)
........
r50944 | fred.drake | 2006-07-29 20:33:29 +0200 (Sat, 29 Jul 2006) | 3 lines
make the reference to older versions of the documentation a link
to the right page on python.org
........
r50945 | fred.drake | 2006-07-29 21:09:01 +0200 (Sat, 29 Jul 2006) | 1 line
document the footnote usage pattern
........
r50947 | fred.drake | 2006-07-29 21:14:10 +0200 (Sat, 29 Jul 2006) | 1 line
emphasize and oddball nuance of LaTeX comment syntax
........
r50948 | andrew.kuchling | 2006-07-29 21:24:04 +0200 (Sat, 29 Jul 2006) | 1 line
[Patch #1490989 from Skip Montanaro] Mention debugging builds in the API documentation. I've changed Skip's patch to point to Misc/SpecialBuilds and fiddled with the markup a bit.
........
r50949 | neal.norwitz | 2006-07-29 21:29:35 +0200 (Sat, 29 Jul 2006) | 6 lines
Disable these tests until they are reliable across platforms.
These problems may mask more important, real problems.
One or both methods are known to fail on: Solaris, OpenBSD, Debian, Ubuntu.
They pass on Windows and some Linux boxes.
........
r50950 | andrew.kuchling | 2006-07-29 21:50:37 +0200 (Sat, 29 Jul 2006) | 1 line
[Patch #1068277] Clarify that os.path.exists() can return False depending on permissions. Fred approved committing this patch in December 2004!
........
r50952 | fred.drake | 2006-07-29 22:04:42 +0200 (Sat, 29 Jul 2006) | 6 lines
SF bug #1193966: Weakref types documentation misplaced
The information about supporting weakrefs with types defined in C extensions
is moved to the Extending & Embedding manual. Py_TPFLAGS_HAVE_WEAKREFS is
no longer mentioned since it is part of Py_TPFLAGS_DEFAULT.
........
r50953 | skip.montanaro | 2006-07-29 22:06:05 +0200 (Sat, 29 Jul 2006) | 4 lines
Add a comment to the csv reader documentation that explains why the
treatment of newlines changed in 2.5. Pulled almost verbatim from a comment
by Andrew McNamara in <http://python.org/sf/1465014>.
........
r50954 | neal.norwitz | 2006-07-29 22:20:52 +0200 (Sat, 29 Jul 2006) | 3 lines
If the executable doesn't exist, there's no reason to try to start it.
This prevents garbage about command not found being printed on Solaris.
........
r50955 | fred.drake | 2006-07-29 22:21:25 +0200 (Sat, 29 Jul 2006) | 1 line
fix minor markup error that introduced extra punctuation
........
r50957 | neal.norwitz | 2006-07-29 22:37:08 +0200 (Sat, 29 Jul 2006) | 3 lines
Disable test_getnode too, since this is also unreliable.
........
r50958 | andrew.kuchling | 2006-07-29 23:27:12 +0200 (Sat, 29 Jul 2006) | 1 line
Follow TeX's conventions for hyphens
........
r50959 | andrew.kuchling | 2006-07-29 23:30:21 +0200 (Sat, 29 Jul 2006) | 1 line
Fix case for 'Unix'
........
r50960 | fred.drake | 2006-07-30 01:34:57 +0200 (Sun, 30 Jul 2006) | 1 line
markup cleanups
........
r50961 | andrew.kuchling | 2006-07-30 02:27:34 +0200 (Sun, 30 Jul 2006) | 1 line
Minor typo fixes
........
r50962 | andrew.kuchling | 2006-07-30 02:37:56 +0200 (Sun, 30 Jul 2006) | 1 line
[Bug #793553] Correct description of keyword arguments for SSL authentication
........
r50963 | tim.peters | 2006-07-30 02:58:15 +0200 (Sun, 30 Jul 2006) | 2 lines
Whitespace normalization.
........
r50964 | fred.drake | 2006-07-30 05:03:43 +0200 (Sun, 30 Jul 2006) | 1 line
lots of markup nits, most commonly Unix/unix --> \UNIX
........
r50965 | fred.drake | 2006-07-30 07:41:28 +0200 (Sun, 30 Jul 2006) | 1 line
update information on wxPython, from Robin Dunn
........
r50966 | fred.drake | 2006-07-30 07:49:49 +0200 (Sun, 30 Jul 2006) | 4 lines
remove possibly-outdated comment on what GUI toolkit is most commonly used;
it is hard to know whether this is right, and it does not add valuable reference information
at any rate
........
r50967 | fred.drake | 2006-07-30 07:55:39 +0200 (Sun, 30 Jul 2006) | 3 lines
- remove yet another reference to how commonly Tkinter is (thought to be) used
- fix an internal section reference
........
r50968 | neal.norwitz | 2006-07-30 08:53:31 +0200 (Sun, 30 Jul 2006) | 4 lines
Patch #1531113: Fix augmented assignment with yield expressions.
Also fix a SystemError when trying to assign to yield expressions.
........
r50969 | neal.norwitz | 2006-07-30 08:55:48 +0200 (Sun, 30 Jul 2006) | 5 lines
Add PyErr_WarnEx() so C code can pass the stacklevel to warnings.warn().
This provides the proper warning for struct.pack().
PyErr_Warn() is now deprecated in favor of PyErr_WarnEx().
As mentioned by Tim Peters on python-dev.
........
r50970 | neal.norwitz | 2006-07-30 08:57:04 +0200 (Sun, 30 Jul 2006) | 3 lines
Bug #1515471: string.replace() accepts character buffers again.
Pass the char* and size around rather than PyObject's.
........
r50971 | neal.norwitz | 2006-07-30 08:59:13 +0200 (Sun, 30 Jul 2006) | 1 line
Whitespace normalization
........
r50973 | georg.brandl | 2006-07-30 12:53:32 +0200 (Sun, 30 Jul 2006) | 3 lines
Clarify that __op__ methods must return NotImplemented if they don't support the operation.
........
r50974 | georg.brandl | 2006-07-30 13:07:23 +0200 (Sun, 30 Jul 2006) | 3 lines
Bug #1002398: The documentation for os.path.sameopenfile now correctly
refers to file descriptors, not file objects.
........
r50977 | martin.v.loewis | 2006-07-30 15:00:31 +0200 (Sun, 30 Jul 2006) | 3 lines
Don't copy directory stat times in shutil.copytree on Windows
Fixes #1525866.
........
r50978 | martin.v.loewis | 2006-07-30 15:14:05 +0200 (Sun, 30 Jul 2006) | 3 lines
Base __version__ on sys.version_info, as distutils is
no longer maintained separatedly.
........
r50979 | martin.v.loewis | 2006-07-30 15:27:31 +0200 (Sun, 30 Jul 2006) | 3 lines
Mention Cygwin in distutils error message about a missing VS 2003.
Fixes #1257728.
........
r50982 | martin.v.loewis | 2006-07-30 16:09:47 +0200 (Sun, 30 Jul 2006) | 5 lines
Drop usage of test -e in configure as it is not portable.
Fixes #1439538
Will backport to 2.4
Also regenerate pyconfig.h.in.
........
r50984 | georg.brandl | 2006-07-30 18:20:10 +0200 (Sun, 30 Jul 2006) | 3 lines
Fix makefile changes for python-config.
........
r50985 | george.yoshida | 2006-07-30 18:37:37 +0200 (Sun, 30 Jul 2006) | 2 lines
Rename struct.pack_to to struct.pack_into as changed in revision 46642.
........
r50986 | george.yoshida | 2006-07-30 18:41:30 +0200 (Sun, 30 Jul 2006) | 2 lines
Typo fix
........
r50987 | neal.norwitz | 2006-07-30 21:18:13 +0200 (Sun, 30 Jul 2006) | 1 line
Add some asserts and update comments
........
r50988 | neal.norwitz | 2006-07-30 21:18:38 +0200 (Sun, 30 Jul 2006) | 1 line
Verify that the signal handlers were really called
........
r50989 | neal.norwitz | 2006-07-30 21:20:42 +0200 (Sun, 30 Jul 2006) | 3 lines
Try to prevent hangs on Tru64/Alpha buildbot. I'm not certain this will help
and may need to be reverted if it causes problems.
........
r50990 | georg.brandl | 2006-07-30 22:18:51 +0200 (Sun, 30 Jul 2006) | 2 lines
Bug #1531349: right <-> left glitch in __rop__ description.
........
r50992 | tim.peters | 2006-07-31 03:46:03 +0200 (Mon, 31 Jul 2006) | 2 lines
Whitespace normalization.
........
r50993 | andrew.mcnamara | 2006-07-31 04:27:48 +0200 (Mon, 31 Jul 2006) | 2 lines
Redo the comment about the 2.5 change in quoted-newline handling.
........
r50994 | tim.peters | 2006-07-31 04:40:23 +0200 (Mon, 31 Jul 2006) | 10 lines
ZipFile.close(): Killed one of the struct.pack deprecation
warnings on Win32.
Also added an XXX about the line:
pos3 = self.fp.tell()
`pos3` is never referenced, and I have no idea what the code
intended to do instead.
........
r50996 | tim.peters | 2006-07-31 04:53:03 +0200 (Mon, 31 Jul 2006) | 8 lines
ZipFile.close(): Kill the other struct.pack deprecation
warning on Windows.
Afraid I can't detect a pattern to when the pack formats decide
to use a signed or unsigned format code -- appears nearly
arbitrary to my eyes. So I left all the pack formats alone and
changed the special-case data values instead.
........
r50997 | skip.montanaro | 2006-07-31 05:09:45 +0200 (Mon, 31 Jul 2006) | 1 line
minor tweaks
........
r50998 | skip.montanaro | 2006-07-31 05:11:11 +0200 (Mon, 31 Jul 2006) | 1 line
minor tweaks
........
r50999 | andrew.kuchling | 2006-07-31 14:20:24 +0200 (Mon, 31 Jul 2006) | 1 line
Add refcounts for PyErr_WarnEx
........
r51000 | andrew.kuchling | 2006-07-31 14:39:05 +0200 (Mon, 31 Jul 2006) | 9 lines
Document PyErr_WarnEx. (Bad Neal! No biscuit!)
Is the explanation of the 'stacklevel' parameter clear? Please feel free
to edit it.
I don't have LaTeX installed on this machine, so haven't verified that the
markup is correct. Will check tonight, or maybe the automatic doc build will
tell me.
........
r51001 | andrew.kuchling | 2006-07-31 14:52:26 +0200 (Mon, 31 Jul 2006) | 1 line
Add PyErr_WarnEx()
........
r51002 | andrew.kuchling | 2006-07-31 15:18:27 +0200 (Mon, 31 Jul 2006) | 1 line
Mention csv newline changes
........
r51003 | andrew.kuchling | 2006-07-31 17:22:58 +0200 (Mon, 31 Jul 2006) | 1 line
Typo fix
........
r51004 | andrew.kuchling | 2006-07-31 17:23:43 +0200 (Mon, 31 Jul 2006) | 1 line
Remove reference to notation
........
r51005 | georg.brandl | 2006-07-31 18:00:34 +0200 (Mon, 31 Jul 2006) | 3 lines
Fix function name.
........
r51006 | andrew.kuchling | 2006-07-31 18:10:24 +0200 (Mon, 31 Jul 2006) | 1 line
[Bug #1514540] Instead of putting the standard types in a section, put them in a chapter of their own. This means string methods will now show up in the ToC. (Should the types come before or after the functions+exceptions+constants chapter? I've put them after, for now.)
........
r51007 | andrew.kuchling | 2006-07-31 18:22:05 +0200 (Mon, 31 Jul 2006) | 1 line
[Bug #848556] Remove \d* from second alternative to avoid exponential case when repeating match
........
r51008 | andrew.kuchling | 2006-07-31 18:27:57 +0200 (Mon, 31 Jul 2006) | 1 line
Update list of files; fix a typo
........
r51013 | andrew.kuchling | 2006-08-01 18:24:30 +0200 (Tue, 01 Aug 2006) | 1 line
typo fix
........
r51018 | thomas.heller | 2006-08-01 18:54:43 +0200 (Tue, 01 Aug 2006) | 2 lines
Fix a potential segfault and various potentail refcount leaks
in the cast() function.
........
r51020 | thomas.heller | 2006-08-01 19:46:10 +0200 (Tue, 01 Aug 2006) | 1 line
Minimal useful docstring for CopyComPointer.
........
r51021 | andrew.kuchling | 2006-08-01 20:16:15 +0200 (Tue, 01 Aug 2006) | 8 lines
[Patch #1520905] Attempt to suppress core file created by test_subprocess.py.
Patch by Douglas Greiman.
The test_run_abort() testcase produces a core file on Unix systems,
even though the test is successful. This can be confusing or alarming
to someone who runs 'make test' and then finds that the Python
interpreter apparently crashed.
........
r51023 | georg.brandl | 2006-08-01 20:49:24 +0200 (Tue, 01 Aug 2006) | 3 lines
os.urandom no longer masks unrelated exceptions like SystemExit or
KeyboardInterrupt.
........
r51025 | thomas.heller | 2006-08-01 21:14:15 +0200 (Tue, 01 Aug 2006) | 2 lines
Speed up PyType_stgdict and PyObject_stgdict.
........
r51027 | ronald.oussoren | 2006-08-01 22:30:31 +0200 (Tue, 01 Aug 2006) | 3 lines
Make sure the postinstall action that optionally updates the user's profile
on MacOS X actually works correctly in all cases.
........
r51028 | ronald.oussoren | 2006-08-01 23:00:57 +0200 (Tue, 01 Aug 2006) | 4 lines
This fixes bug #1527397: PythonLauncher runs scripts with the wrong working
directory. It also fixes a bug where PythonLauncher failed to launch scripts
when the scriptname (or the path to the script) contains quotes.
........
r51031 | tim.peters | 2006-08-02 05:27:46 +0200 (Wed, 02 Aug 2006) | 2 lines
Whitespace normalization.
........
r51032 | tim.peters | 2006-08-02 06:12:36 +0200 (Wed, 02 Aug 2006) | 19 lines
Try to squash struct.pack warnings on the "amd64 gentoo trunk"
buildbot (& possibly other 64-bit boxes) during test_gzip.
The native zlib crc32 function returns an unsigned 32-bit integer,
which the Python wrapper implicitly casts to C long. Therefore the
same crc can "look negative" on a 32-bit box but "look positive" on
a 64-bit box. This patch papers over that platform difference when
writing the crc to file.
It may be better to change the Python wrapper, either to make
the result "look positive" on all platforms (which means it may
have to return a Python long at times on a 32-bit box), or to
keep the sign the same across boxes. But that would be a visible
change in what users see, while the current hack changes no
visible behavior (well, apart from stopping the struct deprecation
warning).
Note that the module-level write32() function is no longer used.
........
r51033 | neal.norwitz | 2006-08-02 06:27:11 +0200 (Wed, 02 Aug 2006) | 4 lines
Prevent memory leak on error.
Reported by Klocwork #36
........
r51034 | tim.peters | 2006-08-02 07:20:08 +0200 (Wed, 02 Aug 2006) | 9 lines
_Stream.close(): Try to kill struct.pack() warnings when
writing the crc to file on the "PPC64 Debian trunk" buildbot
when running test_tarfile.
This is again a case where the native zlib crc is an unsigned
32-bit int, but the Python wrapper implicitly casts it to
signed C long, so that "the sign bit looks different" on
different platforms.
........
r51035 | ronald.oussoren | 2006-08-02 08:10:10 +0200 (Wed, 02 Aug 2006) | 2 lines
Updated documentation for the script that builds the OSX installer.
........
r51036 | neal.norwitz | 2006-08-02 08:14:22 +0200 (Wed, 02 Aug 2006) | 2 lines
_PyWeakref_GetWeakrefCount() now returns a Py_ssize_t instead of long.
........
r51037 | neal.norwitz | 2006-08-02 08:15:10 +0200 (Wed, 02 Aug 2006) | 1 line
v is already checked for NULL, so just DECREF it
........
r51038 | neal.norwitz | 2006-08-02 08:19:19 +0200 (Wed, 02 Aug 2006) | 1 line
Let us know when there was a problem and the child had to kill the parent
........
r51039 | neal.norwitz | 2006-08-02 08:46:21 +0200 (Wed, 02 Aug 2006) | 5 lines
Patch #1519025 and bug #926423: If a KeyboardInterrupt occurs during
a socket operation on a socket with a timeout, the exception will be
caught correctly. Previously, the exception was not caught.
........
r51040 | neal.norwitz | 2006-08-02 09:09:32 +0200 (Wed, 02 Aug 2006) | 1 line
Add some explanation about Klocwork and Coverity static analysis
........
r51041 | anthony.baxter | 2006-08-02 09:43:09 +0200 (Wed, 02 Aug 2006) | 1 line
pre-release machinations
........
r51043 | thomas.heller | 2006-08-02 13:35:31 +0200 (Wed, 02 Aug 2006) | 4 lines
A few nore words about what ctypes does.
Document that using the wrong calling convention can also raise
'ValueError: Procedure called with the wrong number of arguments'.
........
r51045 | thomas.heller | 2006-08-02 14:00:13 +0200 (Wed, 02 Aug 2006) | 1 line
Fix a mistake.
........
r51046 | martin.v.loewis | 2006-08-02 15:53:55 +0200 (Wed, 02 Aug 2006) | 3 lines
Correction of patch #1455898: In the mbcs decoder, set final=False
for stream decoder, but final=True for the decode function.
........
r51049 | tim.peters | 2006-08-02 20:19:35 +0200 (Wed, 02 Aug 2006) | 2 lines
Add missing svn:eol-style property to text files.
........
r51079 | neal.norwitz | 2006-08-04 06:50:21 +0200 (Fri, 04 Aug 2006) | 3 lines
Bug #1531405, format_exception no longer raises an exception if
str(exception) raised an exception.
........
r51080 | neal.norwitz | 2006-08-04 06:58:47 +0200 (Fri, 04 Aug 2006) | 11 lines
Bug #1191458: tracing over for loops now produces a line event
on each iteration. I'm not positive this is the best way to handle
this. I'm also not sure that there aren't other cases where
the lnotab is generated incorrectly. It would be great if people
that use pdb or tracing could test heavily.
Also:
* Remove dead/duplicated code that wasn't used/necessary
because we already handled the docstring prior to entering the loop.
* add some debugging code into the compiler (#if 0'd out).
........
r51081 | neal.norwitz | 2006-08-04 07:09:28 +0200 (Fri, 04 Aug 2006) | 4 lines
Bug #1333982: string/number constants were inappropriately stored
in the byte code and co_consts even if they were not used, ie
immediately popped off the stack.
........
r51082 | neal.norwitz | 2006-08-04 07:12:19 +0200 (Fri, 04 Aug 2006) | 1 line
There were really two issues
........
r51084 | fred.drake | 2006-08-04 07:17:21 +0200 (Fri, 04 Aug 2006) | 1 line
SF patch #1534048 (bug #1531003): fix typo in error message
........
r51085 | gregory.p.smith | 2006-08-04 07:17:47 +0200 (Fri, 04 Aug 2006) | 3 lines
fix typos
........
r51087 | georg.brandl | 2006-08-04 08:03:53 +0200 (Fri, 04 Aug 2006) | 3 lines
Fix bug caused by first decrefing, then increfing.
........
r51109 | neil.schemenauer | 2006-08-04 18:20:30 +0200 (Fri, 04 Aug 2006) | 5 lines
Fix the 'compiler' package to generate correct code for MAKE_CLOSURE.
In the 2.5 development cycle, MAKE_CLOSURE as changed to take free
variables as a tuple rather than as individual items on the stack.
Closes patch #1534084.
........
r51110 | georg.brandl | 2006-08-04 20:03:37 +0200 (Fri, 04 Aug 2006) | 3 lines
Change fix for segfaulting property(), add a NEWS entry and a test.
........
r51111 | georg.brandl | 2006-08-04 20:07:34 +0200 (Fri, 04 Aug 2006) | 3 lines
Better fix for bug #1531405, not executing str(value) twice.
........
r51112 | thomas.heller | 2006-08-04 20:17:40 +0200 (Fri, 04 Aug 2006) | 1 line
On Windows, make PyErr_Warn an exported function again.
........
r51113 | thomas.heller | 2006-08-04 20:57:34 +0200 (Fri, 04 Aug 2006) | 4 lines
Fix #1530448 - fix ctypes build failure on solaris 10.
The '-mimpure-text' linker flag is required when linking _ctypes.so.
........
r51114 | thomas.heller | 2006-08-04 21:49:31 +0200 (Fri, 04 Aug 2006) | 3 lines
Fix #1534738: win32 debug version of _msi must be _msi_d.pyd, not _msi.pyd.
Fix the name of the pdb file as well.
........
r51115 | andrew.kuchling | 2006-08-04 22:37:43 +0200 (Fri, 04 Aug 2006) | 1 line
Typo fixes
........
r51116 | andrew.kuchling | 2006-08-04 23:10:03 +0200 (Fri, 04 Aug 2006) | 1 line
Fix mangled sentence
........
r51118 | tim.peters | 2006-08-05 00:00:35 +0200 (Sat, 05 Aug 2006) | 2 lines
Whitespace normalization.
........
r51119 | bob.ippolito | 2006-08-05 01:59:21 +0200 (Sat, 05 Aug 2006) | 5 lines
Fix #1530559, struct.pack raises TypeError where it used to convert.
Passing float arguments to struct.pack when integers are expected
now triggers a DeprecationWarning.
........
r51123 | georg.brandl | 2006-08-05 08:10:54 +0200 (Sat, 05 Aug 2006) | 3 lines
Patch #1534922: correct and enhance unittest docs.
........
r51126 | georg.brandl | 2006-08-06 09:06:33 +0200 (Sun, 06 Aug 2006) | 2 lines
Bug #1535182: really test the xreadlines() method of bz2 objects.
........
r51128 | georg.brandl | 2006-08-06 09:26:21 +0200 (Sun, 06 Aug 2006) | 4 lines
Bug #1535081: A leading underscore has been added to the names of
the md5 and sha modules, so add it in Modules/Setup.dist too.
........
r51129 | georg.brandl | 2006-08-06 10:23:54 +0200 (Sun, 06 Aug 2006) | 3 lines
Bug #1535165: fixed a segfault in input() and raw_input() when
sys.stdin is closed.
........
r51131 | georg.brandl | 2006-08-06 11:17:16 +0200 (Sun, 06 Aug 2006) | 2 lines
Don't produce output in test_builtin.
........
r51133 | andrew.macintyre | 2006-08-06 14:37:03 +0200 (Sun, 06 Aug 2006) | 4 lines
test_threading now skips testing alternate thread stack sizes on
platforms that don't support changing thread stack size.
........
r51134 | andrew.kuchling | 2006-08-07 00:07:04 +0200 (Mon, 07 Aug 2006) | 2 lines
[Patch #1464056] Ensure that we use the panelw library when linking with ncursesw.
Once I see how the buildbots react, I'll backport this to 2.4.
........
r51137 | georg.brandl | 2006-08-08 13:52:34 +0200 (Tue, 08 Aug 2006) | 3 lines
webbrowser: Silence stderr output if no gconftool or gnome browser found
........
r51138 | georg.brandl | 2006-08-08 13:56:21 +0200 (Tue, 08 Aug 2006) | 7 lines
Remove "non-mapping" and "non-sequence" from TypeErrors raised by
PyMapping_Size and PySequence_Size.
Because len() tries first sequence, then mapping size, it will always
raise a "non-mapping object has no len" error which is confusing.
........
r51139 | thomas.heller | 2006-08-08 19:37:00 +0200 (Tue, 08 Aug 2006) | 3 lines
memcmp() can return values other than -1, 0, and +1 but tp_compare
must not.
........
r51140 | thomas.heller | 2006-08-08 19:39:20 +0200 (Tue, 08 Aug 2006) | 1 line
Remove accidently committed, duplicated test.
........
r51147 | andrew.kuchling | 2006-08-08 20:50:14 +0200 (Tue, 08 Aug 2006) | 1 line
Reword paragraph to clarify
........
r51148 | andrew.kuchling | 2006-08-08 20:56:08 +0200 (Tue, 08 Aug 2006) | 1 line
Move obmalloc item into C API section
........
r51149 | andrew.kuchling | 2006-08-08 21:00:14 +0200 (Tue, 08 Aug 2006) | 1 line
'Other changes' section now has only one item; move the item elsewhere and remove the section
........
r51150 | andrew.kuchling | 2006-08-08 21:00:34 +0200 (Tue, 08 Aug 2006) | 1 line
Bump version number
........
r51151 | georg.brandl | 2006-08-08 22:11:22 +0200 (Tue, 08 Aug 2006) | 2 lines
Bug #1536828: typo: TypeType should have been StringType.
........
r51153 | georg.brandl | 2006-08-08 22:13:13 +0200 (Tue, 08 Aug 2006) | 2 lines
Bug #1536660: separate two words.
........
r51155 | georg.brandl | 2006-08-08 22:48:10 +0200 (Tue, 08 Aug 2006) | 3 lines
``str`` is now the same object as ``types.StringType``.
........
r51156 | tim.peters | 2006-08-09 02:52:26 +0200 (Wed, 09 Aug 2006) | 2 lines
Whitespace normalization.
........
r51158 | georg.brandl | 2006-08-09 09:03:22 +0200 (Wed, 09 Aug 2006) | 4 lines
Introduce an upper bound on tuple nesting depth in
C argument format strings; fixes rest of #1523610.
........
r51160 | martin.v.loewis | 2006-08-09 09:57:39 +0200 (Wed, 09 Aug 2006) | 4 lines
__hash__ may now return long int; the final hash
value is obtained by invoking hash on the long int.
Fixes #1536021.
........
r51168 | andrew.kuchling | 2006-08-09 15:03:41 +0200 (Wed, 09 Aug 2006) | 1 line
[Bug #1536021] Mention __hash__ change
........
r51169 | andrew.kuchling | 2006-08-09 15:57:05 +0200 (Wed, 09 Aug 2006) | 1 line
[Patch #1534027] Add notes on locale module changes
........
r51170 | andrew.kuchling | 2006-08-09 16:05:35 +0200 (Wed, 09 Aug 2006) | 1 line
Add missing 'self' parameters
........
r51171 | andrew.kuchling | 2006-08-09 16:06:19 +0200 (Wed, 09 Aug 2006) | 1 line
Reindent code
........
r51172 | armin.rigo | 2006-08-09 16:55:26 +0200 (Wed, 09 Aug 2006) | 2 lines
Fix and test for an infinite C recursion.
........
r51173 | ronald.oussoren | 2006-08-09 16:56:33 +0200 (Wed, 09 Aug 2006) | 2 lines
It's unlikely that future versions will require _POSIX_C_SOURCE
........
r51178 | armin.rigo | 2006-08-09 17:37:26 +0200 (Wed, 09 Aug 2006) | 2 lines
Concatenation on a long string breaks (SF #1526585).
........
r51180 | kurt.kaiser | 2006-08-09 18:46:15 +0200 (Wed, 09 Aug 2006) | 8 lines
1. When used w/o subprocess, all exceptions were preceeded by an error
message claiming they were IDLE internal errors (since 1.2a1).
2. Add Ronald Oussoren to CREDITS
M NEWS.txt
M PyShell.py
M CREDITS.txt
........
r51181 | kurt.kaiser | 2006-08-09 19:47:15 +0200 (Wed, 09 Aug 2006) | 4 lines
As a slight enhancement to the previous checkin, improve the
internal error reporting by moving message to IDLE console.
........
r51182 | andrew.kuchling | 2006-08-09 20:23:14 +0200 (Wed, 09 Aug 2006) | 1 line
Typo fix
........
r51183 | kurt.kaiser | 2006-08-09 22:34:46 +0200 (Wed, 09 Aug 2006) | 2 lines
ToggleTab dialog was setting indent to 8 even if cancelled (since 1.2a1).
........
r51184 | martin.v.loewis | 2006-08-10 01:42:18 +0200 (Thu, 10 Aug 2006) | 2 lines
Add some commentary on -mimpure-text.
........
r51185 | tim.peters | 2006-08-10 02:58:49 +0200 (Thu, 10 Aug 2006) | 2 lines
Add missing svn:eol-style property to text files.
........
r51186 | kurt.kaiser | 2006-08-10 03:41:17 +0200 (Thu, 10 Aug 2006) | 2 lines
Changing tokenize (39046) to detect dedent broke tabnanny check (since 1.2a1)
........
r51187 | tim.peters | 2006-08-10 05:01:26 +0200 (Thu, 10 Aug 2006) | 13 lines
test_copytree_simple(): This was leaving behind two new temp
directories each time it ran, at least on Windows.
Several changes: explicitly closed all files; wrapped long
lines; stopped suppressing errors when removing a file or
directory fails (removing /shouldn't/ fail!); and changed
what appeared to be incorrect usage of os.removedirs() (that
doesn't remove empty directories at and /under/ the given
path, instead it must be given an empty leaf directory and
then deletes empty directories moving /up/ the path -- could
be that the conceptually simpler shutil.rmtree() was really
actually intended here).
........
2006-08-11 11:57:12 -03:00
|
|
|
|
2010-03-27 19:47:23 -03:00
|
|
|
|
2012-11-11 02:32:22 -04:00
|
|
|
class PopenTestException(Exception):
|
|
|
|
pass
|
|
|
|
|
|
|
|
|
|
|
|
class PopenExecuteChildRaises(subprocess.Popen):
|
|
|
|
"""Popen subclass for testing cleanup of subprocess.PIPE filehandles when
|
|
|
|
_execute_child fails.
|
|
|
|
"""
|
|
|
|
def _execute_child(self, *args, **kwargs):
|
|
|
|
raise PopenTestException("Forced Exception for Test")
|
|
|
|
|
|
|
|
|
2010-03-27 19:47:23 -03:00
|
|
|
class ProcessTestCase(BaseTestCase):
|
|
|
|
|
2013-03-23 15:44:25 -03:00
|
|
|
def test_io_buffered_by_default(self):
|
2019-10-14 17:40:32 -03:00
|
|
|
p = subprocess.Popen(ZERO_RETURN_CMD,
|
2013-03-23 15:44:25 -03:00
|
|
|
stdin=subprocess.PIPE, stdout=subprocess.PIPE,
|
|
|
|
stderr=subprocess.PIPE)
|
|
|
|
try:
|
|
|
|
self.assertIsInstance(p.stdin, io.BufferedIOBase)
|
|
|
|
self.assertIsInstance(p.stdout, io.BufferedIOBase)
|
|
|
|
self.assertIsInstance(p.stderr, io.BufferedIOBase)
|
|
|
|
finally:
|
2013-03-23 15:54:22 -03:00
|
|
|
p.stdin.close()
|
|
|
|
p.stdout.close()
|
|
|
|
p.stderr.close()
|
2013-03-23 15:44:25 -03:00
|
|
|
p.wait()
|
|
|
|
|
|
|
|
def test_io_unbuffered_works(self):
|
2019-10-14 17:40:32 -03:00
|
|
|
p = subprocess.Popen(ZERO_RETURN_CMD,
|
2013-03-23 15:44:25 -03:00
|
|
|
stdin=subprocess.PIPE, stdout=subprocess.PIPE,
|
|
|
|
stderr=subprocess.PIPE, bufsize=0)
|
|
|
|
try:
|
|
|
|
self.assertIsInstance(p.stdin, io.RawIOBase)
|
|
|
|
self.assertIsInstance(p.stdout, io.RawIOBase)
|
|
|
|
self.assertIsInstance(p.stderr, io.RawIOBase)
|
|
|
|
finally:
|
2013-03-23 15:54:22 -03:00
|
|
|
p.stdin.close()
|
|
|
|
p.stdout.close()
|
|
|
|
p.stderr.close()
|
2013-03-23 15:44:25 -03:00
|
|
|
p.wait()
|
|
|
|
|
2004-10-12 12:26:28 -03:00
|
|
|
def test_call_seq(self):
|
2004-10-12 19:29:54 -03:00
|
|
|
# call() function with sequence argument
|
2004-10-12 19:19:32 -03:00
|
|
|
rc = subprocess.call([sys.executable, "-c",
|
|
|
|
"import sys; sys.exit(47)"])
|
2004-10-12 12:26:28 -03:00
|
|
|
self.assertEqual(rc, 47)
|
|
|
|
|
2011-03-14 13:02:10 -03:00
|
|
|
def test_call_timeout(self):
|
|
|
|
# call() function with timeout argument; we want to test that the child
|
|
|
|
# process gets killed when the timeout expires. If the child isn't
|
|
|
|
# killed, this call will deadlock since subprocess.call waits for the
|
|
|
|
# child.
|
|
|
|
self.assertRaises(subprocess.TimeoutExpired, subprocess.call,
|
|
|
|
[sys.executable, "-c", "while True: pass"],
|
|
|
|
timeout=0.1)
|
|
|
|
|
2005-01-01 05:36:35 -04:00
|
|
|
def test_check_call_zero(self):
|
|
|
|
# check_call() function with zero return code
|
2019-10-14 17:40:32 -03:00
|
|
|
rc = subprocess.check_call(ZERO_RETURN_CMD)
|
2005-01-01 05:36:35 -04:00
|
|
|
self.assertEqual(rc, 0)
|
|
|
|
|
|
|
|
def test_check_call_nonzero(self):
|
|
|
|
# check_call() function with non-zero return code
|
2010-02-27 18:12:37 -04:00
|
|
|
with self.assertRaises(subprocess.CalledProcessError) as c:
|
2005-01-01 05:36:35 -04:00
|
|
|
subprocess.check_call([sys.executable, "-c",
|
|
|
|
"import sys; sys.exit(47)"])
|
2010-02-27 18:12:37 -04:00
|
|
|
self.assertEqual(c.exception.returncode, 47)
|
2005-01-01 05:36:35 -04:00
|
|
|
|
2008-12-07 11:30:06 -04:00
|
|
|
def test_check_output(self):
|
|
|
|
# check_output() function with zero return code
|
|
|
|
output = subprocess.check_output(
|
|
|
|
[sys.executable, "-c", "print('BDFL')"])
|
2010-01-18 20:09:57 -04:00
|
|
|
self.assertIn(b'BDFL', output)
|
2008-12-07 11:30:06 -04:00
|
|
|
|
|
|
|
def test_check_output_nonzero(self):
|
|
|
|
# check_call() function with non-zero return code
|
2010-02-27 18:12:37 -04:00
|
|
|
with self.assertRaises(subprocess.CalledProcessError) as c:
|
2008-12-07 11:30:06 -04:00
|
|
|
subprocess.check_output(
|
|
|
|
[sys.executable, "-c", "import sys; sys.exit(5)"])
|
2010-02-27 18:12:37 -04:00
|
|
|
self.assertEqual(c.exception.returncode, 5)
|
2008-12-07 11:30:06 -04:00
|
|
|
|
|
|
|
def test_check_output_stderr(self):
|
|
|
|
# check_output() function stderr redirected to stdout
|
|
|
|
output = subprocess.check_output(
|
|
|
|
[sys.executable, "-c", "import sys; sys.stderr.write('BDFL')"],
|
|
|
|
stderr=subprocess.STDOUT)
|
2010-01-18 20:09:57 -04:00
|
|
|
self.assertIn(b'BDFL', output)
|
2008-12-07 11:30:06 -04:00
|
|
|
|
2013-04-22 14:20:54 -03:00
|
|
|
def test_check_output_stdin_arg(self):
|
|
|
|
# check_output() can be called with stdin set to a file
|
|
|
|
tf = tempfile.TemporaryFile()
|
|
|
|
self.addCleanup(tf.close)
|
|
|
|
tf.write(b'pear')
|
|
|
|
tf.seek(0)
|
|
|
|
output = subprocess.check_output(
|
|
|
|
[sys.executable, "-c",
|
|
|
|
"import sys; sys.stdout.write(sys.stdin.read().upper())"],
|
|
|
|
stdin=tf)
|
|
|
|
self.assertIn(b'PEAR', output)
|
|
|
|
|
|
|
|
def test_check_output_input_arg(self):
|
|
|
|
# check_output() can be called with input set to a string
|
|
|
|
output = subprocess.check_output(
|
|
|
|
[sys.executable, "-c",
|
|
|
|
"import sys; sys.stdout.write(sys.stdin.read().upper())"],
|
|
|
|
input=b'pear')
|
|
|
|
self.assertIn(b'PEAR', output)
|
|
|
|
|
2008-12-07 11:30:06 -04:00
|
|
|
def test_check_output_stdout_arg(self):
|
2013-04-22 14:20:54 -03:00
|
|
|
# check_output() refuses to accept 'stdout' argument
|
2010-02-27 18:12:37 -04:00
|
|
|
with self.assertRaises(ValueError) as c:
|
2008-12-07 11:30:06 -04:00
|
|
|
output = subprocess.check_output(
|
|
|
|
[sys.executable, "-c", "print('will not be run')"],
|
|
|
|
stdout=sys.stdout)
|
|
|
|
self.fail("Expected ValueError when stdout arg supplied.")
|
2010-02-27 18:12:37 -04:00
|
|
|
self.assertIn('stdout', c.exception.args[0])
|
2008-12-07 11:30:06 -04:00
|
|
|
|
2013-04-22 14:20:54 -03:00
|
|
|
def test_check_output_stdin_with_input_arg(self):
|
|
|
|
# check_output() refuses to accept 'stdin' with 'input'
|
|
|
|
tf = tempfile.TemporaryFile()
|
|
|
|
self.addCleanup(tf.close)
|
|
|
|
tf.write(b'pear')
|
|
|
|
tf.seek(0)
|
|
|
|
with self.assertRaises(ValueError) as c:
|
|
|
|
output = subprocess.check_output(
|
|
|
|
[sys.executable, "-c", "print('will not be run')"],
|
|
|
|
stdin=tf, input=b'hare')
|
|
|
|
self.fail("Expected ValueError when stdin and input args supplied.")
|
|
|
|
self.assertIn('stdin', c.exception.args[0])
|
|
|
|
self.assertIn('input', c.exception.args[0])
|
|
|
|
|
2011-03-14 13:02:10 -03:00
|
|
|
def test_check_output_timeout(self):
|
|
|
|
# check_output() function with timeout arg
|
|
|
|
with self.assertRaises(subprocess.TimeoutExpired) as c:
|
|
|
|
output = subprocess.check_output(
|
|
|
|
[sys.executable, "-c",
|
2011-06-06 18:43:02 -03:00
|
|
|
"import sys, time\n"
|
|
|
|
"sys.stdout.write('BDFL')\n"
|
2011-03-14 13:02:10 -03:00
|
|
|
"sys.stdout.flush()\n"
|
2011-06-06 18:43:02 -03:00
|
|
|
"time.sleep(3600)"],
|
2011-03-16 18:08:21 -03:00
|
|
|
# Some heavily loaded buildbots (sparc Debian 3.x) require
|
|
|
|
# this much time to start and print.
|
|
|
|
timeout=3)
|
2011-03-14 13:02:10 -03:00
|
|
|
self.fail("Expected TimeoutExpired.")
|
|
|
|
self.assertEqual(c.exception.output, b'BDFL')
|
|
|
|
|
2004-10-12 12:26:28 -03:00
|
|
|
def test_call_kwargs(self):
|
2004-10-12 19:29:54 -03:00
|
|
|
# call() function with keyword args
|
2004-10-12 12:26:28 -03:00
|
|
|
newenv = os.environ.copy()
|
|
|
|
newenv["FRUIT"] = "banana"
|
|
|
|
rc = subprocess.call([sys.executable, "-c",
|
2007-11-06 17:34:58 -04:00
|
|
|
'import sys, os;'
|
|
|
|
'sys.exit(os.getenv("FRUIT")=="banana")'],
|
|
|
|
env=newenv)
|
2004-10-12 12:26:28 -03:00
|
|
|
self.assertEqual(rc, 1)
|
|
|
|
|
2011-05-31 19:57:47 -03:00
|
|
|
def test_invalid_args(self):
|
|
|
|
# Popen() called with invalid arguments should raise TypeError
|
|
|
|
# but Popen.__del__ should not complain (issue #12085)
|
|
|
|
with support.captured_stderr() as s:
|
|
|
|
self.assertRaises(TypeError, subprocess.Popen, invalid_arg_name=1)
|
|
|
|
argcount = subprocess.Popen.__init__.__code__.co_argcount
|
|
|
|
too_many_args = [0] * (argcount + 1)
|
|
|
|
self.assertRaises(TypeError, subprocess.Popen, *too_many_args)
|
|
|
|
self.assertEqual(s.getvalue(), '')
|
|
|
|
|
2004-10-12 12:26:28 -03:00
|
|
|
def test_stdin_none(self):
|
2004-10-12 19:29:54 -03:00
|
|
|
# .stdin is None when not redirected
|
* Remove PRINT_ITEM(_TO), PRINT_NEWLINE(_TO) opcodes.
* Fix some docstrings and one Print -> print.
* Fix test_{class,code,descrtut,dis,extcall,parser,popen,pkg,subprocess,syntax,traceback}.
These were the ones that generated code with a print statement.
In most remaining failing tests there's an issue with the soft space.
2007-02-09 17:28:07 -04:00
|
|
|
p = subprocess.Popen([sys.executable, "-c", 'print("banana")'],
|
2004-10-12 12:26:28 -03:00
|
|
|
stdout=subprocess.PIPE, stderr=subprocess.PIPE)
|
2010-11-05 00:58:52 -03:00
|
|
|
self.addCleanup(p.stdout.close)
|
|
|
|
self.addCleanup(p.stderr.close)
|
2004-10-12 12:26:28 -03:00
|
|
|
p.wait()
|
|
|
|
self.assertEqual(p.stdin, None)
|
|
|
|
|
|
|
|
def test_stdout_none(self):
|
2013-03-11 00:53:34 -03:00
|
|
|
# .stdout is None when not redirected, and the child's stdout will
|
|
|
|
# be inherited from the parent. In order to test this we run a
|
|
|
|
# subprocess in a subprocess:
|
|
|
|
# this_test
|
|
|
|
# \-- subprocess created by this test (parent)
|
|
|
|
# \-- subprocess created by the parent subprocess (child)
|
|
|
|
# The parent doesn't specify stdout, so the child will use the
|
|
|
|
# parent's stdout. This test checks that the message printed by the
|
|
|
|
# child goes to the parent stdout. The parent also checks that the
|
|
|
|
# child's stdout is None. See #11963.
|
|
|
|
code = ('import sys; from subprocess import Popen, PIPE;'
|
|
|
|
'p = Popen([sys.executable, "-c", "print(\'test_stdout_none\')"],'
|
|
|
|
' stdin=PIPE, stderr=PIPE);'
|
|
|
|
'p.wait(); assert p.stdout is None;')
|
|
|
|
p = subprocess.Popen([sys.executable, "-c", code],
|
|
|
|
stdout=subprocess.PIPE, stderr=subprocess.PIPE)
|
|
|
|
self.addCleanup(p.stdout.close)
|
2010-11-05 00:58:52 -03:00
|
|
|
self.addCleanup(p.stderr.close)
|
2013-03-11 00:53:34 -03:00
|
|
|
out, err = p.communicate()
|
|
|
|
self.assertEqual(p.returncode, 0, err)
|
|
|
|
self.assertEqual(out.rstrip(), b'test_stdout_none')
|
2004-10-12 12:26:28 -03:00
|
|
|
|
|
|
|
def test_stderr_none(self):
|
2004-10-12 19:29:54 -03:00
|
|
|
# .stderr is None when not redirected
|
* Remove PRINT_ITEM(_TO), PRINT_NEWLINE(_TO) opcodes.
* Fix some docstrings and one Print -> print.
* Fix test_{class,code,descrtut,dis,extcall,parser,popen,pkg,subprocess,syntax,traceback}.
These were the ones that generated code with a print statement.
In most remaining failing tests there's an issue with the soft space.
2007-02-09 17:28:07 -04:00
|
|
|
p = subprocess.Popen([sys.executable, "-c", 'print("banana")'],
|
2004-10-12 12:26:28 -03:00
|
|
|
stdin=subprocess.PIPE, stdout=subprocess.PIPE)
|
2010-11-05 00:58:52 -03:00
|
|
|
self.addCleanup(p.stdout.close)
|
|
|
|
self.addCleanup(p.stdin.close)
|
2004-10-12 12:26:28 -03:00
|
|
|
p.wait()
|
|
|
|
self.assertEqual(p.stderr, None)
|
|
|
|
|
2012-10-08 19:56:43 -03:00
|
|
|
def _assert_python(self, pre_args, **kwargs):
|
|
|
|
# We include sys.exit() to prevent the test runner from hanging
|
|
|
|
# whenever python is found.
|
|
|
|
args = pre_args + ["import sys; sys.exit(47)"]
|
|
|
|
p = subprocess.Popen(args, **kwargs)
|
|
|
|
p.wait()
|
|
|
|
self.assertEqual(47, p.returncode)
|
|
|
|
|
|
|
|
def test_executable(self):
|
|
|
|
# Check that the executable argument works.
|
2012-10-09 17:17:49 -03:00
|
|
|
#
|
|
|
|
# On Unix (non-Mac and non-Windows), Python looks at args[0] to
|
|
|
|
# determine where its standard library is, so we need the directory
|
|
|
|
# of args[0] to be valid for the Popen() call to Python to succeed.
|
|
|
|
# See also issue #16170 and issue #7774.
|
|
|
|
doesnotexist = os.path.join(os.path.dirname(sys.executable),
|
|
|
|
"doesnotexist")
|
|
|
|
self._assert_python([doesnotexist, "-c"], executable=sys.executable)
|
2012-10-08 19:56:43 -03:00
|
|
|
|
2019-05-28 16:49:35 -03:00
|
|
|
def test_bytes_executable(self):
|
|
|
|
doesnotexist = os.path.join(os.path.dirname(sys.executable),
|
|
|
|
"doesnotexist")
|
|
|
|
self._assert_python([doesnotexist, "-c"],
|
|
|
|
executable=os.fsencode(sys.executable))
|
|
|
|
|
|
|
|
def test_pathlike_executable(self):
|
|
|
|
doesnotexist = os.path.join(os.path.dirname(sys.executable),
|
|
|
|
"doesnotexist")
|
|
|
|
self._assert_python([doesnotexist, "-c"],
|
|
|
|
executable=FakePath(sys.executable))
|
|
|
|
|
2012-10-08 19:56:43 -03:00
|
|
|
def test_executable_takes_precedence(self):
|
|
|
|
# Check that the executable argument takes precedence over args[0].
|
|
|
|
#
|
|
|
|
# Verify first that the call succeeds without the executable arg.
|
|
|
|
pre_args = [sys.executable, "-c"]
|
|
|
|
self._assert_python(pre_args)
|
2018-01-25 14:06:05 -04:00
|
|
|
self.assertRaises(NONEXISTING_ERRORS,
|
2016-11-14 12:14:42 -04:00
|
|
|
self._assert_python, pre_args,
|
2018-01-25 14:06:05 -04:00
|
|
|
executable=NONEXISTING_CMD[0])
|
2012-10-08 19:56:43 -03:00
|
|
|
|
2018-06-25 21:11:06 -03:00
|
|
|
@unittest.skipIf(mswindows, "executable argument replaces shell")
|
2012-10-08 19:56:43 -03:00
|
|
|
def test_executable_replaces_shell(self):
|
|
|
|
# Check that the executable argument replaces the default shell
|
|
|
|
# when shell=True.
|
|
|
|
self._assert_python([], executable=sys.executable, shell=True)
|
|
|
|
|
2019-05-28 16:49:35 -03:00
|
|
|
@unittest.skipIf(mswindows, "executable argument replaces shell")
|
|
|
|
def test_bytes_executable_replaces_shell(self):
|
|
|
|
self._assert_python([], executable=os.fsencode(sys.executable),
|
|
|
|
shell=True)
|
|
|
|
|
|
|
|
@unittest.skipIf(mswindows, "executable argument replaces shell")
|
|
|
|
def test_pathlike_executable_replaces_shell(self):
|
|
|
|
self._assert_python([], executable=FakePath(sys.executable),
|
|
|
|
shell=True)
|
|
|
|
|
2012-09-30 04:10:28 -03:00
|
|
|
# For use in the test_cwd* tests below.
|
|
|
|
def _normalize_cwd(self, cwd):
|
|
|
|
# Normalize an expected cwd (for Tru64 support).
|
|
|
|
# We can't use os.path.realpath since it doesn't expand Tru64 {memb}
|
|
|
|
# strings. See bug #1063571.
|
2015-09-06 08:13:25 -03:00
|
|
|
with support.change_cwd(cwd):
|
|
|
|
return os.getcwd()
|
2012-09-30 04:10:28 -03:00
|
|
|
|
|
|
|
# For use in the test_cwd* tests below.
|
|
|
|
def _split_python_path(self):
|
|
|
|
# Return normalized (python_dir, python_base).
|
|
|
|
python_path = os.path.realpath(sys.executable)
|
|
|
|
return os.path.split(python_path)
|
|
|
|
|
|
|
|
# For use in the test_cwd* tests below.
|
|
|
|
def _assert_cwd(self, expected_cwd, python_arg, **kwargs):
|
|
|
|
# Invoke Python via Popen, and assert that (1) the call succeeds,
|
|
|
|
# and that (2) the current working directory of the child process
|
|
|
|
# matches *expected_cwd*.
|
|
|
|
p = subprocess.Popen([python_arg, "-c",
|
|
|
|
"import os, sys; "
|
|
|
|
"sys.stdout.write(os.getcwd()); "
|
|
|
|
"sys.exit(47)"],
|
|
|
|
stdout=subprocess.PIPE,
|
|
|
|
**kwargs)
|
|
|
|
self.addCleanup(p.stdout.close)
|
2010-02-18 05:37:05 -04:00
|
|
|
p.wait()
|
2012-09-30 04:10:28 -03:00
|
|
|
self.assertEqual(47, p.returncode)
|
|
|
|
normcase = os.path.normcase
|
|
|
|
self.assertEqual(normcase(expected_cwd),
|
|
|
|
normcase(p.stdout.read().decode("utf-8")))
|
|
|
|
|
|
|
|
def test_cwd(self):
|
|
|
|
# Check that cwd changes the cwd for the child process.
|
|
|
|
temp_dir = tempfile.gettempdir()
|
|
|
|
temp_dir = self._normalize_cwd(temp_dir)
|
|
|
|
self._assert_cwd(temp_dir, sys.executable, cwd=temp_dir)
|
|
|
|
|
2019-05-28 16:49:35 -03:00
|
|
|
def test_cwd_with_bytes(self):
|
|
|
|
temp_dir = tempfile.gettempdir()
|
|
|
|
temp_dir = self._normalize_cwd(temp_dir)
|
|
|
|
self._assert_cwd(temp_dir, sys.executable, cwd=os.fsencode(temp_dir))
|
|
|
|
|
2017-02-26 13:06:10 -04:00
|
|
|
def test_cwd_with_pathlike(self):
|
|
|
|
temp_dir = tempfile.gettempdir()
|
|
|
|
temp_dir = self._normalize_cwd(temp_dir)
|
2018-03-02 05:53:51 -04:00
|
|
|
self._assert_cwd(temp_dir, sys.executable, cwd=FakePath(temp_dir))
|
2017-02-26 13:06:10 -04:00
|
|
|
|
2018-06-25 21:11:06 -03:00
|
|
|
@unittest.skipIf(mswindows, "pending resolution of issue #15533")
|
2012-09-30 04:10:28 -03:00
|
|
|
def test_cwd_with_relative_arg(self):
|
|
|
|
# Check that Popen looks for args[0] relative to cwd if args[0]
|
|
|
|
# is relative.
|
|
|
|
python_dir, python_base = self._split_python_path()
|
|
|
|
rel_python = os.path.join(os.curdir, python_base)
|
|
|
|
with support.temp_cwd() as wrong_dir:
|
|
|
|
# Before calling with the correct cwd, confirm that the call fails
|
|
|
|
# without cwd and with the wrong cwd.
|
2012-09-30 06:15:37 -03:00
|
|
|
self.assertRaises(FileNotFoundError, subprocess.Popen,
|
2012-09-30 04:10:28 -03:00
|
|
|
[rel_python])
|
2012-09-30 06:15:37 -03:00
|
|
|
self.assertRaises(FileNotFoundError, subprocess.Popen,
|
2012-09-30 04:10:28 -03:00
|
|
|
[rel_python], cwd=wrong_dir)
|
|
|
|
python_dir = self._normalize_cwd(python_dir)
|
|
|
|
self._assert_cwd(python_dir, rel_python, cwd=python_dir)
|
|
|
|
|
2018-06-25 21:11:06 -03:00
|
|
|
@unittest.skipIf(mswindows, "pending resolution of issue #15533")
|
2012-09-30 04:10:28 -03:00
|
|
|
def test_cwd_with_relative_executable(self):
|
|
|
|
# Check that Popen looks for executable relative to cwd if executable
|
|
|
|
# is relative (and that executable takes precedence over args[0]).
|
|
|
|
python_dir, python_base = self._split_python_path()
|
|
|
|
rel_python = os.path.join(os.curdir, python_base)
|
|
|
|
doesntexist = "somethingyoudonthave"
|
|
|
|
with support.temp_cwd() as wrong_dir:
|
|
|
|
# Before calling with the correct cwd, confirm that the call fails
|
|
|
|
# without cwd and with the wrong cwd.
|
2012-09-30 06:15:37 -03:00
|
|
|
self.assertRaises(FileNotFoundError, subprocess.Popen,
|
2012-09-30 04:10:28 -03:00
|
|
|
[doesntexist], executable=rel_python)
|
2012-09-30 06:15:37 -03:00
|
|
|
self.assertRaises(FileNotFoundError, subprocess.Popen,
|
2012-09-30 04:10:28 -03:00
|
|
|
[doesntexist], executable=rel_python,
|
|
|
|
cwd=wrong_dir)
|
|
|
|
python_dir = self._normalize_cwd(python_dir)
|
|
|
|
self._assert_cwd(python_dir, doesntexist, executable=rel_python,
|
|
|
|
cwd=python_dir)
|
|
|
|
|
|
|
|
def test_cwd_with_absolute_arg(self):
|
|
|
|
# Check that Popen can find the executable when the cwd is wrong
|
|
|
|
# if args[0] is an absolute path.
|
|
|
|
python_dir, python_base = self._split_python_path()
|
|
|
|
abs_python = os.path.join(python_dir, python_base)
|
|
|
|
rel_python = os.path.join(os.curdir, python_base)
|
2015-05-06 00:33:17 -03:00
|
|
|
with support.temp_dir() as wrong_dir:
|
2012-09-30 04:10:28 -03:00
|
|
|
# Before calling with an absolute path, confirm that using a
|
|
|
|
# relative path fails.
|
2012-09-30 06:15:37 -03:00
|
|
|
self.assertRaises(FileNotFoundError, subprocess.Popen,
|
2012-09-30 04:10:28 -03:00
|
|
|
[rel_python], cwd=wrong_dir)
|
|
|
|
wrong_dir = self._normalize_cwd(wrong_dir)
|
|
|
|
self._assert_cwd(wrong_dir, abs_python, cwd=wrong_dir)
|
|
|
|
|
2012-05-25 23:45:29 -03:00
|
|
|
@unittest.skipIf(sys.base_prefix != sys.prefix,
|
|
|
|
'Test is not venv-compatible')
|
2010-02-18 05:37:05 -04:00
|
|
|
def test_executable_with_cwd(self):
|
2012-09-30 04:10:28 -03:00
|
|
|
python_dir, python_base = self._split_python_path()
|
|
|
|
python_dir = self._normalize_cwd(python_dir)
|
|
|
|
self._assert_cwd(python_dir, "somethingyoudonthave",
|
|
|
|
executable=sys.executable, cwd=python_dir)
|
2010-02-18 05:37:05 -04:00
|
|
|
|
2012-05-25 23:45:29 -03:00
|
|
|
@unittest.skipIf(sys.base_prefix != sys.prefix,
|
|
|
|
'Test is not venv-compatible')
|
2010-02-18 05:37:05 -04:00
|
|
|
@unittest.skipIf(sysconfig.is_python_build(),
|
|
|
|
"need an installed Python. See #7774")
|
|
|
|
def test_executable_without_cwd(self):
|
|
|
|
# For a normal installation, it should work without 'cwd'
|
|
|
|
# argument. For test runs in the build directory, see #7774.
|
2013-08-02 22:02:21 -03:00
|
|
|
self._assert_cwd(os.getcwd(), "somethingyoudonthave",
|
|
|
|
executable=sys.executable)
|
2004-10-12 12:26:28 -03:00
|
|
|
|
|
|
|
def test_stdin_pipe(self):
|
2004-10-12 19:29:54 -03:00
|
|
|
# stdin redirection
|
2004-10-12 12:26:28 -03:00
|
|
|
p = subprocess.Popen([sys.executable, "-c",
|
|
|
|
'import sys; sys.exit(sys.stdin.read() == "pear")'],
|
|
|
|
stdin=subprocess.PIPE)
|
2007-08-27 20:58:21 -03:00
|
|
|
p.stdin.write(b"pear")
|
2004-10-12 12:26:28 -03:00
|
|
|
p.stdin.close()
|
|
|
|
p.wait()
|
|
|
|
self.assertEqual(p.returncode, 1)
|
|
|
|
|
|
|
|
def test_stdin_filedes(self):
|
2004-10-12 19:29:54 -03:00
|
|
|
# stdin is set to open file descriptor
|
2004-10-12 18:51:32 -03:00
|
|
|
tf = tempfile.TemporaryFile()
|
2010-10-30 23:06:21 -03:00
|
|
|
self.addCleanup(tf.close)
|
2004-10-12 12:26:28 -03:00
|
|
|
d = tf.fileno()
|
2008-09-15 20:02:56 -03:00
|
|
|
os.write(d, b"pear")
|
2004-10-12 12:26:28 -03:00
|
|
|
os.lseek(d, 0, 0)
|
|
|
|
p = subprocess.Popen([sys.executable, "-c",
|
|
|
|
'import sys; sys.exit(sys.stdin.read() == "pear")'],
|
|
|
|
stdin=d)
|
|
|
|
p.wait()
|
|
|
|
self.assertEqual(p.returncode, 1)
|
|
|
|
|
|
|
|
def test_stdin_fileobj(self):
|
2004-10-12 19:29:54 -03:00
|
|
|
# stdin is set to open file object
|
2004-10-12 12:26:28 -03:00
|
|
|
tf = tempfile.TemporaryFile()
|
2010-10-30 23:06:21 -03:00
|
|
|
self.addCleanup(tf.close)
|
2007-08-27 20:58:21 -03:00
|
|
|
tf.write(b"pear")
|
2004-10-12 12:26:28 -03:00
|
|
|
tf.seek(0)
|
|
|
|
p = subprocess.Popen([sys.executable, "-c",
|
|
|
|
'import sys; sys.exit(sys.stdin.read() == "pear")'],
|
|
|
|
stdin=tf)
|
|
|
|
p.wait()
|
|
|
|
self.assertEqual(p.returncode, 1)
|
|
|
|
|
|
|
|
def test_stdout_pipe(self):
|
2004-10-12 19:29:54 -03:00
|
|
|
# stdout redirection
|
2004-10-12 12:26:28 -03:00
|
|
|
p = subprocess.Popen([sys.executable, "-c",
|
|
|
|
'import sys; sys.stdout.write("orange")'],
|
|
|
|
stdout=subprocess.PIPE)
|
2016-05-20 07:43:15 -03:00
|
|
|
with p:
|
|
|
|
self.assertEqual(p.stdout.read(), b"orange")
|
2004-10-12 12:26:28 -03:00
|
|
|
|
|
|
|
def test_stdout_filedes(self):
|
2004-10-12 19:29:54 -03:00
|
|
|
# stdout is set to open file descriptor
|
2004-10-12 18:51:32 -03:00
|
|
|
tf = tempfile.TemporaryFile()
|
2010-10-30 23:06:21 -03:00
|
|
|
self.addCleanup(tf.close)
|
2004-10-12 12:26:28 -03:00
|
|
|
d = tf.fileno()
|
|
|
|
p = subprocess.Popen([sys.executable, "-c",
|
|
|
|
'import sys; sys.stdout.write("orange")'],
|
|
|
|
stdout=d)
|
|
|
|
p.wait()
|
|
|
|
os.lseek(d, 0, 0)
|
2007-05-15 20:18:55 -03:00
|
|
|
self.assertEqual(os.read(d, 1024), b"orange")
|
2004-10-12 12:26:28 -03:00
|
|
|
|
|
|
|
def test_stdout_fileobj(self):
|
2004-10-12 19:29:54 -03:00
|
|
|
# stdout is set to open file object
|
2004-10-12 18:51:32 -03:00
|
|
|
tf = tempfile.TemporaryFile()
|
2010-10-30 23:06:21 -03:00
|
|
|
self.addCleanup(tf.close)
|
2004-10-12 12:26:28 -03:00
|
|
|
p = subprocess.Popen([sys.executable, "-c",
|
|
|
|
'import sys; sys.stdout.write("orange")'],
|
|
|
|
stdout=tf)
|
|
|
|
p.wait()
|
|
|
|
tf.seek(0)
|
2007-05-24 01:05:35 -03:00
|
|
|
self.assertEqual(tf.read(), b"orange")
|
2004-10-12 12:26:28 -03:00
|
|
|
|
|
|
|
def test_stderr_pipe(self):
|
2004-10-12 19:29:54 -03:00
|
|
|
# stderr redirection
|
2004-10-12 12:26:28 -03:00
|
|
|
p = subprocess.Popen([sys.executable, "-c",
|
|
|
|
'import sys; sys.stderr.write("strawberry")'],
|
|
|
|
stderr=subprocess.PIPE)
|
2016-05-20 07:43:15 -03:00
|
|
|
with p:
|
|
|
|
self.assertStderrEqual(p.stderr.read(), b"strawberry")
|
2004-10-12 12:26:28 -03:00
|
|
|
|
|
|
|
def test_stderr_filedes(self):
|
2004-10-12 19:29:54 -03:00
|
|
|
# stderr is set to open file descriptor
|
2004-10-12 18:51:32 -03:00
|
|
|
tf = tempfile.TemporaryFile()
|
2010-10-30 23:06:21 -03:00
|
|
|
self.addCleanup(tf.close)
|
2004-10-12 12:26:28 -03:00
|
|
|
d = tf.fileno()
|
|
|
|
p = subprocess.Popen([sys.executable, "-c",
|
|
|
|
'import sys; sys.stderr.write("strawberry")'],
|
|
|
|
stderr=d)
|
|
|
|
p.wait()
|
|
|
|
os.lseek(d, 0, 0)
|
2010-02-27 18:12:37 -04:00
|
|
|
self.assertStderrEqual(os.read(d, 1024), b"strawberry")
|
2004-10-12 12:26:28 -03:00
|
|
|
|
|
|
|
def test_stderr_fileobj(self):
|
2004-10-12 19:29:54 -03:00
|
|
|
# stderr is set to open file object
|
2004-10-12 18:51:32 -03:00
|
|
|
tf = tempfile.TemporaryFile()
|
2010-10-30 23:06:21 -03:00
|
|
|
self.addCleanup(tf.close)
|
2004-10-12 12:26:28 -03:00
|
|
|
p = subprocess.Popen([sys.executable, "-c",
|
|
|
|
'import sys; sys.stderr.write("strawberry")'],
|
|
|
|
stderr=tf)
|
|
|
|
p.wait()
|
|
|
|
tf.seek(0)
|
2010-02-27 18:12:37 -04:00
|
|
|
self.assertStderrEqual(tf.read(), b"strawberry")
|
2004-10-12 12:26:28 -03:00
|
|
|
|
2016-05-12 22:54:44 -03:00
|
|
|
def test_stderr_redirect_with_no_stdout_redirect(self):
|
|
|
|
# test stderr=STDOUT while stdout=None (not set)
|
|
|
|
|
|
|
|
# - grandchild prints to stderr
|
|
|
|
# - child redirects grandchild's stderr to its stdout
|
|
|
|
# - the parent should get grandchild's stderr in child's stdout
|
|
|
|
p = subprocess.Popen([sys.executable, "-c",
|
|
|
|
'import sys, subprocess;'
|
|
|
|
'rc = subprocess.call([sys.executable, "-c",'
|
|
|
|
' "import sys;"'
|
|
|
|
' "sys.stderr.write(\'42\')"],'
|
|
|
|
' stderr=subprocess.STDOUT);'
|
|
|
|
'sys.exit(rc)'],
|
|
|
|
stdout=subprocess.PIPE,
|
|
|
|
stderr=subprocess.PIPE)
|
|
|
|
stdout, stderr = p.communicate()
|
|
|
|
#NOTE: stdout should get stderr from grandchild
|
|
|
|
self.assertStderrEqual(stdout, b'42')
|
|
|
|
self.assertStderrEqual(stderr, b'') # should be empty
|
|
|
|
self.assertEqual(p.returncode, 0)
|
|
|
|
|
2004-10-12 12:26:28 -03:00
|
|
|
def test_stdout_stderr_pipe(self):
|
2004-10-12 19:29:54 -03:00
|
|
|
# capture stdout and stderr to the same pipe
|
2004-10-12 12:26:28 -03:00
|
|
|
p = subprocess.Popen([sys.executable, "-c",
|
2007-11-06 17:34:58 -04:00
|
|
|
'import sys;'
|
|
|
|
'sys.stdout.write("apple");'
|
|
|
|
'sys.stdout.flush();'
|
|
|
|
'sys.stderr.write("orange")'],
|
|
|
|
stdout=subprocess.PIPE,
|
|
|
|
stderr=subprocess.STDOUT)
|
2016-05-20 07:43:15 -03:00
|
|
|
with p:
|
|
|
|
self.assertStderrEqual(p.stdout.read(), b"appleorange")
|
2004-10-12 12:26:28 -03:00
|
|
|
|
|
|
|
def test_stdout_stderr_file(self):
|
2004-10-12 19:29:54 -03:00
|
|
|
# capture stdout and stderr to the same open file
|
2004-10-12 12:26:28 -03:00
|
|
|
tf = tempfile.TemporaryFile()
|
2010-10-30 23:06:21 -03:00
|
|
|
self.addCleanup(tf.close)
|
2004-10-12 12:26:28 -03:00
|
|
|
p = subprocess.Popen([sys.executable, "-c",
|
2007-11-06 17:34:58 -04:00
|
|
|
'import sys;'
|
|
|
|
'sys.stdout.write("apple");'
|
|
|
|
'sys.stdout.flush();'
|
|
|
|
'sys.stderr.write("orange")'],
|
|
|
|
stdout=tf,
|
|
|
|
stderr=tf)
|
2004-10-12 12:26:28 -03:00
|
|
|
p.wait()
|
|
|
|
tf.seek(0)
|
2010-02-27 18:12:37 -04:00
|
|
|
self.assertStderrEqual(tf.read(), b"appleorange")
|
2004-10-12 12:26:28 -03:00
|
|
|
|
Four months of trunk changes (including a few releases...)
Merged revisions 51434-53004 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk
........
r51434 | neal.norwitz | 2006-08-21 20:20:10 +0200 (Mon, 21 Aug 2006) | 1 line
Fix a couple of ssize-t issues reported by Alexander Belopolsky on python-dev
........
r51439 | neal.norwitz | 2006-08-21 21:47:08 +0200 (Mon, 21 Aug 2006) | 6 lines
Patch #1542451: disallow continue anywhere under a finally
I'm undecided if this should be backported to 2.5 or 2.5.1.
Armin suggested to wait (I'm of the same opinion). Thomas W thinks
it's fine to go in 2.5.
........
r51443 | neal.norwitz | 2006-08-21 22:16:24 +0200 (Mon, 21 Aug 2006) | 4 lines
Handle a few more error conditions.
Klocwork 301 and 302. Will backport.
........
r51450 | neal.norwitz | 2006-08-22 00:21:19 +0200 (Tue, 22 Aug 2006) | 5 lines
Patch #1541585: fix buffer overrun when performing repr() on
a unicode string in a build with wide unicode (UCS-4) support.
This code could be improved, so add an XXX comment.
........
r51456 | neal.norwitz | 2006-08-22 01:44:48 +0200 (Tue, 22 Aug 2006) | 1 line
Try to get the windows bots working again with the new peephole.c
........
r51461 | anthony.baxter | 2006-08-22 09:36:59 +0200 (Tue, 22 Aug 2006) | 1 line
patch for documentation for recent uuid changes (from ping)
........
r51473 | neal.norwitz | 2006-08-22 15:56:56 +0200 (Tue, 22 Aug 2006) | 1 line
Alexander Belopolsky pointed out that pos is a size_t
........
r51489 | jeremy.hylton | 2006-08-22 22:46:00 +0200 (Tue, 22 Aug 2006) | 2 lines
Expose column offset information in parse trees.
........
r51497 | andrew.kuchling | 2006-08-23 01:13:43 +0200 (Wed, 23 Aug 2006) | 1 line
Move functional howto into trunk
........
r51515 | jeremy.hylton | 2006-08-23 20:37:43 +0200 (Wed, 23 Aug 2006) | 2 lines
Baby steps towards better tests for tokenize
........
r51525 | alex.martelli | 2006-08-23 22:42:02 +0200 (Wed, 23 Aug 2006) | 6 lines
x**2 should about equal x*x (including for a float x such that the result is
inf) but didn't; added a test to test_float to verify that, and ignored the
ERANGE value for errno in the pow operation to make the new test pass (with
help from Marilyn Davis at the Google Python Sprint -- thanks!).
........
r51526 | jeremy.hylton | 2006-08-23 23:14:03 +0200 (Wed, 23 Aug 2006) | 20 lines
Bug fixes large and small for tokenize.
Small: Always generate a NL or NEWLINE token following
a COMMENT token. The old code did not generate an NL token if
the comment was on a line by itself.
Large: The output of untokenize() will now match the
input exactly if it is passed the full token sequence. The
old, crufty output is still generated if a limited input
sequence is provided, where limited means that it does not
include position information for tokens.
Remaining bug: There is no CONTINUATION token (\) so there is no way
for untokenize() to handle such code.
Also, expanded the number of doctests in hopes of eventually removing
the old-style tests that compare against a golden file.
Bug fix candidate for Python 2.5.1. (Sigh.)
........
r51527 | jeremy.hylton | 2006-08-23 23:26:46 +0200 (Wed, 23 Aug 2006) | 5 lines
Replace dead code with an assert.
Now that COMMENT tokens are reliably followed by NL or NEWLINE,
there is never a need to add extra newlines in untokenize.
........
r51530 | alex.martelli | 2006-08-24 00:17:59 +0200 (Thu, 24 Aug 2006) | 7 lines
Reverting the patch that tried to fix the issue whereby x**2 raises
OverflowError while x*x succeeds and produces infinity; apparently
these inconsistencies cannot be fixed across ``all'' platforms and
there's a widespread feeling that therefore ``every'' platform
should keep suffering forevermore. Ah well.
........
r51565 | thomas.wouters | 2006-08-24 20:40:20 +0200 (Thu, 24 Aug 2006) | 6 lines
Fix SF bug #1545837: array.array borks on deepcopy.
array.__deepcopy__() needs to take an argument, even if it doesn't actually
use it. Will backport to 2.5 and 2.4 (if applicable.)
........
r51580 | martin.v.loewis | 2006-08-25 02:03:34 +0200 (Fri, 25 Aug 2006) | 3 lines
Patch #1545507: Exclude ctypes package in Win64 MSI file.
Will backport to 2.5.
........
r51589 | neal.norwitz | 2006-08-25 03:52:49 +0200 (Fri, 25 Aug 2006) | 1 line
importing types is not necessary if we use isinstance
........
r51604 | thomas.heller | 2006-08-25 09:27:33 +0200 (Fri, 25 Aug 2006) | 3 lines
Port _ctypes.pyd to win64 on AMD64.
........
r51605 | thomas.heller | 2006-08-25 09:34:51 +0200 (Fri, 25 Aug 2006) | 3 lines
Add missing file for _ctypes.pyd port to win64 on AMD64.
........
r51606 | thomas.heller | 2006-08-25 11:26:33 +0200 (Fri, 25 Aug 2006) | 6 lines
Build _ctypes.pyd for win AMD64 into the MSVC project file.
Since MSVC doesn't know about .asm files, a helper batch file is needed
to find ml64.exe in predefined locations. The helper script hardcodes
the path to the MS Platform SDK.
........
r51608 | armin.rigo | 2006-08-25 14:44:28 +0200 (Fri, 25 Aug 2006) | 4 lines
The regular expression engine in '_sre' can segfault when interpreting
bogus bytecode. It is unclear whether this is a real bug or a "won't
fix" case like bogus_code_obj.py.
........
r51617 | tim.peters | 2006-08-26 00:05:39 +0200 (Sat, 26 Aug 2006) | 2 lines
Whitespace normalization.
........
r51618 | tim.peters | 2006-08-26 00:06:44 +0200 (Sat, 26 Aug 2006) | 2 lines
Add missing svn:eol-style property to text files.
........
r51619 | tim.peters | 2006-08-26 00:26:21 +0200 (Sat, 26 Aug 2006) | 3 lines
A new test here relied on preserving invisible trailing
whitespace in expected output. Stop that.
........
r51624 | jack.diederich | 2006-08-26 20:42:06 +0200 (Sat, 26 Aug 2006) | 4 lines
- Move functions common to all path modules into genericpath.py and have the
OS speicifc path modules import them.
- Have os2emxpath import common functions fron ntpath instead of using copies
........
r51642 | neal.norwitz | 2006-08-29 07:40:58 +0200 (Tue, 29 Aug 2006) | 1 line
Fix a couple of typos.
........
r51647 | marc-andre.lemburg | 2006-08-29 12:34:12 +0200 (Tue, 29 Aug 2006) | 5 lines
Fix a buglet in the error reporting (SF bug report #1546372).
This should probably go into Python 2.5 or 2.5.1 as well.
........
r51663 | armin.rigo | 2006-08-31 10:51:06 +0200 (Thu, 31 Aug 2006) | 3 lines
Doc fix: hashlib objects don't always return a digest of 16 bytes.
Backport candidate for 2.5.
........
r51664 | nick.coghlan | 2006-08-31 14:00:43 +0200 (Thu, 31 Aug 2006) | 1 line
Fix the wrongheaded implementation of context management in the decimal module and add unit tests. (python-dev discussion is ongoing regarding what we do about Python 2.5)
........
r51665 | nick.coghlan | 2006-08-31 14:51:25 +0200 (Thu, 31 Aug 2006) | 1 line
Remove the old decimal context management tests from test_contextlib (guess who didn't run the test suite before committing...)
........
r51669 | brett.cannon | 2006-08-31 20:54:26 +0200 (Thu, 31 Aug 2006) | 4 lines
Make sure memory is properly cleaned up in file_init.
Backport candidate.
........
r51671 | brett.cannon | 2006-08-31 23:47:52 +0200 (Thu, 31 Aug 2006) | 2 lines
Fix comment about indentation level in C files.
........
r51674 | brett.cannon | 2006-09-01 00:42:37 +0200 (Fri, 01 Sep 2006) | 3 lines
Have pre-existing C files use 8 spaces indents (to match old PEP 7 style), but
have all new files use 4 spaces (to match current PEP 7 style).
........
r51676 | fred.drake | 2006-09-01 05:57:19 +0200 (Fri, 01 Sep 2006) | 3 lines
- SF patch #1550263: Enhance and correct unittest docs
- various minor cleanups for improved consistency
........
r51677 | georg.brandl | 2006-09-02 00:30:52 +0200 (Sat, 02 Sep 2006) | 2 lines
evalfile() should be execfile().
........
r51681 | neal.norwitz | 2006-09-02 04:43:17 +0200 (Sat, 02 Sep 2006) | 1 line
SF #1547931, fix typo (missing and). Will backport to 2.5
........
r51683 | neal.norwitz | 2006-09-02 04:50:35 +0200 (Sat, 02 Sep 2006) | 1 line
Bug #1548092: fix curses.tparm seg fault on invalid input. Needs backport to 2.5.1 and earlier.
........
r51684 | neal.norwitz | 2006-09-02 04:58:13 +0200 (Sat, 02 Sep 2006) | 4 lines
Bug #1550714: fix SystemError from itertools.tee on negative value for n.
Needs backport to 2.5.1 and earlier.
........
r51685 | nick.coghlan | 2006-09-02 05:54:17 +0200 (Sat, 02 Sep 2006) | 1 line
Make decimal.ContextManager a private implementation detail of decimal.localcontext()
........
r51686 | nick.coghlan | 2006-09-02 06:04:18 +0200 (Sat, 02 Sep 2006) | 1 line
Further corrections to the decimal module context management documentation
........
r51688 | raymond.hettinger | 2006-09-02 19:07:23 +0200 (Sat, 02 Sep 2006) | 1 line
Fix documentation nits for decimal context managers.
........
r51690 | neal.norwitz | 2006-09-02 20:51:34 +0200 (Sat, 02 Sep 2006) | 1 line
Add missing word in comment
........
r51691 | neal.norwitz | 2006-09-02 21:40:19 +0200 (Sat, 02 Sep 2006) | 7 lines
Hmm, this test has failed at least twice recently on the OpenBSD and
Debian sparc buildbots. Since this goes through a lot of tests
and hits the disk a lot it could be slow (especially if NFS is involved).
I'm not sure if that's the problem, but printing periodic msgs shouldn't hurt.
The code was stolen from test_compiler.
........
r51693 | nick.coghlan | 2006-09-03 03:02:00 +0200 (Sun, 03 Sep 2006) | 1 line
Fix final documentation nits before backporting decimal module fixes to 2.5
........
r51694 | nick.coghlan | 2006-09-03 03:06:07 +0200 (Sun, 03 Sep 2006) | 1 line
Typo fix for decimal docs
........
r51697 | nick.coghlan | 2006-09-03 03:20:46 +0200 (Sun, 03 Sep 2006) | 1 line
NEWS entry on trunk for decimal module changes
........
r51704 | raymond.hettinger | 2006-09-04 17:32:48 +0200 (Mon, 04 Sep 2006) | 1 line
Fix endcase for str.rpartition()
........
r51716 | tim.peters | 2006-09-05 04:18:09 +0200 (Tue, 05 Sep 2006) | 12 lines
"Conceptual" merge of rev 51711 from the 2.5 branch.
i_divmod(): As discussed on Python-Dev, changed the overflow
checking to live happily with recent gcc optimizations that
assume signed integer arithmetic never overflows.
This differs from the corresponding change on the 2.5 and 2.4
branches, using a less obscure approach, but one that /may/
tickle platform idiocies in their definitions of LONG_MIN.
The 2.4 + 2.5 change avoided introducing a dependence on
LONG_MIN, at the cost of substantially goofier code.
........
r51717 | tim.peters | 2006-09-05 04:21:19 +0200 (Tue, 05 Sep 2006) | 2 lines
Whitespace normalization.
........
r51719 | tim.peters | 2006-09-05 04:22:17 +0200 (Tue, 05 Sep 2006) | 2 lines
Add missing svn:eol-style property to text files.
........
r51720 | neal.norwitz | 2006-09-05 04:24:03 +0200 (Tue, 05 Sep 2006) | 2 lines
Fix SF bug #1546288, crash in dict_equal.
........
r51721 | neal.norwitz | 2006-09-05 04:25:41 +0200 (Tue, 05 Sep 2006) | 1 line
Fix SF #1552093, eval docstring typo (3 ps in mapping)
........
r51724 | neal.norwitz | 2006-09-05 04:35:08 +0200 (Tue, 05 Sep 2006) | 1 line
This was found by Guido AFAIK on p3yk (sic) branch.
........
r51725 | neal.norwitz | 2006-09-05 04:36:20 +0200 (Tue, 05 Sep 2006) | 1 line
Add a NEWS entry for str.rpartition() change
........
r51728 | neal.norwitz | 2006-09-05 04:57:01 +0200 (Tue, 05 Sep 2006) | 1 line
Patch #1540470, for OpenBSD 4.0. Backport candidate for 2.[34].
........
r51729 | neal.norwitz | 2006-09-05 05:53:08 +0200 (Tue, 05 Sep 2006) | 12 lines
Bug #1520864 (again): unpacking singleton tuples in list comprehensions and
generator expressions (x for x, in ... ) works again.
Sigh, I only fixed for loops the first time, not list comps and genexprs too.
I couldn't find any more unpacking cases where there is a similar bug lurking.
This code should be refactored to eliminate the duplication. I'm sure
the listcomp/genexpr code can be refactored. I'm not sure if the for loop
can re-use any of the same code though.
Will backport to 2.5 (the only place it matters).
........
r51731 | neal.norwitz | 2006-09-05 05:58:26 +0200 (Tue, 05 Sep 2006) | 1 line
Add a comment about some refactoring. (There's probably more that should be done.) I will reformat this file in the next checkin due to the inconsistent tabs/spaces.
........
r51732 | neal.norwitz | 2006-09-05 06:00:12 +0200 (Tue, 05 Sep 2006) | 1 line
M-x untabify
........
r51737 | hyeshik.chang | 2006-09-05 14:07:09 +0200 (Tue, 05 Sep 2006) | 7 lines
Fix a few bugs on cjkcodecs found by Oren Tirosh:
- gbk and gb18030 codec now handle U+30FB KATAKANA MIDDLE DOT correctly.
- iso2022_jp_2 codec now encodes into G0 for KS X 1001, GB2312
codepoints to conform the standard.
- iso2022_jp_3 and iso2022_jp_2004 codec can encode JIS X 2013:2
codepoints now.
........
r51738 | hyeshik.chang | 2006-09-05 14:14:57 +0200 (Tue, 05 Sep 2006) | 2 lines
Fix a typo: 2013 -> 0213
........
r51740 | georg.brandl | 2006-09-05 14:44:58 +0200 (Tue, 05 Sep 2006) | 3 lines
Bug #1552618: change docs of dict.has_key() to reflect recommendation
to use "in".
........
r51742 | andrew.kuchling | 2006-09-05 15:02:40 +0200 (Tue, 05 Sep 2006) | 1 line
Rearrange example a bit, and show rpartition() when separator is not found
........
r51744 | andrew.kuchling | 2006-09-05 15:15:41 +0200 (Tue, 05 Sep 2006) | 1 line
[Bug #1525469] SimpleXMLRPCServer still uses the sys.exc_{value,type} module-level globals instead of calling sys.exc_info(). Reported by Russell Warren
........
r51745 | andrew.kuchling | 2006-09-05 15:19:18 +0200 (Tue, 05 Sep 2006) | 3 lines
[Bug #1526834] Fix crash in pdb when you do 'b f(';
the function name was placed into a regex pattern and the unbalanced paren
caused re.compile() to report an error
........
r51751 | kristjan.jonsson | 2006-09-05 19:58:12 +0200 (Tue, 05 Sep 2006) | 6 lines
Update the PCBuild8 solution.
Facilitate cross-compilation by having binaries in separate Win32 and x64 directories.
Rationalized configs by making proper use of platforms/configurations.
Remove pythoncore_pgo project.
Add new PGIRelease and PGORelease configurations to perform Profile Guided Optimisation.
Removed I64 support, but this can be easily added by copying the x64 platform settings.
........
r51758 | gustavo.niemeyer | 2006-09-06 03:58:52 +0200 (Wed, 06 Sep 2006) | 3 lines
Fixing #1531862: Do not close standard file descriptors in the
subprocess module.
........
r51760 | neal.norwitz | 2006-09-06 05:58:34 +0200 (Wed, 06 Sep 2006) | 1 line
Revert 51758 because it broke all the buildbots
........
r51762 | georg.brandl | 2006-09-06 08:03:59 +0200 (Wed, 06 Sep 2006) | 3 lines
Bug #1551427: fix a wrong NULL pointer check in the win32 version
of os.urandom().
........
r51765 | georg.brandl | 2006-09-06 08:09:31 +0200 (Wed, 06 Sep 2006) | 3 lines
Bug #1550983: emit better error messages for erroneous relative
imports (if not in package and if beyond toplevel package).
........
r51767 | neal.norwitz | 2006-09-06 08:28:06 +0200 (Wed, 06 Sep 2006) | 1 line
with and as are now keywords. There are some generated files I can't recreate.
........
r51770 | georg.brandl | 2006-09-06 08:50:05 +0200 (Wed, 06 Sep 2006) | 5 lines
Bug #1542051: Exceptions now correctly call PyObject_GC_UnTrack.
Also make sure that every exception class has __module__ set to
'exceptions'.
........
r51785 | georg.brandl | 2006-09-06 22:05:58 +0200 (Wed, 06 Sep 2006) | 2 lines
Fix missing import of the types module in logging.config.
........
r51789 | marc-andre.lemburg | 2006-09-06 22:40:22 +0200 (Wed, 06 Sep 2006) | 3 lines
Add news item for bug fix of SF bug report #1546372.
........
r51797 | gustavo.niemeyer | 2006-09-07 02:48:33 +0200 (Thu, 07 Sep 2006) | 3 lines
Fixed subprocess bug #1531862 again, after removing tests
offending buildbot
........
r51798 | raymond.hettinger | 2006-09-07 04:42:48 +0200 (Thu, 07 Sep 2006) | 1 line
Fix refcounts and add error checks.
........
r51803 | nick.coghlan | 2006-09-07 12:50:34 +0200 (Thu, 07 Sep 2006) | 1 line
Fix the speed regression in inspect.py by adding another cache to speed up getmodule(). Patch #1553314
........
r51805 | ronald.oussoren | 2006-09-07 14:03:10 +0200 (Thu, 07 Sep 2006) | 2 lines
Fix a glaring error and update some version numbers.
........
r51814 | andrew.kuchling | 2006-09-07 15:56:23 +0200 (Thu, 07 Sep 2006) | 1 line
Typo fix
........
r51815 | andrew.kuchling | 2006-09-07 15:59:38 +0200 (Thu, 07 Sep 2006) | 8 lines
[Bug #1552726] Avoid repeatedly polling in interactive mode -- only put a timeout on the select()
if an input hook has been defined. Patch by Richard Boulton.
This select() code is only executed with readline 2.1, or if
READLINE_CALLBACKS is defined.
Backport candidate for 2.5, 2.4, probably earlier versions too.
........
r51816 | armin.rigo | 2006-09-07 17:06:00 +0200 (Thu, 07 Sep 2006) | 2 lines
Add a warning notice on top of the generated grammar.txt.
........
r51819 | thomas.heller | 2006-09-07 20:56:28 +0200 (Thu, 07 Sep 2006) | 5 lines
Anonymous structure fields that have a bit-width specified did not work,
and they gave a strange error message from PyArg_ParseTuple:
function takes exactly 2 arguments (3 given).
With tests.
........
r51820 | thomas.heller | 2006-09-07 21:09:54 +0200 (Thu, 07 Sep 2006) | 4 lines
The cast function did not accept c_char_p or c_wchar_p instances
as first argument, and failed with a 'bad argument to internal function'
error message.
........
r51827 | nick.coghlan | 2006-09-08 12:04:38 +0200 (Fri, 08 Sep 2006) | 1 line
Add missing NEWS entry for rev 51803
........
r51828 | andrew.kuchling | 2006-09-08 15:25:23 +0200 (Fri, 08 Sep 2006) | 1 line
Add missing word
........
r51829 | andrew.kuchling | 2006-09-08 15:35:49 +0200 (Fri, 08 Sep 2006) | 1 line
Explain SQLite a bit more clearly
........
r51830 | andrew.kuchling | 2006-09-08 15:36:36 +0200 (Fri, 08 Sep 2006) | 1 line
Explain SQLite a bit more clearly
........
r51832 | andrew.kuchling | 2006-09-08 16:02:45 +0200 (Fri, 08 Sep 2006) | 1 line
Use native SQLite types
........
r51833 | andrew.kuchling | 2006-09-08 16:03:01 +0200 (Fri, 08 Sep 2006) | 1 line
Use native SQLite types
........
r51835 | andrew.kuchling | 2006-09-08 16:05:10 +0200 (Fri, 08 Sep 2006) | 1 line
Fix typo in example
........
r51837 | brett.cannon | 2006-09-09 09:11:46 +0200 (Sat, 09 Sep 2006) | 6 lines
Remove the __unicode__ method from exceptions. Allows unicode() to be called
on exception classes. Would require introducing a tp_unicode slot to make it
work otherwise.
Fixes bug #1551432 and will be backported.
........
r51854 | neal.norwitz | 2006-09-11 06:24:09 +0200 (Mon, 11 Sep 2006) | 8 lines
Forward port of 51850 from release25-maint branch.
As mentioned on python-dev, reverting patch #1504333 because it introduced
an infinite loop in rev 47154.
This patch also adds a test to prevent the regression.
........
r51855 | neal.norwitz | 2006-09-11 06:28:16 +0200 (Mon, 11 Sep 2006) | 5 lines
Properly handle a NULL returned from PyArena_New().
(Also fix some whitespace)
Klocwork #364.
........
r51856 | neal.norwitz | 2006-09-11 06:32:57 +0200 (Mon, 11 Sep 2006) | 1 line
Add a "crasher" taken from the sgml bug report referenced in the comment
........
r51858 | georg.brandl | 2006-09-11 11:38:35 +0200 (Mon, 11 Sep 2006) | 12 lines
Forward-port of rev. 51857:
Building with HP's cc on HP-UX turned up a couple of problems.
_PyGILState_NoteThreadState was declared as static inconsistently.
Make it static as it's not necessary outside of this module.
Some tests failed because errno was reset to 0. (I think the tests
that failed were at least: test_fcntl and test_mailbox).
Ensure that errno doesn't change after a call to Py_END_ALLOW_THREADS.
This only affected debug builds.
........
r51865 | martin.v.loewis | 2006-09-12 21:49:20 +0200 (Tue, 12 Sep 2006) | 2 lines
Forward-port 51862: Add sgml_input.html.
........
r51866 | andrew.kuchling | 2006-09-12 22:50:23 +0200 (Tue, 12 Sep 2006) | 1 line
Markup typo fix
........
r51867 | andrew.kuchling | 2006-09-12 23:09:02 +0200 (Tue, 12 Sep 2006) | 1 line
Some editing, markup fixes
........
r51868 | andrew.kuchling | 2006-09-12 23:21:51 +0200 (Tue, 12 Sep 2006) | 1 line
More wordsmithing
........
r51877 | andrew.kuchling | 2006-09-14 13:22:18 +0200 (Thu, 14 Sep 2006) | 1 line
Make --help mention that -v can be supplied multiple times
........
r51878 | andrew.kuchling | 2006-09-14 13:28:50 +0200 (Thu, 14 Sep 2006) | 1 line
Rewrite help message to remove some of the parentheticals. (There were a lot of them.)
........
r51883 | ka-ping.yee | 2006-09-15 02:34:19 +0200 (Fri, 15 Sep 2006) | 2 lines
Fix grammar errors and improve clarity.
........
r51885 | georg.brandl | 2006-09-15 07:22:24 +0200 (Fri, 15 Sep 2006) | 3 lines
Correct elementtree module index entry.
........
r51889 | fred.drake | 2006-09-15 17:18:04 +0200 (Fri, 15 Sep 2006) | 4 lines
- fix module name in links in formatted documentation
- minor markup cleanup
(forward-ported from release25-maint revision 51888)
........
r51891 | fred.drake | 2006-09-15 18:11:27 +0200 (Fri, 15 Sep 2006) | 3 lines
revise explanation of returns_unicode to reflect bool values
and to include the default value
(merged from release25-maint revision 51890)
........
r51897 | martin.v.loewis | 2006-09-16 19:36:37 +0200 (Sat, 16 Sep 2006) | 2 lines
Patch #1557515: Add RLIMIT_SBSIZE.
........
r51903 | ronald.oussoren | 2006-09-17 20:42:53 +0200 (Sun, 17 Sep 2006) | 2 lines
Port of revision 51902 in release25-maint to the trunk
........
r51904 | ronald.oussoren | 2006-09-17 21:23:27 +0200 (Sun, 17 Sep 2006) | 3 lines
Tweak Mac/Makefile in to ensure that pythonw gets rebuild when the major version
of python changes (2.5 -> 2.6). Bug #1552935.
........
r51913 | guido.van.rossum | 2006-09-18 23:36:16 +0200 (Mon, 18 Sep 2006) | 2 lines
Make this thing executable.
........
r51920 | gregory.p.smith | 2006-09-19 19:35:04 +0200 (Tue, 19 Sep 2006) | 5 lines
Fixes a bug with bsddb.DB.stat where the flags and txn keyword
arguments are transposed. (reported by Louis Zechtzer)
..already committed to release24-maint
..needs committing to release25-maint
........
r51926 | brett.cannon | 2006-09-20 20:34:28 +0200 (Wed, 20 Sep 2006) | 3 lines
Accidentally didn't commit Misc/NEWS entry on when __unicode__() was removed
from exceptions.
........
r51927 | brett.cannon | 2006-09-20 20:43:13 +0200 (Wed, 20 Sep 2006) | 6 lines
Allow exceptions to be directly sliced again
(e.g., ``BaseException(1,2,3)[0:2]``).
Discovered in Python 2.5.0 by Thomas Heller and reported to python-dev. This
should be backported to 2.5 .
........
r51928 | brett.cannon | 2006-09-20 21:28:35 +0200 (Wed, 20 Sep 2006) | 2 lines
Make python.vim output more deterministic.
........
r51949 | walter.doerwald | 2006-09-21 17:09:55 +0200 (Thu, 21 Sep 2006) | 2 lines
Fix typo.
........
r51950 | jack.diederich | 2006-09-21 19:50:26 +0200 (Thu, 21 Sep 2006) | 5 lines
* regression bug, count_next was coercing a Py_ssize_t to an unsigned Py_size_t
which breaks negative counts
* added test for negative numbers
will backport to 2.5.1
........
r51953 | jack.diederich | 2006-09-21 22:34:49 +0200 (Thu, 21 Sep 2006) | 1 line
added itertools.count(-n) fix
........
r51971 | neal.norwitz | 2006-09-22 10:16:26 +0200 (Fri, 22 Sep 2006) | 10 lines
Fix %zd string formatting on Mac OS X so it prints negative numbers.
In addition to testing positive numbers, verify negative numbers work in configure.
In order to avoid compiler warnings on OS X 10.4, also change the order of the check
for the format character to use (PY_FORMAT_SIZE_T) in the sprintf format
for Py_ssize_t. This patch changes PY_FORMAT_SIZE_T from "" to "l" if it wasn't
defined at configure time. Need to verify the buildbot results.
Backport candidate (if everyone thinks this patch can't be improved).
........
r51972 | neal.norwitz | 2006-09-22 10:18:10 +0200 (Fri, 22 Sep 2006) | 7 lines
Bug #1557232: fix seg fault with def f((((x)))) and def f(((x),)).
These tests should be improved. Hopefully this fixes variations when
flipping back and forth between fpdef and fplist.
Backport candidate.
........
r51975 | neal.norwitz | 2006-09-22 10:47:23 +0200 (Fri, 22 Sep 2006) | 4 lines
Mostly revert this file to the same version as before. Only force setting
of PY_FORMAT_SIZE_T to "l" for Mac OSX. I don't know a better define
to use. This should get rid of the warnings on other platforms and Mac too.
........
r51986 | fred.drake | 2006-09-23 02:26:31 +0200 (Sat, 23 Sep 2006) | 1 line
add boilerplate "What's New" document so the docs will build
........
r51987 | neal.norwitz | 2006-09-23 06:11:38 +0200 (Sat, 23 Sep 2006) | 1 line
Remove extra semi-colons reported by Johnny Lee on python-dev. Backport if anyone cares.
........
r51989 | neal.norwitz | 2006-09-23 20:11:58 +0200 (Sat, 23 Sep 2006) | 1 line
SF Bug #1563963, add missing word and cleanup first sentance
........
r51990 | brett.cannon | 2006-09-23 21:53:20 +0200 (Sat, 23 Sep 2006) | 3 lines
Make output on test_strptime() be more verbose in face of failure. This is in
hopes that more information will help debug the failing test on HPPA Ubuntu.
........
r51991 | georg.brandl | 2006-09-24 12:36:01 +0200 (Sun, 24 Sep 2006) | 2 lines
Fix webbrowser.BackgroundBrowser on Windows.
........
r51993 | georg.brandl | 2006-09-24 14:35:36 +0200 (Sun, 24 Sep 2006) | 4 lines
Fix a bug in the parser's future statement handling that led to "with"
not being recognized as a keyword after, e.g., this statement:
from __future__ import division, with_statement
........
r51995 | georg.brandl | 2006-09-24 14:50:24 +0200 (Sun, 24 Sep 2006) | 4 lines
Fix a bug in traceback.format_exception_only() that led to an error
being raised when print_exc() was called without an exception set.
In version 2.4, this printed "None", restored that behavior.
........
r52000 | armin.rigo | 2006-09-25 17:16:26 +0200 (Mon, 25 Sep 2006) | 2 lines
Another crasher.
........
r52011 | brett.cannon | 2006-09-27 01:38:24 +0200 (Wed, 27 Sep 2006) | 2 lines
Make the error message for when the time data and format do not match clearer.
........
r52014 | andrew.kuchling | 2006-09-27 18:37:30 +0200 (Wed, 27 Sep 2006) | 1 line
Add news item for rev. 51815
........
r52018 | andrew.kuchling | 2006-09-27 21:23:05 +0200 (Wed, 27 Sep 2006) | 1 line
Make examples do error checking on Py_InitModule
........
r52032 | brett.cannon | 2006-09-29 00:10:14 +0200 (Fri, 29 Sep 2006) | 2 lines
Very minor grammatical fix in a comment.
........
r52048 | george.yoshida | 2006-09-30 07:14:02 +0200 (Sat, 30 Sep 2006) | 4 lines
SF bug #1567976 : fix typo
Will backport to 2.5.
........
r52051 | gregory.p.smith | 2006-09-30 08:08:20 +0200 (Sat, 30 Sep 2006) | 2 lines
wording change
........
r52053 | georg.brandl | 2006-09-30 09:24:48 +0200 (Sat, 30 Sep 2006) | 2 lines
Bug #1567375: a minor logical glitch in example description.
........
r52056 | georg.brandl | 2006-09-30 09:31:57 +0200 (Sat, 30 Sep 2006) | 3 lines
Bug #1565661: in webbrowser, split() the command for the default
GNOME browser in case it is a command with args.
........
r52058 | georg.brandl | 2006-09-30 10:43:30 +0200 (Sat, 30 Sep 2006) | 4 lines
Patch #1567691: super() and new.instancemethod() now don't accept
keyword arguments any more (previously they accepted them, but didn't
use them).
........
r52061 | georg.brandl | 2006-09-30 11:03:42 +0200 (Sat, 30 Sep 2006) | 3 lines
Bug #1566800: make sure that EnvironmentError can be called with any
number of arguments, as was the case in Python 2.4.
........
r52063 | georg.brandl | 2006-09-30 11:06:45 +0200 (Sat, 30 Sep 2006) | 2 lines
Bug #1566663: remove obsolete example from datetime docs.
........
r52065 | georg.brandl | 2006-09-30 11:13:21 +0200 (Sat, 30 Sep 2006) | 3 lines
Bug #1566602: correct failure of posixpath unittest when $HOME ends
with a slash.
........
r52068 | georg.brandl | 2006-09-30 12:58:01 +0200 (Sat, 30 Sep 2006) | 3 lines
Bug #1457823: cgi.(Sv)FormContentDict's constructor now takes
keep_blank_values and strict_parsing keyword arguments.
........
r52069 | georg.brandl | 2006-09-30 13:06:47 +0200 (Sat, 30 Sep 2006) | 3 lines
Bug #1560617: in pyclbr, return full module name not only for classes,
but also for functions.
........
r52072 | georg.brandl | 2006-09-30 13:17:34 +0200 (Sat, 30 Sep 2006) | 3 lines
Bug #1556784: allow format strings longer than 127 characters in
datetime's strftime function.
........
r52075 | georg.brandl | 2006-09-30 13:22:28 +0200 (Sat, 30 Sep 2006) | 3 lines
Bug #1446043: correctly raise a LookupError if an encoding name given
to encodings.search_function() contains a dot.
........
r52078 | georg.brandl | 2006-09-30 14:02:57 +0200 (Sat, 30 Sep 2006) | 3 lines
Bug #1546052: clarify that PyString_FromString(AndSize) copies the
string pointed to by its parameter.
........
r52080 | georg.brandl | 2006-09-30 14:16:03 +0200 (Sat, 30 Sep 2006) | 3 lines
Convert test_import to unittest.
........
r52083 | kurt.kaiser | 2006-10-01 23:16:45 +0200 (Sun, 01 Oct 2006) | 5 lines
Some syntax errors were being caught by tokenize during the tabnanny
check, resulting in obscure error messages. Do the syntax check
first. Bug 1562716, 1562719
........
r52084 | kurt.kaiser | 2006-10-01 23:54:37 +0200 (Sun, 01 Oct 2006) | 3 lines
Add comment explaining that error msgs may be due to user code when
running w/o subprocess.
........
r52086 | martin.v.loewis | 2006-10-02 16:55:51 +0200 (Mon, 02 Oct 2006) | 3 lines
Fix test for uintptr_t. Fixes #1568842.
Will backport.
........
r52089 | martin.v.loewis | 2006-10-02 17:20:37 +0200 (Mon, 02 Oct 2006) | 3 lines
Guard uintptr_t test with HAVE_STDINT_H, test for
stdint.h. Will backport.
........
r52100 | vinay.sajip | 2006-10-03 20:02:37 +0200 (Tue, 03 Oct 2006) | 1 line
Documentation omitted the additional parameter to LogRecord.__init__ which was added in 2.5. (See SF #1569622).
........
r52101 | vinay.sajip | 2006-10-03 20:20:26 +0200 (Tue, 03 Oct 2006) | 1 line
Documentation clarified to mention optional parameters.
........
r52102 | vinay.sajip | 2006-10-03 20:21:56 +0200 (Tue, 03 Oct 2006) | 1 line
Modified LogRecord.__init__ to make the func parameter optional. (See SF #1569622).
........
r52121 | brett.cannon | 2006-10-03 23:58:55 +0200 (Tue, 03 Oct 2006) | 2 lines
Fix minor typo in a comment.
........
r52123 | brett.cannon | 2006-10-04 01:23:14 +0200 (Wed, 04 Oct 2006) | 2 lines
Convert test_imp over to unittest.
........
r52128 | barry.warsaw | 2006-10-04 04:06:36 +0200 (Wed, 04 Oct 2006) | 3 lines
decode_rfc2231(): As Christian Robottom Reis points out, it makes no sense to
test for parts > 3 when we use .split(..., 2).
........
r52129 | jeremy.hylton | 2006-10-04 04:24:52 +0200 (Wed, 04 Oct 2006) | 9 lines
Fix for SF bug 1569998: break permitted inside try.
The compiler was checking that there was something on the fblock
stack, but not that there was a loop on the stack. Fixed that and
added a test for the specific syntax error.
Bug fix candidate.
........
r52130 | martin.v.loewis | 2006-10-04 07:47:34 +0200 (Wed, 04 Oct 2006) | 4 lines
Fix integer negation and absolute value to not rely
on undefined behaviour of the C compiler anymore.
Will backport to 2.5 and 2.4.
........
r52135 | martin.v.loewis | 2006-10-04 11:21:20 +0200 (Wed, 04 Oct 2006) | 1 line
Forward port r52134: Add uuids for 2.4.4.
........
r52137 | armin.rigo | 2006-10-04 12:23:57 +0200 (Wed, 04 Oct 2006) | 3 lines
Compilation problem caused by conflicting typedefs for uint32_t
(unsigned long vs. unsigned int).
........
r52139 | armin.rigo | 2006-10-04 14:17:45 +0200 (Wed, 04 Oct 2006) | 23 lines
Forward-port of r52136,52138: a review of overflow-detecting code.
* unified the way intobject, longobject and mystrtoul handle
values around -sys.maxint-1.
* in general, trying to entierely avoid overflows in any computation
involving signed ints or longs is extremely involved. Fixed a few
simple cases where a compiler might be too clever (but that's all
guesswork).
* more overflow checks against bad data in marshal.c.
* 2.5 specific: fixed a number of places that were still confusing int
and Py_ssize_t. Some of them could potentially have caused
"real-world" breakage.
* list.pop(x): fixing overflow issues on x was messy. I just reverted
to PyArg_ParseTuple("n"), which does the right thing. (An obscure
test was trying to give a Decimal to list.pop()... doesn't make
sense any more IMHO)
* trying to write a few tests...
........
r52147 | andrew.kuchling | 2006-10-04 15:42:43 +0200 (Wed, 04 Oct 2006) | 6 lines
Cause a PyObject_Malloc() failure to trigger a MemoryError, and then
add 'if (PyErr_Occurred())' checks to various places so that NULL is
returned properly.
2.4 backport candidate.
........
r52148 | martin.v.loewis | 2006-10-04 17:25:28 +0200 (Wed, 04 Oct 2006) | 1 line
Add MSVC8 project files to create wininst-8.exe.
........
r52196 | brett.cannon | 2006-10-06 00:02:31 +0200 (Fri, 06 Oct 2006) | 7 lines
Clarify what "re-initialization" means for init_builtin() and init_dynamic().
Also remove warning about re-initialization as possibly raising an execption as
both call _PyImport_FindExtension() which pulls any module that was already
imported from the Python process' extension cache and just copies the __dict__
into the module stored in sys.modules.
........
r52200 | fred.drake | 2006-10-06 02:03:45 +0200 (Fri, 06 Oct 2006) | 3 lines
- update links
- remove Sleepycat name now that they have been bought
........
r52204 | andrew.kuchling | 2006-10-06 12:41:01 +0200 (Fri, 06 Oct 2006) | 1 line
Case fix
........
r52208 | georg.brandl | 2006-10-06 14:46:08 +0200 (Fri, 06 Oct 2006) | 3 lines
Fix name.
........
r52211 | andrew.kuchling | 2006-10-06 15:18:26 +0200 (Fri, 06 Oct 2006) | 1 line
[Bug #1545341] Allow 'classifier' parameter to be a tuple as well as a list. Will backport.
........
r52212 | armin.rigo | 2006-10-06 18:33:22 +0200 (Fri, 06 Oct 2006) | 4 lines
A very minor bug fix: this code looks like it is designed to accept
any hue value and do the modulo itself, except it doesn't quite do
it in all cases. At least, the "cannot get here" comment was wrong.
........
r52213 | andrew.kuchling | 2006-10-06 20:51:55 +0200 (Fri, 06 Oct 2006) | 1 line
Comment grammar
........
r52218 | skip.montanaro | 2006-10-07 13:05:02 +0200 (Sat, 07 Oct 2006) | 6 lines
Note that the excel_tab class is registered as the "excel-tab" dialect.
Fixes 1572471. Make a similar change for the excel class and clean up
references to the Dialects and Formatting Parameters section in a few
places.
........
r52221 | georg.brandl | 2006-10-08 09:11:54 +0200 (Sun, 08 Oct 2006) | 3 lines
Add missing NEWS entry for rev. 52129.
........
r52223 | hyeshik.chang | 2006-10-08 15:48:34 +0200 (Sun, 08 Oct 2006) | 3 lines
Bug #1572832: fix a bug in ISO-2022 codecs which may cause segfault
when encoding non-BMP unicode characters. (Submitted by Ray Chason)
........
r52227 | ronald.oussoren | 2006-10-08 19:37:58 +0200 (Sun, 08 Oct 2006) | 4 lines
Add version number to the link to the python documentation in
/Developer/Documentation/Python, better for users that install multiple versions
of python.
........
r52229 | ronald.oussoren | 2006-10-08 19:40:02 +0200 (Sun, 08 Oct 2006) | 2 lines
Fix for bug #1570284
........
r52233 | ronald.oussoren | 2006-10-08 19:49:52 +0200 (Sun, 08 Oct 2006) | 6 lines
MacOSX: distutils changes the values of BASECFLAGS and LDFLAGS when using a
universal build of python on OSX 10.3 to ensure that those flags can be used
to compile code (the universal build uses compiler flags that aren't supported
on 10.3). This patches gives the same treatment to CFLAGS, PY_CFLAGS and
BLDSHARED.
........
r52236 | ronald.oussoren | 2006-10-08 19:51:46 +0200 (Sun, 08 Oct 2006) | 5 lines
MacOSX: The universal build requires that users have the MacOSX10.4u SDK
installed to build extensions. This patch makes distutils emit a warning when
the compiler should use an SDK but that SDK is not installed, hopefully reducing
some confusion.
........
r52238 | ronald.oussoren | 2006-10-08 20:18:26 +0200 (Sun, 08 Oct 2006) | 3 lines
MacOSX: add more logic to recognize the correct startup file to patch to the
shell profile patching post-install script.
........
r52242 | andrew.kuchling | 2006-10-09 19:10:12 +0200 (Mon, 09 Oct 2006) | 1 line
Add news item for rev. 52211 change
........
r52245 | andrew.kuchling | 2006-10-09 20:05:19 +0200 (Mon, 09 Oct 2006) | 1 line
Fix wording in comment
........
r52251 | georg.brandl | 2006-10-09 21:03:06 +0200 (Mon, 09 Oct 2006) | 2 lines
Patch #1572724: fix typo ('=' instead of '==') in _msi.c.
........
r52255 | barry.warsaw | 2006-10-09 21:43:24 +0200 (Mon, 09 Oct 2006) | 2 lines
List gc.get_count() in the module docstring.
........
r52257 | martin.v.loewis | 2006-10-09 22:44:25 +0200 (Mon, 09 Oct 2006) | 1 line
Bug #1565150: Fix subsecond processing for os.utime on Windows.
........
r52268 | ronald.oussoren | 2006-10-10 09:55:06 +0200 (Tue, 10 Oct 2006) | 2 lines
MacOSX: fix permission problem in the generated installer
........
r52293 | georg.brandl | 2006-10-12 09:38:04 +0200 (Thu, 12 Oct 2006) | 2 lines
Bug #1575746: fix typo in property() docs.
........
r52295 | georg.brandl | 2006-10-12 09:57:21 +0200 (Thu, 12 Oct 2006) | 3 lines
Bug #813342: Start the IDLE subprocess with -Qnew if the parent
is started with that option.
........
r52297 | georg.brandl | 2006-10-12 10:22:53 +0200 (Thu, 12 Oct 2006) | 2 lines
Bug #1565919: document set types in the Language Reference.
........
r52299 | georg.brandl | 2006-10-12 11:20:33 +0200 (Thu, 12 Oct 2006) | 3 lines
Bug #1550524: better heuristics to find correct class definition
in inspect.findsource().
........
r52301 | georg.brandl | 2006-10-12 11:47:12 +0200 (Thu, 12 Oct 2006) | 4 lines
Bug #1548891: The cStringIO.StringIO() constructor now encodes unicode
arguments with the system default encoding just like the write()
method does, instead of converting it to a raw buffer.
........
r52303 | georg.brandl | 2006-10-12 13:14:40 +0200 (Thu, 12 Oct 2006) | 2 lines
Bug #1546628: add a note about urlparse.urljoin() and absolute paths.
........
r52305 | georg.brandl | 2006-10-12 13:27:59 +0200 (Thu, 12 Oct 2006) | 3 lines
Bug #1545497: when given an explicit base, int() did ignore NULs
embedded in the string to convert.
........
r52307 | georg.brandl | 2006-10-12 13:41:11 +0200 (Thu, 12 Oct 2006) | 3 lines
Add a note to fpectl docs that it's not built by default
(bug #1556261).
........
r52309 | georg.brandl | 2006-10-12 13:46:57 +0200 (Thu, 12 Oct 2006) | 3 lines
Bug #1560114: the Mac filesystem does have accurate information
about the case of filenames.
........
r52311 | georg.brandl | 2006-10-12 13:59:27 +0200 (Thu, 12 Oct 2006) | 2 lines
Small grammar fix, thanks Sjoerd.
........
r52313 | georg.brandl | 2006-10-12 14:03:07 +0200 (Thu, 12 Oct 2006) | 2 lines
Fix tarfile depending on buggy int('1\0', base) behavior.
........
r52315 | georg.brandl | 2006-10-12 14:33:07 +0200 (Thu, 12 Oct 2006) | 2 lines
Bug #1283491: follow docstring convention wrt. keyword-able args in sum().
........
r52316 | georg.brandl | 2006-10-12 15:08:16 +0200 (Thu, 12 Oct 2006) | 3 lines
Bug #1560179: speed up posixpath.(dir|base)name
........
r52327 | brett.cannon | 2006-10-14 08:36:45 +0200 (Sat, 14 Oct 2006) | 3 lines
Clean up the language of a sentence relating to the connect() function and
user-defined datatypes.
........
r52332 | neal.norwitz | 2006-10-14 23:33:38 +0200 (Sat, 14 Oct 2006) | 3 lines
Update the peephole optimizer to remove more dead code (jumps after returns)
and inline jumps to returns.
........
r52333 | martin.v.loewis | 2006-10-15 09:54:40 +0200 (Sun, 15 Oct 2006) | 4 lines
Patch #1576954: Update VC6 build directory; remove redundant
files in VC7. Will backport to 2.5.
........
r52335 | martin.v.loewis | 2006-10-15 10:43:33 +0200 (Sun, 15 Oct 2006) | 1 line
Patch #1576166: Support os.utime for directories on Windows NT+.
........
r52336 | martin.v.loewis | 2006-10-15 10:51:22 +0200 (Sun, 15 Oct 2006) | 2 lines
Patch #1577551: Add ctypes and ET build support for VC6.
Will backport to 2.5.
........
r52338 | martin.v.loewis | 2006-10-15 11:35:51 +0200 (Sun, 15 Oct 2006) | 1 line
Loosen the test for equal time stamps.
........
r52339 | martin.v.loewis | 2006-10-15 11:43:39 +0200 (Sun, 15 Oct 2006) | 2 lines
Bug #1567666: Emulate GetFileAttributesExA for Win95.
Will backport to 2.5.
........
r52341 | martin.v.loewis | 2006-10-15 13:02:07 +0200 (Sun, 15 Oct 2006) | 2 lines
Round to int, because some systems support sub-second time stamps in stat, but not in utime.
Also be consistent with modifying only mtime, not atime.
........
r52342 | martin.v.loewis | 2006-10-15 13:57:40 +0200 (Sun, 15 Oct 2006) | 2 lines
Set the eol-style for project files to "CRLF".
........
r52343 | martin.v.loewis | 2006-10-15 13:59:56 +0200 (Sun, 15 Oct 2006) | 3 lines
Drop binary property on dsp files, set eol-style
to CRLF instead.
........
r52344 | martin.v.loewis | 2006-10-15 14:01:43 +0200 (Sun, 15 Oct 2006) | 2 lines
Remove binary property, set eol-style to CRLF instead.
........
r52346 | martin.v.loewis | 2006-10-15 16:30:38 +0200 (Sun, 15 Oct 2006) | 2 lines
Mention the bdist_msi module. Will backport to 2.5.
........
r52354 | brett.cannon | 2006-10-16 05:09:52 +0200 (Mon, 16 Oct 2006) | 3 lines
Fix turtle so that you can launch the demo2 function on its own instead of only
when the module is launched as a script.
........
r52356 | martin.v.loewis | 2006-10-17 17:18:06 +0200 (Tue, 17 Oct 2006) | 2 lines
Patch #1457736: Update VC6 to use current PCbuild settings.
Will backport to 2.5.
........
r52360 | martin.v.loewis | 2006-10-17 20:09:55 +0200 (Tue, 17 Oct 2006) | 2 lines
Remove obsolete file. Will backport.
........
r52363 | martin.v.loewis | 2006-10-17 20:59:23 +0200 (Tue, 17 Oct 2006) | 4 lines
Forward-port r52358:
- Bug #1578513: Cross compilation was broken by a change to configure.
Repair so that it's back to how it was in 2.4.3.
........
r52365 | thomas.heller | 2006-10-17 21:30:48 +0200 (Tue, 17 Oct 2006) | 6 lines
ctypes callback functions only support 'fundamental' result types.
Check this and raise an error when something else is used - before
this change ctypes would hang or crash when such a callback was
called. This is a partial fix for #1574584.
Will backport to release25-maint.
........
r52377 | tim.peters | 2006-10-18 07:06:06 +0200 (Wed, 18 Oct 2006) | 2 lines
newIobject(): repaired incorrect cast to quiet MSVC warning.
........
r52378 | tim.peters | 2006-10-18 07:09:12 +0200 (Wed, 18 Oct 2006) | 2 lines
Whitespace normalization.
........
r52379 | tim.peters | 2006-10-18 07:10:28 +0200 (Wed, 18 Oct 2006) | 2 lines
Add missing svn:eol-style to text files.
........
r52387 | martin.v.loewis | 2006-10-19 12:58:46 +0200 (Thu, 19 Oct 2006) | 3 lines
Add check for the PyArg_ParseTuple format, and declare
it if it is supported.
........
r52388 | martin.v.loewis | 2006-10-19 13:00:37 +0200 (Thu, 19 Oct 2006) | 3 lines
Fix various minor errors in passing arguments to
PyArg_ParseTuple.
........
r52389 | martin.v.loewis | 2006-10-19 18:01:37 +0200 (Thu, 19 Oct 2006) | 2 lines
Restore CFLAGS after checking for __attribute__
........
r52390 | andrew.kuchling | 2006-10-19 23:55:55 +0200 (Thu, 19 Oct 2006) | 1 line
[Bug #1576348] Fix typo in example
........
r52414 | walter.doerwald | 2006-10-22 10:59:41 +0200 (Sun, 22 Oct 2006) | 2 lines
Port test___future__ to unittest.
........
r52415 | ronald.oussoren | 2006-10-22 12:45:18 +0200 (Sun, 22 Oct 2006) | 3 lines
Patch #1580674: with this patch os.readlink uses the filesystem encoding to
decode unicode objects and returns an unicode object when the argument is one.
........
r52416 | martin.v.loewis | 2006-10-22 12:46:18 +0200 (Sun, 22 Oct 2006) | 3 lines
Patch #1580872: Remove duplicate declaration of PyCallable_Check.
Will backport to 2.5.
........
r52418 | martin.v.loewis | 2006-10-22 12:55:15 +0200 (Sun, 22 Oct 2006) | 4 lines
- Patch #1560695: Add .note.GNU-stack to ctypes' sysv.S so that
ctypes isn't considered as requiring executable stacks.
Will backport to 2.5.
........
r52420 | martin.v.loewis | 2006-10-22 15:45:13 +0200 (Sun, 22 Oct 2006) | 3 lines
Remove passwd.adjunct.byname from list of maps
for test_nis. Will backport to 2.5.
........
r52431 | georg.brandl | 2006-10-24 18:54:16 +0200 (Tue, 24 Oct 2006) | 2 lines
Patch [ 1583506 ] tarfile.py: 100-char filenames are truncated
........
r52446 | andrew.kuchling | 2006-10-26 21:10:46 +0200 (Thu, 26 Oct 2006) | 1 line
[Bug #1579796] Wrong syntax for PyDateTime_IMPORT in documentation. Reported by David Faure.
........
r52449 | andrew.kuchling | 2006-10-26 21:16:46 +0200 (Thu, 26 Oct 2006) | 1 line
Typo fix
........
r52452 | martin.v.loewis | 2006-10-27 08:16:31 +0200 (Fri, 27 Oct 2006) | 3 lines
Patch #1549049: Rewrite type conversion in structmember.
Fixes #1545696 and #1566140. Will backport to 2.5.
........
r52454 | martin.v.loewis | 2006-10-27 08:42:27 +0200 (Fri, 27 Oct 2006) | 2 lines
Check for values.h. Will backport.
........
r52456 | martin.v.loewis | 2006-10-27 09:06:52 +0200 (Fri, 27 Oct 2006) | 2 lines
Get DBL_MAX from float.h not values.h. Will backport.
........
r52458 | martin.v.loewis | 2006-10-27 09:13:28 +0200 (Fri, 27 Oct 2006) | 2 lines
Patch #1567274: Support SMTP over TLS.
........
r52459 | andrew.kuchling | 2006-10-27 13:33:29 +0200 (Fri, 27 Oct 2006) | 1 line
Set svn:keywords property
........
r52460 | andrew.kuchling | 2006-10-27 13:36:41 +0200 (Fri, 27 Oct 2006) | 1 line
Add item
........
r52461 | andrew.kuchling | 2006-10-27 13:37:01 +0200 (Fri, 27 Oct 2006) | 1 line
Some wording changes and markup fixes
........
r52462 | andrew.kuchling | 2006-10-27 14:18:38 +0200 (Fri, 27 Oct 2006) | 1 line
[Bug #1585690] Note that line_num was added in Python 2.5
........
r52464 | andrew.kuchling | 2006-10-27 14:50:38 +0200 (Fri, 27 Oct 2006) | 1 line
[Bug #1583946] Reword description of server and issuer
........
r52466 | andrew.kuchling | 2006-10-27 15:06:25 +0200 (Fri, 27 Oct 2006) | 1 line
[Bug #1562583] Mention the set_reuse_addr() method
........
r52469 | andrew.kuchling | 2006-10-27 15:22:46 +0200 (Fri, 27 Oct 2006) | 4 lines
[Bug #1542016] Report PCALL_POP value. This makes the return value of sys.callstats() match its docstring.
Backport candidate. Though it's an API change, this is a pretty obscure
portion of the API.
........
r52473 | andrew.kuchling | 2006-10-27 16:53:41 +0200 (Fri, 27 Oct 2006) | 1 line
Point users to the subprocess module in the docs for os.system, os.spawn*, os.popen2, and the popen2 and commands modules
........
r52476 | andrew.kuchling | 2006-10-27 18:39:10 +0200 (Fri, 27 Oct 2006) | 1 line
[Bug #1576241] Let functools.wraps work with built-in functions
........
r52478 | andrew.kuchling | 2006-10-27 18:55:34 +0200 (Fri, 27 Oct 2006) | 1 line
[Bug #1575506] The _singlefileMailbox class was using the wrong file object in its flush() method, causing an error
........
r52480 | andrew.kuchling | 2006-10-27 19:06:16 +0200 (Fri, 27 Oct 2006) | 1 line
Clarify docstring
........
r52481 | andrew.kuchling | 2006-10-27 19:11:23 +0200 (Fri, 27 Oct 2006) | 5 lines
[Patch #1574068 by Scott Dial] urllib and urllib2 were using
base64.encodestring() for encoding authentication data.
encodestring() can include newlines for very long input, which
produced broken HTTP headers.
........
r52483 | andrew.kuchling | 2006-10-27 20:13:46 +0200 (Fri, 27 Oct 2006) | 1 line
Check db_setup_debug for a few print statements; change sqlite_setup_debug to False
........
r52484 | andrew.kuchling | 2006-10-27 20:15:02 +0200 (Fri, 27 Oct 2006) | 1 line
[Patch #1503717] Tiny patch from Chris AtLee to stop a lengthy line from being printed
........
r52485 | thomas.heller | 2006-10-27 20:31:36 +0200 (Fri, 27 Oct 2006) | 5 lines
WindowsError.str should display the windows error code,
not the posix error code; with test.
Fixes #1576174.
Will backport to release25-maint.
........
r52487 | thomas.heller | 2006-10-27 21:05:53 +0200 (Fri, 27 Oct 2006) | 4 lines
Modulefinder now handles absolute and relative imports, including
tests.
Will backport to release25-maint.
........
r52488 | georg.brandl | 2006-10-27 22:39:43 +0200 (Fri, 27 Oct 2006) | 2 lines
Patch #1552024: add decorator support to unparse.py demo script.
........
r52492 | walter.doerwald | 2006-10-28 12:47:12 +0200 (Sat, 28 Oct 2006) | 2 lines
Port test_bufio to unittest.
........
r52493 | georg.brandl | 2006-10-28 15:10:17 +0200 (Sat, 28 Oct 2006) | 6 lines
Convert test_global, test_scope and test_grammar to unittest.
I tried to enclose all tests which must be run at the toplevel
(instead of inside a method) in exec statements.
........
r52494 | georg.brandl | 2006-10-28 15:11:41 +0200 (Sat, 28 Oct 2006) | 3 lines
Update outstanding bugs test file.
........
r52495 | georg.brandl | 2006-10-28 15:51:49 +0200 (Sat, 28 Oct 2006) | 3 lines
Convert test_math to unittest.
........
r52496 | georg.brandl | 2006-10-28 15:56:58 +0200 (Sat, 28 Oct 2006) | 3 lines
Convert test_opcodes to unittest.
........
r52497 | georg.brandl | 2006-10-28 18:04:04 +0200 (Sat, 28 Oct 2006) | 2 lines
Fix nth() itertool recipe.
........
r52500 | georg.brandl | 2006-10-28 22:25:09 +0200 (Sat, 28 Oct 2006) | 2 lines
make test_grammar pass with python -O
........
r52501 | neal.norwitz | 2006-10-28 23:15:30 +0200 (Sat, 28 Oct 2006) | 6 lines
Add some asserts. In sysmodule, I think these were to try to silence
some warnings from Klokwork. They verify the assumptions of the format
of svn version output.
The assert in the thread module helped debug a problem on HP-UX.
........
r52502 | neal.norwitz | 2006-10-28 23:16:54 +0200 (Sat, 28 Oct 2006) | 5 lines
Fix warnings with HP's C compiler. It doesn't recognize that infinite
loops are, um, infinite. These conditions should not be able to happen.
Will backport.
........
r52503 | neal.norwitz | 2006-10-28 23:17:51 +0200 (Sat, 28 Oct 2006) | 5 lines
Fix crash in test on HP-UX. Apparently, it's not possible to delete a lock if
it's held (even by the current thread).
Will backport.
........
r52504 | neal.norwitz | 2006-10-28 23:19:07 +0200 (Sat, 28 Oct 2006) | 6 lines
Fix bug #1565514, SystemError not raised on too many nested blocks.
It seems like this should be a different error than SystemError, but
I don't have any great ideas and SystemError was raised in 2.4 and earlier.
Will backport.
........
r52505 | neal.norwitz | 2006-10-28 23:20:12 +0200 (Sat, 28 Oct 2006) | 4 lines
Prevent crash if alloc of garbage fails. Found by Typo.pl.
Will backport.
........
r52506 | neal.norwitz | 2006-10-28 23:21:00 +0200 (Sat, 28 Oct 2006) | 4 lines
Don't inline Py_ADDRESS_IN_RANGE with gcc 4+ either.
Will backport.
........
r52513 | neal.norwitz | 2006-10-28 23:56:49 +0200 (Sat, 28 Oct 2006) | 2 lines
Fix test_modulefinder so it doesn't fail when run after test_distutils.
........
r52514 | neal.norwitz | 2006-10-29 00:12:26 +0200 (Sun, 29 Oct 2006) | 4 lines
From SF 1557890, fix problem of using wrong type in example.
Will backport.
........
r52517 | georg.brandl | 2006-10-29 09:39:22 +0100 (Sun, 29 Oct 2006) | 4 lines
Fix codecs.EncodedFile which did not use file_encoding in 2.5.0, and
fix all codecs file wrappers to work correctly with the "with"
statement (bug #1586513).
........
r52519 | georg.brandl | 2006-10-29 09:47:08 +0100 (Sun, 29 Oct 2006) | 3 lines
Clean up a leftover from old listcomp generation code.
........
r52520 | georg.brandl | 2006-10-29 09:53:06 +0100 (Sun, 29 Oct 2006) | 4 lines
Bug #1586448: the compiler module now emits the same bytecode for
list comprehensions as the builtin compiler, using the LIST_APPEND
opcode.
........
r52521 | georg.brandl | 2006-10-29 10:01:01 +0100 (Sun, 29 Oct 2006) | 3 lines
Remove trailing comma.
........
r52522 | georg.brandl | 2006-10-29 10:05:04 +0100 (Sun, 29 Oct 2006) | 3 lines
Bug #1357915: allow all sequence types for shell arguments in
subprocess.
........
r52524 | georg.brandl | 2006-10-29 10:16:12 +0100 (Sun, 29 Oct 2006) | 3 lines
Patch #1583880: fix tarfile's problems with long names and posix/
GNU modes.
........
r52526 | georg.brandl | 2006-10-29 10:18:00 +0100 (Sun, 29 Oct 2006) | 3 lines
Test assert if __debug__ is true.
........
r52527 | georg.brandl | 2006-10-29 10:32:16 +0100 (Sun, 29 Oct 2006) | 2 lines
Fix the new EncodedFile test to work with big endian platforms.
........
r52529 | georg.brandl | 2006-10-29 15:39:09 +0100 (Sun, 29 Oct 2006) | 2 lines
Bug #1586613: fix zlib and bz2 codecs' incremental en/decoders.
........
r52532 | georg.brandl | 2006-10-29 19:01:08 +0100 (Sun, 29 Oct 2006) | 2 lines
Bug #1586773: extend hashlib docstring.
........
r52534 | neal.norwitz | 2006-10-29 19:30:10 +0100 (Sun, 29 Oct 2006) | 4 lines
Update comments, remove commented out code.
Move assembler structure next to assembler code to make it easier to
move it to a separate file.
........
r52535 | georg.brandl | 2006-10-29 19:31:42 +0100 (Sun, 29 Oct 2006) | 3 lines
Bug #1576657: when setting a KeyError for a tuple key, make sure that
the tuple isn't used as the "exception arguments tuple".
........
r52537 | georg.brandl | 2006-10-29 20:13:40 +0100 (Sun, 29 Oct 2006) | 3 lines
Convert test_mmap to unittest.
........
r52538 | georg.brandl | 2006-10-29 20:20:45 +0100 (Sun, 29 Oct 2006) | 3 lines
Convert test_poll to unittest.
........
r52539 | georg.brandl | 2006-10-29 20:24:43 +0100 (Sun, 29 Oct 2006) | 3 lines
Convert test_nis to unittest.
........
r52540 | georg.brandl | 2006-10-29 20:35:03 +0100 (Sun, 29 Oct 2006) | 3 lines
Convert test_types to unittest.
........
r52541 | georg.brandl | 2006-10-29 20:51:16 +0100 (Sun, 29 Oct 2006) | 3 lines
Convert test_cookie to unittest.
........
r52542 | georg.brandl | 2006-10-29 21:09:12 +0100 (Sun, 29 Oct 2006) | 3 lines
Convert test_cgi to unittest.
........
r52543 | georg.brandl | 2006-10-29 21:24:01 +0100 (Sun, 29 Oct 2006) | 3 lines
Completely convert test_httplib to unittest.
........
r52544 | georg.brandl | 2006-10-29 21:28:26 +0100 (Sun, 29 Oct 2006) | 2 lines
Convert test_MimeWriter to unittest.
........
r52545 | georg.brandl | 2006-10-29 21:31:17 +0100 (Sun, 29 Oct 2006) | 3 lines
Convert test_openpty to unittest.
........
r52546 | georg.brandl | 2006-10-29 21:35:12 +0100 (Sun, 29 Oct 2006) | 3 lines
Remove leftover test output file.
........
r52547 | georg.brandl | 2006-10-29 22:54:18 +0100 (Sun, 29 Oct 2006) | 3 lines
Move the check for openpty to the beginning.
........
r52548 | walter.doerwald | 2006-10-29 23:06:28 +0100 (Sun, 29 Oct 2006) | 2 lines
Add tests for basic argument errors.
........
r52549 | walter.doerwald | 2006-10-30 00:02:27 +0100 (Mon, 30 Oct 2006) | 3 lines
Add tests for incremental codecs with an errors
argument.
........
r52550 | neal.norwitz | 2006-10-30 00:39:03 +0100 (Mon, 30 Oct 2006) | 1 line
Fix refleak
........
r52552 | neal.norwitz | 2006-10-30 00:58:36 +0100 (Mon, 30 Oct 2006) | 1 line
I'm assuming this is correct, it fixes the tests so they pass again
........
r52555 | vinay.sajip | 2006-10-31 18:32:37 +0100 (Tue, 31 Oct 2006) | 1 line
Change to improve speed of _fixupChildren
........
r52556 | vinay.sajip | 2006-10-31 18:34:31 +0100 (Tue, 31 Oct 2006) | 1 line
Added relativeCreated to Formatter doc (has been in the system for a long time - was unaccountably left out of the docs and not noticed until now).
........
r52588 | thomas.heller | 2006-11-02 20:48:24 +0100 (Thu, 02 Nov 2006) | 5 lines
Replace the XXX marker in the 'Arrays and pointers' reference manual
section with a link to the tutorial sections.
Will backport to release25-maint.
........
r52592 | thomas.heller | 2006-11-02 21:22:29 +0100 (Thu, 02 Nov 2006) | 6 lines
Fix a code example by adding a missing import.
Fixes #1557890.
Will backport to release25-maint.
........
r52598 | tim.peters | 2006-11-03 03:32:46 +0100 (Fri, 03 Nov 2006) | 2 lines
Whitespace normalization.
........
r52619 | martin.v.loewis | 2006-11-04 19:14:06 +0100 (Sat, 04 Nov 2006) | 4 lines
- Patch #1060577: Extract list of RPM files from spec file in
bdist_rpm
Will backport to 2.5.
........
r52621 | neal.norwitz | 2006-11-04 20:25:22 +0100 (Sat, 04 Nov 2006) | 4 lines
Bug #1588287: fix invalid assertion for `1,2` in debug builds.
Will backport
........
r52630 | andrew.kuchling | 2006-11-05 22:04:37 +0100 (Sun, 05 Nov 2006) | 1 line
Update link
........
r52631 | skip.montanaro | 2006-11-06 15:34:52 +0100 (Mon, 06 Nov 2006) | 1 line
note that user can control directory location even if default dir is used
........
r52644 | ronald.oussoren | 2006-11-07 16:53:38 +0100 (Tue, 07 Nov 2006) | 2 lines
Fix a number of typos in strings and comments (sf#1589070)
........
r52647 | ronald.oussoren | 2006-11-07 17:00:34 +0100 (Tue, 07 Nov 2006) | 2 lines
Whitespace changes to make the source more compliant with PEP8 (SF#1589070)
........
r52651 | thomas.heller | 2006-11-07 19:01:18 +0100 (Tue, 07 Nov 2006) | 3 lines
Fix markup.
Will backport to release25-maint.
........
r52653 | thomas.heller | 2006-11-07 19:20:47 +0100 (Tue, 07 Nov 2006) | 3 lines
Fix grammatical error as well.
Will backport to release25-maint.
........
r52657 | andrew.kuchling | 2006-11-07 21:39:16 +0100 (Tue, 07 Nov 2006) | 1 line
Add missing word
........
r52662 | martin.v.loewis | 2006-11-08 07:46:37 +0100 (Wed, 08 Nov 2006) | 4 lines
Correctly forward exception in instance_contains().
Fixes #1591996. Patch contributed by Neal Norwitz.
Will backport.
........
r52664 | martin.v.loewis | 2006-11-08 07:48:36 +0100 (Wed, 08 Nov 2006) | 2 lines
News entry for 52662.
........
r52665 | martin.v.loewis | 2006-11-08 08:35:55 +0100 (Wed, 08 Nov 2006) | 2 lines
Patch #1351744: Add askyesnocancel helper for tkMessageBox.
........
r52666 | georg.brandl | 2006-11-08 08:45:59 +0100 (Wed, 08 Nov 2006) | 2 lines
Patch #1592072: fix docs for return value of PyErr_CheckSignals.
........
r52668 | georg.brandl | 2006-11-08 11:04:29 +0100 (Wed, 08 Nov 2006) | 3 lines
Bug #1592533: rename variable in heapq doc example, to avoid shadowing
"sorted".
........
r52671 | andrew.kuchling | 2006-11-08 14:35:34 +0100 (Wed, 08 Nov 2006) | 1 line
Add section on the functional module
........
r52672 | andrew.kuchling | 2006-11-08 15:14:30 +0100 (Wed, 08 Nov 2006) | 1 line
Add section on operator module; make a few edits
........
r52673 | andrew.kuchling | 2006-11-08 15:24:03 +0100 (Wed, 08 Nov 2006) | 1 line
Add table of contents; this required fixing a few headings. Some more smalle edits.
........
r52674 | andrew.kuchling | 2006-11-08 15:30:14 +0100 (Wed, 08 Nov 2006) | 1 line
More edits
........
r52686 | martin.v.loewis | 2006-11-09 12:06:03 +0100 (Thu, 09 Nov 2006) | 3 lines
Patch #838546: Make terminal become controlling in pty.fork().
Will backport to 2.5.
........
r52688 | martin.v.loewis | 2006-11-09 12:27:32 +0100 (Thu, 09 Nov 2006) | 2 lines
Patch #1592250: Add elidge argument to Tkinter.Text.search.
........
r52690 | andrew.kuchling | 2006-11-09 14:27:07 +0100 (Thu, 09 Nov 2006) | 7 lines
[Bug #1569790] mailbox.Maildir.get_folder() loses factory information
Both the Maildir and MH classes had this bug; the patch fixes both classes
and adds a test.
Will backport to 25-maint.
........
r52692 | andrew.kuchling | 2006-11-09 14:51:14 +0100 (Thu, 09 Nov 2006) | 1 line
[Patch #1514544 by David Watson] use fsync() to ensure data is really on disk
........
r52695 | walter.doerwald | 2006-11-09 17:23:26 +0100 (Thu, 09 Nov 2006) | 2 lines
Replace C++ comment with C comment (fixes SF bug #1593525).
........
r52712 | andrew.kuchling | 2006-11-09 22:16:46 +0100 (Thu, 09 Nov 2006) | 11 lines
[Patch #1514543] mailbox (Maildir): avoid losing messages on name clash
Two changes:
Where possible, use link()/remove() to move files into a directory; this
makes it easier to avoid overwriting an existing file.
Use _create_carefully() to create files in tmp/, which uses O_EXCL.
Backport candidate.
........
r52716 | phillip.eby | 2006-11-10 01:33:36 +0100 (Fri, 10 Nov 2006) | 4 lines
Fix SF#1566719: not creating site-packages (or other target directory) when
installing .egg-info for a project that contains no modules or packages,
while using --root (as in bdist_rpm).
........
r52719 | andrew.kuchling | 2006-11-10 14:14:01 +0100 (Fri, 10 Nov 2006) | 1 line
Reword entry
........
r52725 | andrew.kuchling | 2006-11-10 15:39:01 +0100 (Fri, 10 Nov 2006) | 1 line
[Feature request #1542920] Link to wsgi.org
........
r52731 | georg.brandl | 2006-11-11 19:29:11 +0100 (Sat, 11 Nov 2006) | 2 lines
Bug #1594742: wrong word in stringobject doc.
........
r52733 | georg.brandl | 2006-11-11 19:32:47 +0100 (Sat, 11 Nov 2006) | 2 lines
Bug #1594758: wording improvement for dict.update() docs.
........
r52736 | martin.v.loewis | 2006-11-12 11:32:47 +0100 (Sun, 12 Nov 2006) | 3 lines
Patch #1065257: Support passing open files as body in
HTTPConnection.request().
........
r52737 | martin.v.loewis | 2006-11-12 11:41:39 +0100 (Sun, 12 Nov 2006) | 2 lines
Patch #1355023: support whence argument for GzipFile.seek.
........
r52738 | martin.v.loewis | 2006-11-12 19:24:26 +0100 (Sun, 12 Nov 2006) | 2 lines
Bug #1067760: Deprecate passing floats to file.seek.
........
r52739 | martin.v.loewis | 2006-11-12 19:48:13 +0100 (Sun, 12 Nov 2006) | 3 lines
Patch #1359217: Ignore 2xx response before 150 response.
Will backport to 2.5.
........
r52741 | martin.v.loewis | 2006-11-12 19:56:03 +0100 (Sun, 12 Nov 2006) | 4 lines
Patch #1360200: Use unmangled_version RPM spec field to deal with
file name mangling.
Will backport to 2.5.
........
r52753 | walter.doerwald | 2006-11-15 17:23:46 +0100 (Wed, 15 Nov 2006) | 2 lines
Fix typo.
........
r52754 | georg.brandl | 2006-11-15 18:42:03 +0100 (Wed, 15 Nov 2006) | 2 lines
Bug #1594809: add a note to README regarding PYTHONPATH and make install.
........
r52762 | georg.brandl | 2006-11-16 16:05:14 +0100 (Thu, 16 Nov 2006) | 2 lines
Bug #1597576: mention that the new base64 api has been introduced in py2.4.
........
r52764 | georg.brandl | 2006-11-16 17:50:59 +0100 (Thu, 16 Nov 2006) | 3 lines
Bug #1597824: return the registered function from atexit.register()
to facilitate usage as a decorator.
........
r52765 | georg.brandl | 2006-11-16 18:08:45 +0100 (Thu, 16 Nov 2006) | 4 lines
Bug #1588217: don't parse "= " as a soft line break in binascii's
a2b_qp() function, instead leave it in the string as quopri.decode()
does.
........
r52776 | andrew.kuchling | 2006-11-17 14:30:25 +0100 (Fri, 17 Nov 2006) | 17 lines
Remove file-locking in MH.pack() method.
This change looks massive but it's mostly a re-indenting after
removing some try...finally blocks.
Also adds a test case that does a pack() while the mailbox is locked; this
test would have turned up bugs in the original code on some platforms.
In both nmh and GNU Mailutils' implementation of MH-format mailboxes,
no locking is done of individual message files when renaming them.
The original mailbox.py code did do locking, which meant that message
files had to be opened. This code was buggy on certain platforms
(found through reading the code); there were code paths that closed
the file object and then called _unlock_file() on it.
Will backport to 25-maint once I see how the buildbots react to this patch.
........
r52780 | martin.v.loewis | 2006-11-18 19:00:23 +0100 (Sat, 18 Nov 2006) | 5 lines
Patch #1538878: Don't make tkSimpleDialog dialogs transient if
the parent window is withdrawn. This mirrors what dialog.tcl
does.
Will backport to 2.5.
........
r52782 | martin.v.loewis | 2006-11-18 19:05:35 +0100 (Sat, 18 Nov 2006) | 4 lines
Patch #1594554: Always close a tkSimpleDialog on ok(), even
if an exception occurs.
Will backport to 2.5.
........
r52784 | martin.v.loewis | 2006-11-18 19:42:11 +0100 (Sat, 18 Nov 2006) | 3 lines
Patch #1472877: Fix Tix subwidget name resolution.
Will backport to 2.5.
........
r52786 | andrew.kuchling | 2006-11-18 23:17:33 +0100 (Sat, 18 Nov 2006) | 1 line
Expand checking in test_sha
........
r52787 | georg.brandl | 2006-11-19 09:48:30 +0100 (Sun, 19 Nov 2006) | 3 lines
Patch [ 1586791 ] better error msgs for some TypeErrors
........
r52788 | martin.v.loewis | 2006-11-19 11:41:41 +0100 (Sun, 19 Nov 2006) | 4 lines
Make cStringIO.truncate raise IOError for negative
arguments (even for -1). Fixes the last bit of
#1359365.
........
r52789 | andrew.kuchling | 2006-11-19 19:40:01 +0100 (Sun, 19 Nov 2006) | 1 line
Add a test case of data w/ bytes > 127
........
r52790 | martin.v.loewis | 2006-11-19 19:51:54 +0100 (Sun, 19 Nov 2006) | 3 lines
Patch #1070046: Marshal new-style objects like InstanceType
in xmlrpclib.
........
r52792 | neal.norwitz | 2006-11-19 22:26:53 +0100 (Sun, 19 Nov 2006) | 4 lines
Speed up function calls into the math module by using METH_O.
There should be no functional changes. However, the error msgs are
slightly different. Also verified that the module dict is not NULL on init.
........
r52794 | george.yoshida | 2006-11-20 03:24:48 +0100 (Mon, 20 Nov 2006) | 2 lines
markup fix
........
r52795 | georg.brandl | 2006-11-20 08:12:58 +0100 (Mon, 20 Nov 2006) | 3 lines
Further markup fix.
........
r52800 | andrew.kuchling | 2006-11-20 14:39:37 +0100 (Mon, 20 Nov 2006) | 2 lines
Jython compatibility fix: if uu.decode() opened its output file, be sure to
close it.
........
r52811 | neal.norwitz | 2006-11-21 06:26:22 +0100 (Tue, 21 Nov 2006) | 9 lines
Bug #1599782: Fix segfault on bsddb.db.DB().type().
The problem is that _DB_get_type() can't be called without the GIL
because it calls a bunch of PyErr_* APIs when an error occurs.
There were no other cases in this file that it was called without the GIL.
Removing the BEGIN/END THREAD around _DB_get_type() made everything work.
Will backport.
........
r52814 | neal.norwitz | 2006-11-21 06:51:51 +0100 (Tue, 21 Nov 2006) | 1 line
Oops, convert tabs to spaces
........
r52815 | neal.norwitz | 2006-11-21 07:23:44 +0100 (Tue, 21 Nov 2006) | 1 line
Fix SF #1599879, socket.gethostname should ref getfqdn directly.
........
r52817 | martin.v.loewis | 2006-11-21 19:20:25 +0100 (Tue, 21 Nov 2006) | 4 lines
Conditionalize definition of _CRT_SECURE_NO_DEPRECATE
and _CRT_NONSTDC_NO_DEPRECATE.
Will backport.
........
r52821 | martin.v.loewis | 2006-11-22 09:50:02 +0100 (Wed, 22 Nov 2006) | 4 lines
Patch #1362975: Rework CodeContext indentation algorithm to
avoid hard-coding pixel widths. Also make the text's scrollbar
a child of the text frame, not the top widget.
........
r52826 | walter.doerwald | 2006-11-23 06:03:56 +0100 (Thu, 23 Nov 2006) | 3 lines
Change decode() so that it works with a buffer (i.e. unicode(..., 'utf-8-sig'))
SF bug #1601501.
........
r52833 | georg.brandl | 2006-11-23 10:55:07 +0100 (Thu, 23 Nov 2006) | 2 lines
Bug #1601630: little improvement to getopt docs
........
r52835 | michael.hudson | 2006-11-23 14:54:04 +0100 (Thu, 23 Nov 2006) | 3 lines
a test for an error condition not covered by existing tests
(noticed this when writing the equivalent code for pypy)
........
r52839 | raymond.hettinger | 2006-11-23 22:06:03 +0100 (Thu, 23 Nov 2006) | 1 line
Fix and/add typo
........
r52840 | raymond.hettinger | 2006-11-23 22:35:19 +0100 (Thu, 23 Nov 2006) | 1 line
... and the number of the counting shall be three.
........
r52841 | thomas.heller | 2006-11-24 19:45:39 +0100 (Fri, 24 Nov 2006) | 1 line
Fix bug #1598620: A ctypes structure cannot contain itself.
........
r52843 | martin.v.loewis | 2006-11-25 16:39:19 +0100 (Sat, 25 Nov 2006) | 3 lines
Disable _XOPEN_SOURCE on NetBSD 1.x.
Will backport to 2.5
........
r52845 | georg.brandl | 2006-11-26 20:27:47 +0100 (Sun, 26 Nov 2006) | 2 lines
Bug #1603321: make pstats.Stats accept Unicode file paths.
........
r52850 | georg.brandl | 2006-11-27 19:46:21 +0100 (Mon, 27 Nov 2006) | 2 lines
Bug #1603789: grammatical error in Tkinter docs.
........
r52855 | thomas.heller | 2006-11-28 21:21:54 +0100 (Tue, 28 Nov 2006) | 7 lines
Fix #1563807: _ctypes built on AIX fails with ld ffi error.
The contents of ffi_darwin.c must be compiled unless __APPLE__ is
defined and __ppc__ is not.
Will backport.
........
r52862 | armin.rigo | 2006-11-29 22:59:22 +0100 (Wed, 29 Nov 2006) | 3 lines
Forgot a case where the locals can now be a general mapping
instead of just a dictionary. (backporting...)
........
r52872 | guido.van.rossum | 2006-11-30 20:23:13 +0100 (Thu, 30 Nov 2006) | 2 lines
Update version.
........
r52890 | walter.doerwald | 2006-12-01 17:59:47 +0100 (Fri, 01 Dec 2006) | 3 lines
Move xdrlib tests from the module into a separate test script,
port the tests to unittest and add a few new tests.
........
r52900 | raymond.hettinger | 2006-12-02 03:00:39 +0100 (Sat, 02 Dec 2006) | 1 line
Add name to credits (for untokenize).
........
r52905 | martin.v.loewis | 2006-12-03 10:54:46 +0100 (Sun, 03 Dec 2006) | 2 lines
Move IDLE news into NEWS.txt.
........
r52906 | martin.v.loewis | 2006-12-03 12:23:45 +0100 (Sun, 03 Dec 2006) | 4 lines
Patch #1544279: Improve thread-safety of the socket module by moving
the sock_addr_t storage out of the socket object.
Will backport to 2.5.
........
r52908 | martin.v.loewis | 2006-12-03 13:01:53 +0100 (Sun, 03 Dec 2006) | 3 lines
Patch #1371075: Make ConfigParser accept optional dict type
for ordering, sorting, etc.
........
r52910 | matthias.klose | 2006-12-03 18:16:41 +0100 (Sun, 03 Dec 2006) | 2 lines
- Fix build failure on kfreebsd and on the hurd.
........
r52915 | george.yoshida | 2006-12-04 12:41:54 +0100 (Mon, 04 Dec 2006) | 2 lines
fix a versionchanged tag
........
r52917 | george.yoshida | 2006-12-05 06:39:50 +0100 (Tue, 05 Dec 2006) | 3 lines
Fix pickle doc typo
Patch #1608758
........
r52938 | georg.brandl | 2006-12-06 23:21:18 +0100 (Wed, 06 Dec 2006) | 2 lines
Patch #1610437: fix a tarfile bug with long filename headers.
........
r52945 | brett.cannon | 2006-12-07 00:38:48 +0100 (Thu, 07 Dec 2006) | 3 lines
Fix a bad assumption that all objects assigned to '__loader__' on a module
will have a '_files' attribute.
........
r52951 | georg.brandl | 2006-12-07 10:30:06 +0100 (Thu, 07 Dec 2006) | 3 lines
RFE #1592899: mention string.maketrans() in docs for str.translate,
remove reference to the old regex module in the former's doc.
........
r52962 | raymond.hettinger | 2006-12-08 04:17:18 +0100 (Fri, 08 Dec 2006) | 1 line
Eliminate two redundant calls to PyObject_Hash().
........
r52963 | raymond.hettinger | 2006-12-08 05:24:33 +0100 (Fri, 08 Dec 2006) | 3 lines
Port Armin's fix for a dict resize vulnerability (svn revision 46589, sf bug 1456209).
........
r52964 | raymond.hettinger | 2006-12-08 05:57:50 +0100 (Fri, 08 Dec 2006) | 4 lines
Port Georg's dictobject.c fix keys that were tuples got unpacked on the way to setting a KeyError (svn revision 52535, sf bug
1576657).
........
r52966 | raymond.hettinger | 2006-12-08 18:35:25 +0100 (Fri, 08 Dec 2006) | 2 lines
Add test for SF bug 1576657
........
r52970 | georg.brandl | 2006-12-08 21:46:11 +0100 (Fri, 08 Dec 2006) | 3 lines
#1577756: svnversion doesn't react to LANG=C, use LC_ALL=C to force
English output.
........
r52972 | georg.brandl | 2006-12-09 10:08:29 +0100 (Sat, 09 Dec 2006) | 3 lines
Patch #1608267: fix a race condition in os.makedirs() is the directory
to be created is already there.
........
r52975 | matthias.klose | 2006-12-09 13:15:27 +0100 (Sat, 09 Dec 2006) | 2 lines
- Fix the build of the library reference in info format.
........
r52994 | neal.norwitz | 2006-12-11 02:01:06 +0100 (Mon, 11 Dec 2006) | 1 line
Fix a typo
........
r52996 | georg.brandl | 2006-12-11 08:56:33 +0100 (Mon, 11 Dec 2006) | 2 lines
Move errno imports back to individual functions.
........
r52998 | vinay.sajip | 2006-12-11 15:07:16 +0100 (Mon, 11 Dec 2006) | 1 line
Patch by Jeremy Katz (SF #1609407)
........
r53000 | vinay.sajip | 2006-12-11 15:26:23 +0100 (Mon, 11 Dec 2006) | 1 line
Patch by "cuppatea" (SF #1503765)
........
2006-12-13 00:49:30 -04:00
|
|
|
def test_stdout_filedes_of_stdout(self):
|
|
|
|
# stdout is set to 1 (#1531862).
|
2013-03-11 00:53:34 -03:00
|
|
|
# To avoid printing the text on stdout, we do something similar to
|
|
|
|
# test_stdout_none (see above). The parent subprocess calls the child
|
|
|
|
# subprocess passing stdout=1, and this test uses stdout=PIPE in
|
|
|
|
# order to capture and check the output of the parent. See #11963.
|
|
|
|
code = ('import sys, subprocess; '
|
|
|
|
'rc = subprocess.call([sys.executable, "-c", '
|
|
|
|
' "import os, sys; sys.exit(os.write(sys.stdout.fileno(), '
|
|
|
|
'b\'test with stdout=1\'))"], stdout=1); '
|
|
|
|
'assert rc == 18')
|
|
|
|
p = subprocess.Popen([sys.executable, "-c", code],
|
|
|
|
stdout=subprocess.PIPE, stderr=subprocess.PIPE)
|
|
|
|
self.addCleanup(p.stdout.close)
|
|
|
|
self.addCleanup(p.stderr.close)
|
|
|
|
out, err = p.communicate()
|
|
|
|
self.assertEqual(p.returncode, 0, err)
|
|
|
|
self.assertEqual(out.rstrip(), b'test with stdout=1')
|
Four months of trunk changes (including a few releases...)
Merged revisions 51434-53004 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk
........
r51434 | neal.norwitz | 2006-08-21 20:20:10 +0200 (Mon, 21 Aug 2006) | 1 line
Fix a couple of ssize-t issues reported by Alexander Belopolsky on python-dev
........
r51439 | neal.norwitz | 2006-08-21 21:47:08 +0200 (Mon, 21 Aug 2006) | 6 lines
Patch #1542451: disallow continue anywhere under a finally
I'm undecided if this should be backported to 2.5 or 2.5.1.
Armin suggested to wait (I'm of the same opinion). Thomas W thinks
it's fine to go in 2.5.
........
r51443 | neal.norwitz | 2006-08-21 22:16:24 +0200 (Mon, 21 Aug 2006) | 4 lines
Handle a few more error conditions.
Klocwork 301 and 302. Will backport.
........
r51450 | neal.norwitz | 2006-08-22 00:21:19 +0200 (Tue, 22 Aug 2006) | 5 lines
Patch #1541585: fix buffer overrun when performing repr() on
a unicode string in a build with wide unicode (UCS-4) support.
This code could be improved, so add an XXX comment.
........
r51456 | neal.norwitz | 2006-08-22 01:44:48 +0200 (Tue, 22 Aug 2006) | 1 line
Try to get the windows bots working again with the new peephole.c
........
r51461 | anthony.baxter | 2006-08-22 09:36:59 +0200 (Tue, 22 Aug 2006) | 1 line
patch for documentation for recent uuid changes (from ping)
........
r51473 | neal.norwitz | 2006-08-22 15:56:56 +0200 (Tue, 22 Aug 2006) | 1 line
Alexander Belopolsky pointed out that pos is a size_t
........
r51489 | jeremy.hylton | 2006-08-22 22:46:00 +0200 (Tue, 22 Aug 2006) | 2 lines
Expose column offset information in parse trees.
........
r51497 | andrew.kuchling | 2006-08-23 01:13:43 +0200 (Wed, 23 Aug 2006) | 1 line
Move functional howto into trunk
........
r51515 | jeremy.hylton | 2006-08-23 20:37:43 +0200 (Wed, 23 Aug 2006) | 2 lines
Baby steps towards better tests for tokenize
........
r51525 | alex.martelli | 2006-08-23 22:42:02 +0200 (Wed, 23 Aug 2006) | 6 lines
x**2 should about equal x*x (including for a float x such that the result is
inf) but didn't; added a test to test_float to verify that, and ignored the
ERANGE value for errno in the pow operation to make the new test pass (with
help from Marilyn Davis at the Google Python Sprint -- thanks!).
........
r51526 | jeremy.hylton | 2006-08-23 23:14:03 +0200 (Wed, 23 Aug 2006) | 20 lines
Bug fixes large and small for tokenize.
Small: Always generate a NL or NEWLINE token following
a COMMENT token. The old code did not generate an NL token if
the comment was on a line by itself.
Large: The output of untokenize() will now match the
input exactly if it is passed the full token sequence. The
old, crufty output is still generated if a limited input
sequence is provided, where limited means that it does not
include position information for tokens.
Remaining bug: There is no CONTINUATION token (\) so there is no way
for untokenize() to handle such code.
Also, expanded the number of doctests in hopes of eventually removing
the old-style tests that compare against a golden file.
Bug fix candidate for Python 2.5.1. (Sigh.)
........
r51527 | jeremy.hylton | 2006-08-23 23:26:46 +0200 (Wed, 23 Aug 2006) | 5 lines
Replace dead code with an assert.
Now that COMMENT tokens are reliably followed by NL or NEWLINE,
there is never a need to add extra newlines in untokenize.
........
r51530 | alex.martelli | 2006-08-24 00:17:59 +0200 (Thu, 24 Aug 2006) | 7 lines
Reverting the patch that tried to fix the issue whereby x**2 raises
OverflowError while x*x succeeds and produces infinity; apparently
these inconsistencies cannot be fixed across ``all'' platforms and
there's a widespread feeling that therefore ``every'' platform
should keep suffering forevermore. Ah well.
........
r51565 | thomas.wouters | 2006-08-24 20:40:20 +0200 (Thu, 24 Aug 2006) | 6 lines
Fix SF bug #1545837: array.array borks on deepcopy.
array.__deepcopy__() needs to take an argument, even if it doesn't actually
use it. Will backport to 2.5 and 2.4 (if applicable.)
........
r51580 | martin.v.loewis | 2006-08-25 02:03:34 +0200 (Fri, 25 Aug 2006) | 3 lines
Patch #1545507: Exclude ctypes package in Win64 MSI file.
Will backport to 2.5.
........
r51589 | neal.norwitz | 2006-08-25 03:52:49 +0200 (Fri, 25 Aug 2006) | 1 line
importing types is not necessary if we use isinstance
........
r51604 | thomas.heller | 2006-08-25 09:27:33 +0200 (Fri, 25 Aug 2006) | 3 lines
Port _ctypes.pyd to win64 on AMD64.
........
r51605 | thomas.heller | 2006-08-25 09:34:51 +0200 (Fri, 25 Aug 2006) | 3 lines
Add missing file for _ctypes.pyd port to win64 on AMD64.
........
r51606 | thomas.heller | 2006-08-25 11:26:33 +0200 (Fri, 25 Aug 2006) | 6 lines
Build _ctypes.pyd for win AMD64 into the MSVC project file.
Since MSVC doesn't know about .asm files, a helper batch file is needed
to find ml64.exe in predefined locations. The helper script hardcodes
the path to the MS Platform SDK.
........
r51608 | armin.rigo | 2006-08-25 14:44:28 +0200 (Fri, 25 Aug 2006) | 4 lines
The regular expression engine in '_sre' can segfault when interpreting
bogus bytecode. It is unclear whether this is a real bug or a "won't
fix" case like bogus_code_obj.py.
........
r51617 | tim.peters | 2006-08-26 00:05:39 +0200 (Sat, 26 Aug 2006) | 2 lines
Whitespace normalization.
........
r51618 | tim.peters | 2006-08-26 00:06:44 +0200 (Sat, 26 Aug 2006) | 2 lines
Add missing svn:eol-style property to text files.
........
r51619 | tim.peters | 2006-08-26 00:26:21 +0200 (Sat, 26 Aug 2006) | 3 lines
A new test here relied on preserving invisible trailing
whitespace in expected output. Stop that.
........
r51624 | jack.diederich | 2006-08-26 20:42:06 +0200 (Sat, 26 Aug 2006) | 4 lines
- Move functions common to all path modules into genericpath.py and have the
OS speicifc path modules import them.
- Have os2emxpath import common functions fron ntpath instead of using copies
........
r51642 | neal.norwitz | 2006-08-29 07:40:58 +0200 (Tue, 29 Aug 2006) | 1 line
Fix a couple of typos.
........
r51647 | marc-andre.lemburg | 2006-08-29 12:34:12 +0200 (Tue, 29 Aug 2006) | 5 lines
Fix a buglet in the error reporting (SF bug report #1546372).
This should probably go into Python 2.5 or 2.5.1 as well.
........
r51663 | armin.rigo | 2006-08-31 10:51:06 +0200 (Thu, 31 Aug 2006) | 3 lines
Doc fix: hashlib objects don't always return a digest of 16 bytes.
Backport candidate for 2.5.
........
r51664 | nick.coghlan | 2006-08-31 14:00:43 +0200 (Thu, 31 Aug 2006) | 1 line
Fix the wrongheaded implementation of context management in the decimal module and add unit tests. (python-dev discussion is ongoing regarding what we do about Python 2.5)
........
r51665 | nick.coghlan | 2006-08-31 14:51:25 +0200 (Thu, 31 Aug 2006) | 1 line
Remove the old decimal context management tests from test_contextlib (guess who didn't run the test suite before committing...)
........
r51669 | brett.cannon | 2006-08-31 20:54:26 +0200 (Thu, 31 Aug 2006) | 4 lines
Make sure memory is properly cleaned up in file_init.
Backport candidate.
........
r51671 | brett.cannon | 2006-08-31 23:47:52 +0200 (Thu, 31 Aug 2006) | 2 lines
Fix comment about indentation level in C files.
........
r51674 | brett.cannon | 2006-09-01 00:42:37 +0200 (Fri, 01 Sep 2006) | 3 lines
Have pre-existing C files use 8 spaces indents (to match old PEP 7 style), but
have all new files use 4 spaces (to match current PEP 7 style).
........
r51676 | fred.drake | 2006-09-01 05:57:19 +0200 (Fri, 01 Sep 2006) | 3 lines
- SF patch #1550263: Enhance and correct unittest docs
- various minor cleanups for improved consistency
........
r51677 | georg.brandl | 2006-09-02 00:30:52 +0200 (Sat, 02 Sep 2006) | 2 lines
evalfile() should be execfile().
........
r51681 | neal.norwitz | 2006-09-02 04:43:17 +0200 (Sat, 02 Sep 2006) | 1 line
SF #1547931, fix typo (missing and). Will backport to 2.5
........
r51683 | neal.norwitz | 2006-09-02 04:50:35 +0200 (Sat, 02 Sep 2006) | 1 line
Bug #1548092: fix curses.tparm seg fault on invalid input. Needs backport to 2.5.1 and earlier.
........
r51684 | neal.norwitz | 2006-09-02 04:58:13 +0200 (Sat, 02 Sep 2006) | 4 lines
Bug #1550714: fix SystemError from itertools.tee on negative value for n.
Needs backport to 2.5.1 and earlier.
........
r51685 | nick.coghlan | 2006-09-02 05:54:17 +0200 (Sat, 02 Sep 2006) | 1 line
Make decimal.ContextManager a private implementation detail of decimal.localcontext()
........
r51686 | nick.coghlan | 2006-09-02 06:04:18 +0200 (Sat, 02 Sep 2006) | 1 line
Further corrections to the decimal module context management documentation
........
r51688 | raymond.hettinger | 2006-09-02 19:07:23 +0200 (Sat, 02 Sep 2006) | 1 line
Fix documentation nits for decimal context managers.
........
r51690 | neal.norwitz | 2006-09-02 20:51:34 +0200 (Sat, 02 Sep 2006) | 1 line
Add missing word in comment
........
r51691 | neal.norwitz | 2006-09-02 21:40:19 +0200 (Sat, 02 Sep 2006) | 7 lines
Hmm, this test has failed at least twice recently on the OpenBSD and
Debian sparc buildbots. Since this goes through a lot of tests
and hits the disk a lot it could be slow (especially if NFS is involved).
I'm not sure if that's the problem, but printing periodic msgs shouldn't hurt.
The code was stolen from test_compiler.
........
r51693 | nick.coghlan | 2006-09-03 03:02:00 +0200 (Sun, 03 Sep 2006) | 1 line
Fix final documentation nits before backporting decimal module fixes to 2.5
........
r51694 | nick.coghlan | 2006-09-03 03:06:07 +0200 (Sun, 03 Sep 2006) | 1 line
Typo fix for decimal docs
........
r51697 | nick.coghlan | 2006-09-03 03:20:46 +0200 (Sun, 03 Sep 2006) | 1 line
NEWS entry on trunk for decimal module changes
........
r51704 | raymond.hettinger | 2006-09-04 17:32:48 +0200 (Mon, 04 Sep 2006) | 1 line
Fix endcase for str.rpartition()
........
r51716 | tim.peters | 2006-09-05 04:18:09 +0200 (Tue, 05 Sep 2006) | 12 lines
"Conceptual" merge of rev 51711 from the 2.5 branch.
i_divmod(): As discussed on Python-Dev, changed the overflow
checking to live happily with recent gcc optimizations that
assume signed integer arithmetic never overflows.
This differs from the corresponding change on the 2.5 and 2.4
branches, using a less obscure approach, but one that /may/
tickle platform idiocies in their definitions of LONG_MIN.
The 2.4 + 2.5 change avoided introducing a dependence on
LONG_MIN, at the cost of substantially goofier code.
........
r51717 | tim.peters | 2006-09-05 04:21:19 +0200 (Tue, 05 Sep 2006) | 2 lines
Whitespace normalization.
........
r51719 | tim.peters | 2006-09-05 04:22:17 +0200 (Tue, 05 Sep 2006) | 2 lines
Add missing svn:eol-style property to text files.
........
r51720 | neal.norwitz | 2006-09-05 04:24:03 +0200 (Tue, 05 Sep 2006) | 2 lines
Fix SF bug #1546288, crash in dict_equal.
........
r51721 | neal.norwitz | 2006-09-05 04:25:41 +0200 (Tue, 05 Sep 2006) | 1 line
Fix SF #1552093, eval docstring typo (3 ps in mapping)
........
r51724 | neal.norwitz | 2006-09-05 04:35:08 +0200 (Tue, 05 Sep 2006) | 1 line
This was found by Guido AFAIK on p3yk (sic) branch.
........
r51725 | neal.norwitz | 2006-09-05 04:36:20 +0200 (Tue, 05 Sep 2006) | 1 line
Add a NEWS entry for str.rpartition() change
........
r51728 | neal.norwitz | 2006-09-05 04:57:01 +0200 (Tue, 05 Sep 2006) | 1 line
Patch #1540470, for OpenBSD 4.0. Backport candidate for 2.[34].
........
r51729 | neal.norwitz | 2006-09-05 05:53:08 +0200 (Tue, 05 Sep 2006) | 12 lines
Bug #1520864 (again): unpacking singleton tuples in list comprehensions and
generator expressions (x for x, in ... ) works again.
Sigh, I only fixed for loops the first time, not list comps and genexprs too.
I couldn't find any more unpacking cases where there is a similar bug lurking.
This code should be refactored to eliminate the duplication. I'm sure
the listcomp/genexpr code can be refactored. I'm not sure if the for loop
can re-use any of the same code though.
Will backport to 2.5 (the only place it matters).
........
r51731 | neal.norwitz | 2006-09-05 05:58:26 +0200 (Tue, 05 Sep 2006) | 1 line
Add a comment about some refactoring. (There's probably more that should be done.) I will reformat this file in the next checkin due to the inconsistent tabs/spaces.
........
r51732 | neal.norwitz | 2006-09-05 06:00:12 +0200 (Tue, 05 Sep 2006) | 1 line
M-x untabify
........
r51737 | hyeshik.chang | 2006-09-05 14:07:09 +0200 (Tue, 05 Sep 2006) | 7 lines
Fix a few bugs on cjkcodecs found by Oren Tirosh:
- gbk and gb18030 codec now handle U+30FB KATAKANA MIDDLE DOT correctly.
- iso2022_jp_2 codec now encodes into G0 for KS X 1001, GB2312
codepoints to conform the standard.
- iso2022_jp_3 and iso2022_jp_2004 codec can encode JIS X 2013:2
codepoints now.
........
r51738 | hyeshik.chang | 2006-09-05 14:14:57 +0200 (Tue, 05 Sep 2006) | 2 lines
Fix a typo: 2013 -> 0213
........
r51740 | georg.brandl | 2006-09-05 14:44:58 +0200 (Tue, 05 Sep 2006) | 3 lines
Bug #1552618: change docs of dict.has_key() to reflect recommendation
to use "in".
........
r51742 | andrew.kuchling | 2006-09-05 15:02:40 +0200 (Tue, 05 Sep 2006) | 1 line
Rearrange example a bit, and show rpartition() when separator is not found
........
r51744 | andrew.kuchling | 2006-09-05 15:15:41 +0200 (Tue, 05 Sep 2006) | 1 line
[Bug #1525469] SimpleXMLRPCServer still uses the sys.exc_{value,type} module-level globals instead of calling sys.exc_info(). Reported by Russell Warren
........
r51745 | andrew.kuchling | 2006-09-05 15:19:18 +0200 (Tue, 05 Sep 2006) | 3 lines
[Bug #1526834] Fix crash in pdb when you do 'b f(';
the function name was placed into a regex pattern and the unbalanced paren
caused re.compile() to report an error
........
r51751 | kristjan.jonsson | 2006-09-05 19:58:12 +0200 (Tue, 05 Sep 2006) | 6 lines
Update the PCBuild8 solution.
Facilitate cross-compilation by having binaries in separate Win32 and x64 directories.
Rationalized configs by making proper use of platforms/configurations.
Remove pythoncore_pgo project.
Add new PGIRelease and PGORelease configurations to perform Profile Guided Optimisation.
Removed I64 support, but this can be easily added by copying the x64 platform settings.
........
r51758 | gustavo.niemeyer | 2006-09-06 03:58:52 +0200 (Wed, 06 Sep 2006) | 3 lines
Fixing #1531862: Do not close standard file descriptors in the
subprocess module.
........
r51760 | neal.norwitz | 2006-09-06 05:58:34 +0200 (Wed, 06 Sep 2006) | 1 line
Revert 51758 because it broke all the buildbots
........
r51762 | georg.brandl | 2006-09-06 08:03:59 +0200 (Wed, 06 Sep 2006) | 3 lines
Bug #1551427: fix a wrong NULL pointer check in the win32 version
of os.urandom().
........
r51765 | georg.brandl | 2006-09-06 08:09:31 +0200 (Wed, 06 Sep 2006) | 3 lines
Bug #1550983: emit better error messages for erroneous relative
imports (if not in package and if beyond toplevel package).
........
r51767 | neal.norwitz | 2006-09-06 08:28:06 +0200 (Wed, 06 Sep 2006) | 1 line
with and as are now keywords. There are some generated files I can't recreate.
........
r51770 | georg.brandl | 2006-09-06 08:50:05 +0200 (Wed, 06 Sep 2006) | 5 lines
Bug #1542051: Exceptions now correctly call PyObject_GC_UnTrack.
Also make sure that every exception class has __module__ set to
'exceptions'.
........
r51785 | georg.brandl | 2006-09-06 22:05:58 +0200 (Wed, 06 Sep 2006) | 2 lines
Fix missing import of the types module in logging.config.
........
r51789 | marc-andre.lemburg | 2006-09-06 22:40:22 +0200 (Wed, 06 Sep 2006) | 3 lines
Add news item for bug fix of SF bug report #1546372.
........
r51797 | gustavo.niemeyer | 2006-09-07 02:48:33 +0200 (Thu, 07 Sep 2006) | 3 lines
Fixed subprocess bug #1531862 again, after removing tests
offending buildbot
........
r51798 | raymond.hettinger | 2006-09-07 04:42:48 +0200 (Thu, 07 Sep 2006) | 1 line
Fix refcounts and add error checks.
........
r51803 | nick.coghlan | 2006-09-07 12:50:34 +0200 (Thu, 07 Sep 2006) | 1 line
Fix the speed regression in inspect.py by adding another cache to speed up getmodule(). Patch #1553314
........
r51805 | ronald.oussoren | 2006-09-07 14:03:10 +0200 (Thu, 07 Sep 2006) | 2 lines
Fix a glaring error and update some version numbers.
........
r51814 | andrew.kuchling | 2006-09-07 15:56:23 +0200 (Thu, 07 Sep 2006) | 1 line
Typo fix
........
r51815 | andrew.kuchling | 2006-09-07 15:59:38 +0200 (Thu, 07 Sep 2006) | 8 lines
[Bug #1552726] Avoid repeatedly polling in interactive mode -- only put a timeout on the select()
if an input hook has been defined. Patch by Richard Boulton.
This select() code is only executed with readline 2.1, or if
READLINE_CALLBACKS is defined.
Backport candidate for 2.5, 2.4, probably earlier versions too.
........
r51816 | armin.rigo | 2006-09-07 17:06:00 +0200 (Thu, 07 Sep 2006) | 2 lines
Add a warning notice on top of the generated grammar.txt.
........
r51819 | thomas.heller | 2006-09-07 20:56:28 +0200 (Thu, 07 Sep 2006) | 5 lines
Anonymous structure fields that have a bit-width specified did not work,
and they gave a strange error message from PyArg_ParseTuple:
function takes exactly 2 arguments (3 given).
With tests.
........
r51820 | thomas.heller | 2006-09-07 21:09:54 +0200 (Thu, 07 Sep 2006) | 4 lines
The cast function did not accept c_char_p or c_wchar_p instances
as first argument, and failed with a 'bad argument to internal function'
error message.
........
r51827 | nick.coghlan | 2006-09-08 12:04:38 +0200 (Fri, 08 Sep 2006) | 1 line
Add missing NEWS entry for rev 51803
........
r51828 | andrew.kuchling | 2006-09-08 15:25:23 +0200 (Fri, 08 Sep 2006) | 1 line
Add missing word
........
r51829 | andrew.kuchling | 2006-09-08 15:35:49 +0200 (Fri, 08 Sep 2006) | 1 line
Explain SQLite a bit more clearly
........
r51830 | andrew.kuchling | 2006-09-08 15:36:36 +0200 (Fri, 08 Sep 2006) | 1 line
Explain SQLite a bit more clearly
........
r51832 | andrew.kuchling | 2006-09-08 16:02:45 +0200 (Fri, 08 Sep 2006) | 1 line
Use native SQLite types
........
r51833 | andrew.kuchling | 2006-09-08 16:03:01 +0200 (Fri, 08 Sep 2006) | 1 line
Use native SQLite types
........
r51835 | andrew.kuchling | 2006-09-08 16:05:10 +0200 (Fri, 08 Sep 2006) | 1 line
Fix typo in example
........
r51837 | brett.cannon | 2006-09-09 09:11:46 +0200 (Sat, 09 Sep 2006) | 6 lines
Remove the __unicode__ method from exceptions. Allows unicode() to be called
on exception classes. Would require introducing a tp_unicode slot to make it
work otherwise.
Fixes bug #1551432 and will be backported.
........
r51854 | neal.norwitz | 2006-09-11 06:24:09 +0200 (Mon, 11 Sep 2006) | 8 lines
Forward port of 51850 from release25-maint branch.
As mentioned on python-dev, reverting patch #1504333 because it introduced
an infinite loop in rev 47154.
This patch also adds a test to prevent the regression.
........
r51855 | neal.norwitz | 2006-09-11 06:28:16 +0200 (Mon, 11 Sep 2006) | 5 lines
Properly handle a NULL returned from PyArena_New().
(Also fix some whitespace)
Klocwork #364.
........
r51856 | neal.norwitz | 2006-09-11 06:32:57 +0200 (Mon, 11 Sep 2006) | 1 line
Add a "crasher" taken from the sgml bug report referenced in the comment
........
r51858 | georg.brandl | 2006-09-11 11:38:35 +0200 (Mon, 11 Sep 2006) | 12 lines
Forward-port of rev. 51857:
Building with HP's cc on HP-UX turned up a couple of problems.
_PyGILState_NoteThreadState was declared as static inconsistently.
Make it static as it's not necessary outside of this module.
Some tests failed because errno was reset to 0. (I think the tests
that failed were at least: test_fcntl and test_mailbox).
Ensure that errno doesn't change after a call to Py_END_ALLOW_THREADS.
This only affected debug builds.
........
r51865 | martin.v.loewis | 2006-09-12 21:49:20 +0200 (Tue, 12 Sep 2006) | 2 lines
Forward-port 51862: Add sgml_input.html.
........
r51866 | andrew.kuchling | 2006-09-12 22:50:23 +0200 (Tue, 12 Sep 2006) | 1 line
Markup typo fix
........
r51867 | andrew.kuchling | 2006-09-12 23:09:02 +0200 (Tue, 12 Sep 2006) | 1 line
Some editing, markup fixes
........
r51868 | andrew.kuchling | 2006-09-12 23:21:51 +0200 (Tue, 12 Sep 2006) | 1 line
More wordsmithing
........
r51877 | andrew.kuchling | 2006-09-14 13:22:18 +0200 (Thu, 14 Sep 2006) | 1 line
Make --help mention that -v can be supplied multiple times
........
r51878 | andrew.kuchling | 2006-09-14 13:28:50 +0200 (Thu, 14 Sep 2006) | 1 line
Rewrite help message to remove some of the parentheticals. (There were a lot of them.)
........
r51883 | ka-ping.yee | 2006-09-15 02:34:19 +0200 (Fri, 15 Sep 2006) | 2 lines
Fix grammar errors and improve clarity.
........
r51885 | georg.brandl | 2006-09-15 07:22:24 +0200 (Fri, 15 Sep 2006) | 3 lines
Correct elementtree module index entry.
........
r51889 | fred.drake | 2006-09-15 17:18:04 +0200 (Fri, 15 Sep 2006) | 4 lines
- fix module name in links in formatted documentation
- minor markup cleanup
(forward-ported from release25-maint revision 51888)
........
r51891 | fred.drake | 2006-09-15 18:11:27 +0200 (Fri, 15 Sep 2006) | 3 lines
revise explanation of returns_unicode to reflect bool values
and to include the default value
(merged from release25-maint revision 51890)
........
r51897 | martin.v.loewis | 2006-09-16 19:36:37 +0200 (Sat, 16 Sep 2006) | 2 lines
Patch #1557515: Add RLIMIT_SBSIZE.
........
r51903 | ronald.oussoren | 2006-09-17 20:42:53 +0200 (Sun, 17 Sep 2006) | 2 lines
Port of revision 51902 in release25-maint to the trunk
........
r51904 | ronald.oussoren | 2006-09-17 21:23:27 +0200 (Sun, 17 Sep 2006) | 3 lines
Tweak Mac/Makefile in to ensure that pythonw gets rebuild when the major version
of python changes (2.5 -> 2.6). Bug #1552935.
........
r51913 | guido.van.rossum | 2006-09-18 23:36:16 +0200 (Mon, 18 Sep 2006) | 2 lines
Make this thing executable.
........
r51920 | gregory.p.smith | 2006-09-19 19:35:04 +0200 (Tue, 19 Sep 2006) | 5 lines
Fixes a bug with bsddb.DB.stat where the flags and txn keyword
arguments are transposed. (reported by Louis Zechtzer)
..already committed to release24-maint
..needs committing to release25-maint
........
r51926 | brett.cannon | 2006-09-20 20:34:28 +0200 (Wed, 20 Sep 2006) | 3 lines
Accidentally didn't commit Misc/NEWS entry on when __unicode__() was removed
from exceptions.
........
r51927 | brett.cannon | 2006-09-20 20:43:13 +0200 (Wed, 20 Sep 2006) | 6 lines
Allow exceptions to be directly sliced again
(e.g., ``BaseException(1,2,3)[0:2]``).
Discovered in Python 2.5.0 by Thomas Heller and reported to python-dev. This
should be backported to 2.5 .
........
r51928 | brett.cannon | 2006-09-20 21:28:35 +0200 (Wed, 20 Sep 2006) | 2 lines
Make python.vim output more deterministic.
........
r51949 | walter.doerwald | 2006-09-21 17:09:55 +0200 (Thu, 21 Sep 2006) | 2 lines
Fix typo.
........
r51950 | jack.diederich | 2006-09-21 19:50:26 +0200 (Thu, 21 Sep 2006) | 5 lines
* regression bug, count_next was coercing a Py_ssize_t to an unsigned Py_size_t
which breaks negative counts
* added test for negative numbers
will backport to 2.5.1
........
r51953 | jack.diederich | 2006-09-21 22:34:49 +0200 (Thu, 21 Sep 2006) | 1 line
added itertools.count(-n) fix
........
r51971 | neal.norwitz | 2006-09-22 10:16:26 +0200 (Fri, 22 Sep 2006) | 10 lines
Fix %zd string formatting on Mac OS X so it prints negative numbers.
In addition to testing positive numbers, verify negative numbers work in configure.
In order to avoid compiler warnings on OS X 10.4, also change the order of the check
for the format character to use (PY_FORMAT_SIZE_T) in the sprintf format
for Py_ssize_t. This patch changes PY_FORMAT_SIZE_T from "" to "l" if it wasn't
defined at configure time. Need to verify the buildbot results.
Backport candidate (if everyone thinks this patch can't be improved).
........
r51972 | neal.norwitz | 2006-09-22 10:18:10 +0200 (Fri, 22 Sep 2006) | 7 lines
Bug #1557232: fix seg fault with def f((((x)))) and def f(((x),)).
These tests should be improved. Hopefully this fixes variations when
flipping back and forth between fpdef and fplist.
Backport candidate.
........
r51975 | neal.norwitz | 2006-09-22 10:47:23 +0200 (Fri, 22 Sep 2006) | 4 lines
Mostly revert this file to the same version as before. Only force setting
of PY_FORMAT_SIZE_T to "l" for Mac OSX. I don't know a better define
to use. This should get rid of the warnings on other platforms and Mac too.
........
r51986 | fred.drake | 2006-09-23 02:26:31 +0200 (Sat, 23 Sep 2006) | 1 line
add boilerplate "What's New" document so the docs will build
........
r51987 | neal.norwitz | 2006-09-23 06:11:38 +0200 (Sat, 23 Sep 2006) | 1 line
Remove extra semi-colons reported by Johnny Lee on python-dev. Backport if anyone cares.
........
r51989 | neal.norwitz | 2006-09-23 20:11:58 +0200 (Sat, 23 Sep 2006) | 1 line
SF Bug #1563963, add missing word and cleanup first sentance
........
r51990 | brett.cannon | 2006-09-23 21:53:20 +0200 (Sat, 23 Sep 2006) | 3 lines
Make output on test_strptime() be more verbose in face of failure. This is in
hopes that more information will help debug the failing test on HPPA Ubuntu.
........
r51991 | georg.brandl | 2006-09-24 12:36:01 +0200 (Sun, 24 Sep 2006) | 2 lines
Fix webbrowser.BackgroundBrowser on Windows.
........
r51993 | georg.brandl | 2006-09-24 14:35:36 +0200 (Sun, 24 Sep 2006) | 4 lines
Fix a bug in the parser's future statement handling that led to "with"
not being recognized as a keyword after, e.g., this statement:
from __future__ import division, with_statement
........
r51995 | georg.brandl | 2006-09-24 14:50:24 +0200 (Sun, 24 Sep 2006) | 4 lines
Fix a bug in traceback.format_exception_only() that led to an error
being raised when print_exc() was called without an exception set.
In version 2.4, this printed "None", restored that behavior.
........
r52000 | armin.rigo | 2006-09-25 17:16:26 +0200 (Mon, 25 Sep 2006) | 2 lines
Another crasher.
........
r52011 | brett.cannon | 2006-09-27 01:38:24 +0200 (Wed, 27 Sep 2006) | 2 lines
Make the error message for when the time data and format do not match clearer.
........
r52014 | andrew.kuchling | 2006-09-27 18:37:30 +0200 (Wed, 27 Sep 2006) | 1 line
Add news item for rev. 51815
........
r52018 | andrew.kuchling | 2006-09-27 21:23:05 +0200 (Wed, 27 Sep 2006) | 1 line
Make examples do error checking on Py_InitModule
........
r52032 | brett.cannon | 2006-09-29 00:10:14 +0200 (Fri, 29 Sep 2006) | 2 lines
Very minor grammatical fix in a comment.
........
r52048 | george.yoshida | 2006-09-30 07:14:02 +0200 (Sat, 30 Sep 2006) | 4 lines
SF bug #1567976 : fix typo
Will backport to 2.5.
........
r52051 | gregory.p.smith | 2006-09-30 08:08:20 +0200 (Sat, 30 Sep 2006) | 2 lines
wording change
........
r52053 | georg.brandl | 2006-09-30 09:24:48 +0200 (Sat, 30 Sep 2006) | 2 lines
Bug #1567375: a minor logical glitch in example description.
........
r52056 | georg.brandl | 2006-09-30 09:31:57 +0200 (Sat, 30 Sep 2006) | 3 lines
Bug #1565661: in webbrowser, split() the command for the default
GNOME browser in case it is a command with args.
........
r52058 | georg.brandl | 2006-09-30 10:43:30 +0200 (Sat, 30 Sep 2006) | 4 lines
Patch #1567691: super() and new.instancemethod() now don't accept
keyword arguments any more (previously they accepted them, but didn't
use them).
........
r52061 | georg.brandl | 2006-09-30 11:03:42 +0200 (Sat, 30 Sep 2006) | 3 lines
Bug #1566800: make sure that EnvironmentError can be called with any
number of arguments, as was the case in Python 2.4.
........
r52063 | georg.brandl | 2006-09-30 11:06:45 +0200 (Sat, 30 Sep 2006) | 2 lines
Bug #1566663: remove obsolete example from datetime docs.
........
r52065 | georg.brandl | 2006-09-30 11:13:21 +0200 (Sat, 30 Sep 2006) | 3 lines
Bug #1566602: correct failure of posixpath unittest when $HOME ends
with a slash.
........
r52068 | georg.brandl | 2006-09-30 12:58:01 +0200 (Sat, 30 Sep 2006) | 3 lines
Bug #1457823: cgi.(Sv)FormContentDict's constructor now takes
keep_blank_values and strict_parsing keyword arguments.
........
r52069 | georg.brandl | 2006-09-30 13:06:47 +0200 (Sat, 30 Sep 2006) | 3 lines
Bug #1560617: in pyclbr, return full module name not only for classes,
but also for functions.
........
r52072 | georg.brandl | 2006-09-30 13:17:34 +0200 (Sat, 30 Sep 2006) | 3 lines
Bug #1556784: allow format strings longer than 127 characters in
datetime's strftime function.
........
r52075 | georg.brandl | 2006-09-30 13:22:28 +0200 (Sat, 30 Sep 2006) | 3 lines
Bug #1446043: correctly raise a LookupError if an encoding name given
to encodings.search_function() contains a dot.
........
r52078 | georg.brandl | 2006-09-30 14:02:57 +0200 (Sat, 30 Sep 2006) | 3 lines
Bug #1546052: clarify that PyString_FromString(AndSize) copies the
string pointed to by its parameter.
........
r52080 | georg.brandl | 2006-09-30 14:16:03 +0200 (Sat, 30 Sep 2006) | 3 lines
Convert test_import to unittest.
........
r52083 | kurt.kaiser | 2006-10-01 23:16:45 +0200 (Sun, 01 Oct 2006) | 5 lines
Some syntax errors were being caught by tokenize during the tabnanny
check, resulting in obscure error messages. Do the syntax check
first. Bug 1562716, 1562719
........
r52084 | kurt.kaiser | 2006-10-01 23:54:37 +0200 (Sun, 01 Oct 2006) | 3 lines
Add comment explaining that error msgs may be due to user code when
running w/o subprocess.
........
r52086 | martin.v.loewis | 2006-10-02 16:55:51 +0200 (Mon, 02 Oct 2006) | 3 lines
Fix test for uintptr_t. Fixes #1568842.
Will backport.
........
r52089 | martin.v.loewis | 2006-10-02 17:20:37 +0200 (Mon, 02 Oct 2006) | 3 lines
Guard uintptr_t test with HAVE_STDINT_H, test for
stdint.h. Will backport.
........
r52100 | vinay.sajip | 2006-10-03 20:02:37 +0200 (Tue, 03 Oct 2006) | 1 line
Documentation omitted the additional parameter to LogRecord.__init__ which was added in 2.5. (See SF #1569622).
........
r52101 | vinay.sajip | 2006-10-03 20:20:26 +0200 (Tue, 03 Oct 2006) | 1 line
Documentation clarified to mention optional parameters.
........
r52102 | vinay.sajip | 2006-10-03 20:21:56 +0200 (Tue, 03 Oct 2006) | 1 line
Modified LogRecord.__init__ to make the func parameter optional. (See SF #1569622).
........
r52121 | brett.cannon | 2006-10-03 23:58:55 +0200 (Tue, 03 Oct 2006) | 2 lines
Fix minor typo in a comment.
........
r52123 | brett.cannon | 2006-10-04 01:23:14 +0200 (Wed, 04 Oct 2006) | 2 lines
Convert test_imp over to unittest.
........
r52128 | barry.warsaw | 2006-10-04 04:06:36 +0200 (Wed, 04 Oct 2006) | 3 lines
decode_rfc2231(): As Christian Robottom Reis points out, it makes no sense to
test for parts > 3 when we use .split(..., 2).
........
r52129 | jeremy.hylton | 2006-10-04 04:24:52 +0200 (Wed, 04 Oct 2006) | 9 lines
Fix for SF bug 1569998: break permitted inside try.
The compiler was checking that there was something on the fblock
stack, but not that there was a loop on the stack. Fixed that and
added a test for the specific syntax error.
Bug fix candidate.
........
r52130 | martin.v.loewis | 2006-10-04 07:47:34 +0200 (Wed, 04 Oct 2006) | 4 lines
Fix integer negation and absolute value to not rely
on undefined behaviour of the C compiler anymore.
Will backport to 2.5 and 2.4.
........
r52135 | martin.v.loewis | 2006-10-04 11:21:20 +0200 (Wed, 04 Oct 2006) | 1 line
Forward port r52134: Add uuids for 2.4.4.
........
r52137 | armin.rigo | 2006-10-04 12:23:57 +0200 (Wed, 04 Oct 2006) | 3 lines
Compilation problem caused by conflicting typedefs for uint32_t
(unsigned long vs. unsigned int).
........
r52139 | armin.rigo | 2006-10-04 14:17:45 +0200 (Wed, 04 Oct 2006) | 23 lines
Forward-port of r52136,52138: a review of overflow-detecting code.
* unified the way intobject, longobject and mystrtoul handle
values around -sys.maxint-1.
* in general, trying to entierely avoid overflows in any computation
involving signed ints or longs is extremely involved. Fixed a few
simple cases where a compiler might be too clever (but that's all
guesswork).
* more overflow checks against bad data in marshal.c.
* 2.5 specific: fixed a number of places that were still confusing int
and Py_ssize_t. Some of them could potentially have caused
"real-world" breakage.
* list.pop(x): fixing overflow issues on x was messy. I just reverted
to PyArg_ParseTuple("n"), which does the right thing. (An obscure
test was trying to give a Decimal to list.pop()... doesn't make
sense any more IMHO)
* trying to write a few tests...
........
r52147 | andrew.kuchling | 2006-10-04 15:42:43 +0200 (Wed, 04 Oct 2006) | 6 lines
Cause a PyObject_Malloc() failure to trigger a MemoryError, and then
add 'if (PyErr_Occurred())' checks to various places so that NULL is
returned properly.
2.4 backport candidate.
........
r52148 | martin.v.loewis | 2006-10-04 17:25:28 +0200 (Wed, 04 Oct 2006) | 1 line
Add MSVC8 project files to create wininst-8.exe.
........
r52196 | brett.cannon | 2006-10-06 00:02:31 +0200 (Fri, 06 Oct 2006) | 7 lines
Clarify what "re-initialization" means for init_builtin() and init_dynamic().
Also remove warning about re-initialization as possibly raising an execption as
both call _PyImport_FindExtension() which pulls any module that was already
imported from the Python process' extension cache and just copies the __dict__
into the module stored in sys.modules.
........
r52200 | fred.drake | 2006-10-06 02:03:45 +0200 (Fri, 06 Oct 2006) | 3 lines
- update links
- remove Sleepycat name now that they have been bought
........
r52204 | andrew.kuchling | 2006-10-06 12:41:01 +0200 (Fri, 06 Oct 2006) | 1 line
Case fix
........
r52208 | georg.brandl | 2006-10-06 14:46:08 +0200 (Fri, 06 Oct 2006) | 3 lines
Fix name.
........
r52211 | andrew.kuchling | 2006-10-06 15:18:26 +0200 (Fri, 06 Oct 2006) | 1 line
[Bug #1545341] Allow 'classifier' parameter to be a tuple as well as a list. Will backport.
........
r52212 | armin.rigo | 2006-10-06 18:33:22 +0200 (Fri, 06 Oct 2006) | 4 lines
A very minor bug fix: this code looks like it is designed to accept
any hue value and do the modulo itself, except it doesn't quite do
it in all cases. At least, the "cannot get here" comment was wrong.
........
r52213 | andrew.kuchling | 2006-10-06 20:51:55 +0200 (Fri, 06 Oct 2006) | 1 line
Comment grammar
........
r52218 | skip.montanaro | 2006-10-07 13:05:02 +0200 (Sat, 07 Oct 2006) | 6 lines
Note that the excel_tab class is registered as the "excel-tab" dialect.
Fixes 1572471. Make a similar change for the excel class and clean up
references to the Dialects and Formatting Parameters section in a few
places.
........
r52221 | georg.brandl | 2006-10-08 09:11:54 +0200 (Sun, 08 Oct 2006) | 3 lines
Add missing NEWS entry for rev. 52129.
........
r52223 | hyeshik.chang | 2006-10-08 15:48:34 +0200 (Sun, 08 Oct 2006) | 3 lines
Bug #1572832: fix a bug in ISO-2022 codecs which may cause segfault
when encoding non-BMP unicode characters. (Submitted by Ray Chason)
........
r52227 | ronald.oussoren | 2006-10-08 19:37:58 +0200 (Sun, 08 Oct 2006) | 4 lines
Add version number to the link to the python documentation in
/Developer/Documentation/Python, better for users that install multiple versions
of python.
........
r52229 | ronald.oussoren | 2006-10-08 19:40:02 +0200 (Sun, 08 Oct 2006) | 2 lines
Fix for bug #1570284
........
r52233 | ronald.oussoren | 2006-10-08 19:49:52 +0200 (Sun, 08 Oct 2006) | 6 lines
MacOSX: distutils changes the values of BASECFLAGS and LDFLAGS when using a
universal build of python on OSX 10.3 to ensure that those flags can be used
to compile code (the universal build uses compiler flags that aren't supported
on 10.3). This patches gives the same treatment to CFLAGS, PY_CFLAGS and
BLDSHARED.
........
r52236 | ronald.oussoren | 2006-10-08 19:51:46 +0200 (Sun, 08 Oct 2006) | 5 lines
MacOSX: The universal build requires that users have the MacOSX10.4u SDK
installed to build extensions. This patch makes distutils emit a warning when
the compiler should use an SDK but that SDK is not installed, hopefully reducing
some confusion.
........
r52238 | ronald.oussoren | 2006-10-08 20:18:26 +0200 (Sun, 08 Oct 2006) | 3 lines
MacOSX: add more logic to recognize the correct startup file to patch to the
shell profile patching post-install script.
........
r52242 | andrew.kuchling | 2006-10-09 19:10:12 +0200 (Mon, 09 Oct 2006) | 1 line
Add news item for rev. 52211 change
........
r52245 | andrew.kuchling | 2006-10-09 20:05:19 +0200 (Mon, 09 Oct 2006) | 1 line
Fix wording in comment
........
r52251 | georg.brandl | 2006-10-09 21:03:06 +0200 (Mon, 09 Oct 2006) | 2 lines
Patch #1572724: fix typo ('=' instead of '==') in _msi.c.
........
r52255 | barry.warsaw | 2006-10-09 21:43:24 +0200 (Mon, 09 Oct 2006) | 2 lines
List gc.get_count() in the module docstring.
........
r52257 | martin.v.loewis | 2006-10-09 22:44:25 +0200 (Mon, 09 Oct 2006) | 1 line
Bug #1565150: Fix subsecond processing for os.utime on Windows.
........
r52268 | ronald.oussoren | 2006-10-10 09:55:06 +0200 (Tue, 10 Oct 2006) | 2 lines
MacOSX: fix permission problem in the generated installer
........
r52293 | georg.brandl | 2006-10-12 09:38:04 +0200 (Thu, 12 Oct 2006) | 2 lines
Bug #1575746: fix typo in property() docs.
........
r52295 | georg.brandl | 2006-10-12 09:57:21 +0200 (Thu, 12 Oct 2006) | 3 lines
Bug #813342: Start the IDLE subprocess with -Qnew if the parent
is started with that option.
........
r52297 | georg.brandl | 2006-10-12 10:22:53 +0200 (Thu, 12 Oct 2006) | 2 lines
Bug #1565919: document set types in the Language Reference.
........
r52299 | georg.brandl | 2006-10-12 11:20:33 +0200 (Thu, 12 Oct 2006) | 3 lines
Bug #1550524: better heuristics to find correct class definition
in inspect.findsource().
........
r52301 | georg.brandl | 2006-10-12 11:47:12 +0200 (Thu, 12 Oct 2006) | 4 lines
Bug #1548891: The cStringIO.StringIO() constructor now encodes unicode
arguments with the system default encoding just like the write()
method does, instead of converting it to a raw buffer.
........
r52303 | georg.brandl | 2006-10-12 13:14:40 +0200 (Thu, 12 Oct 2006) | 2 lines
Bug #1546628: add a note about urlparse.urljoin() and absolute paths.
........
r52305 | georg.brandl | 2006-10-12 13:27:59 +0200 (Thu, 12 Oct 2006) | 3 lines
Bug #1545497: when given an explicit base, int() did ignore NULs
embedded in the string to convert.
........
r52307 | georg.brandl | 2006-10-12 13:41:11 +0200 (Thu, 12 Oct 2006) | 3 lines
Add a note to fpectl docs that it's not built by default
(bug #1556261).
........
r52309 | georg.brandl | 2006-10-12 13:46:57 +0200 (Thu, 12 Oct 2006) | 3 lines
Bug #1560114: the Mac filesystem does have accurate information
about the case of filenames.
........
r52311 | georg.brandl | 2006-10-12 13:59:27 +0200 (Thu, 12 Oct 2006) | 2 lines
Small grammar fix, thanks Sjoerd.
........
r52313 | georg.brandl | 2006-10-12 14:03:07 +0200 (Thu, 12 Oct 2006) | 2 lines
Fix tarfile depending on buggy int('1\0', base) behavior.
........
r52315 | georg.brandl | 2006-10-12 14:33:07 +0200 (Thu, 12 Oct 2006) | 2 lines
Bug #1283491: follow docstring convention wrt. keyword-able args in sum().
........
r52316 | georg.brandl | 2006-10-12 15:08:16 +0200 (Thu, 12 Oct 2006) | 3 lines
Bug #1560179: speed up posixpath.(dir|base)name
........
r52327 | brett.cannon | 2006-10-14 08:36:45 +0200 (Sat, 14 Oct 2006) | 3 lines
Clean up the language of a sentence relating to the connect() function and
user-defined datatypes.
........
r52332 | neal.norwitz | 2006-10-14 23:33:38 +0200 (Sat, 14 Oct 2006) | 3 lines
Update the peephole optimizer to remove more dead code (jumps after returns)
and inline jumps to returns.
........
r52333 | martin.v.loewis | 2006-10-15 09:54:40 +0200 (Sun, 15 Oct 2006) | 4 lines
Patch #1576954: Update VC6 build directory; remove redundant
files in VC7. Will backport to 2.5.
........
r52335 | martin.v.loewis | 2006-10-15 10:43:33 +0200 (Sun, 15 Oct 2006) | 1 line
Patch #1576166: Support os.utime for directories on Windows NT+.
........
r52336 | martin.v.loewis | 2006-10-15 10:51:22 +0200 (Sun, 15 Oct 2006) | 2 lines
Patch #1577551: Add ctypes and ET build support for VC6.
Will backport to 2.5.
........
r52338 | martin.v.loewis | 2006-10-15 11:35:51 +0200 (Sun, 15 Oct 2006) | 1 line
Loosen the test for equal time stamps.
........
r52339 | martin.v.loewis | 2006-10-15 11:43:39 +0200 (Sun, 15 Oct 2006) | 2 lines
Bug #1567666: Emulate GetFileAttributesExA for Win95.
Will backport to 2.5.
........
r52341 | martin.v.loewis | 2006-10-15 13:02:07 +0200 (Sun, 15 Oct 2006) | 2 lines
Round to int, because some systems support sub-second time stamps in stat, but not in utime.
Also be consistent with modifying only mtime, not atime.
........
r52342 | martin.v.loewis | 2006-10-15 13:57:40 +0200 (Sun, 15 Oct 2006) | 2 lines
Set the eol-style for project files to "CRLF".
........
r52343 | martin.v.loewis | 2006-10-15 13:59:56 +0200 (Sun, 15 Oct 2006) | 3 lines
Drop binary property on dsp files, set eol-style
to CRLF instead.
........
r52344 | martin.v.loewis | 2006-10-15 14:01:43 +0200 (Sun, 15 Oct 2006) | 2 lines
Remove binary property, set eol-style to CRLF instead.
........
r52346 | martin.v.loewis | 2006-10-15 16:30:38 +0200 (Sun, 15 Oct 2006) | 2 lines
Mention the bdist_msi module. Will backport to 2.5.
........
r52354 | brett.cannon | 2006-10-16 05:09:52 +0200 (Mon, 16 Oct 2006) | 3 lines
Fix turtle so that you can launch the demo2 function on its own instead of only
when the module is launched as a script.
........
r52356 | martin.v.loewis | 2006-10-17 17:18:06 +0200 (Tue, 17 Oct 2006) | 2 lines
Patch #1457736: Update VC6 to use current PCbuild settings.
Will backport to 2.5.
........
r52360 | martin.v.loewis | 2006-10-17 20:09:55 +0200 (Tue, 17 Oct 2006) | 2 lines
Remove obsolete file. Will backport.
........
r52363 | martin.v.loewis | 2006-10-17 20:59:23 +0200 (Tue, 17 Oct 2006) | 4 lines
Forward-port r52358:
- Bug #1578513: Cross compilation was broken by a change to configure.
Repair so that it's back to how it was in 2.4.3.
........
r52365 | thomas.heller | 2006-10-17 21:30:48 +0200 (Tue, 17 Oct 2006) | 6 lines
ctypes callback functions only support 'fundamental' result types.
Check this and raise an error when something else is used - before
this change ctypes would hang or crash when such a callback was
called. This is a partial fix for #1574584.
Will backport to release25-maint.
........
r52377 | tim.peters | 2006-10-18 07:06:06 +0200 (Wed, 18 Oct 2006) | 2 lines
newIobject(): repaired incorrect cast to quiet MSVC warning.
........
r52378 | tim.peters | 2006-10-18 07:09:12 +0200 (Wed, 18 Oct 2006) | 2 lines
Whitespace normalization.
........
r52379 | tim.peters | 2006-10-18 07:10:28 +0200 (Wed, 18 Oct 2006) | 2 lines
Add missing svn:eol-style to text files.
........
r52387 | martin.v.loewis | 2006-10-19 12:58:46 +0200 (Thu, 19 Oct 2006) | 3 lines
Add check for the PyArg_ParseTuple format, and declare
it if it is supported.
........
r52388 | martin.v.loewis | 2006-10-19 13:00:37 +0200 (Thu, 19 Oct 2006) | 3 lines
Fix various minor errors in passing arguments to
PyArg_ParseTuple.
........
r52389 | martin.v.loewis | 2006-10-19 18:01:37 +0200 (Thu, 19 Oct 2006) | 2 lines
Restore CFLAGS after checking for __attribute__
........
r52390 | andrew.kuchling | 2006-10-19 23:55:55 +0200 (Thu, 19 Oct 2006) | 1 line
[Bug #1576348] Fix typo in example
........
r52414 | walter.doerwald | 2006-10-22 10:59:41 +0200 (Sun, 22 Oct 2006) | 2 lines
Port test___future__ to unittest.
........
r52415 | ronald.oussoren | 2006-10-22 12:45:18 +0200 (Sun, 22 Oct 2006) | 3 lines
Patch #1580674: with this patch os.readlink uses the filesystem encoding to
decode unicode objects and returns an unicode object when the argument is one.
........
r52416 | martin.v.loewis | 2006-10-22 12:46:18 +0200 (Sun, 22 Oct 2006) | 3 lines
Patch #1580872: Remove duplicate declaration of PyCallable_Check.
Will backport to 2.5.
........
r52418 | martin.v.loewis | 2006-10-22 12:55:15 +0200 (Sun, 22 Oct 2006) | 4 lines
- Patch #1560695: Add .note.GNU-stack to ctypes' sysv.S so that
ctypes isn't considered as requiring executable stacks.
Will backport to 2.5.
........
r52420 | martin.v.loewis | 2006-10-22 15:45:13 +0200 (Sun, 22 Oct 2006) | 3 lines
Remove passwd.adjunct.byname from list of maps
for test_nis. Will backport to 2.5.
........
r52431 | georg.brandl | 2006-10-24 18:54:16 +0200 (Tue, 24 Oct 2006) | 2 lines
Patch [ 1583506 ] tarfile.py: 100-char filenames are truncated
........
r52446 | andrew.kuchling | 2006-10-26 21:10:46 +0200 (Thu, 26 Oct 2006) | 1 line
[Bug #1579796] Wrong syntax for PyDateTime_IMPORT in documentation. Reported by David Faure.
........
r52449 | andrew.kuchling | 2006-10-26 21:16:46 +0200 (Thu, 26 Oct 2006) | 1 line
Typo fix
........
r52452 | martin.v.loewis | 2006-10-27 08:16:31 +0200 (Fri, 27 Oct 2006) | 3 lines
Patch #1549049: Rewrite type conversion in structmember.
Fixes #1545696 and #1566140. Will backport to 2.5.
........
r52454 | martin.v.loewis | 2006-10-27 08:42:27 +0200 (Fri, 27 Oct 2006) | 2 lines
Check for values.h. Will backport.
........
r52456 | martin.v.loewis | 2006-10-27 09:06:52 +0200 (Fri, 27 Oct 2006) | 2 lines
Get DBL_MAX from float.h not values.h. Will backport.
........
r52458 | martin.v.loewis | 2006-10-27 09:13:28 +0200 (Fri, 27 Oct 2006) | 2 lines
Patch #1567274: Support SMTP over TLS.
........
r52459 | andrew.kuchling | 2006-10-27 13:33:29 +0200 (Fri, 27 Oct 2006) | 1 line
Set svn:keywords property
........
r52460 | andrew.kuchling | 2006-10-27 13:36:41 +0200 (Fri, 27 Oct 2006) | 1 line
Add item
........
r52461 | andrew.kuchling | 2006-10-27 13:37:01 +0200 (Fri, 27 Oct 2006) | 1 line
Some wording changes and markup fixes
........
r52462 | andrew.kuchling | 2006-10-27 14:18:38 +0200 (Fri, 27 Oct 2006) | 1 line
[Bug #1585690] Note that line_num was added in Python 2.5
........
r52464 | andrew.kuchling | 2006-10-27 14:50:38 +0200 (Fri, 27 Oct 2006) | 1 line
[Bug #1583946] Reword description of server and issuer
........
r52466 | andrew.kuchling | 2006-10-27 15:06:25 +0200 (Fri, 27 Oct 2006) | 1 line
[Bug #1562583] Mention the set_reuse_addr() method
........
r52469 | andrew.kuchling | 2006-10-27 15:22:46 +0200 (Fri, 27 Oct 2006) | 4 lines
[Bug #1542016] Report PCALL_POP value. This makes the return value of sys.callstats() match its docstring.
Backport candidate. Though it's an API change, this is a pretty obscure
portion of the API.
........
r52473 | andrew.kuchling | 2006-10-27 16:53:41 +0200 (Fri, 27 Oct 2006) | 1 line
Point users to the subprocess module in the docs for os.system, os.spawn*, os.popen2, and the popen2 and commands modules
........
r52476 | andrew.kuchling | 2006-10-27 18:39:10 +0200 (Fri, 27 Oct 2006) | 1 line
[Bug #1576241] Let functools.wraps work with built-in functions
........
r52478 | andrew.kuchling | 2006-10-27 18:55:34 +0200 (Fri, 27 Oct 2006) | 1 line
[Bug #1575506] The _singlefileMailbox class was using the wrong file object in its flush() method, causing an error
........
r52480 | andrew.kuchling | 2006-10-27 19:06:16 +0200 (Fri, 27 Oct 2006) | 1 line
Clarify docstring
........
r52481 | andrew.kuchling | 2006-10-27 19:11:23 +0200 (Fri, 27 Oct 2006) | 5 lines
[Patch #1574068 by Scott Dial] urllib and urllib2 were using
base64.encodestring() for encoding authentication data.
encodestring() can include newlines for very long input, which
produced broken HTTP headers.
........
r52483 | andrew.kuchling | 2006-10-27 20:13:46 +0200 (Fri, 27 Oct 2006) | 1 line
Check db_setup_debug for a few print statements; change sqlite_setup_debug to False
........
r52484 | andrew.kuchling | 2006-10-27 20:15:02 +0200 (Fri, 27 Oct 2006) | 1 line
[Patch #1503717] Tiny patch from Chris AtLee to stop a lengthy line from being printed
........
r52485 | thomas.heller | 2006-10-27 20:31:36 +0200 (Fri, 27 Oct 2006) | 5 lines
WindowsError.str should display the windows error code,
not the posix error code; with test.
Fixes #1576174.
Will backport to release25-maint.
........
r52487 | thomas.heller | 2006-10-27 21:05:53 +0200 (Fri, 27 Oct 2006) | 4 lines
Modulefinder now handles absolute and relative imports, including
tests.
Will backport to release25-maint.
........
r52488 | georg.brandl | 2006-10-27 22:39:43 +0200 (Fri, 27 Oct 2006) | 2 lines
Patch #1552024: add decorator support to unparse.py demo script.
........
r52492 | walter.doerwald | 2006-10-28 12:47:12 +0200 (Sat, 28 Oct 2006) | 2 lines
Port test_bufio to unittest.
........
r52493 | georg.brandl | 2006-10-28 15:10:17 +0200 (Sat, 28 Oct 2006) | 6 lines
Convert test_global, test_scope and test_grammar to unittest.
I tried to enclose all tests which must be run at the toplevel
(instead of inside a method) in exec statements.
........
r52494 | georg.brandl | 2006-10-28 15:11:41 +0200 (Sat, 28 Oct 2006) | 3 lines
Update outstanding bugs test file.
........
r52495 | georg.brandl | 2006-10-28 15:51:49 +0200 (Sat, 28 Oct 2006) | 3 lines
Convert test_math to unittest.
........
r52496 | georg.brandl | 2006-10-28 15:56:58 +0200 (Sat, 28 Oct 2006) | 3 lines
Convert test_opcodes to unittest.
........
r52497 | georg.brandl | 2006-10-28 18:04:04 +0200 (Sat, 28 Oct 2006) | 2 lines
Fix nth() itertool recipe.
........
r52500 | georg.brandl | 2006-10-28 22:25:09 +0200 (Sat, 28 Oct 2006) | 2 lines
make test_grammar pass with python -O
........
r52501 | neal.norwitz | 2006-10-28 23:15:30 +0200 (Sat, 28 Oct 2006) | 6 lines
Add some asserts. In sysmodule, I think these were to try to silence
some warnings from Klokwork. They verify the assumptions of the format
of svn version output.
The assert in the thread module helped debug a problem on HP-UX.
........
r52502 | neal.norwitz | 2006-10-28 23:16:54 +0200 (Sat, 28 Oct 2006) | 5 lines
Fix warnings with HP's C compiler. It doesn't recognize that infinite
loops are, um, infinite. These conditions should not be able to happen.
Will backport.
........
r52503 | neal.norwitz | 2006-10-28 23:17:51 +0200 (Sat, 28 Oct 2006) | 5 lines
Fix crash in test on HP-UX. Apparently, it's not possible to delete a lock if
it's held (even by the current thread).
Will backport.
........
r52504 | neal.norwitz | 2006-10-28 23:19:07 +0200 (Sat, 28 Oct 2006) | 6 lines
Fix bug #1565514, SystemError not raised on too many nested blocks.
It seems like this should be a different error than SystemError, but
I don't have any great ideas and SystemError was raised in 2.4 and earlier.
Will backport.
........
r52505 | neal.norwitz | 2006-10-28 23:20:12 +0200 (Sat, 28 Oct 2006) | 4 lines
Prevent crash if alloc of garbage fails. Found by Typo.pl.
Will backport.
........
r52506 | neal.norwitz | 2006-10-28 23:21:00 +0200 (Sat, 28 Oct 2006) | 4 lines
Don't inline Py_ADDRESS_IN_RANGE with gcc 4+ either.
Will backport.
........
r52513 | neal.norwitz | 2006-10-28 23:56:49 +0200 (Sat, 28 Oct 2006) | 2 lines
Fix test_modulefinder so it doesn't fail when run after test_distutils.
........
r52514 | neal.norwitz | 2006-10-29 00:12:26 +0200 (Sun, 29 Oct 2006) | 4 lines
From SF 1557890, fix problem of using wrong type in example.
Will backport.
........
r52517 | georg.brandl | 2006-10-29 09:39:22 +0100 (Sun, 29 Oct 2006) | 4 lines
Fix codecs.EncodedFile which did not use file_encoding in 2.5.0, and
fix all codecs file wrappers to work correctly with the "with"
statement (bug #1586513).
........
r52519 | georg.brandl | 2006-10-29 09:47:08 +0100 (Sun, 29 Oct 2006) | 3 lines
Clean up a leftover from old listcomp generation code.
........
r52520 | georg.brandl | 2006-10-29 09:53:06 +0100 (Sun, 29 Oct 2006) | 4 lines
Bug #1586448: the compiler module now emits the same bytecode for
list comprehensions as the builtin compiler, using the LIST_APPEND
opcode.
........
r52521 | georg.brandl | 2006-10-29 10:01:01 +0100 (Sun, 29 Oct 2006) | 3 lines
Remove trailing comma.
........
r52522 | georg.brandl | 2006-10-29 10:05:04 +0100 (Sun, 29 Oct 2006) | 3 lines
Bug #1357915: allow all sequence types for shell arguments in
subprocess.
........
r52524 | georg.brandl | 2006-10-29 10:16:12 +0100 (Sun, 29 Oct 2006) | 3 lines
Patch #1583880: fix tarfile's problems with long names and posix/
GNU modes.
........
r52526 | georg.brandl | 2006-10-29 10:18:00 +0100 (Sun, 29 Oct 2006) | 3 lines
Test assert if __debug__ is true.
........
r52527 | georg.brandl | 2006-10-29 10:32:16 +0100 (Sun, 29 Oct 2006) | 2 lines
Fix the new EncodedFile test to work with big endian platforms.
........
r52529 | georg.brandl | 2006-10-29 15:39:09 +0100 (Sun, 29 Oct 2006) | 2 lines
Bug #1586613: fix zlib and bz2 codecs' incremental en/decoders.
........
r52532 | georg.brandl | 2006-10-29 19:01:08 +0100 (Sun, 29 Oct 2006) | 2 lines
Bug #1586773: extend hashlib docstring.
........
r52534 | neal.norwitz | 2006-10-29 19:30:10 +0100 (Sun, 29 Oct 2006) | 4 lines
Update comments, remove commented out code.
Move assembler structure next to assembler code to make it easier to
move it to a separate file.
........
r52535 | georg.brandl | 2006-10-29 19:31:42 +0100 (Sun, 29 Oct 2006) | 3 lines
Bug #1576657: when setting a KeyError for a tuple key, make sure that
the tuple isn't used as the "exception arguments tuple".
........
r52537 | georg.brandl | 2006-10-29 20:13:40 +0100 (Sun, 29 Oct 2006) | 3 lines
Convert test_mmap to unittest.
........
r52538 | georg.brandl | 2006-10-29 20:20:45 +0100 (Sun, 29 Oct 2006) | 3 lines
Convert test_poll to unittest.
........
r52539 | georg.brandl | 2006-10-29 20:24:43 +0100 (Sun, 29 Oct 2006) | 3 lines
Convert test_nis to unittest.
........
r52540 | georg.brandl | 2006-10-29 20:35:03 +0100 (Sun, 29 Oct 2006) | 3 lines
Convert test_types to unittest.
........
r52541 | georg.brandl | 2006-10-29 20:51:16 +0100 (Sun, 29 Oct 2006) | 3 lines
Convert test_cookie to unittest.
........
r52542 | georg.brandl | 2006-10-29 21:09:12 +0100 (Sun, 29 Oct 2006) | 3 lines
Convert test_cgi to unittest.
........
r52543 | georg.brandl | 2006-10-29 21:24:01 +0100 (Sun, 29 Oct 2006) | 3 lines
Completely convert test_httplib to unittest.
........
r52544 | georg.brandl | 2006-10-29 21:28:26 +0100 (Sun, 29 Oct 2006) | 2 lines
Convert test_MimeWriter to unittest.
........
r52545 | georg.brandl | 2006-10-29 21:31:17 +0100 (Sun, 29 Oct 2006) | 3 lines
Convert test_openpty to unittest.
........
r52546 | georg.brandl | 2006-10-29 21:35:12 +0100 (Sun, 29 Oct 2006) | 3 lines
Remove leftover test output file.
........
r52547 | georg.brandl | 2006-10-29 22:54:18 +0100 (Sun, 29 Oct 2006) | 3 lines
Move the check for openpty to the beginning.
........
r52548 | walter.doerwald | 2006-10-29 23:06:28 +0100 (Sun, 29 Oct 2006) | 2 lines
Add tests for basic argument errors.
........
r52549 | walter.doerwald | 2006-10-30 00:02:27 +0100 (Mon, 30 Oct 2006) | 3 lines
Add tests for incremental codecs with an errors
argument.
........
r52550 | neal.norwitz | 2006-10-30 00:39:03 +0100 (Mon, 30 Oct 2006) | 1 line
Fix refleak
........
r52552 | neal.norwitz | 2006-10-30 00:58:36 +0100 (Mon, 30 Oct 2006) | 1 line
I'm assuming this is correct, it fixes the tests so they pass again
........
r52555 | vinay.sajip | 2006-10-31 18:32:37 +0100 (Tue, 31 Oct 2006) | 1 line
Change to improve speed of _fixupChildren
........
r52556 | vinay.sajip | 2006-10-31 18:34:31 +0100 (Tue, 31 Oct 2006) | 1 line
Added relativeCreated to Formatter doc (has been in the system for a long time - was unaccountably left out of the docs and not noticed until now).
........
r52588 | thomas.heller | 2006-11-02 20:48:24 +0100 (Thu, 02 Nov 2006) | 5 lines
Replace the XXX marker in the 'Arrays and pointers' reference manual
section with a link to the tutorial sections.
Will backport to release25-maint.
........
r52592 | thomas.heller | 2006-11-02 21:22:29 +0100 (Thu, 02 Nov 2006) | 6 lines
Fix a code example by adding a missing import.
Fixes #1557890.
Will backport to release25-maint.
........
r52598 | tim.peters | 2006-11-03 03:32:46 +0100 (Fri, 03 Nov 2006) | 2 lines
Whitespace normalization.
........
r52619 | martin.v.loewis | 2006-11-04 19:14:06 +0100 (Sat, 04 Nov 2006) | 4 lines
- Patch #1060577: Extract list of RPM files from spec file in
bdist_rpm
Will backport to 2.5.
........
r52621 | neal.norwitz | 2006-11-04 20:25:22 +0100 (Sat, 04 Nov 2006) | 4 lines
Bug #1588287: fix invalid assertion for `1,2` in debug builds.
Will backport
........
r52630 | andrew.kuchling | 2006-11-05 22:04:37 +0100 (Sun, 05 Nov 2006) | 1 line
Update link
........
r52631 | skip.montanaro | 2006-11-06 15:34:52 +0100 (Mon, 06 Nov 2006) | 1 line
note that user can control directory location even if default dir is used
........
r52644 | ronald.oussoren | 2006-11-07 16:53:38 +0100 (Tue, 07 Nov 2006) | 2 lines
Fix a number of typos in strings and comments (sf#1589070)
........
r52647 | ronald.oussoren | 2006-11-07 17:00:34 +0100 (Tue, 07 Nov 2006) | 2 lines
Whitespace changes to make the source more compliant with PEP8 (SF#1589070)
........
r52651 | thomas.heller | 2006-11-07 19:01:18 +0100 (Tue, 07 Nov 2006) | 3 lines
Fix markup.
Will backport to release25-maint.
........
r52653 | thomas.heller | 2006-11-07 19:20:47 +0100 (Tue, 07 Nov 2006) | 3 lines
Fix grammatical error as well.
Will backport to release25-maint.
........
r52657 | andrew.kuchling | 2006-11-07 21:39:16 +0100 (Tue, 07 Nov 2006) | 1 line
Add missing word
........
r52662 | martin.v.loewis | 2006-11-08 07:46:37 +0100 (Wed, 08 Nov 2006) | 4 lines
Correctly forward exception in instance_contains().
Fixes #1591996. Patch contributed by Neal Norwitz.
Will backport.
........
r52664 | martin.v.loewis | 2006-11-08 07:48:36 +0100 (Wed, 08 Nov 2006) | 2 lines
News entry for 52662.
........
r52665 | martin.v.loewis | 2006-11-08 08:35:55 +0100 (Wed, 08 Nov 2006) | 2 lines
Patch #1351744: Add askyesnocancel helper for tkMessageBox.
........
r52666 | georg.brandl | 2006-11-08 08:45:59 +0100 (Wed, 08 Nov 2006) | 2 lines
Patch #1592072: fix docs for return value of PyErr_CheckSignals.
........
r52668 | georg.brandl | 2006-11-08 11:04:29 +0100 (Wed, 08 Nov 2006) | 3 lines
Bug #1592533: rename variable in heapq doc example, to avoid shadowing
"sorted".
........
r52671 | andrew.kuchling | 2006-11-08 14:35:34 +0100 (Wed, 08 Nov 2006) | 1 line
Add section on the functional module
........
r52672 | andrew.kuchling | 2006-11-08 15:14:30 +0100 (Wed, 08 Nov 2006) | 1 line
Add section on operator module; make a few edits
........
r52673 | andrew.kuchling | 2006-11-08 15:24:03 +0100 (Wed, 08 Nov 2006) | 1 line
Add table of contents; this required fixing a few headings. Some more smalle edits.
........
r52674 | andrew.kuchling | 2006-11-08 15:30:14 +0100 (Wed, 08 Nov 2006) | 1 line
More edits
........
r52686 | martin.v.loewis | 2006-11-09 12:06:03 +0100 (Thu, 09 Nov 2006) | 3 lines
Patch #838546: Make terminal become controlling in pty.fork().
Will backport to 2.5.
........
r52688 | martin.v.loewis | 2006-11-09 12:27:32 +0100 (Thu, 09 Nov 2006) | 2 lines
Patch #1592250: Add elidge argument to Tkinter.Text.search.
........
r52690 | andrew.kuchling | 2006-11-09 14:27:07 +0100 (Thu, 09 Nov 2006) | 7 lines
[Bug #1569790] mailbox.Maildir.get_folder() loses factory information
Both the Maildir and MH classes had this bug; the patch fixes both classes
and adds a test.
Will backport to 25-maint.
........
r52692 | andrew.kuchling | 2006-11-09 14:51:14 +0100 (Thu, 09 Nov 2006) | 1 line
[Patch #1514544 by David Watson] use fsync() to ensure data is really on disk
........
r52695 | walter.doerwald | 2006-11-09 17:23:26 +0100 (Thu, 09 Nov 2006) | 2 lines
Replace C++ comment with C comment (fixes SF bug #1593525).
........
r52712 | andrew.kuchling | 2006-11-09 22:16:46 +0100 (Thu, 09 Nov 2006) | 11 lines
[Patch #1514543] mailbox (Maildir): avoid losing messages on name clash
Two changes:
Where possible, use link()/remove() to move files into a directory; this
makes it easier to avoid overwriting an existing file.
Use _create_carefully() to create files in tmp/, which uses O_EXCL.
Backport candidate.
........
r52716 | phillip.eby | 2006-11-10 01:33:36 +0100 (Fri, 10 Nov 2006) | 4 lines
Fix SF#1566719: not creating site-packages (or other target directory) when
installing .egg-info for a project that contains no modules or packages,
while using --root (as in bdist_rpm).
........
r52719 | andrew.kuchling | 2006-11-10 14:14:01 +0100 (Fri, 10 Nov 2006) | 1 line
Reword entry
........
r52725 | andrew.kuchling | 2006-11-10 15:39:01 +0100 (Fri, 10 Nov 2006) | 1 line
[Feature request #1542920] Link to wsgi.org
........
r52731 | georg.brandl | 2006-11-11 19:29:11 +0100 (Sat, 11 Nov 2006) | 2 lines
Bug #1594742: wrong word in stringobject doc.
........
r52733 | georg.brandl | 2006-11-11 19:32:47 +0100 (Sat, 11 Nov 2006) | 2 lines
Bug #1594758: wording improvement for dict.update() docs.
........
r52736 | martin.v.loewis | 2006-11-12 11:32:47 +0100 (Sun, 12 Nov 2006) | 3 lines
Patch #1065257: Support passing open files as body in
HTTPConnection.request().
........
r52737 | martin.v.loewis | 2006-11-12 11:41:39 +0100 (Sun, 12 Nov 2006) | 2 lines
Patch #1355023: support whence argument for GzipFile.seek.
........
r52738 | martin.v.loewis | 2006-11-12 19:24:26 +0100 (Sun, 12 Nov 2006) | 2 lines
Bug #1067760: Deprecate passing floats to file.seek.
........
r52739 | martin.v.loewis | 2006-11-12 19:48:13 +0100 (Sun, 12 Nov 2006) | 3 lines
Patch #1359217: Ignore 2xx response before 150 response.
Will backport to 2.5.
........
r52741 | martin.v.loewis | 2006-11-12 19:56:03 +0100 (Sun, 12 Nov 2006) | 4 lines
Patch #1360200: Use unmangled_version RPM spec field to deal with
file name mangling.
Will backport to 2.5.
........
r52753 | walter.doerwald | 2006-11-15 17:23:46 +0100 (Wed, 15 Nov 2006) | 2 lines
Fix typo.
........
r52754 | georg.brandl | 2006-11-15 18:42:03 +0100 (Wed, 15 Nov 2006) | 2 lines
Bug #1594809: add a note to README regarding PYTHONPATH and make install.
........
r52762 | georg.brandl | 2006-11-16 16:05:14 +0100 (Thu, 16 Nov 2006) | 2 lines
Bug #1597576: mention that the new base64 api has been introduced in py2.4.
........
r52764 | georg.brandl | 2006-11-16 17:50:59 +0100 (Thu, 16 Nov 2006) | 3 lines
Bug #1597824: return the registered function from atexit.register()
to facilitate usage as a decorator.
........
r52765 | georg.brandl | 2006-11-16 18:08:45 +0100 (Thu, 16 Nov 2006) | 4 lines
Bug #1588217: don't parse "= " as a soft line break in binascii's
a2b_qp() function, instead leave it in the string as quopri.decode()
does.
........
r52776 | andrew.kuchling | 2006-11-17 14:30:25 +0100 (Fri, 17 Nov 2006) | 17 lines
Remove file-locking in MH.pack() method.
This change looks massive but it's mostly a re-indenting after
removing some try...finally blocks.
Also adds a test case that does a pack() while the mailbox is locked; this
test would have turned up bugs in the original code on some platforms.
In both nmh and GNU Mailutils' implementation of MH-format mailboxes,
no locking is done of individual message files when renaming them.
The original mailbox.py code did do locking, which meant that message
files had to be opened. This code was buggy on certain platforms
(found through reading the code); there were code paths that closed
the file object and then called _unlock_file() on it.
Will backport to 25-maint once I see how the buildbots react to this patch.
........
r52780 | martin.v.loewis | 2006-11-18 19:00:23 +0100 (Sat, 18 Nov 2006) | 5 lines
Patch #1538878: Don't make tkSimpleDialog dialogs transient if
the parent window is withdrawn. This mirrors what dialog.tcl
does.
Will backport to 2.5.
........
r52782 | martin.v.loewis | 2006-11-18 19:05:35 +0100 (Sat, 18 Nov 2006) | 4 lines
Patch #1594554: Always close a tkSimpleDialog on ok(), even
if an exception occurs.
Will backport to 2.5.
........
r52784 | martin.v.loewis | 2006-11-18 19:42:11 +0100 (Sat, 18 Nov 2006) | 3 lines
Patch #1472877: Fix Tix subwidget name resolution.
Will backport to 2.5.
........
r52786 | andrew.kuchling | 2006-11-18 23:17:33 +0100 (Sat, 18 Nov 2006) | 1 line
Expand checking in test_sha
........
r52787 | georg.brandl | 2006-11-19 09:48:30 +0100 (Sun, 19 Nov 2006) | 3 lines
Patch [ 1586791 ] better error msgs for some TypeErrors
........
r52788 | martin.v.loewis | 2006-11-19 11:41:41 +0100 (Sun, 19 Nov 2006) | 4 lines
Make cStringIO.truncate raise IOError for negative
arguments (even for -1). Fixes the last bit of
#1359365.
........
r52789 | andrew.kuchling | 2006-11-19 19:40:01 +0100 (Sun, 19 Nov 2006) | 1 line
Add a test case of data w/ bytes > 127
........
r52790 | martin.v.loewis | 2006-11-19 19:51:54 +0100 (Sun, 19 Nov 2006) | 3 lines
Patch #1070046: Marshal new-style objects like InstanceType
in xmlrpclib.
........
r52792 | neal.norwitz | 2006-11-19 22:26:53 +0100 (Sun, 19 Nov 2006) | 4 lines
Speed up function calls into the math module by using METH_O.
There should be no functional changes. However, the error msgs are
slightly different. Also verified that the module dict is not NULL on init.
........
r52794 | george.yoshida | 2006-11-20 03:24:48 +0100 (Mon, 20 Nov 2006) | 2 lines
markup fix
........
r52795 | georg.brandl | 2006-11-20 08:12:58 +0100 (Mon, 20 Nov 2006) | 3 lines
Further markup fix.
........
r52800 | andrew.kuchling | 2006-11-20 14:39:37 +0100 (Mon, 20 Nov 2006) | 2 lines
Jython compatibility fix: if uu.decode() opened its output file, be sure to
close it.
........
r52811 | neal.norwitz | 2006-11-21 06:26:22 +0100 (Tue, 21 Nov 2006) | 9 lines
Bug #1599782: Fix segfault on bsddb.db.DB().type().
The problem is that _DB_get_type() can't be called without the GIL
because it calls a bunch of PyErr_* APIs when an error occurs.
There were no other cases in this file that it was called without the GIL.
Removing the BEGIN/END THREAD around _DB_get_type() made everything work.
Will backport.
........
r52814 | neal.norwitz | 2006-11-21 06:51:51 +0100 (Tue, 21 Nov 2006) | 1 line
Oops, convert tabs to spaces
........
r52815 | neal.norwitz | 2006-11-21 07:23:44 +0100 (Tue, 21 Nov 2006) | 1 line
Fix SF #1599879, socket.gethostname should ref getfqdn directly.
........
r52817 | martin.v.loewis | 2006-11-21 19:20:25 +0100 (Tue, 21 Nov 2006) | 4 lines
Conditionalize definition of _CRT_SECURE_NO_DEPRECATE
and _CRT_NONSTDC_NO_DEPRECATE.
Will backport.
........
r52821 | martin.v.loewis | 2006-11-22 09:50:02 +0100 (Wed, 22 Nov 2006) | 4 lines
Patch #1362975: Rework CodeContext indentation algorithm to
avoid hard-coding pixel widths. Also make the text's scrollbar
a child of the text frame, not the top widget.
........
r52826 | walter.doerwald | 2006-11-23 06:03:56 +0100 (Thu, 23 Nov 2006) | 3 lines
Change decode() so that it works with a buffer (i.e. unicode(..., 'utf-8-sig'))
SF bug #1601501.
........
r52833 | georg.brandl | 2006-11-23 10:55:07 +0100 (Thu, 23 Nov 2006) | 2 lines
Bug #1601630: little improvement to getopt docs
........
r52835 | michael.hudson | 2006-11-23 14:54:04 +0100 (Thu, 23 Nov 2006) | 3 lines
a test for an error condition not covered by existing tests
(noticed this when writing the equivalent code for pypy)
........
r52839 | raymond.hettinger | 2006-11-23 22:06:03 +0100 (Thu, 23 Nov 2006) | 1 line
Fix and/add typo
........
r52840 | raymond.hettinger | 2006-11-23 22:35:19 +0100 (Thu, 23 Nov 2006) | 1 line
... and the number of the counting shall be three.
........
r52841 | thomas.heller | 2006-11-24 19:45:39 +0100 (Fri, 24 Nov 2006) | 1 line
Fix bug #1598620: A ctypes structure cannot contain itself.
........
r52843 | martin.v.loewis | 2006-11-25 16:39:19 +0100 (Sat, 25 Nov 2006) | 3 lines
Disable _XOPEN_SOURCE on NetBSD 1.x.
Will backport to 2.5
........
r52845 | georg.brandl | 2006-11-26 20:27:47 +0100 (Sun, 26 Nov 2006) | 2 lines
Bug #1603321: make pstats.Stats accept Unicode file paths.
........
r52850 | georg.brandl | 2006-11-27 19:46:21 +0100 (Mon, 27 Nov 2006) | 2 lines
Bug #1603789: grammatical error in Tkinter docs.
........
r52855 | thomas.heller | 2006-11-28 21:21:54 +0100 (Tue, 28 Nov 2006) | 7 lines
Fix #1563807: _ctypes built on AIX fails with ld ffi error.
The contents of ffi_darwin.c must be compiled unless __APPLE__ is
defined and __ppc__ is not.
Will backport.
........
r52862 | armin.rigo | 2006-11-29 22:59:22 +0100 (Wed, 29 Nov 2006) | 3 lines
Forgot a case where the locals can now be a general mapping
instead of just a dictionary. (backporting...)
........
r52872 | guido.van.rossum | 2006-11-30 20:23:13 +0100 (Thu, 30 Nov 2006) | 2 lines
Update version.
........
r52890 | walter.doerwald | 2006-12-01 17:59:47 +0100 (Fri, 01 Dec 2006) | 3 lines
Move xdrlib tests from the module into a separate test script,
port the tests to unittest and add a few new tests.
........
r52900 | raymond.hettinger | 2006-12-02 03:00:39 +0100 (Sat, 02 Dec 2006) | 1 line
Add name to credits (for untokenize).
........
r52905 | martin.v.loewis | 2006-12-03 10:54:46 +0100 (Sun, 03 Dec 2006) | 2 lines
Move IDLE news into NEWS.txt.
........
r52906 | martin.v.loewis | 2006-12-03 12:23:45 +0100 (Sun, 03 Dec 2006) | 4 lines
Patch #1544279: Improve thread-safety of the socket module by moving
the sock_addr_t storage out of the socket object.
Will backport to 2.5.
........
r52908 | martin.v.loewis | 2006-12-03 13:01:53 +0100 (Sun, 03 Dec 2006) | 3 lines
Patch #1371075: Make ConfigParser accept optional dict type
for ordering, sorting, etc.
........
r52910 | matthias.klose | 2006-12-03 18:16:41 +0100 (Sun, 03 Dec 2006) | 2 lines
- Fix build failure on kfreebsd and on the hurd.
........
r52915 | george.yoshida | 2006-12-04 12:41:54 +0100 (Mon, 04 Dec 2006) | 2 lines
fix a versionchanged tag
........
r52917 | george.yoshida | 2006-12-05 06:39:50 +0100 (Tue, 05 Dec 2006) | 3 lines
Fix pickle doc typo
Patch #1608758
........
r52938 | georg.brandl | 2006-12-06 23:21:18 +0100 (Wed, 06 Dec 2006) | 2 lines
Patch #1610437: fix a tarfile bug with long filename headers.
........
r52945 | brett.cannon | 2006-12-07 00:38:48 +0100 (Thu, 07 Dec 2006) | 3 lines
Fix a bad assumption that all objects assigned to '__loader__' on a module
will have a '_files' attribute.
........
r52951 | georg.brandl | 2006-12-07 10:30:06 +0100 (Thu, 07 Dec 2006) | 3 lines
RFE #1592899: mention string.maketrans() in docs for str.translate,
remove reference to the old regex module in the former's doc.
........
r52962 | raymond.hettinger | 2006-12-08 04:17:18 +0100 (Fri, 08 Dec 2006) | 1 line
Eliminate two redundant calls to PyObject_Hash().
........
r52963 | raymond.hettinger | 2006-12-08 05:24:33 +0100 (Fri, 08 Dec 2006) | 3 lines
Port Armin's fix for a dict resize vulnerability (svn revision 46589, sf bug 1456209).
........
r52964 | raymond.hettinger | 2006-12-08 05:57:50 +0100 (Fri, 08 Dec 2006) | 4 lines
Port Georg's dictobject.c fix keys that were tuples got unpacked on the way to setting a KeyError (svn revision 52535, sf bug
1576657).
........
r52966 | raymond.hettinger | 2006-12-08 18:35:25 +0100 (Fri, 08 Dec 2006) | 2 lines
Add test for SF bug 1576657
........
r52970 | georg.brandl | 2006-12-08 21:46:11 +0100 (Fri, 08 Dec 2006) | 3 lines
#1577756: svnversion doesn't react to LANG=C, use LC_ALL=C to force
English output.
........
r52972 | georg.brandl | 2006-12-09 10:08:29 +0100 (Sat, 09 Dec 2006) | 3 lines
Patch #1608267: fix a race condition in os.makedirs() is the directory
to be created is already there.
........
r52975 | matthias.klose | 2006-12-09 13:15:27 +0100 (Sat, 09 Dec 2006) | 2 lines
- Fix the build of the library reference in info format.
........
r52994 | neal.norwitz | 2006-12-11 02:01:06 +0100 (Mon, 11 Dec 2006) | 1 line
Fix a typo
........
r52996 | georg.brandl | 2006-12-11 08:56:33 +0100 (Mon, 11 Dec 2006) | 2 lines
Move errno imports back to individual functions.
........
r52998 | vinay.sajip | 2006-12-11 15:07:16 +0100 (Mon, 11 Dec 2006) | 1 line
Patch by Jeremy Katz (SF #1609407)
........
r53000 | vinay.sajip | 2006-12-11 15:26:23 +0100 (Mon, 11 Dec 2006) | 1 line
Patch by "cuppatea" (SF #1503765)
........
2006-12-13 00:49:30 -04:00
|
|
|
|
2011-03-16 13:40:25 -03:00
|
|
|
def test_stdout_devnull(self):
|
|
|
|
p = subprocess.Popen([sys.executable, "-c",
|
|
|
|
'for i in range(10240):'
|
|
|
|
'print("x" * 1024)'],
|
|
|
|
stdout=subprocess.DEVNULL)
|
|
|
|
p.wait()
|
|
|
|
self.assertEqual(p.stdout, None)
|
|
|
|
|
|
|
|
def test_stderr_devnull(self):
|
|
|
|
p = subprocess.Popen([sys.executable, "-c",
|
|
|
|
'import sys\n'
|
|
|
|
'for i in range(10240):'
|
|
|
|
'sys.stderr.write("x" * 1024)'],
|
|
|
|
stderr=subprocess.DEVNULL)
|
|
|
|
p.wait()
|
|
|
|
self.assertEqual(p.stderr, None)
|
|
|
|
|
|
|
|
def test_stdin_devnull(self):
|
|
|
|
p = subprocess.Popen([sys.executable, "-c",
|
|
|
|
'import sys;'
|
|
|
|
'sys.stdin.read(1)'],
|
|
|
|
stdin=subprocess.DEVNULL)
|
|
|
|
p.wait()
|
|
|
|
self.assertEqual(p.stdin, None)
|
|
|
|
|
2004-10-12 12:26:28 -03:00
|
|
|
def test_env(self):
|
|
|
|
newenv = os.environ.copy()
|
|
|
|
newenv["FRUIT"] = "orange"
|
2011-06-21 12:18:38 -03:00
|
|
|
with subprocess.Popen([sys.executable, "-c",
|
|
|
|
'import sys,os;'
|
|
|
|
'sys.stdout.write(os.getenv("FRUIT"))'],
|
|
|
|
stdout=subprocess.PIPE,
|
|
|
|
env=newenv) as p:
|
|
|
|
stdout, stderr = p.communicate()
|
|
|
|
self.assertEqual(stdout, b"orange")
|
|
|
|
|
2011-06-22 20:02:25 -03:00
|
|
|
# Windows requires at least the SYSTEMROOT environment variable to start
|
|
|
|
# Python
|
|
|
|
@unittest.skipIf(sys.platform == 'win32',
|
|
|
|
'cannot test an empty env on Windows')
|
2017-05-30 18:40:37 -03:00
|
|
|
@unittest.skipIf(sysconfig.get_config_var('Py_ENABLE_SHARED') == 1,
|
|
|
|
'The Python shared library cannot be loaded '
|
|
|
|
'with an empty environment.')
|
2011-06-21 12:18:38 -03:00
|
|
|
def test_empty_env(self):
|
2017-05-30 18:40:37 -03:00
|
|
|
"""Verify that env={} is as empty as possible."""
|
|
|
|
|
2017-05-30 20:21:47 -03:00
|
|
|
def is_env_var_to_ignore(n):
|
2017-05-30 18:40:37 -03:00
|
|
|
"""Determine if an environment variable is under our control."""
|
|
|
|
# This excludes some __CF_* and VERSIONER_* keys MacOS insists
|
|
|
|
# on adding even when the environment in exec is empty.
|
|
|
|
# Gentoo sandboxes also force LD_PRELOAD and SANDBOX_* to exist.
|
2017-05-30 20:21:47 -03:00
|
|
|
return ('VERSIONER' in n or '__CF' in n or # MacOS
|
2017-09-04 01:00:21 -03:00
|
|
|
'__PYVENV_LAUNCHER__' in n or # MacOS framework build
|
2017-06-11 00:16:15 -03:00
|
|
|
n == 'LD_PRELOAD' or n.startswith('SANDBOX') or # Gentoo
|
|
|
|
n == 'LC_CTYPE') # Locale coercion triggered
|
2017-05-30 18:40:37 -03:00
|
|
|
|
2011-06-21 12:18:38 -03:00
|
|
|
with subprocess.Popen([sys.executable, "-c",
|
2017-05-30 18:40:37 -03:00
|
|
|
'import os; print(list(os.environ.keys()))'],
|
|
|
|
stdout=subprocess.PIPE, env={}) as p:
|
2011-06-21 12:18:38 -03:00
|
|
|
stdout, stderr = p.communicate()
|
2017-05-30 18:40:37 -03:00
|
|
|
child_env_names = eval(stdout.strip())
|
|
|
|
self.assertIsInstance(child_env_names, list)
|
|
|
|
child_env_names = [k for k in child_env_names
|
|
|
|
if not is_env_var_to_ignore(k)]
|
|
|
|
self.assertEqual(child_env_names, [])
|
2004-10-12 12:26:28 -03:00
|
|
|
|
2017-06-23 13:39:27 -03:00
|
|
|
def test_invalid_cmd(self):
|
|
|
|
# null character in the command name
|
|
|
|
cmd = sys.executable + '\0'
|
|
|
|
with self.assertRaises(ValueError):
|
|
|
|
subprocess.Popen([cmd, "-c", "pass"])
|
|
|
|
|
|
|
|
# null character in the command argument
|
|
|
|
with self.assertRaises(ValueError):
|
|
|
|
subprocess.Popen([sys.executable, "-c", "pass#\0"])
|
|
|
|
|
|
|
|
def test_invalid_env(self):
|
2017-08-03 03:00:59 -03:00
|
|
|
# null character in the environment variable name
|
2017-06-23 13:39:27 -03:00
|
|
|
newenv = os.environ.copy()
|
|
|
|
newenv["FRUIT\0VEGETABLE"] = "cabbage"
|
|
|
|
with self.assertRaises(ValueError):
|
2019-10-14 17:40:32 -03:00
|
|
|
subprocess.Popen(ZERO_RETURN_CMD, env=newenv)
|
2017-06-23 13:39:27 -03:00
|
|
|
|
2017-08-03 03:00:59 -03:00
|
|
|
# null character in the environment variable value
|
2017-06-23 13:39:27 -03:00
|
|
|
newenv = os.environ.copy()
|
|
|
|
newenv["FRUIT"] = "orange\0VEGETABLE=cabbage"
|
|
|
|
with self.assertRaises(ValueError):
|
2019-10-14 17:40:32 -03:00
|
|
|
subprocess.Popen(ZERO_RETURN_CMD, env=newenv)
|
2017-06-23 13:39:27 -03:00
|
|
|
|
2017-08-03 03:00:59 -03:00
|
|
|
# equal character in the environment variable name
|
2017-06-23 13:39:27 -03:00
|
|
|
newenv = os.environ.copy()
|
|
|
|
newenv["FRUIT=ORANGE"] = "lemon"
|
|
|
|
with self.assertRaises(ValueError):
|
2019-10-14 17:40:32 -03:00
|
|
|
subprocess.Popen(ZERO_RETURN_CMD, env=newenv)
|
2017-06-23 13:39:27 -03:00
|
|
|
|
2017-08-03 03:00:59 -03:00
|
|
|
# equal character in the environment variable value
|
2017-06-23 13:39:27 -03:00
|
|
|
newenv = os.environ.copy()
|
|
|
|
newenv["FRUIT"] = "orange=lemon"
|
|
|
|
with subprocess.Popen([sys.executable, "-c",
|
|
|
|
'import sys, os;'
|
|
|
|
'sys.stdout.write(os.getenv("FRUIT"))'],
|
|
|
|
stdout=subprocess.PIPE,
|
|
|
|
env=newenv) as p:
|
|
|
|
stdout, stderr = p.communicate()
|
|
|
|
self.assertEqual(stdout, b"orange=lemon")
|
|
|
|
|
2005-03-03 16:24:28 -04:00
|
|
|
def test_communicate_stdin(self):
|
|
|
|
p = subprocess.Popen([sys.executable, "-c",
|
2007-11-06 17:34:58 -04:00
|
|
|
'import sys;'
|
|
|
|
'sys.exit(sys.stdin.read() == "pear")'],
|
2005-03-03 16:24:28 -04:00
|
|
|
stdin=subprocess.PIPE)
|
2007-08-27 20:58:21 -03:00
|
|
|
p.communicate(b"pear")
|
2005-03-03 16:24:28 -04:00
|
|
|
self.assertEqual(p.returncode, 1)
|
|
|
|
|
|
|
|
def test_communicate_stdout(self):
|
|
|
|
p = subprocess.Popen([sys.executable, "-c",
|
|
|
|
'import sys; sys.stdout.write("pineapple")'],
|
|
|
|
stdout=subprocess.PIPE)
|
|
|
|
(stdout, stderr) = p.communicate()
|
2007-05-24 01:05:35 -03:00
|
|
|
self.assertEqual(stdout, b"pineapple")
|
2005-03-03 16:24:28 -04:00
|
|
|
self.assertEqual(stderr, None)
|
|
|
|
|
|
|
|
def test_communicate_stderr(self):
|
|
|
|
p = subprocess.Popen([sys.executable, "-c",
|
|
|
|
'import sys; sys.stderr.write("pineapple")'],
|
|
|
|
stderr=subprocess.PIPE)
|
|
|
|
(stdout, stderr) = p.communicate()
|
|
|
|
self.assertEqual(stdout, None)
|
2010-02-27 18:12:37 -04:00
|
|
|
self.assertStderrEqual(stderr, b"pineapple")
|
2005-03-03 16:24:28 -04:00
|
|
|
|
2004-10-12 12:26:28 -03:00
|
|
|
def test_communicate(self):
|
|
|
|
p = subprocess.Popen([sys.executable, "-c",
|
2007-11-06 17:34:58 -04:00
|
|
|
'import sys,os;'
|
|
|
|
'sys.stderr.write("pineapple");'
|
|
|
|
'sys.stdout.write(sys.stdin.read())'],
|
|
|
|
stdin=subprocess.PIPE,
|
|
|
|
stdout=subprocess.PIPE,
|
|
|
|
stderr=subprocess.PIPE)
|
2010-11-05 14:09:05 -03:00
|
|
|
self.addCleanup(p.stdout.close)
|
|
|
|
self.addCleanup(p.stderr.close)
|
|
|
|
self.addCleanup(p.stdin.close)
|
2008-07-01 16:28:43 -03:00
|
|
|
(stdout, stderr) = p.communicate(b"banana")
|
2007-05-15 20:18:55 -03:00
|
|
|
self.assertEqual(stdout, b"banana")
|
2010-02-27 18:12:37 -04:00
|
|
|
self.assertStderrEqual(stderr, b"pineapple")
|
2004-10-12 12:26:28 -03:00
|
|
|
|
2011-03-14 13:02:10 -03:00
|
|
|
def test_communicate_timeout(self):
|
|
|
|
p = subprocess.Popen([sys.executable, "-c",
|
|
|
|
'import sys,os,time;'
|
|
|
|
'sys.stderr.write("pineapple\\n");'
|
|
|
|
'time.sleep(1);'
|
|
|
|
'sys.stderr.write("pear\\n");'
|
|
|
|
'sys.stdout.write(sys.stdin.read())'],
|
|
|
|
universal_newlines=True,
|
|
|
|
stdin=subprocess.PIPE,
|
|
|
|
stdout=subprocess.PIPE,
|
|
|
|
stderr=subprocess.PIPE)
|
|
|
|
self.assertRaises(subprocess.TimeoutExpired, p.communicate, "banana",
|
|
|
|
timeout=0.3)
|
|
|
|
# Make sure we can keep waiting for it, and that we get the whole output
|
|
|
|
# after it completes.
|
|
|
|
(stdout, stderr) = p.communicate()
|
|
|
|
self.assertEqual(stdout, "banana")
|
|
|
|
self.assertStderrEqual(stderr.encode(), b"pineapple\npear\n")
|
|
|
|
|
2016-08-30 14:47:49 -03:00
|
|
|
def test_communicate_timeout_large_output(self):
|
2012-02-12 03:02:01 -04:00
|
|
|
# Test an expiring timeout while the child is outputting lots of data.
|
2011-03-14 13:02:10 -03:00
|
|
|
p = subprocess.Popen([sys.executable, "-c",
|
|
|
|
'import sys,os,time;'
|
|
|
|
'sys.stdout.write("a" * (64 * 1024));'
|
|
|
|
'time.sleep(0.2);'
|
|
|
|
'sys.stdout.write("a" * (64 * 1024));'
|
|
|
|
'time.sleep(0.2);'
|
|
|
|
'sys.stdout.write("a" * (64 * 1024));'
|
|
|
|
'time.sleep(0.2);'
|
|
|
|
'sys.stdout.write("a" * (64 * 1024));'],
|
|
|
|
stdout=subprocess.PIPE)
|
|
|
|
self.assertRaises(subprocess.TimeoutExpired, p.communicate, timeout=0.4)
|
|
|
|
(stdout, _) = p.communicate()
|
|
|
|
self.assertEqual(len(stdout), 4 * 64 * 1024)
|
|
|
|
|
2010-02-27 18:12:37 -04:00
|
|
|
# Test for the fd leak reported in http://bugs.python.org/issue2791.
|
|
|
|
def test_communicate_pipe_fd_leak(self):
|
2010-12-25 18:40:32 -04:00
|
|
|
for stdin_pipe in (False, True):
|
|
|
|
for stdout_pipe in (False, True):
|
|
|
|
for stderr_pipe in (False, True):
|
|
|
|
options = {}
|
|
|
|
if stdin_pipe:
|
|
|
|
options['stdin'] = subprocess.PIPE
|
|
|
|
if stdout_pipe:
|
|
|
|
options['stdout'] = subprocess.PIPE
|
|
|
|
if stderr_pipe:
|
|
|
|
options['stderr'] = subprocess.PIPE
|
|
|
|
if not options:
|
|
|
|
continue
|
2019-10-14 17:40:32 -03:00
|
|
|
p = subprocess.Popen(ZERO_RETURN_CMD, **options)
|
2010-12-25 18:40:32 -04:00
|
|
|
p.communicate()
|
|
|
|
if p.stdin is not None:
|
|
|
|
self.assertTrue(p.stdin.closed)
|
|
|
|
if p.stdout is not None:
|
|
|
|
self.assertTrue(p.stdout.closed)
|
|
|
|
if p.stderr is not None:
|
|
|
|
self.assertTrue(p.stderr.closed)
|
Merged revisions 63724,63726,63732,63744,63754-63755,63757-63758,63760,63775,63781-63782,63787,63805-63808,63818-63819,63823-63824 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk
........
r63724 | gregory.p.smith | 2008-05-26 22:22:14 +0200 (Mon, 26 May 2008) | 6 lines
Fixes issue2791: subprocess.Popen.communicate leaked a file descripton until
the last reference to the Popen instance was dropped. Adding explicit
close() calls fixes it.
Candidate for backport to release25-maint.
........
r63726 | benjamin.peterson | 2008-05-26 22:43:24 +0200 (Mon, 26 May 2008) | 2 lines
fix minor grammar typo
........
r63732 | benjamin.peterson | 2008-05-26 23:44:26 +0200 (Mon, 26 May 2008) | 2 lines
remove duplication in test module
........
r63744 | lars.gustaebel | 2008-05-27 14:39:23 +0200 (Tue, 27 May 2008) | 3 lines
Do not close external file objects passed to tarfile.open(mode='w:bz2')
when the TarFile is closed.
........
r63754 | benjamin.peterson | 2008-05-28 03:12:35 +0200 (Wed, 28 May 2008) | 2 lines
update tutorial function with more appropiate one from Eric Smith
........
r63755 | mark.hammond | 2008-05-28 03:54:55 +0200 (Wed, 28 May 2008) | 2 lines
bdist_wininst now works correctly when both --skip-build and --plat-name are specified.
........
r63757 | georg.brandl | 2008-05-28 13:21:39 +0200 (Wed, 28 May 2008) | 2 lines
#2989: add PyType_Modified().
........
r63758 | benjamin.peterson | 2008-05-28 13:51:41 +0200 (Wed, 28 May 2008) | 2 lines
fix spelling
........
r63760 | georg.brandl | 2008-05-28 17:41:36 +0200 (Wed, 28 May 2008) | 2 lines
#2990: prevent inconsistent state while updating method cache.
........
r63775 | georg.brandl | 2008-05-29 09:18:17 +0200 (Thu, 29 May 2008) | 2 lines
Two fixes in bytearray docs.
........
r63781 | georg.brandl | 2008-05-29 09:38:37 +0200 (Thu, 29 May 2008) | 2 lines
#2988: add note about catching CookieError when parsing untrusted cookie data.
........
r63782 | georg.brandl | 2008-05-29 09:45:26 +0200 (Thu, 29 May 2008) | 2 lines
#2985: allow i8 in XMLRPC responses.
........
r63787 | georg.brandl | 2008-05-29 16:35:39 +0200 (Thu, 29 May 2008) | 2 lines
Revert #2990 patch; it's not necessary as Armin showed.
........
r63805 | raymond.hettinger | 2008-05-30 08:37:27 +0200 (Fri, 30 May 2008) | 1 line
Issue 2784: fix leaks in exception exit.
........
r63806 | raymond.hettinger | 2008-05-30 08:49:47 +0200 (Fri, 30 May 2008) | 1 line
Issue 2855: Fix obscure crasher by slowing down the entire module. Mimics what was done to dictionaries in r59223.
........
r63807 | raymond.hettinger | 2008-05-30 09:16:53 +0200 (Fri, 30 May 2008) | 1 line
Issue 2903: Add __name__ in globals for namedtuple namespace.
........
r63808 | georg.brandl | 2008-05-30 09:54:16 +0200 (Fri, 30 May 2008) | 2 lines
#2999: fix name of third parameter in unicode.replace()'s docstring.
........
r63818 | georg.brandl | 2008-05-30 21:12:13 +0200 (Fri, 30 May 2008) | 2 lines
getloadavg() is not available on Windows.
........
r63819 | georg.brandl | 2008-05-30 21:17:29 +0200 (Fri, 30 May 2008) | 2 lines
Better quote with single quotes.
........
r63823 | benjamin.peterson | 2008-05-30 22:44:39 +0200 (Fri, 30 May 2008) | 2 lines
fix grammar
........
r63824 | marc-andre.lemburg | 2008-05-30 22:52:18 +0200 (Fri, 30 May 2008) | 5 lines
Update the locale module alias table.
Closes #3011.
........
2008-06-10 13:57:31 -03:00
|
|
|
|
2004-10-12 12:26:28 -03:00
|
|
|
def test_communicate_returns(self):
|
2004-10-12 19:29:54 -03:00
|
|
|
# communicate() should return None if no redirection is active
|
2004-10-12 19:19:32 -03:00
|
|
|
p = subprocess.Popen([sys.executable, "-c",
|
|
|
|
"import sys; sys.exit(47)"])
|
2004-10-12 12:26:28 -03:00
|
|
|
(stdout, stderr) = p.communicate()
|
|
|
|
self.assertEqual(stdout, None)
|
|
|
|
self.assertEqual(stderr, None)
|
|
|
|
|
|
|
|
def test_communicate_pipe_buf(self):
|
2004-10-12 19:29:54 -03:00
|
|
|
# communicate() with writes larger than pipe_buf
|
2004-10-12 12:26:28 -03:00
|
|
|
# This test will probably deadlock rather than fail, if
|
2004-10-12 18:51:32 -03:00
|
|
|
# communicate() does not work properly.
|
2004-10-12 12:26:28 -03:00
|
|
|
x, y = os.pipe()
|
|
|
|
os.close(x)
|
|
|
|
os.close(y)
|
|
|
|
p = subprocess.Popen([sys.executable, "-c",
|
2007-11-06 17:34:58 -04:00
|
|
|
'import sys,os;'
|
|
|
|
'sys.stdout.write(sys.stdin.read(47));'
|
2011-05-29 11:36:44 -03:00
|
|
|
'sys.stderr.write("x" * %d);'
|
|
|
|
'sys.stdout.write(sys.stdin.read())' %
|
|
|
|
support.PIPE_MAX_SIZE],
|
2007-11-06 17:34:58 -04:00
|
|
|
stdin=subprocess.PIPE,
|
|
|
|
stdout=subprocess.PIPE,
|
|
|
|
stderr=subprocess.PIPE)
|
2010-11-05 14:09:05 -03:00
|
|
|
self.addCleanup(p.stdout.close)
|
|
|
|
self.addCleanup(p.stderr.close)
|
|
|
|
self.addCleanup(p.stdin.close)
|
2011-05-29 11:36:44 -03:00
|
|
|
string_to_write = b"a" * support.PIPE_MAX_SIZE
|
2004-10-12 12:26:28 -03:00
|
|
|
(stdout, stderr) = p.communicate(string_to_write)
|
|
|
|
self.assertEqual(stdout, string_to_write)
|
|
|
|
|
|
|
|
def test_writes_before_communicate(self):
|
2004-10-12 19:29:54 -03:00
|
|
|
# stdin.write before communicate()
|
2004-10-12 12:26:28 -03:00
|
|
|
p = subprocess.Popen([sys.executable, "-c",
|
2007-11-06 17:34:58 -04:00
|
|
|
'import sys,os;'
|
|
|
|
'sys.stdout.write(sys.stdin.read())'],
|
|
|
|
stdin=subprocess.PIPE,
|
|
|
|
stdout=subprocess.PIPE,
|
|
|
|
stderr=subprocess.PIPE)
|
2010-11-05 14:09:05 -03:00
|
|
|
self.addCleanup(p.stdout.close)
|
|
|
|
self.addCleanup(p.stderr.close)
|
|
|
|
self.addCleanup(p.stdin.close)
|
2007-08-27 20:58:21 -03:00
|
|
|
p.stdin.write(b"banana")
|
|
|
|
(stdout, stderr) = p.communicate(b"split")
|
2007-05-15 20:18:55 -03:00
|
|
|
self.assertEqual(stdout, b"bananasplit")
|
2010-02-27 18:12:37 -04:00
|
|
|
self.assertStderrEqual(stderr, b"")
|
2004-10-12 18:51:32 -03:00
|
|
|
|
2017-10-22 23:01:19 -03:00
|
|
|
def test_universal_newlines_and_text(self):
|
|
|
|
args = [
|
|
|
|
sys.executable, "-c",
|
|
|
|
'import sys,os;' + SETBINARY +
|
|
|
|
'buf = sys.stdout.buffer;'
|
|
|
|
'buf.write(sys.stdin.readline().encode());'
|
|
|
|
'buf.flush();'
|
|
|
|
'buf.write(b"line2\\n");'
|
|
|
|
'buf.flush();'
|
|
|
|
'buf.write(sys.stdin.read().encode());'
|
|
|
|
'buf.flush();'
|
|
|
|
'buf.write(b"line4\\n");'
|
|
|
|
'buf.flush();'
|
|
|
|
'buf.write(b"line5\\r\\n");'
|
|
|
|
'buf.flush();'
|
|
|
|
'buf.write(b"line6\\r");'
|
|
|
|
'buf.flush();'
|
|
|
|
'buf.write(b"\\nline7");'
|
|
|
|
'buf.flush();'
|
|
|
|
'buf.write(b"\\nline8");']
|
|
|
|
|
|
|
|
for extra_kwarg in ('universal_newlines', 'text'):
|
|
|
|
p = subprocess.Popen(args, **{'stdin': subprocess.PIPE,
|
|
|
|
'stdout': subprocess.PIPE,
|
|
|
|
extra_kwarg: True})
|
|
|
|
with p:
|
|
|
|
p.stdin.write("line1\n")
|
|
|
|
p.stdin.flush()
|
|
|
|
self.assertEqual(p.stdout.readline(), "line1\n")
|
|
|
|
p.stdin.write("line3\n")
|
|
|
|
p.stdin.close()
|
|
|
|
self.addCleanup(p.stdout.close)
|
|
|
|
self.assertEqual(p.stdout.readline(),
|
|
|
|
"line2\n")
|
|
|
|
self.assertEqual(p.stdout.read(6),
|
|
|
|
"line3\n")
|
|
|
|
self.assertEqual(p.stdout.read(),
|
|
|
|
"line4\nline5\nline6\nline7\nline8")
|
2004-10-12 12:26:28 -03:00
|
|
|
|
|
|
|
def test_universal_newlines_communicate(self):
|
2004-10-12 19:29:54 -03:00
|
|
|
# universal newlines through communicate()
|
2004-10-12 12:26:28 -03:00
|
|
|
p = subprocess.Popen([sys.executable, "-c",
|
2007-11-06 17:34:58 -04:00
|
|
|
'import sys,os;' + SETBINARY +
|
2012-08-04 19:23:40 -03:00
|
|
|
'buf = sys.stdout.buffer;'
|
|
|
|
'buf.write(b"line2\\n");'
|
|
|
|
'buf.flush();'
|
|
|
|
'buf.write(b"line4\\n");'
|
|
|
|
'buf.flush();'
|
|
|
|
'buf.write(b"line5\\r\\n");'
|
|
|
|
'buf.flush();'
|
|
|
|
'buf.write(b"line6\\r");'
|
|
|
|
'buf.flush();'
|
|
|
|
'buf.write(b"\\nline7");'
|
|
|
|
'buf.flush();'
|
|
|
|
'buf.write(b"\\nline8");'],
|
2011-07-23 17:03:45 -03:00
|
|
|
stderr=subprocess.PIPE,
|
|
|
|
stdout=subprocess.PIPE,
|
2007-11-06 17:34:58 -04:00
|
|
|
universal_newlines=1)
|
2010-11-05 14:09:05 -03:00
|
|
|
self.addCleanup(p.stdout.close)
|
|
|
|
self.addCleanup(p.stderr.close)
|
2004-10-12 12:26:28 -03:00
|
|
|
(stdout, stderr) = p.communicate()
|
2011-07-23 17:03:45 -03:00
|
|
|
self.assertEqual(stdout,
|
|
|
|
"line2\nline4\nline5\nline6\nline7\nline8")
|
|
|
|
|
|
|
|
def test_universal_newlines_communicate_stdin(self):
|
|
|
|
# universal newlines through communicate(), with only stdin
|
|
|
|
p = subprocess.Popen([sys.executable, "-c",
|
2012-08-19 10:25:37 -03:00
|
|
|
'import sys,os;' + SETBINARY + textwrap.dedent('''
|
|
|
|
s = sys.stdin.readline()
|
|
|
|
assert s == "line1\\n", repr(s)
|
|
|
|
s = sys.stdin.read()
|
|
|
|
assert s == "line3\\n", repr(s)
|
|
|
|
''')],
|
2011-07-23 17:03:45 -03:00
|
|
|
stdin=subprocess.PIPE,
|
|
|
|
universal_newlines=1)
|
|
|
|
(stdout, stderr) = p.communicate("line1\nline3\n")
|
|
|
|
self.assertEqual(p.returncode, 0)
|
2004-10-12 12:26:28 -03:00
|
|
|
|
2012-08-14 12:35:17 -03:00
|
|
|
def test_universal_newlines_communicate_input_none(self):
|
|
|
|
# Test communicate(input=None) with universal newlines.
|
|
|
|
#
|
|
|
|
# We set stdout to PIPE because, as of this writing, a different
|
|
|
|
# code path is tested when the number of pipes is zero or one.
|
2019-10-14 17:40:32 -03:00
|
|
|
p = subprocess.Popen(ZERO_RETURN_CMD,
|
2012-08-14 12:35:17 -03:00
|
|
|
stdin=subprocess.PIPE,
|
|
|
|
stdout=subprocess.PIPE,
|
|
|
|
universal_newlines=True)
|
|
|
|
p.communicate()
|
|
|
|
self.assertEqual(p.returncode, 0)
|
2012-08-15 16:46:43 -03:00
|
|
|
|
|
|
|
def test_universal_newlines_communicate_stdin_stdout_stderr(self):
|
2012-08-19 10:25:37 -03:00
|
|
|
# universal newlines through communicate(), with stdin, stdout, stderr
|
2012-08-15 16:46:43 -03:00
|
|
|
p = subprocess.Popen([sys.executable, "-c",
|
2012-08-19 10:25:37 -03:00
|
|
|
'import sys,os;' + SETBINARY + textwrap.dedent('''
|
|
|
|
s = sys.stdin.buffer.readline()
|
|
|
|
sys.stdout.buffer.write(s)
|
|
|
|
sys.stdout.buffer.write(b"line2\\r")
|
|
|
|
sys.stderr.buffer.write(b"eline2\\n")
|
|
|
|
s = sys.stdin.buffer.read()
|
|
|
|
sys.stdout.buffer.write(s)
|
|
|
|
sys.stdout.buffer.write(b"line4\\n")
|
|
|
|
sys.stdout.buffer.write(b"line5\\r\\n")
|
|
|
|
sys.stderr.buffer.write(b"eline6\\r")
|
|
|
|
sys.stderr.buffer.write(b"eline7\\r\\nz")
|
|
|
|
''')],
|
2012-08-15 16:46:43 -03:00
|
|
|
stdin=subprocess.PIPE,
|
|
|
|
stderr=subprocess.PIPE,
|
|
|
|
stdout=subprocess.PIPE,
|
2012-08-19 10:25:37 -03:00
|
|
|
universal_newlines=True)
|
2012-08-15 16:46:43 -03:00
|
|
|
self.addCleanup(p.stdout.close)
|
|
|
|
self.addCleanup(p.stderr.close)
|
|
|
|
(stdout, stderr) = p.communicate("line1\nline3\n")
|
|
|
|
self.assertEqual(p.returncode, 0)
|
2012-08-16 14:17:47 -03:00
|
|
|
self.assertEqual("line1\nline2\nline3\nline4\nline5\n", stdout)
|
2012-08-15 16:46:43 -03:00
|
|
|
# Python debug build push something like "[42442 refs]\n"
|
|
|
|
# to stderr at exit of subprocess.
|
2012-08-16 14:17:47 -03:00
|
|
|
# Don't use assertStderrEqual because it strips CR and LF from output.
|
|
|
|
self.assertTrue(stderr.startswith("eline2\neline6\neline7\n"))
|
2012-08-19 16:20:03 -03:00
|
|
|
|
2012-08-19 16:13:41 -03:00
|
|
|
def test_universal_newlines_communicate_encodings(self):
|
|
|
|
# Check that universal newlines mode works for various encodings,
|
|
|
|
# in particular for encodings in the UTF-16 and UTF-32 families.
|
|
|
|
# See issue #15595.
|
|
|
|
#
|
|
|
|
# UTF-16 and UTF-32-BE are sufficient to check both with BOM and
|
|
|
|
# without, and UTF-16 and UTF-32.
|
|
|
|
for encoding in ['utf-16', 'utf-32-be']:
|
|
|
|
code = ("import sys; "
|
|
|
|
r"sys.stdout.buffer.write('1\r\n2\r3\n4'.encode('%s'))" %
|
|
|
|
encoding)
|
|
|
|
args = [sys.executable, '-c', code]
|
2016-09-07 00:16:17 -03:00
|
|
|
# We set stdin to be non-None because, as of this writing,
|
|
|
|
# a different code path is used when the number of pipes is
|
|
|
|
# zero or one.
|
|
|
|
popen = subprocess.Popen(args,
|
|
|
|
stdin=subprocess.PIPE,
|
|
|
|
stdout=subprocess.PIPE,
|
|
|
|
encoding=encoding)
|
|
|
|
stdout, stderr = popen.communicate(input='')
|
2012-08-19 16:13:41 -03:00
|
|
|
self.assertEqual(stdout, '1\n2\n3\n4')
|
2004-10-12 12:26:28 -03:00
|
|
|
|
2016-09-07 00:16:17 -03:00
|
|
|
def test_communicate_errors(self):
|
|
|
|
for errors, expected in [
|
|
|
|
('ignore', ''),
|
|
|
|
('replace', '\ufffd\ufffd'),
|
|
|
|
('surrogateescape', '\udc80\udc80'),
|
|
|
|
('backslashreplace', '\\x80\\x80'),
|
|
|
|
]:
|
|
|
|
code = ("import sys; "
|
|
|
|
r"sys.stdout.buffer.write(b'[\x80\x80]')")
|
|
|
|
args = [sys.executable, '-c', code]
|
|
|
|
# We set stdin to be non-None because, as of this writing,
|
|
|
|
# a different code path is used when the number of pipes is
|
|
|
|
# zero or one.
|
|
|
|
popen = subprocess.Popen(args,
|
|
|
|
stdin=subprocess.PIPE,
|
|
|
|
stdout=subprocess.PIPE,
|
|
|
|
encoding='utf-8',
|
|
|
|
errors=errors)
|
|
|
|
stdout, stderr = popen.communicate(input='')
|
|
|
|
self.assertEqual(stdout, '[{}]'.format(expected))
|
|
|
|
|
2004-10-12 12:26:28 -03:00
|
|
|
def test_no_leaking(self):
|
2004-10-12 19:29:54 -03:00
|
|
|
# Make sure we leak no resources
|
2018-06-25 21:11:06 -03:00
|
|
|
if not mswindows:
|
2005-03-03 16:47:37 -04:00
|
|
|
max_handles = 1026 # too much for most UNIX systems
|
|
|
|
else:
|
2010-09-18 19:38:48 -03:00
|
|
|
max_handles = 2050 # too much for (at least some) Windows setups
|
|
|
|
handles = []
|
2011-03-15 03:04:11 -03:00
|
|
|
tmpdir = tempfile.mkdtemp()
|
2010-09-18 19:38:48 -03:00
|
|
|
try:
|
|
|
|
for i in range(max_handles):
|
|
|
|
try:
|
2011-03-15 03:04:11 -03:00
|
|
|
tmpfile = os.path.join(tmpdir, support.TESTFN)
|
|
|
|
handles.append(os.open(tmpfile, os.O_WRONLY|os.O_CREAT))
|
2010-09-18 19:38:48 -03:00
|
|
|
except OSError as e:
|
|
|
|
if e.errno != errno.EMFILE:
|
|
|
|
raise
|
|
|
|
break
|
|
|
|
else:
|
|
|
|
self.skipTest("failed to reach the file descriptor limit "
|
|
|
|
"(tried %d)" % max_handles)
|
|
|
|
# Close a couple of them (should be enough for a subprocess)
|
|
|
|
for i in range(10):
|
|
|
|
os.close(handles.pop())
|
|
|
|
# Loop creating some subprocesses. If one of them leaks some fds,
|
|
|
|
# the next loop iteration will fail by reaching the max fd limit.
|
|
|
|
for i in range(15):
|
|
|
|
p = subprocess.Popen([sys.executable, "-c",
|
|
|
|
"import sys;"
|
|
|
|
"sys.stdout.write(sys.stdin.read())"],
|
|
|
|
stdin=subprocess.PIPE,
|
|
|
|
stdout=subprocess.PIPE,
|
|
|
|
stderr=subprocess.PIPE)
|
|
|
|
data = p.communicate(b"lime")[0]
|
|
|
|
self.assertEqual(data, b"lime")
|
|
|
|
finally:
|
|
|
|
for h in handles:
|
|
|
|
os.close(h)
|
2011-03-15 03:04:11 -03:00
|
|
|
shutil.rmtree(tmpdir)
|
2004-10-12 12:26:28 -03:00
|
|
|
|
|
|
|
def test_list2cmdline(self):
|
|
|
|
self.assertEqual(subprocess.list2cmdline(['a b c', 'd', 'e']),
|
|
|
|
'"a b c" d e')
|
|
|
|
self.assertEqual(subprocess.list2cmdline(['ab"c', '\\', 'd']),
|
|
|
|
'ab\\"c \\ d')
|
Merged revisions 60094-60123 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk
*** NOTE ***
I haven't merged the files in Doc/c-api/. I got too many conflicts. Georg,
please split them manually.
........
r60095 | andrew.kuchling | 2008-01-19 21:12:04 +0100 (Sat, 19 Jan 2008) | 2 lines
Bug 1277: make Maildir use the user-provided factory instead of hard-wiring MaildirMessage.
2.5.2 bugfix candidate.
........
r60097 | georg.brandl | 2008-01-19 21:22:13 +0100 (Sat, 19 Jan 2008) | 4 lines
#1663329: add os.closerange() to close a range of fds,
ignoring errors, and use this in subprocess to speed up
subprocess creation in close_fds mode. Patch by Mike Klaas.
........
r60099 | georg.brandl | 2008-01-19 21:40:24 +0100 (Sat, 19 Jan 2008) | 2 lines
#1411695: clarify behavior of xml.sax.utils.[un]escape.
........
r60101 | andrew.kuchling | 2008-01-19 21:47:59 +0100 (Sat, 19 Jan 2008) | 7 lines
Patch #1019808 from Federico Schwindt: Return correct socket error when
a default timeout has been set, by using getsockopt() to get the error
condition (instead of trying another connect() call, which seems to be
a Linuxism).
2.5 bugfix candidate, assuming no one reports any problems with this change.
........
r60102 | gregory.p.smith | 2008-01-19 21:49:02 +0100 (Sat, 19 Jan 2008) | 3 lines
fix comment typos, use not arg instead of arg == "", add test coverage
for inside of the final if needquotes: within subprocess.list2cmdline().
........
r60103 | georg.brandl | 2008-01-19 21:53:07 +0100 (Sat, 19 Jan 2008) | 2 lines
#1509: fix sqlite3 docstrings and docs w.r.t. cursor.fetchXXX methods.
........
r60104 | gregory.p.smith | 2008-01-19 21:57:59 +0100 (Sat, 19 Jan 2008) | 6 lines
Fixes issue1336 - a race condition could occur when forking if the gc
kicked in during the critical section. solution: disable gc during
that section. Patch contributed by jpa and updated by me to cover the
race condition still existing what therve from twistedmatrix pointed
out (already seen and fixed in twisted's own subprocess code).
........
r60105 | gregory.p.smith | 2008-01-19 22:00:37 +0100 (Sat, 19 Jan 2008) | 2 lines
note about r60104
........
r60106 | andrew.kuchling | 2008-01-19 22:00:38 +0100 (Sat, 19 Jan 2008) | 1 line
Bug 1296: restore text describing OptionGroup
........
r60109 | georg.brandl | 2008-01-19 23:08:21 +0100 (Sat, 19 Jan 2008) | 2 lines
Split the monstrous C API manual files in smaller parts.
........
r60110 | georg.brandl | 2008-01-19 23:14:27 +0100 (Sat, 19 Jan 2008) | 2 lines
Missed one big file to split up.
........
r60111 | gregory.p.smith | 2008-01-19 23:23:56 +0100 (Sat, 19 Jan 2008) | 12 lines
Undo an unnecessary else: and indentation that r60104 added.
try:
...
except:
...
raise
else:
...
the else: is unecessary due to the blind except: with a raise.
........
r60115 | gregory.p.smith | 2008-01-19 23:49:37 +0100 (Sat, 19 Jan 2008) | 3 lines
Fix issue 1300: Quote command line arguments that contain a '|' character in
subprocess.list2cmdline (windows).
........
r60116 | gregory.p.smith | 2008-01-20 00:10:52 +0100 (Sun, 20 Jan 2008) | 3 lines
Fixes/Accepts Patch for issue1189216 - Work properly with archives
that have file headers past the 2**31 byte boundary.
........
r60119 | andrew.kuchling | 2008-01-20 01:00:38 +0100 (Sun, 20 Jan 2008) | 3 lines
Patch #1048820 from Stefan Wehr: add insert-mode editing to Textbox.
Fix an off-by-one error I noticed.
........
r60120 | andrew.kuchling | 2008-01-20 01:12:19 +0100 (Sun, 20 Jan 2008) | 1 line
Add an interactive test script for exercising curses
........
r60121 | gregory.p.smith | 2008-01-20 02:21:03 +0100 (Sun, 20 Jan 2008) | 7 lines
Fix zipfile decryption. The check for validity only worked on one
type of encrypted zip files. Files using extended local headers
needed to compare the check byte against different values. (according
to reading the infozip unzip crypt.c source code)
Fixes issue1003.
........
r60122 | gregory.p.smith | 2008-01-20 02:26:04 +0100 (Sun, 20 Jan 2008) | 2 lines
note for r60121
........
r60123 | gregory.p.smith | 2008-01-20 02:32:00 +0100 (Sun, 20 Jan 2008) | 4 lines
Document that zipfile decryption is insanely slow and fix a typo and
blatant lie in a docstring (it is not useful for security regardless of
how you spell it).
........
2008-01-20 05:06:41 -04:00
|
|
|
self.assertEqual(subprocess.list2cmdline(['ab"c', ' \\', 'd']),
|
|
|
|
'ab\\"c " \\\\" d')
|
2004-10-12 12:26:28 -03:00
|
|
|
self.assertEqual(subprocess.list2cmdline(['a\\\\\\b', 'de fg', 'h']),
|
|
|
|
'a\\\\\\b "de fg" h')
|
|
|
|
self.assertEqual(subprocess.list2cmdline(['a\\"b', 'c', 'd']),
|
|
|
|
'a\\\\\\"b c d')
|
|
|
|
self.assertEqual(subprocess.list2cmdline(['a\\\\b c', 'd', 'e']),
|
|
|
|
'"a\\\\b c" d e')
|
|
|
|
self.assertEqual(subprocess.list2cmdline(['a\\\\b\\ c', 'd', 'e']),
|
|
|
|
'"a\\\\b\\ c" d e')
|
Merged revisions 53304-53433,53435-53450 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk
........
r53304 | vinay.sajip | 2007-01-09 15:50:28 +0100 (Tue, 09 Jan 2007) | 1 line
Bug #1627575: Added _open() method to FileHandler which can be used to reopen files. The FileHandler instance now saves the encoding (which can be None) in an attribute called "encoding".
........
r53305 | vinay.sajip | 2007-01-09 15:51:36 +0100 (Tue, 09 Jan 2007) | 1 line
Added entry about addition of _open() method to logging.FileHandler.
........
r53306 | vinay.sajip | 2007-01-09 15:54:56 +0100 (Tue, 09 Jan 2007) | 1 line
Added a docstring
........
r53316 | thomas.heller | 2007-01-09 20:19:33 +0100 (Tue, 09 Jan 2007) | 4 lines
Verify the sizes of the basic ctypes data types against the struct
module.
Will backport to release25-maint.
........
r53340 | gustavo.niemeyer | 2007-01-10 17:13:40 +0100 (Wed, 10 Jan 2007) | 3 lines
Mention in the int() docstring that a base zero has meaning, as
stated in http://docs.python.org/lib/built-in-funcs.html as well.
........
r53341 | gustavo.niemeyer | 2007-01-10 17:15:48 +0100 (Wed, 10 Jan 2007) | 2 lines
Minor change in int() docstring for proper spacing.
........
r53358 | thomas.heller | 2007-01-10 21:12:13 +0100 (Wed, 10 Jan 2007) | 1 line
Change the ctypes version number to "1.1.0".
........
r53361 | thomas.heller | 2007-01-10 21:51:19 +0100 (Wed, 10 Jan 2007) | 1 line
Must change the version number in the _ctypes extension as well.
........
r53362 | guido.van.rossum | 2007-01-11 00:12:56 +0100 (Thu, 11 Jan 2007) | 3 lines
Fix the signature of log_error(). (A subclass that did the right thing
was getting complaints from pychecker.)
........
r53370 | matthias.klose | 2007-01-11 11:26:31 +0100 (Thu, 11 Jan 2007) | 2 lines
- Make the documentation match the code and the docstring
........
r53375 | matthias.klose | 2007-01-11 12:44:04 +0100 (Thu, 11 Jan 2007) | 2 lines
- idle: Honor the "Cancel" action in the save dialog (Debian bug #299092).
........
r53381 | raymond.hettinger | 2007-01-11 19:22:55 +0100 (Thu, 11 Jan 2007) | 1 line
SF #1486663 -- Allow keyword args in subclasses of set() and frozenset().
........
r53388 | thomas.heller | 2007-01-11 22:18:56 +0100 (Thu, 11 Jan 2007) | 4 lines
Fixes for 64-bit Windows: In ctypes.wintypes, correct the definitions
of HANDLE, WPARAM, LPARAM data types. Make parameterless foreign
function calls work.
........
r53390 | thomas.heller | 2007-01-11 22:23:12 +0100 (Thu, 11 Jan 2007) | 2 lines
Correct the comments: the code is right.
........
r53393 | brett.cannon | 2007-01-12 08:27:52 +0100 (Fri, 12 Jan 2007) | 3 lines
Fix error where the end of a funcdesc environment was accidentally moved too
far down.
........
r53397 | anthony.baxter | 2007-01-12 10:35:56 +0100 (Fri, 12 Jan 2007) | 3 lines
add parsetok.h as a dependency - previously, changing this file doesn't
cause the right files to be rebuilt.
........
r53401 | thomas.heller | 2007-01-12 21:08:19 +0100 (Fri, 12 Jan 2007) | 3 lines
Avoid warnings in the test suite because ctypes.wintypes cannot be
imported on non-windows systems.
........
r53402 | thomas.heller | 2007-01-12 21:17:34 +0100 (Fri, 12 Jan 2007) | 6 lines
patch #1610795: BSD version of ctypes.util.find_library, by Martin
Kammerhofer.
release25-maint backport candidate, but the release manager has to
decide.
........
r53403 | thomas.heller | 2007-01-12 21:21:53 +0100 (Fri, 12 Jan 2007) | 3 lines
patch #1610795: BSD version of ctypes.util.find_library, by Martin
Kammerhofer.
........
r53406 | brett.cannon | 2007-01-13 01:29:49 +0100 (Sat, 13 Jan 2007) | 2 lines
Deprecate the sets module.
........
r53407 | georg.brandl | 2007-01-13 13:31:51 +0100 (Sat, 13 Jan 2007) | 3 lines
Fix typo.
........
r53409 | marc-andre.lemburg | 2007-01-13 22:00:08 +0100 (Sat, 13 Jan 2007) | 16 lines
Bump version number and change copyright year.
Add new API linux_distribution() which supports reading the full distribution
name and also knows how to parse LSB-style release files.
Redirect the old dist() API to the new API (using the short distribution name
taken from the release file filename).
Add branch and revision to _sys_version().
Add work-around for Cygwin to libc_ver().
Add support for IronPython (thanks for Anthony Baxter) and make
Jython support more robust.
........
r53410 | neal.norwitz | 2007-01-13 22:22:37 +0100 (Sat, 13 Jan 2007) | 1 line
Fix grammar in docstrings
........
r53411 | marc-andre.lemburg | 2007-01-13 23:32:21 +0100 (Sat, 13 Jan 2007) | 9 lines
Add parameter sys_version to _sys_version().
Change the cache for _sys_version() to take the parameter into account.
Add support for parsing the IronPython 1.0.1 sys.version value - even
though it still returns '1.0.0'; the version string no longer includes
the patch level.
........
r53412 | peter.astrand | 2007-01-13 23:35:35 +0100 (Sat, 13 Jan 2007) | 1 line
Fix for bug #1634343: allow specifying empty arguments on Windows
........
r53414 | marc-andre.lemburg | 2007-01-13 23:59:36 +0100 (Sat, 13 Jan 2007) | 14 lines
Add Python implementation to the machine details.
Pretty-print the Python version used for running PyBench.
Let the user know when calibration has finished.
[ 1563844 ] pybench support for IronPython:
Simplify Unicode version detection.
Make garbage collection and check interval settings optional if
the Python implementation doesn't support thess (e.g. IronPython).
........
r53415 | marc-andre.lemburg | 2007-01-14 00:13:54 +0100 (Sun, 14 Jan 2007) | 5 lines
Use defaults if sys.executable isn't set (e.g. on Jython).
This change allows running PyBench under Jython.
........
r53416 | marc-andre.lemburg | 2007-01-14 00:15:33 +0100 (Sun, 14 Jan 2007) | 3 lines
Jython doesn't have sys.setcheckinterval() - ignore it in that case.
........
r53420 | gerhard.haering | 2007-01-14 02:43:50 +0100 (Sun, 14 Jan 2007) | 29 lines
Merged changes from standalone version 2.3.3. This should probably all be
merged into the 2.5 maintenance branch:
- self->statement was not checked while fetching data, which could
lead to crashes if you used the pysqlite API in unusual ways.
Closing the cursor and continuing to fetch data was enough.
- Converters are stored in a converters dictionary. The converter name
is uppercased first. The old upper-casing algorithm was wrong and
was replaced by a simple call to the Python string's upper() method
instead.
-Applied patch by Glyph Lefkowitz that fixes the problem with
subsequent SQLITE_SCHEMA errors.
- Improvement to the row type: rows can now be iterated over and have a keys()
method. This improves compatibility with both tuple and dict a lot.
- A bugfix for the subsecond resolution in timestamps.
- Corrected the way the flags PARSE_DECLTYPES and PARSE_COLNAMES are
checked for. Now they work as documented.
- gcc on Linux sucks. It exports all symbols by default in shared
libraries, so if symbols are not unique it can lead to problems with
symbol lookup. pysqlite used to crash under Apache when mod_cache
was enabled because both modules had the symbol cache_init. I fixed
this by applying the prefix pysqlite_ almost everywhere. Sigh.
........
r53423 | guido.van.rossum | 2007-01-14 04:46:33 +0100 (Sun, 14 Jan 2007) | 2 lines
Remove a dependency of this test on $COLUMNS.
........
r53425 | ka-ping.yee | 2007-01-14 05:25:15 +0100 (Sun, 14 Jan 2007) | 3 lines
Handle old-style instances more gracefully (display documentation on
the relevant class instead of documentation on <type 'instance'>).
........
r53440 | vinay.sajip | 2007-01-14 22:49:59 +0100 (Sun, 14 Jan 2007) | 1 line
Added WatchedFileHandler (based on SF patch #1598415)
........
r53441 | vinay.sajip | 2007-01-14 22:50:50 +0100 (Sun, 14 Jan 2007) | 1 line
Added documentation for WatchedFileHandler (based on SF patch #1598415)
........
r53442 | guido.van.rossum | 2007-01-15 01:02:35 +0100 (Mon, 15 Jan 2007) | 2 lines
Doc patch matching r53434 (htonl etc. now always take/return positive ints).
........
2007-01-15 11:49:28 -04:00
|
|
|
self.assertEqual(subprocess.list2cmdline(['ab', '']),
|
|
|
|
'ab ""')
|
2004-10-12 12:26:28 -03:00
|
|
|
|
|
|
|
def test_poll(self):
|
2012-02-12 03:01:30 -04:00
|
|
|
p = subprocess.Popen([sys.executable, "-c",
|
2012-02-22 00:02:07 -04:00
|
|
|
"import os; os.read(0, 1)"],
|
|
|
|
stdin=subprocess.PIPE)
|
2012-02-12 03:01:30 -04:00
|
|
|
self.addCleanup(p.stdin.close)
|
|
|
|
self.assertIsNone(p.poll())
|
|
|
|
os.write(p.stdin.fileno(), b'A')
|
|
|
|
p.wait()
|
2004-10-12 12:26:28 -03:00
|
|
|
# Subsequent invocations should just return the returncode
|
|
|
|
self.assertEqual(p.poll(), 0)
|
|
|
|
|
|
|
|
def test_wait(self):
|
2019-10-14 17:40:32 -03:00
|
|
|
p = subprocess.Popen(ZERO_RETURN_CMD)
|
2004-10-12 12:26:28 -03:00
|
|
|
self.assertEqual(p.wait(), 0)
|
|
|
|
# Subsequent invocations should just return the returncode
|
|
|
|
self.assertEqual(p.wait(), 0)
|
2004-10-12 18:51:32 -03:00
|
|
|
|
2011-03-14 13:02:10 -03:00
|
|
|
def test_wait_timeout(self):
|
|
|
|
p = subprocess.Popen([sys.executable,
|
2013-05-19 10:55:40 -03:00
|
|
|
"-c", "import time; time.sleep(0.3)"])
|
2011-03-16 17:57:54 -03:00
|
|
|
with self.assertRaises(subprocess.TimeoutExpired) as c:
|
2013-05-19 10:55:40 -03:00
|
|
|
p.wait(timeout=0.0001)
|
|
|
|
self.assertIn("0.0001", str(c.exception)) # For coverage of __str__.
|
2011-03-16 18:08:21 -03:00
|
|
|
# Some heavily loaded buildbots (sparc Debian 3.x) require this much
|
|
|
|
# time to start.
|
|
|
|
self.assertEqual(p.wait(timeout=3), 0)
|
2011-03-14 13:02:10 -03:00
|
|
|
|
2004-11-30 17:04:45 -04:00
|
|
|
def test_invalid_bufsize(self):
|
|
|
|
# an invalid type of the bufsize argument should raise
|
|
|
|
# TypeError.
|
2010-02-27 18:12:37 -04:00
|
|
|
with self.assertRaises(TypeError):
|
2019-10-14 17:40:32 -03:00
|
|
|
subprocess.Popen(ZERO_RETURN_CMD, "orange")
|
2004-11-30 17:04:45 -04:00
|
|
|
|
2007-06-07 18:56:45 -03:00
|
|
|
def test_bufsize_is_none(self):
|
|
|
|
# bufsize=None should be the same as bufsize=0.
|
2019-10-14 17:40:32 -03:00
|
|
|
p = subprocess.Popen(ZERO_RETURN_CMD, None)
|
2007-06-07 18:56:45 -03:00
|
|
|
self.assertEqual(p.wait(), 0)
|
|
|
|
# Again with keyword arg
|
2019-10-14 17:40:32 -03:00
|
|
|
p = subprocess.Popen(ZERO_RETURN_CMD, bufsize=None)
|
2007-06-07 18:56:45 -03:00
|
|
|
self.assertEqual(p.wait(), 0)
|
|
|
|
|
2014-09-21 16:10:56 -03:00
|
|
|
def _test_bufsize_equal_one(self, line, expected, universal_newlines):
|
|
|
|
# subprocess may deadlock with bufsize=1, see issue #21332
|
|
|
|
with subprocess.Popen([sys.executable, "-c", "import sys;"
|
|
|
|
"sys.stdout.write(sys.stdin.readline());"
|
|
|
|
"sys.stdout.flush()"],
|
|
|
|
stdin=subprocess.PIPE,
|
|
|
|
stdout=subprocess.PIPE,
|
|
|
|
stderr=subprocess.DEVNULL,
|
|
|
|
bufsize=1,
|
|
|
|
universal_newlines=universal_newlines) as p:
|
|
|
|
p.stdin.write(line) # expect that it flushes the line in text mode
|
|
|
|
os.close(p.stdin.fileno()) # close it without flushing the buffer
|
|
|
|
read_line = p.stdout.readline()
|
2017-08-18 10:18:13 -03:00
|
|
|
with support.SuppressCrashReport():
|
|
|
|
try:
|
|
|
|
p.stdin.close()
|
|
|
|
except OSError:
|
|
|
|
pass
|
2014-09-21 16:10:56 -03:00
|
|
|
p.stdin = None
|
|
|
|
self.assertEqual(p.returncode, 0)
|
|
|
|
self.assertEqual(read_line, expected)
|
|
|
|
|
|
|
|
def test_bufsize_equal_one_text_mode(self):
|
|
|
|
# line is flushed in text mode with bufsize=1.
|
|
|
|
# we should get the full line in return
|
|
|
|
line = "line\n"
|
|
|
|
self._test_bufsize_equal_one(line, line, universal_newlines=True)
|
|
|
|
|
|
|
|
def test_bufsize_equal_one_binary_mode(self):
|
|
|
|
# line is not flushed in binary mode with bufsize=1.
|
|
|
|
# we should get empty response
|
|
|
|
line = b'line' + os.linesep.encode() # assume ascii-based locale
|
2018-10-19 21:22:31 -03:00
|
|
|
with self.assertWarnsRegex(RuntimeWarning, 'line buffering'):
|
|
|
|
self._test_bufsize_equal_one(line, b'', universal_newlines=False)
|
2014-09-21 16:10:56 -03:00
|
|
|
|
Merged revisions 69576,69579-69580,69589,69619-69620,69633,69703-69704,69728-69730 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk
........
r69576 | georg.brandl | 2009-02-13 04:56:50 -0600 (Fri, 13 Feb 2009) | 1 line
#1661108: note that urlsafe encoded string can contain "=".
........
r69579 | georg.brandl | 2009-02-13 05:06:59 -0600 (Fri, 13 Feb 2009) | 2 lines
Fix warnings GCC emits where the argument of PyErr_Format is a single variable.
........
r69580 | georg.brandl | 2009-02-13 05:10:04 -0600 (Fri, 13 Feb 2009) | 2 lines
Fix warnings GCC emits where the argument of PyErr_Format is a single variable.
........
r69589 | martin.v.loewis | 2009-02-13 14:11:34 -0600 (Fri, 13 Feb 2009) | 2 lines
Move amd64 properties further to the top, so that they override
the linker options correctly.
........
r69619 | benjamin.peterson | 2009-02-14 11:00:51 -0600 (Sat, 14 Feb 2009) | 1 line
this needn't be a shebang line
........
r69620 | georg.brandl | 2009-02-14 11:01:36 -0600 (Sat, 14 Feb 2009) | 1 line
#5179: don't leak PIPE fds when child execution fails.
........
r69633 | hirokazu.yamamoto | 2009-02-15 03:19:48 -0600 (Sun, 15 Feb 2009) | 1 line
Fixed typo.
........
r69703 | raymond.hettinger | 2009-02-16 16:42:54 -0600 (Mon, 16 Feb 2009) | 3 lines
Issue 5229: Documentation for super() neglects to say what super() actually does
........
r69704 | raymond.hettinger | 2009-02-16 17:00:25 -0600 (Mon, 16 Feb 2009) | 1 line
Add explanation for super(type1, type2).
........
r69728 | georg.brandl | 2009-02-17 18:22:55 -0600 (Tue, 17 Feb 2009) | 2 lines
#5297: fix example.
........
r69729 | georg.brandl | 2009-02-17 18:25:13 -0600 (Tue, 17 Feb 2009) | 2 lines
#5296: sequence -> iterable.
........
r69730 | georg.brandl | 2009-02-17 18:31:36 -0600 (Tue, 17 Feb 2009) | 2 lines
#5268: mention VMSError.
........
2009-02-19 00:22:03 -04:00
|
|
|
def test_leaking_fds_on_error(self):
|
|
|
|
# see bug #5179: Popen leaks file descriptors to PIPEs if
|
|
|
|
# the child fails to execute; this will eventually exhaust
|
|
|
|
# the maximum number of open fds. 1024 seems a very common
|
|
|
|
# value for that limit, but Windows has 2048, so we loop
|
|
|
|
# 1024 times (each call leaked two fds).
|
|
|
|
for i in range(1024):
|
2018-01-25 14:06:05 -04:00
|
|
|
with self.assertRaises(NONEXISTING_ERRORS):
|
2017-08-21 18:51:31 -03:00
|
|
|
subprocess.Popen(NONEXISTING_CMD,
|
Merged revisions 69576,69579-69580,69589,69619-69620,69633,69703-69704,69728-69730 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk
........
r69576 | georg.brandl | 2009-02-13 04:56:50 -0600 (Fri, 13 Feb 2009) | 1 line
#1661108: note that urlsafe encoded string can contain "=".
........
r69579 | georg.brandl | 2009-02-13 05:06:59 -0600 (Fri, 13 Feb 2009) | 2 lines
Fix warnings GCC emits where the argument of PyErr_Format is a single variable.
........
r69580 | georg.brandl | 2009-02-13 05:10:04 -0600 (Fri, 13 Feb 2009) | 2 lines
Fix warnings GCC emits where the argument of PyErr_Format is a single variable.
........
r69589 | martin.v.loewis | 2009-02-13 14:11:34 -0600 (Fri, 13 Feb 2009) | 2 lines
Move amd64 properties further to the top, so that they override
the linker options correctly.
........
r69619 | benjamin.peterson | 2009-02-14 11:00:51 -0600 (Sat, 14 Feb 2009) | 1 line
this needn't be a shebang line
........
r69620 | georg.brandl | 2009-02-14 11:01:36 -0600 (Sat, 14 Feb 2009) | 1 line
#5179: don't leak PIPE fds when child execution fails.
........
r69633 | hirokazu.yamamoto | 2009-02-15 03:19:48 -0600 (Sun, 15 Feb 2009) | 1 line
Fixed typo.
........
r69703 | raymond.hettinger | 2009-02-16 16:42:54 -0600 (Mon, 16 Feb 2009) | 3 lines
Issue 5229: Documentation for super() neglects to say what super() actually does
........
r69704 | raymond.hettinger | 2009-02-16 17:00:25 -0600 (Mon, 16 Feb 2009) | 1 line
Add explanation for super(type1, type2).
........
r69728 | georg.brandl | 2009-02-17 18:22:55 -0600 (Tue, 17 Feb 2009) | 2 lines
#5297: fix example.
........
r69729 | georg.brandl | 2009-02-17 18:25:13 -0600 (Tue, 17 Feb 2009) | 2 lines
#5296: sequence -> iterable.
........
r69730 | georg.brandl | 2009-02-17 18:31:36 -0600 (Tue, 17 Feb 2009) | 2 lines
#5268: mention VMSError.
........
2009-02-19 00:22:03 -04:00
|
|
|
stdout=subprocess.PIPE,
|
|
|
|
stderr=subprocess.PIPE)
|
2010-02-27 18:12:37 -04:00
|
|
|
|
2017-08-21 18:51:31 -03:00
|
|
|
def test_nonexisting_with_pipes(self):
|
|
|
|
# bpo-30121: Popen with pipes must close properly pipes on error.
|
|
|
|
# Previously, os.close() was called with a Windows handle which is not
|
|
|
|
# a valid file descriptor.
|
|
|
|
#
|
|
|
|
# Run the test in a subprocess to control how the CRT reports errors
|
|
|
|
# and to get stderr content.
|
|
|
|
try:
|
|
|
|
import msvcrt
|
|
|
|
msvcrt.CrtSetReportMode
|
|
|
|
except (AttributeError, ImportError):
|
|
|
|
self.skipTest("need msvcrt.CrtSetReportMode")
|
|
|
|
|
|
|
|
code = textwrap.dedent(f"""
|
|
|
|
import msvcrt
|
|
|
|
import subprocess
|
|
|
|
|
|
|
|
cmd = {NONEXISTING_CMD!r}
|
|
|
|
|
|
|
|
for report_type in [msvcrt.CRT_WARN,
|
|
|
|
msvcrt.CRT_ERROR,
|
|
|
|
msvcrt.CRT_ASSERT]:
|
|
|
|
msvcrt.CrtSetReportMode(report_type, msvcrt.CRTDBG_MODE_FILE)
|
|
|
|
msvcrt.CrtSetReportFile(report_type, msvcrt.CRTDBG_FILE_STDERR)
|
|
|
|
|
|
|
|
try:
|
2018-02-19 16:02:38 -04:00
|
|
|
subprocess.Popen(cmd,
|
2017-08-21 18:51:31 -03:00
|
|
|
stdout=subprocess.PIPE,
|
|
|
|
stderr=subprocess.PIPE)
|
|
|
|
except OSError:
|
|
|
|
pass
|
|
|
|
""")
|
|
|
|
cmd = [sys.executable, "-c", code]
|
|
|
|
proc = subprocess.Popen(cmd,
|
|
|
|
stderr=subprocess.PIPE,
|
|
|
|
universal_newlines=True)
|
|
|
|
with proc:
|
|
|
|
stderr = proc.communicate()[1]
|
|
|
|
self.assertEqual(stderr, "")
|
|
|
|
self.assertEqual(proc.returncode, 0)
|
|
|
|
|
2013-08-30 18:38:13 -03:00
|
|
|
def test_double_close_on_error(self):
|
|
|
|
# Issue #18851
|
|
|
|
fds = []
|
|
|
|
def open_fds():
|
|
|
|
for i in range(20):
|
|
|
|
fds.extend(os.pipe())
|
|
|
|
time.sleep(0.001)
|
|
|
|
t = threading.Thread(target=open_fds)
|
|
|
|
t.start()
|
|
|
|
try:
|
|
|
|
with self.assertRaises(EnvironmentError):
|
2017-08-21 18:51:31 -03:00
|
|
|
subprocess.Popen(NONEXISTING_CMD,
|
2013-08-30 18:38:13 -03:00
|
|
|
stdin=subprocess.PIPE,
|
|
|
|
stdout=subprocess.PIPE,
|
|
|
|
stderr=subprocess.PIPE)
|
|
|
|
finally:
|
|
|
|
t.join()
|
|
|
|
exc = None
|
|
|
|
for fd in fds:
|
|
|
|
# If a double close occurred, some of those fds will
|
|
|
|
# already have been closed by mistake, and os.close()
|
|
|
|
# here will raise.
|
|
|
|
try:
|
|
|
|
os.close(fd)
|
|
|
|
except OSError as e:
|
|
|
|
exc = e
|
|
|
|
if exc is not None:
|
|
|
|
raise exc
|
|
|
|
|
2014-04-23 04:27:17 -03:00
|
|
|
def test_threadsafe_wait(self):
|
|
|
|
"""Issue21291: Popen.wait() needs to be threadsafe for returncode."""
|
|
|
|
proc = subprocess.Popen([sys.executable, '-c',
|
|
|
|
'import time; time.sleep(12)'])
|
|
|
|
self.assertEqual(proc.returncode, None)
|
|
|
|
results = []
|
|
|
|
|
|
|
|
def kill_proc_timer_thread():
|
|
|
|
results.append(('thread-start-poll-result', proc.poll()))
|
|
|
|
# terminate it from the thread and wait for the result.
|
|
|
|
proc.kill()
|
|
|
|
proc.wait()
|
|
|
|
results.append(('thread-after-kill-and-wait', proc.returncode))
|
|
|
|
# this wait should be a no-op given the above.
|
|
|
|
proc.wait()
|
|
|
|
results.append(('thread-after-second-wait', proc.returncode))
|
|
|
|
|
|
|
|
# This is a timing sensitive test, the failure mode is
|
|
|
|
# triggered when both the main thread and this thread are in
|
|
|
|
# the wait() call at once. The delay here is to allow the
|
|
|
|
# main thread to most likely be blocked in its wait() call.
|
|
|
|
t = threading.Timer(0.2, kill_proc_timer_thread)
|
|
|
|
t.start()
|
|
|
|
|
2018-06-25 21:11:06 -03:00
|
|
|
if mswindows:
|
2014-04-23 12:38:36 -03:00
|
|
|
expected_errorcode = 1
|
|
|
|
else:
|
|
|
|
# Should be -9 because of the proc.kill() from the thread.
|
|
|
|
expected_errorcode = -9
|
|
|
|
|
2014-04-23 04:27:17 -03:00
|
|
|
# Wait for the process to finish; the thread should kill it
|
|
|
|
# long before it finishes on its own. Supplying a timeout
|
|
|
|
# triggers a different code path for better coverage.
|
|
|
|
proc.wait(timeout=20)
|
2014-04-23 12:38:36 -03:00
|
|
|
self.assertEqual(proc.returncode, expected_errorcode,
|
2014-04-23 04:27:17 -03:00
|
|
|
msg="unexpected result in wait from main thread")
|
|
|
|
|
|
|
|
# This should be a no-op with no change in returncode.
|
|
|
|
proc.wait()
|
2014-04-23 12:38:36 -03:00
|
|
|
self.assertEqual(proc.returncode, expected_errorcode,
|
2014-04-23 04:27:17 -03:00
|
|
|
msg="unexpected result in second main wait.")
|
|
|
|
|
|
|
|
t.join()
|
|
|
|
# Ensure that all of the thread results are as expected.
|
|
|
|
# When a race condition occurs in wait(), the returncode could
|
|
|
|
# be set by the wrong thread that doesn't actually have it
|
|
|
|
# leading to an incorrect value.
|
|
|
|
self.assertEqual([('thread-start-poll-result', None),
|
2014-04-23 12:38:36 -03:00
|
|
|
('thread-after-kill-and-wait', expected_errorcode),
|
|
|
|
('thread-after-second-wait', expected_errorcode)],
|
2014-04-23 04:27:17 -03:00
|
|
|
results)
|
|
|
|
|
2010-05-21 17:13:12 -03:00
|
|
|
def test_issue8780(self):
|
|
|
|
# Ensure that stdout is inherited from the parent
|
|
|
|
# if stdout=PIPE is not used
|
|
|
|
code = ';'.join((
|
|
|
|
'import subprocess, sys',
|
|
|
|
'retcode = subprocess.call('
|
|
|
|
"[sys.executable, '-c', 'print(\"Hello World!\")'])",
|
|
|
|
'assert retcode == 0'))
|
|
|
|
output = subprocess.check_output([sys.executable, '-c', code])
|
2010-11-20 15:04:17 -04:00
|
|
|
self.assertTrue(output.startswith(b'Hello World!'), ascii(output))
|
2010-05-21 17:13:12 -03:00
|
|
|
|
2010-08-06 10:03:56 -03:00
|
|
|
def test_handles_closed_on_exception(self):
|
|
|
|
# If CreateProcess exits with an error, ensure the
|
|
|
|
# duplicate output handles are released
|
2015-09-28 07:33:14 -03:00
|
|
|
ifhandle, ifname = tempfile.mkstemp()
|
|
|
|
ofhandle, ofname = tempfile.mkstemp()
|
|
|
|
efhandle, efname = tempfile.mkstemp()
|
2010-08-06 10:03:56 -03:00
|
|
|
try:
|
|
|
|
subprocess.Popen (["*"], stdin=ifhandle, stdout=ofhandle,
|
|
|
|
stderr=efhandle)
|
|
|
|
except OSError:
|
|
|
|
os.close(ifhandle)
|
|
|
|
os.remove(ifname)
|
|
|
|
os.close(ofhandle)
|
|
|
|
os.remove(ofname)
|
|
|
|
os.close(efhandle)
|
|
|
|
os.remove(efname)
|
|
|
|
self.assertFalse(os.path.exists(ifname))
|
|
|
|
self.assertFalse(os.path.exists(ofname))
|
|
|
|
self.assertFalse(os.path.exists(efname))
|
|
|
|
|
2011-04-05 10:34:00 -03:00
|
|
|
def test_communicate_epipe(self):
|
|
|
|
# Issue 10963: communicate() should hide EPIPE
|
2019-10-14 17:40:32 -03:00
|
|
|
p = subprocess.Popen(ZERO_RETURN_CMD,
|
2011-04-05 10:34:00 -03:00
|
|
|
stdin=subprocess.PIPE,
|
|
|
|
stdout=subprocess.PIPE,
|
|
|
|
stderr=subprocess.PIPE)
|
|
|
|
self.addCleanup(p.stdout.close)
|
|
|
|
self.addCleanup(p.stderr.close)
|
|
|
|
self.addCleanup(p.stdin.close)
|
|
|
|
p.communicate(b"x" * 2**20)
|
|
|
|
|
|
|
|
def test_communicate_epipe_only_stdin(self):
|
|
|
|
# Issue 10963: communicate() should hide EPIPE
|
2019-10-14 17:40:32 -03:00
|
|
|
p = subprocess.Popen(ZERO_RETURN_CMD,
|
2011-04-05 10:34:00 -03:00
|
|
|
stdin=subprocess.PIPE)
|
|
|
|
self.addCleanup(p.stdin.close)
|
2012-02-12 03:01:30 -04:00
|
|
|
p.wait()
|
2011-04-05 10:34:00 -03:00
|
|
|
p.communicate(b"x" * 2**20)
|
|
|
|
|
2012-02-12 03:01:30 -04:00
|
|
|
@unittest.skipUnless(hasattr(signal, 'SIGUSR1'),
|
|
|
|
"Requires signal.SIGUSR1")
|
|
|
|
@unittest.skipUnless(hasattr(os, 'kill'),
|
|
|
|
"Requires os.kill")
|
|
|
|
@unittest.skipUnless(hasattr(os, 'getppid'),
|
|
|
|
"Requires os.getppid")
|
2011-07-05 09:00:56 -03:00
|
|
|
def test_communicate_eintr(self):
|
|
|
|
# Issue #12493: communicate() should handle EINTR
|
|
|
|
def handler(signum, frame):
|
|
|
|
pass
|
2012-02-12 03:01:30 -04:00
|
|
|
old_handler = signal.signal(signal.SIGUSR1, handler)
|
|
|
|
self.addCleanup(signal.signal, signal.SIGUSR1, old_handler)
|
2011-07-05 09:00:56 -03:00
|
|
|
|
2012-02-12 03:01:30 -04:00
|
|
|
args = [sys.executable, "-c",
|
|
|
|
'import os, signal;'
|
|
|
|
'os.kill(os.getppid(), signal.SIGUSR1)']
|
2011-07-05 09:00:56 -03:00
|
|
|
for stream in ('stdout', 'stderr'):
|
|
|
|
kw = {stream: subprocess.PIPE}
|
|
|
|
with subprocess.Popen(args, **kw) as process:
|
2012-02-12 03:01:30 -04:00
|
|
|
# communicate() will be interrupted by SIGUSR1
|
2011-07-05 09:00:56 -03:00
|
|
|
process.communicate()
|
|
|
|
|
2010-02-27 18:12:37 -04:00
|
|
|
|
2012-11-11 02:32:22 -04:00
|
|
|
# This test is Linux-ish specific for simplicity to at least have
|
|
|
|
# some coverage. It is not a platform specific bug.
|
|
|
|
@unittest.skipUnless(os.path.isdir('/proc/%d/fd' % os.getpid()),
|
|
|
|
"Linux specific")
|
|
|
|
def test_failed_child_execute_fd_leak(self):
|
|
|
|
"""Test for the fork() failure fd leak reported in issue16327."""
|
|
|
|
fd_directory = '/proc/%d/fd' % os.getpid()
|
|
|
|
fds_before_popen = os.listdir(fd_directory)
|
|
|
|
with self.assertRaises(PopenTestException):
|
|
|
|
PopenExecuteChildRaises(
|
2019-10-14 17:40:32 -03:00
|
|
|
ZERO_RETURN_CMD, stdin=subprocess.PIPE,
|
2012-11-11 02:32:22 -04:00
|
|
|
stdout=subprocess.PIPE, stderr=subprocess.PIPE)
|
|
|
|
|
|
|
|
# NOTE: This test doesn't verify that the real _execute_child
|
|
|
|
# does not close the file descriptors itself on the way out
|
|
|
|
# during an exception. Code inspection has confirmed that.
|
|
|
|
|
|
|
|
fds_after_exception = os.listdir(fd_directory)
|
|
|
|
self.assertEqual(fds_before_popen, fds_after_exception)
|
|
|
|
|
2018-06-25 21:11:06 -03:00
|
|
|
@unittest.skipIf(mswindows, "behavior currently not supported on Windows")
|
2017-08-24 18:58:25 -03:00
|
|
|
def test_file_not_found_includes_filename(self):
|
|
|
|
with self.assertRaises(FileNotFoundError) as c:
|
|
|
|
subprocess.call(['/opt/nonexistent_binary', 'with', 'some', 'args'])
|
|
|
|
self.assertEqual(c.exception.filename, '/opt/nonexistent_binary')
|
|
|
|
|
2018-06-25 21:11:06 -03:00
|
|
|
@unittest.skipIf(mswindows, "behavior currently not supported on Windows")
|
2017-08-24 18:58:25 -03:00
|
|
|
def test_file_not_found_with_bad_cwd(self):
|
|
|
|
with self.assertRaises(FileNotFoundError) as c:
|
|
|
|
subprocess.Popen(['exit', '0'], cwd='/some/nonexistent/directory')
|
|
|
|
self.assertEqual(c.exception.filename, '/some/nonexistent/directory')
|
|
|
|
|
2015-04-14 20:14:25 -03:00
|
|
|
|
|
|
|
class RunFuncTestCase(BaseTestCase):
|
|
|
|
def run_python(self, code, **kwargs):
|
|
|
|
"""Run Python code in a subprocess using subprocess.run"""
|
|
|
|
argv = [sys.executable, "-c", code]
|
|
|
|
return subprocess.run(argv, **kwargs)
|
|
|
|
|
|
|
|
def test_returncode(self):
|
|
|
|
# call() function with sequence argument
|
|
|
|
cp = self.run_python("import sys; sys.exit(47)")
|
|
|
|
self.assertEqual(cp.returncode, 47)
|
|
|
|
with self.assertRaises(subprocess.CalledProcessError):
|
|
|
|
cp.check_returncode()
|
|
|
|
|
|
|
|
def test_check(self):
|
|
|
|
with self.assertRaises(subprocess.CalledProcessError) as c:
|
|
|
|
self.run_python("import sys; sys.exit(47)", check=True)
|
|
|
|
self.assertEqual(c.exception.returncode, 47)
|
|
|
|
|
|
|
|
def test_check_zero(self):
|
|
|
|
# check_returncode shouldn't raise when returncode is zero
|
2019-10-14 17:40:32 -03:00
|
|
|
cp = subprocess.run(ZERO_RETURN_CMD, check=True)
|
2015-04-14 20:14:25 -03:00
|
|
|
self.assertEqual(cp.returncode, 0)
|
|
|
|
|
|
|
|
def test_timeout(self):
|
|
|
|
# run() function with timeout argument; we want to test that the child
|
|
|
|
# process gets killed when the timeout expires. If the child isn't
|
|
|
|
# killed, this call will deadlock since subprocess.run waits for the
|
|
|
|
# child.
|
|
|
|
with self.assertRaises(subprocess.TimeoutExpired):
|
|
|
|
self.run_python("while True: pass", timeout=0.0001)
|
|
|
|
|
|
|
|
def test_capture_stdout(self):
|
|
|
|
# capture stdout with zero return code
|
|
|
|
cp = self.run_python("print('BDFL')", stdout=subprocess.PIPE)
|
|
|
|
self.assertIn(b'BDFL', cp.stdout)
|
|
|
|
|
|
|
|
def test_capture_stderr(self):
|
|
|
|
cp = self.run_python("import sys; sys.stderr.write('BDFL')",
|
|
|
|
stderr=subprocess.PIPE)
|
|
|
|
self.assertIn(b'BDFL', cp.stderr)
|
|
|
|
|
|
|
|
def test_check_output_stdin_arg(self):
|
|
|
|
# run() can be called with stdin set to a file
|
|
|
|
tf = tempfile.TemporaryFile()
|
|
|
|
self.addCleanup(tf.close)
|
|
|
|
tf.write(b'pear')
|
|
|
|
tf.seek(0)
|
|
|
|
cp = self.run_python(
|
|
|
|
"import sys; sys.stdout.write(sys.stdin.read().upper())",
|
|
|
|
stdin=tf, stdout=subprocess.PIPE)
|
|
|
|
self.assertIn(b'PEAR', cp.stdout)
|
|
|
|
|
|
|
|
def test_check_output_input_arg(self):
|
|
|
|
# check_output() can be called with input set to a string
|
|
|
|
cp = self.run_python(
|
|
|
|
"import sys; sys.stdout.write(sys.stdin.read().upper())",
|
|
|
|
input=b'pear', stdout=subprocess.PIPE)
|
|
|
|
self.assertIn(b'PEAR', cp.stdout)
|
|
|
|
|
|
|
|
def test_check_output_stdin_with_input_arg(self):
|
|
|
|
# run() refuses to accept 'stdin' with 'input'
|
|
|
|
tf = tempfile.TemporaryFile()
|
|
|
|
self.addCleanup(tf.close)
|
|
|
|
tf.write(b'pear')
|
|
|
|
tf.seek(0)
|
|
|
|
with self.assertRaises(ValueError,
|
|
|
|
msg="Expected ValueError when stdin and input args supplied.") as c:
|
|
|
|
output = self.run_python("print('will not be run')",
|
|
|
|
stdin=tf, input=b'hare')
|
|
|
|
self.assertIn('stdin', c.exception.args[0])
|
|
|
|
self.assertIn('input', c.exception.args[0])
|
|
|
|
|
|
|
|
def test_check_output_timeout(self):
|
|
|
|
with self.assertRaises(subprocess.TimeoutExpired) as c:
|
|
|
|
cp = self.run_python((
|
|
|
|
"import sys, time\n"
|
|
|
|
"sys.stdout.write('BDFL')\n"
|
|
|
|
"sys.stdout.flush()\n"
|
|
|
|
"time.sleep(3600)"),
|
|
|
|
# Some heavily loaded buildbots (sparc Debian 3.x) require
|
|
|
|
# this much time to start and print.
|
|
|
|
timeout=3, stdout=subprocess.PIPE)
|
|
|
|
self.assertEqual(c.exception.output, b'BDFL')
|
|
|
|
# output is aliased to stdout
|
|
|
|
self.assertEqual(c.exception.stdout, b'BDFL')
|
|
|
|
|
|
|
|
def test_run_kwargs(self):
|
|
|
|
newenv = os.environ.copy()
|
|
|
|
newenv["FRUIT"] = "banana"
|
|
|
|
cp = self.run_python(('import sys, os;'
|
|
|
|
'sys.exit(33 if os.getenv("FRUIT")=="banana" else 31)'),
|
|
|
|
env=newenv)
|
|
|
|
self.assertEqual(cp.returncode, 33)
|
|
|
|
|
2019-05-28 16:49:35 -03:00
|
|
|
def test_run_with_pathlike_path(self):
|
|
|
|
# bpo-31961: test run(pathlike_object)
|
|
|
|
# the name of a command that can be run without
|
|
|
|
# any argumenets that exit fast
|
|
|
|
prog = 'tree.com' if mswindows else 'ls'
|
|
|
|
path = shutil.which(prog)
|
|
|
|
if path is None:
|
|
|
|
self.skipTest(f'{prog} required for this test')
|
|
|
|
path = FakePath(path)
|
|
|
|
res = subprocess.run(path, stdout=subprocess.DEVNULL)
|
|
|
|
self.assertEqual(res.returncode, 0)
|
|
|
|
with self.assertRaises(TypeError):
|
|
|
|
subprocess.run(path, stdout=subprocess.DEVNULL, shell=True)
|
|
|
|
|
|
|
|
def test_run_with_bytes_path_and_arguments(self):
|
|
|
|
# bpo-31961: test run([bytes_object, b'additional arguments'])
|
|
|
|
path = os.fsencode(sys.executable)
|
|
|
|
args = [path, '-c', b'import sys; sys.exit(57)']
|
|
|
|
res = subprocess.run(args)
|
|
|
|
self.assertEqual(res.returncode, 57)
|
|
|
|
|
|
|
|
def test_run_with_pathlike_path_and_arguments(self):
|
|
|
|
# bpo-31961: test run([pathlike_object, 'additional arguments'])
|
|
|
|
path = FakePath(sys.executable)
|
|
|
|
args = [path, '-c', 'import sys; sys.exit(57)']
|
|
|
|
res = subprocess.run(args)
|
|
|
|
self.assertEqual(res.returncode, 57)
|
|
|
|
|
2018-01-30 02:40:39 -04:00
|
|
|
def test_capture_output(self):
|
|
|
|
cp = self.run_python(("import sys;"
|
|
|
|
"sys.stdout.write('BDFL'); "
|
|
|
|
"sys.stderr.write('FLUFL')"),
|
|
|
|
capture_output=True)
|
|
|
|
self.assertIn(b'BDFL', cp.stdout)
|
|
|
|
self.assertIn(b'FLUFL', cp.stderr)
|
|
|
|
|
|
|
|
def test_stdout_with_capture_output_arg(self):
|
|
|
|
# run() refuses to accept 'stdout' with 'capture_output'
|
|
|
|
tf = tempfile.TemporaryFile()
|
|
|
|
self.addCleanup(tf.close)
|
|
|
|
with self.assertRaises(ValueError,
|
|
|
|
msg=("Expected ValueError when stdout and capture_output "
|
|
|
|
"args supplied.")) as c:
|
|
|
|
output = self.run_python("print('will not be run')",
|
|
|
|
capture_output=True, stdout=tf)
|
|
|
|
self.assertIn('stdout', c.exception.args[0])
|
|
|
|
self.assertIn('capture_output', c.exception.args[0])
|
|
|
|
|
|
|
|
def test_stderr_with_capture_output_arg(self):
|
|
|
|
# run() refuses to accept 'stderr' with 'capture_output'
|
|
|
|
tf = tempfile.TemporaryFile()
|
|
|
|
self.addCleanup(tf.close)
|
|
|
|
with self.assertRaises(ValueError,
|
|
|
|
msg=("Expected ValueError when stderr and capture_output "
|
|
|
|
"args supplied.")) as c:
|
|
|
|
output = self.run_python("print('will not be run')",
|
|
|
|
capture_output=True, stderr=tf)
|
|
|
|
self.assertIn('stderr', c.exception.args[0])
|
|
|
|
self.assertIn('capture_output', c.exception.args[0])
|
|
|
|
|
2019-09-11 07:05:14 -03:00
|
|
|
# This test _might_ wind up a bit fragile on loaded build+test machines
|
|
|
|
# as it depends on the timing with wide enough margins for normal situations
|
|
|
|
# but does assert that it happened "soon enough" to believe the right thing
|
|
|
|
# happened.
|
|
|
|
@unittest.skipIf(mswindows, "requires posix like 'sleep' shell command")
|
|
|
|
def test_run_with_shell_timeout_and_capture_output(self):
|
|
|
|
"""Output capturing after a timeout mustn't hang forever on open filehandles."""
|
|
|
|
before_secs = time.monotonic()
|
|
|
|
try:
|
|
|
|
subprocess.run('sleep 3', shell=True, timeout=0.1,
|
|
|
|
capture_output=True) # New session unspecified.
|
|
|
|
except subprocess.TimeoutExpired as exc:
|
|
|
|
after_secs = time.monotonic()
|
|
|
|
stacks = traceback.format_exc() # assertRaises doesn't give this.
|
|
|
|
else:
|
|
|
|
self.fail("TimeoutExpired not raised.")
|
|
|
|
self.assertLess(after_secs - before_secs, 1.5,
|
|
|
|
msg="TimeoutExpired was delayed! Bad traceback:\n```\n"
|
|
|
|
f"{stacks}```")
|
|
|
|
|
2015-04-14 20:14:25 -03:00
|
|
|
|
2018-06-25 21:11:06 -03:00
|
|
|
@unittest.skipIf(mswindows, "POSIX specific tests")
|
2010-03-27 19:47:23 -03:00
|
|
|
class POSIXProcessTestCase(BaseTestCase):
|
2010-03-04 17:50:56 -04:00
|
|
|
|
2012-10-10 07:34:47 -03:00
|
|
|
def setUp(self):
|
|
|
|
super().setUp()
|
|
|
|
self._nonexistent_dir = "/_this/pa.th/does/not/exist"
|
|
|
|
|
|
|
|
def _get_chdir_exception(self):
|
2010-03-14 03:49:55 -03:00
|
|
|
try:
|
2012-10-10 07:34:47 -03:00
|
|
|
os.chdir(self._nonexistent_dir)
|
2010-03-14 03:49:55 -03:00
|
|
|
except OSError as e:
|
|
|
|
# This avoids hard coding the errno value or the OS perror()
|
|
|
|
# string and instead capture the exception that we want to see
|
|
|
|
# below for comparison.
|
|
|
|
desired_exception = e
|
|
|
|
else:
|
2016-07-27 22:11:04 -03:00
|
|
|
self.fail("chdir to nonexistent directory %s succeeded." %
|
2012-10-10 07:34:47 -03:00
|
|
|
self._nonexistent_dir)
|
|
|
|
return desired_exception
|
2010-03-14 03:49:55 -03:00
|
|
|
|
2012-10-10 07:34:47 -03:00
|
|
|
def test_exception_cwd(self):
|
|
|
|
"""Test error in the child raised in the parent for a bad cwd."""
|
|
|
|
desired_exception = self._get_chdir_exception()
|
2010-03-14 03:49:55 -03:00
|
|
|
try:
|
2010-02-27 18:12:37 -04:00
|
|
|
p = subprocess.Popen([sys.executable, "-c", ""],
|
2012-10-10 07:34:47 -03:00
|
|
|
cwd=self._nonexistent_dir)
|
2010-03-14 03:49:55 -03:00
|
|
|
except OSError as e:
|
|
|
|
# Test that the child process chdir failure actually makes
|
|
|
|
# it up to the parent process as the correct exception.
|
|
|
|
self.assertEqual(desired_exception.errno, e.errno)
|
|
|
|
self.assertEqual(desired_exception.strerror, e.strerror)
|
2018-09-11 12:54:07 -03:00
|
|
|
self.assertEqual(desired_exception.filename, e.filename)
|
2010-03-14 03:49:55 -03:00
|
|
|
else:
|
|
|
|
self.fail("Expected OSError: %s" % desired_exception)
|
|
|
|
|
2012-10-10 07:34:47 -03:00
|
|
|
def test_exception_bad_executable(self):
|
|
|
|
"""Test error in the child raised in the parent for a bad executable."""
|
|
|
|
desired_exception = self._get_chdir_exception()
|
|
|
|
try:
|
|
|
|
p = subprocess.Popen([sys.executable, "-c", ""],
|
|
|
|
executable=self._nonexistent_dir)
|
|
|
|
except OSError as e:
|
|
|
|
# Test that the child process exec failure actually makes
|
|
|
|
# it up to the parent process as the correct exception.
|
|
|
|
self.assertEqual(desired_exception.errno, e.errno)
|
|
|
|
self.assertEqual(desired_exception.strerror, e.strerror)
|
2018-09-11 12:54:07 -03:00
|
|
|
self.assertEqual(desired_exception.filename, e.filename)
|
2012-10-10 07:34:47 -03:00
|
|
|
else:
|
|
|
|
self.fail("Expected OSError: %s" % desired_exception)
|
|
|
|
|
|
|
|
def test_exception_bad_args_0(self):
|
|
|
|
"""Test error in the child raised in the parent for a bad args[0]."""
|
|
|
|
desired_exception = self._get_chdir_exception()
|
|
|
|
try:
|
|
|
|
p = subprocess.Popen([self._nonexistent_dir, "-c", ""])
|
|
|
|
except OSError as e:
|
|
|
|
# Test that the child process exec failure actually makes
|
|
|
|
# it up to the parent process as the correct exception.
|
|
|
|
self.assertEqual(desired_exception.errno, e.errno)
|
|
|
|
self.assertEqual(desired_exception.strerror, e.strerror)
|
2018-09-11 12:54:07 -03:00
|
|
|
self.assertEqual(desired_exception.filename, e.filename)
|
2012-10-10 07:34:47 -03:00
|
|
|
else:
|
|
|
|
self.fail("Expected OSError: %s" % desired_exception)
|
|
|
|
|
2017-09-06 03:41:30 -03:00
|
|
|
# We mock the __del__ method for Popen in the next two tests
|
|
|
|
# because it does cleanup based on the pid returned by fork_exec
|
|
|
|
# along with issuing a resource warning if it still exists. Since
|
|
|
|
# we don't actually spawn a process in these tests we can forego
|
|
|
|
# the destructor. An alternative would be to set _child_created to
|
|
|
|
# False before the destructor is called but there is no easy way
|
|
|
|
# to do that
|
|
|
|
class PopenNoDestructor(subprocess.Popen):
|
|
|
|
def __del__(self):
|
|
|
|
pass
|
|
|
|
|
|
|
|
@mock.patch("subprocess._posixsubprocess.fork_exec")
|
|
|
|
def test_exception_errpipe_normal(self, fork_exec):
|
|
|
|
"""Test error passing done through errpipe_write in the good case"""
|
|
|
|
def proper_error(*args):
|
|
|
|
errpipe_write = args[13]
|
|
|
|
# Write the hex for the error code EISDIR: 'is a directory'
|
|
|
|
err_code = '{:x}'.format(errno.EISDIR).encode()
|
|
|
|
os.write(errpipe_write, b"OSError:" + err_code + b":")
|
|
|
|
return 0
|
|
|
|
|
|
|
|
fork_exec.side_effect = proper_error
|
|
|
|
|
2017-10-05 10:32:53 -03:00
|
|
|
with mock.patch("subprocess.os.waitpid",
|
|
|
|
side_effect=ChildProcessError):
|
|
|
|
with self.assertRaises(IsADirectoryError):
|
|
|
|
self.PopenNoDestructor(["non_existent_command"])
|
2017-09-06 03:41:30 -03:00
|
|
|
|
|
|
|
@mock.patch("subprocess._posixsubprocess.fork_exec")
|
|
|
|
def test_exception_errpipe_bad_data(self, fork_exec):
|
|
|
|
"""Test error passing done through errpipe_write where its not
|
|
|
|
in the expected format"""
|
|
|
|
error_data = b"\xFF\x00\xDE\xAD"
|
|
|
|
def bad_error(*args):
|
|
|
|
errpipe_write = args[13]
|
|
|
|
# Anything can be in the pipe, no assumptions should
|
|
|
|
# be made about its encoding, so we'll write some
|
|
|
|
# arbitrary hex bytes to test it out
|
|
|
|
os.write(errpipe_write, error_data)
|
|
|
|
return 0
|
|
|
|
|
|
|
|
fork_exec.side_effect = bad_error
|
|
|
|
|
2017-10-05 10:32:53 -03:00
|
|
|
with mock.patch("subprocess.os.waitpid",
|
|
|
|
side_effect=ChildProcessError):
|
|
|
|
with self.assertRaises(subprocess.SubprocessError) as e:
|
|
|
|
self.PopenNoDestructor(["non_existent_command"])
|
2017-09-06 03:41:30 -03:00
|
|
|
|
|
|
|
self.assertIn(repr(error_data), str(e.exception))
|
|
|
|
|
2018-06-05 16:00:57 -03:00
|
|
|
@unittest.skipIf(not os.path.exists('/proc/self/status'),
|
|
|
|
"need /proc/self/status")
|
2010-03-14 03:49:55 -03:00
|
|
|
def test_restore_signals(self):
|
2018-06-05 16:00:57 -03:00
|
|
|
# Blindly assume that cat exists on systems with /proc/self/status...
|
|
|
|
default_proc_status = subprocess.check_output(
|
|
|
|
['cat', '/proc/self/status'],
|
|
|
|
restore_signals=False)
|
|
|
|
for line in default_proc_status.splitlines():
|
|
|
|
if line.startswith(b'SigIgn'):
|
|
|
|
default_sig_ign_mask = line
|
|
|
|
break
|
|
|
|
else:
|
|
|
|
self.skipTest("SigIgn not found in /proc/self/status.")
|
|
|
|
restored_proc_status = subprocess.check_output(
|
|
|
|
['cat', '/proc/self/status'],
|
|
|
|
restore_signals=True)
|
|
|
|
for line in restored_proc_status.splitlines():
|
|
|
|
if line.startswith(b'SigIgn'):
|
|
|
|
restored_sig_ign_mask = line
|
|
|
|
break
|
|
|
|
self.assertNotEqual(default_sig_ign_mask, restored_sig_ign_mask,
|
|
|
|
msg="restore_signals=True should've unblocked "
|
|
|
|
"SIGPIPE and friends.")
|
2010-03-14 03:49:55 -03:00
|
|
|
|
|
|
|
def test_start_new_session(self):
|
|
|
|
# For code coverage of calling setsid(). We don't care if we get an
|
|
|
|
# EPERM error from it depending on the test execution environment, that
|
|
|
|
# still indicates that it was called.
|
|
|
|
try:
|
|
|
|
output = subprocess.check_output(
|
2019-06-14 14:49:22 -03:00
|
|
|
[sys.executable, "-c", "import os; print(os.getsid(0))"],
|
2010-03-14 03:49:55 -03:00
|
|
|
start_new_session=True)
|
|
|
|
except OSError as e:
|
|
|
|
if e.errno != errno.EPERM:
|
|
|
|
raise
|
|
|
|
else:
|
2019-06-14 14:49:22 -03:00
|
|
|
parent_sid = os.getsid(0)
|
|
|
|
child_sid = int(output)
|
|
|
|
self.assertNotEqual(parent_sid, child_sid)
|
2010-02-27 18:12:37 -04:00
|
|
|
|
|
|
|
def test_run_abort(self):
|
|
|
|
# returncode handles signal termination
|
2013-10-08 18:04:32 -03:00
|
|
|
with support.SuppressCrashReport():
|
2004-10-12 12:26:28 -03:00
|
|
|
p = subprocess.Popen([sys.executable, "-c",
|
2010-02-27 18:12:37 -04:00
|
|
|
'import os; os.abort()'])
|
2004-10-12 12:26:28 -03:00
|
|
|
p.wait()
|
2010-02-27 18:12:37 -04:00
|
|
|
self.assertEqual(-p.returncode, signal.SIGABRT)
|
|
|
|
|
2016-06-03 03:14:06 -03:00
|
|
|
def test_CalledProcessError_str_signal(self):
|
|
|
|
err = subprocess.CalledProcessError(-int(signal.SIGABRT), "fake cmd")
|
|
|
|
error_string = str(err)
|
|
|
|
# We're relying on the repr() of the signal.Signals intenum to provide
|
|
|
|
# the word signal, the signal name and the numeric value.
|
|
|
|
self.assertIn("signal", error_string.lower())
|
2016-06-03 03:19:35 -03:00
|
|
|
# We're not being specific about the signal name as some signals have
|
|
|
|
# multiple names and which name is revealed can vary.
|
|
|
|
self.assertIn("SIG", error_string)
|
2016-06-03 03:14:06 -03:00
|
|
|
self.assertIn(str(signal.SIGABRT), error_string)
|
|
|
|
|
|
|
|
def test_CalledProcessError_str_unknown_signal(self):
|
|
|
|
err = subprocess.CalledProcessError(-9876543, "fake cmd")
|
|
|
|
error_string = str(err)
|
|
|
|
self.assertIn("unknown signal 9876543.", error_string)
|
|
|
|
|
|
|
|
def test_CalledProcessError_str_non_zero(self):
|
|
|
|
err = subprocess.CalledProcessError(2, "fake cmd")
|
|
|
|
error_string = str(err)
|
|
|
|
self.assertIn("non-zero exit status 2.", error_string)
|
|
|
|
|
2010-02-27 18:12:37 -04:00
|
|
|
def test_preexec(self):
|
2010-03-14 03:49:55 -03:00
|
|
|
# DISCLAIMER: Setting environment variables is *not* a good use
|
|
|
|
# of a preexec_fn. This is merely a test.
|
2010-02-27 18:12:37 -04:00
|
|
|
p = subprocess.Popen([sys.executable, "-c",
|
|
|
|
'import sys,os;'
|
|
|
|
'sys.stdout.write(os.getenv("FRUIT"))'],
|
|
|
|
stdout=subprocess.PIPE,
|
|
|
|
preexec_fn=lambda: os.putenv("FRUIT", "apple"))
|
2016-05-20 07:43:15 -03:00
|
|
|
with p:
|
|
|
|
self.assertEqual(p.stdout.read(), b"apple")
|
2010-02-27 18:12:37 -04:00
|
|
|
|
2010-03-14 03:49:55 -03:00
|
|
|
def test_preexec_exception(self):
|
|
|
|
def raise_it():
|
|
|
|
raise ValueError("What if two swallows carried a coconut?")
|
|
|
|
try:
|
|
|
|
p = subprocess.Popen([sys.executable, "-c", ""],
|
|
|
|
preexec_fn=raise_it)
|
2012-11-11 03:53:47 -04:00
|
|
|
except subprocess.SubprocessError as e:
|
2010-03-14 03:49:55 -03:00
|
|
|
self.assertTrue(
|
|
|
|
subprocess._posixsubprocess,
|
|
|
|
"Expected a ValueError from the preexec_fn")
|
|
|
|
except ValueError as e:
|
|
|
|
self.assertIn("coconut", e.args[0])
|
|
|
|
else:
|
|
|
|
self.fail("Exception raised by preexec_fn did not make it "
|
|
|
|
"to the parent process.")
|
|
|
|
|
2012-11-11 13:59:27 -04:00
|
|
|
class _TestExecuteChildPopen(subprocess.Popen):
|
|
|
|
"""Used to test behavior at the end of _execute_child."""
|
|
|
|
def __init__(self, testcase, *args, **kwargs):
|
|
|
|
self._testcase = testcase
|
|
|
|
subprocess.Popen.__init__(self, *args, **kwargs)
|
2012-11-11 05:37:02 -04:00
|
|
|
|
2012-11-11 13:59:27 -04:00
|
|
|
def _execute_child(self, *args, **kwargs):
|
2012-11-11 05:37:02 -04:00
|
|
|
try:
|
2012-11-11 13:59:27 -04:00
|
|
|
subprocess.Popen._execute_child(self, *args, **kwargs)
|
2012-11-11 05:37:02 -04:00
|
|
|
finally:
|
|
|
|
# Open a bunch of file descriptors and verify that
|
|
|
|
# none of them are the same as the ones the Popen
|
|
|
|
# instance is using for stdin/stdout/stderr.
|
|
|
|
devzero_fds = [os.open("/dev/zero", os.O_RDONLY)
|
|
|
|
for _ in range(8)]
|
|
|
|
try:
|
|
|
|
for fd in devzero_fds:
|
2012-11-11 13:59:27 -04:00
|
|
|
self._testcase.assertNotIn(
|
|
|
|
fd, (self.stdin.fileno(), self.stdout.fileno(),
|
|
|
|
self.stderr.fileno()),
|
2012-11-11 05:37:02 -04:00
|
|
|
msg="At least one fd was closed early.")
|
|
|
|
finally:
|
2013-06-10 12:29:19 -03:00
|
|
|
for fd in devzero_fds:
|
|
|
|
os.close(fd)
|
2012-11-11 05:37:02 -04:00
|
|
|
|
2012-11-11 13:59:27 -04:00
|
|
|
@unittest.skipIf(not os.path.exists("/dev/zero"), "/dev/zero required.")
|
|
|
|
def test_preexec_errpipe_does_not_double_close_pipes(self):
|
|
|
|
"""Issue16140: Don't double close pipes on preexec error."""
|
|
|
|
|
|
|
|
def raise_it():
|
2012-11-11 14:12:40 -04:00
|
|
|
raise subprocess.SubprocessError(
|
|
|
|
"force the _execute_child() errpipe_data path.")
|
2012-11-11 05:37:02 -04:00
|
|
|
|
2012-11-11 05:41:49 -04:00
|
|
|
with self.assertRaises(subprocess.SubprocessError):
|
2012-11-11 13:59:27 -04:00
|
|
|
self._TestExecuteChildPopen(
|
2019-10-14 17:40:32 -03:00
|
|
|
self, ZERO_RETURN_CMD,
|
2012-11-11 05:37:02 -04:00
|
|
|
stdin=subprocess.PIPE, stdout=subprocess.PIPE,
|
|
|
|
stderr=subprocess.PIPE, preexec_fn=raise_it)
|
|
|
|
|
2010-03-19 13:53:08 -03:00
|
|
|
def test_preexec_gc_module_failure(self):
|
|
|
|
# This tests the code that disables garbage collection if the child
|
|
|
|
# process will execute any Python.
|
|
|
|
def raise_runtime_error():
|
|
|
|
raise RuntimeError("this shouldn't escape")
|
|
|
|
enabled = gc.isenabled()
|
|
|
|
orig_gc_disable = gc.disable
|
|
|
|
orig_gc_isenabled = gc.isenabled
|
|
|
|
try:
|
|
|
|
gc.disable()
|
|
|
|
self.assertFalse(gc.isenabled())
|
|
|
|
subprocess.call([sys.executable, '-c', ''],
|
|
|
|
preexec_fn=lambda: None)
|
|
|
|
self.assertFalse(gc.isenabled(),
|
|
|
|
"Popen enabled gc when it shouldn't.")
|
|
|
|
|
|
|
|
gc.enable()
|
|
|
|
self.assertTrue(gc.isenabled())
|
|
|
|
subprocess.call([sys.executable, '-c', ''],
|
|
|
|
preexec_fn=lambda: None)
|
|
|
|
self.assertTrue(gc.isenabled(), "Popen left gc disabled.")
|
|
|
|
|
|
|
|
gc.disable = raise_runtime_error
|
|
|
|
self.assertRaises(RuntimeError, subprocess.Popen,
|
|
|
|
[sys.executable, '-c', ''],
|
|
|
|
preexec_fn=lambda: None)
|
|
|
|
|
|
|
|
del gc.isenabled # force an AttributeError
|
|
|
|
self.assertRaises(AttributeError, subprocess.Popen,
|
|
|
|
[sys.executable, '-c', ''],
|
|
|
|
preexec_fn=lambda: None)
|
|
|
|
finally:
|
|
|
|
gc.disable = orig_gc_disable
|
|
|
|
gc.isenabled = orig_gc_isenabled
|
|
|
|
if not enabled:
|
|
|
|
gc.disable()
|
|
|
|
|
2015-12-05 05:51:52 -04:00
|
|
|
@unittest.skipIf(
|
|
|
|
sys.platform == 'darwin', 'setrlimit() seems to fail on OS X')
|
2015-11-29 22:21:41 -04:00
|
|
|
def test_preexec_fork_failure(self):
|
|
|
|
# The internal code did not preserve the previous exception when
|
|
|
|
# re-enabling garbage collection
|
|
|
|
try:
|
|
|
|
from resource import getrlimit, setrlimit, RLIMIT_NPROC
|
|
|
|
except ImportError as err:
|
|
|
|
self.skipTest(err) # RLIMIT_NPROC is specific to Linux and BSD
|
|
|
|
limits = getrlimit(RLIMIT_NPROC)
|
|
|
|
[_, hard] = limits
|
|
|
|
setrlimit(RLIMIT_NPROC, (0, hard))
|
|
|
|
self.addCleanup(setrlimit, RLIMIT_NPROC, limits)
|
2015-12-11 01:40:14 -04:00
|
|
|
try:
|
2015-11-29 22:21:41 -04:00
|
|
|
subprocess.call([sys.executable, '-c', ''],
|
|
|
|
preexec_fn=lambda: None)
|
2015-12-11 01:40:14 -04:00
|
|
|
except BlockingIOError:
|
|
|
|
# Forking should raise EAGAIN, translated to BlockingIOError
|
|
|
|
pass
|
|
|
|
else:
|
|
|
|
self.skipTest('RLIMIT_NPROC had no effect; probably superuser')
|
2015-11-29 22:21:41 -04:00
|
|
|
|
2010-02-27 18:12:37 -04:00
|
|
|
def test_args_string(self):
|
|
|
|
# args is a string
|
2015-09-28 07:33:14 -03:00
|
|
|
fd, fname = tempfile.mkstemp()
|
2010-02-27 18:12:37 -04:00
|
|
|
# reopen in text mode
|
2010-10-16 20:46:43 -03:00
|
|
|
with open(fd, "w", errors="surrogateescape") as fobj:
|
2016-07-22 07:15:29 -03:00
|
|
|
fobj.write("#!%s\n" % support.unix_shell)
|
2010-02-27 18:12:37 -04:00
|
|
|
fobj.write("exec '%s' -c 'import sys; sys.exit(47)'\n" %
|
|
|
|
sys.executable)
|
|
|
|
os.chmod(fname, 0o700)
|
|
|
|
p = subprocess.Popen(fname)
|
|
|
|
p.wait()
|
|
|
|
os.remove(fname)
|
|
|
|
self.assertEqual(p.returncode, 47)
|
|
|
|
|
|
|
|
def test_invalid_args(self):
|
|
|
|
# invalid arguments should raise ValueError
|
|
|
|
self.assertRaises(ValueError, subprocess.call,
|
|
|
|
[sys.executable, "-c",
|
|
|
|
"import sys; sys.exit(47)"],
|
|
|
|
startupinfo=47)
|
|
|
|
self.assertRaises(ValueError, subprocess.call,
|
|
|
|
[sys.executable, "-c",
|
|
|
|
"import sys; sys.exit(47)"],
|
|
|
|
creationflags=47)
|
|
|
|
|
|
|
|
def test_shell_sequence(self):
|
|
|
|
# Run command through the shell (sequence)
|
|
|
|
newenv = os.environ.copy()
|
|
|
|
newenv["FRUIT"] = "apple"
|
|
|
|
p = subprocess.Popen(["echo $FRUIT"], shell=1,
|
|
|
|
stdout=subprocess.PIPE,
|
|
|
|
env=newenv)
|
2016-05-20 07:43:15 -03:00
|
|
|
with p:
|
|
|
|
self.assertEqual(p.stdout.read().strip(b" \t\r\n\f"), b"apple")
|
2010-02-27 18:12:37 -04:00
|
|
|
|
|
|
|
def test_shell_string(self):
|
|
|
|
# Run command through the shell (string)
|
|
|
|
newenv = os.environ.copy()
|
|
|
|
newenv["FRUIT"] = "apple"
|
|
|
|
p = subprocess.Popen("echo $FRUIT", shell=1,
|
|
|
|
stdout=subprocess.PIPE,
|
|
|
|
env=newenv)
|
2016-05-20 07:43:15 -03:00
|
|
|
with p:
|
|
|
|
self.assertEqual(p.stdout.read().strip(b" \t\r\n\f"), b"apple")
|
2010-02-27 18:12:37 -04:00
|
|
|
|
|
|
|
def test_call_string(self):
|
|
|
|
# call() function with string argument on UNIX
|
2015-09-28 07:33:14 -03:00
|
|
|
fd, fname = tempfile.mkstemp()
|
2010-02-27 18:12:37 -04:00
|
|
|
# reopen in text mode
|
2010-10-16 20:46:43 -03:00
|
|
|
with open(fd, "w", errors="surrogateescape") as fobj:
|
2016-07-22 07:15:29 -03:00
|
|
|
fobj.write("#!%s\n" % support.unix_shell)
|
2010-02-27 18:12:37 -04:00
|
|
|
fobj.write("exec '%s' -c 'import sys; sys.exit(47)'\n" %
|
|
|
|
sys.executable)
|
|
|
|
os.chmod(fname, 0o700)
|
|
|
|
rc = subprocess.call(fname)
|
|
|
|
os.remove(fname)
|
|
|
|
self.assertEqual(rc, 47)
|
|
|
|
|
2010-07-19 11:20:53 -03:00
|
|
|
def test_specific_shell(self):
|
|
|
|
# Issue #9265: Incorrect name passed as arg[0].
|
|
|
|
shells = []
|
|
|
|
for prefix in ['/bin', '/usr/bin/', '/usr/local/bin']:
|
|
|
|
for name in ['bash', 'ksh']:
|
|
|
|
sh = os.path.join(prefix, name)
|
|
|
|
if os.path.isfile(sh):
|
|
|
|
shells.append(sh)
|
|
|
|
if not shells: # Will probably work for any shell but csh.
|
|
|
|
self.skipTest("bash or ksh required for this test")
|
|
|
|
sh = '/bin/sh'
|
|
|
|
if os.path.isfile(sh) and not os.path.islink(sh):
|
|
|
|
# Test will fail if /bin/sh is a symlink to csh.
|
|
|
|
shells.append(sh)
|
|
|
|
for sh in shells:
|
|
|
|
p = subprocess.Popen("echo $0", executable=sh, shell=True,
|
|
|
|
stdout=subprocess.PIPE)
|
2016-05-20 07:43:15 -03:00
|
|
|
with p:
|
|
|
|
self.assertEqual(p.stdout.read().strip(), bytes(sh, 'ascii'))
|
2010-07-19 11:20:53 -03:00
|
|
|
|
Merged revisions 78736,78759,78761,78767,78788-78789 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk
........
r78736 | florent.xicluna | 2010-03-06 20:43:41 +0100 (sam, 06 mar 2010) | 2 lines
Skip test_send_signal, test_kill, test_terminate on win32 platforms, for 2.7a4 release.
........
r78759 | florent.xicluna | 2010-03-07 13:21:36 +0100 (dim, 07 mar 2010) | 2 lines
#2777: Enable test_send_signal, test_terminate and test_kill on win32 platforms.
........
r78761 | florent.xicluna | 2010-03-07 16:27:39 +0100 (dim, 07 mar 2010) | 4 lines
Do not fail if returncode is 0 on send_signal/kill/terminate, for win32 platforms.
Do not hide the KeyboardInterrupt on POSIX platforms.
........
r78767 | florent.xicluna | 2010-03-07 18:12:23 +0100 (dim, 07 mar 2010) | 2 lines
#2777: Try hard to make Win7 buildbot happy...
........
r78788 | florent.xicluna | 2010-03-08 11:58:12 +0100 (lun, 08 mar 2010) | 2 lines
Fix syntax: "rc != None" -> "rc is not None"
........
r78789 | florent.xicluna | 2010-03-08 11:59:33 +0100 (lun, 08 mar 2010) | 2 lines
Replace the stderr logging with assertNotEqual(returncode, 0).
........
2010-03-08 09:27:26 -04:00
|
|
|
def _kill_process(self, method, *args):
|
2010-03-05 16:26:54 -04:00
|
|
|
# Do not inherit file handles from the parent.
|
|
|
|
# It should fix failures on some platforms.
|
2013-08-29 17:35:27 -03:00
|
|
|
# Also set the SIGINT handler to the default to make sure it's not
|
|
|
|
# being ignored (some tests rely on that.)
|
|
|
|
old_handler = signal.signal(signal.SIGINT, signal.default_int_handler)
|
|
|
|
try:
|
|
|
|
p = subprocess.Popen([sys.executable, "-c", """if 1:
|
|
|
|
import sys, time
|
|
|
|
sys.stdout.write('x\\n')
|
|
|
|
sys.stdout.flush()
|
|
|
|
time.sleep(30)
|
|
|
|
"""],
|
|
|
|
close_fds=True,
|
|
|
|
stdin=subprocess.PIPE,
|
|
|
|
stdout=subprocess.PIPE,
|
|
|
|
stderr=subprocess.PIPE)
|
|
|
|
finally:
|
|
|
|
signal.signal(signal.SIGINT, old_handler)
|
2010-09-19 22:33:21 -03:00
|
|
|
# Wait for the interpreter to be completely initialized before
|
|
|
|
# sending any signal.
|
|
|
|
p.stdout.read(1)
|
|
|
|
getattr(p, method)(*args)
|
Merged revisions 78736,78759,78761,78767,78788-78789 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk
........
r78736 | florent.xicluna | 2010-03-06 20:43:41 +0100 (sam, 06 mar 2010) | 2 lines
Skip test_send_signal, test_kill, test_terminate on win32 platforms, for 2.7a4 release.
........
r78759 | florent.xicluna | 2010-03-07 13:21:36 +0100 (dim, 07 mar 2010) | 2 lines
#2777: Enable test_send_signal, test_terminate and test_kill on win32 platforms.
........
r78761 | florent.xicluna | 2010-03-07 16:27:39 +0100 (dim, 07 mar 2010) | 4 lines
Do not fail if returncode is 0 on send_signal/kill/terminate, for win32 platforms.
Do not hide the KeyboardInterrupt on POSIX platforms.
........
r78767 | florent.xicluna | 2010-03-07 18:12:23 +0100 (dim, 07 mar 2010) | 2 lines
#2777: Try hard to make Win7 buildbot happy...
........
r78788 | florent.xicluna | 2010-03-08 11:58:12 +0100 (lun, 08 mar 2010) | 2 lines
Fix syntax: "rc != None" -> "rc is not None"
........
r78789 | florent.xicluna | 2010-03-08 11:59:33 +0100 (lun, 08 mar 2010) | 2 lines
Replace the stderr logging with assertNotEqual(returncode, 0).
........
2010-03-08 09:27:26 -04:00
|
|
|
return p
|
|
|
|
|
2013-01-12 11:52:20 -04:00
|
|
|
@unittest.skipIf(sys.platform.startswith(('netbsd', 'openbsd')),
|
|
|
|
"Due to known OS bug (issue #16762)")
|
2012-03-11 15:29:12 -03:00
|
|
|
def _kill_dead_process(self, method, *args):
|
|
|
|
# Do not inherit file handles from the parent.
|
|
|
|
# It should fix failures on some platforms.
|
|
|
|
p = subprocess.Popen([sys.executable, "-c", """if 1:
|
|
|
|
import sys, time
|
|
|
|
sys.stdout.write('x\\n')
|
|
|
|
sys.stdout.flush()
|
|
|
|
"""],
|
|
|
|
close_fds=True,
|
|
|
|
stdin=subprocess.PIPE,
|
|
|
|
stdout=subprocess.PIPE,
|
|
|
|
stderr=subprocess.PIPE)
|
|
|
|
# Wait for the interpreter to be completely initialized before
|
|
|
|
# sending any signal.
|
|
|
|
p.stdout.read(1)
|
|
|
|
# The process should end after this
|
|
|
|
time.sleep(1)
|
|
|
|
# This shouldn't raise even though the child is now dead
|
|
|
|
getattr(p, method)(*args)
|
|
|
|
p.communicate()
|
|
|
|
|
Merged revisions 78736,78759,78761,78767,78788-78789 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk
........
r78736 | florent.xicluna | 2010-03-06 20:43:41 +0100 (sam, 06 mar 2010) | 2 lines
Skip test_send_signal, test_kill, test_terminate on win32 platforms, for 2.7a4 release.
........
r78759 | florent.xicluna | 2010-03-07 13:21:36 +0100 (dim, 07 mar 2010) | 2 lines
#2777: Enable test_send_signal, test_terminate and test_kill on win32 platforms.
........
r78761 | florent.xicluna | 2010-03-07 16:27:39 +0100 (dim, 07 mar 2010) | 4 lines
Do not fail if returncode is 0 on send_signal/kill/terminate, for win32 platforms.
Do not hide the KeyboardInterrupt on POSIX platforms.
........
r78767 | florent.xicluna | 2010-03-07 18:12:23 +0100 (dim, 07 mar 2010) | 2 lines
#2777: Try hard to make Win7 buildbot happy...
........
r78788 | florent.xicluna | 2010-03-08 11:58:12 +0100 (lun, 08 mar 2010) | 2 lines
Fix syntax: "rc != None" -> "rc is not None"
........
r78789 | florent.xicluna | 2010-03-08 11:59:33 +0100 (lun, 08 mar 2010) | 2 lines
Replace the stderr logging with assertNotEqual(returncode, 0).
........
2010-03-08 09:27:26 -04:00
|
|
|
def test_send_signal(self):
|
|
|
|
p = self._kill_process('send_signal', signal.SIGINT)
|
2010-03-27 19:47:23 -03:00
|
|
|
_, stderr = p.communicate()
|
|
|
|
self.assertIn(b'KeyboardInterrupt', stderr)
|
2010-03-04 17:50:56 -04:00
|
|
|
self.assertNotEqual(p.wait(), 0)
|
2010-02-27 18:12:37 -04:00
|
|
|
|
|
|
|
def test_kill(self):
|
Merged revisions 78736,78759,78761,78767,78788-78789 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk
........
r78736 | florent.xicluna | 2010-03-06 20:43:41 +0100 (sam, 06 mar 2010) | 2 lines
Skip test_send_signal, test_kill, test_terminate on win32 platforms, for 2.7a4 release.
........
r78759 | florent.xicluna | 2010-03-07 13:21:36 +0100 (dim, 07 mar 2010) | 2 lines
#2777: Enable test_send_signal, test_terminate and test_kill on win32 platforms.
........
r78761 | florent.xicluna | 2010-03-07 16:27:39 +0100 (dim, 07 mar 2010) | 4 lines
Do not fail if returncode is 0 on send_signal/kill/terminate, for win32 platforms.
Do not hide the KeyboardInterrupt on POSIX platforms.
........
r78767 | florent.xicluna | 2010-03-07 18:12:23 +0100 (dim, 07 mar 2010) | 2 lines
#2777: Try hard to make Win7 buildbot happy...
........
r78788 | florent.xicluna | 2010-03-08 11:58:12 +0100 (lun, 08 mar 2010) | 2 lines
Fix syntax: "rc != None" -> "rc is not None"
........
r78789 | florent.xicluna | 2010-03-08 11:59:33 +0100 (lun, 08 mar 2010) | 2 lines
Replace the stderr logging with assertNotEqual(returncode, 0).
........
2010-03-08 09:27:26 -04:00
|
|
|
p = self._kill_process('kill')
|
2010-03-27 19:47:23 -03:00
|
|
|
_, stderr = p.communicate()
|
|
|
|
self.assertStderrEqual(stderr, b'')
|
2010-02-27 18:12:37 -04:00
|
|
|
self.assertEqual(p.wait(), -signal.SIGKILL)
|
|
|
|
|
|
|
|
def test_terminate(self):
|
Merged revisions 78736,78759,78761,78767,78788-78789 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk
........
r78736 | florent.xicluna | 2010-03-06 20:43:41 +0100 (sam, 06 mar 2010) | 2 lines
Skip test_send_signal, test_kill, test_terminate on win32 platforms, for 2.7a4 release.
........
r78759 | florent.xicluna | 2010-03-07 13:21:36 +0100 (dim, 07 mar 2010) | 2 lines
#2777: Enable test_send_signal, test_terminate and test_kill on win32 platforms.
........
r78761 | florent.xicluna | 2010-03-07 16:27:39 +0100 (dim, 07 mar 2010) | 4 lines
Do not fail if returncode is 0 on send_signal/kill/terminate, for win32 platforms.
Do not hide the KeyboardInterrupt on POSIX platforms.
........
r78767 | florent.xicluna | 2010-03-07 18:12:23 +0100 (dim, 07 mar 2010) | 2 lines
#2777: Try hard to make Win7 buildbot happy...
........
r78788 | florent.xicluna | 2010-03-08 11:58:12 +0100 (lun, 08 mar 2010) | 2 lines
Fix syntax: "rc != None" -> "rc is not None"
........
r78789 | florent.xicluna | 2010-03-08 11:59:33 +0100 (lun, 08 mar 2010) | 2 lines
Replace the stderr logging with assertNotEqual(returncode, 0).
........
2010-03-08 09:27:26 -04:00
|
|
|
p = self._kill_process('terminate')
|
2010-03-27 19:47:23 -03:00
|
|
|
_, stderr = p.communicate()
|
|
|
|
self.assertStderrEqual(stderr, b'')
|
2010-02-27 18:12:37 -04:00
|
|
|
self.assertEqual(p.wait(), -signal.SIGTERM)
|
|
|
|
|
2012-03-11 15:29:12 -03:00
|
|
|
def test_send_signal_dead(self):
|
|
|
|
# Sending a signal to a dead process
|
|
|
|
self._kill_dead_process('send_signal', signal.SIGINT)
|
|
|
|
|
|
|
|
def test_kill_dead(self):
|
|
|
|
# Killing a dead process
|
|
|
|
self._kill_dead_process('kill')
|
|
|
|
|
|
|
|
def test_terminate_dead(self):
|
|
|
|
# Terminating a dead process
|
|
|
|
self._kill_dead_process('terminate')
|
|
|
|
|
2013-08-27 19:53:59 -03:00
|
|
|
def _save_fds(self, save_fds):
|
|
|
|
fds = []
|
|
|
|
for fd in save_fds:
|
|
|
|
inheritable = os.get_inheritable(fd)
|
|
|
|
saved = os.dup(fd)
|
|
|
|
fds.append((fd, saved, inheritable))
|
|
|
|
return fds
|
|
|
|
|
|
|
|
def _restore_fds(self, fds):
|
|
|
|
for fd, saved, inheritable in fds:
|
|
|
|
os.dup2(saved, fd, inheritable=inheritable)
|
|
|
|
os.close(saved)
|
|
|
|
|
2011-01-03 14:23:55 -04:00
|
|
|
def check_close_std_fds(self, fds):
|
|
|
|
# Issue #9905: test that subprocess pipes still work properly with
|
|
|
|
# some standard fds closed
|
|
|
|
stdin = 0
|
2013-08-27 19:53:59 -03:00
|
|
|
saved_fds = self._save_fds(fds)
|
|
|
|
for fd, saved, inheritable in saved_fds:
|
|
|
|
if fd == 0:
|
|
|
|
stdin = saved
|
|
|
|
break
|
2011-01-03 14:23:55 -04:00
|
|
|
try:
|
|
|
|
for fd in fds:
|
|
|
|
os.close(fd)
|
|
|
|
out, err = subprocess.Popen([sys.executable, "-c",
|
|
|
|
'import sys;'
|
|
|
|
'sys.stdout.write("apple");'
|
|
|
|
'sys.stdout.flush();'
|
|
|
|
'sys.stderr.write("orange")'],
|
|
|
|
stdin=stdin,
|
|
|
|
stdout=subprocess.PIPE,
|
|
|
|
stderr=subprocess.PIPE).communicate()
|
|
|
|
err = support.strip_python_stderr(err)
|
|
|
|
self.assertEqual((out, err), (b'apple', b'orange'))
|
|
|
|
finally:
|
2013-08-27 19:53:59 -03:00
|
|
|
self._restore_fds(saved_fds)
|
2011-01-03 14:23:55 -04:00
|
|
|
|
|
|
|
def test_close_fd_0(self):
|
|
|
|
self.check_close_std_fds([0])
|
|
|
|
|
|
|
|
def test_close_fd_1(self):
|
|
|
|
self.check_close_std_fds([1])
|
|
|
|
|
|
|
|
def test_close_fd_2(self):
|
|
|
|
self.check_close_std_fds([2])
|
|
|
|
|
|
|
|
def test_close_fds_0_1(self):
|
|
|
|
self.check_close_std_fds([0, 1])
|
|
|
|
|
|
|
|
def test_close_fds_0_2(self):
|
|
|
|
self.check_close_std_fds([0, 2])
|
|
|
|
|
|
|
|
def test_close_fds_1_2(self):
|
|
|
|
self.check_close_std_fds([1, 2])
|
|
|
|
|
|
|
|
def test_close_fds_0_1_2(self):
|
|
|
|
# Issue #10806: test that subprocess pipes still work properly with
|
|
|
|
# all standard fds closed.
|
|
|
|
self.check_close_std_fds([0, 1, 2])
|
|
|
|
|
2013-12-01 20:03:24 -04:00
|
|
|
def test_small_errpipe_write_fd(self):
|
|
|
|
"""Issue #15798: Popen should work when stdio fds are available."""
|
|
|
|
new_stdin = os.dup(0)
|
|
|
|
new_stdout = os.dup(1)
|
|
|
|
try:
|
|
|
|
os.close(0)
|
|
|
|
os.close(1)
|
|
|
|
|
|
|
|
# Side test: if errpipe_write fails to have its CLOEXEC
|
|
|
|
# flag set this should cause the parent to think the exec
|
|
|
|
# failed. Extremely unlikely: everyone supports CLOEXEC.
|
|
|
|
subprocess.Popen([
|
|
|
|
sys.executable, "-c",
|
|
|
|
"print('AssertionError:0:CLOEXEC failure.')"]).wait()
|
|
|
|
finally:
|
|
|
|
# Restore original stdin and stdout
|
|
|
|
os.dup2(new_stdin, 0)
|
|
|
|
os.dup2(new_stdout, 1)
|
|
|
|
os.close(new_stdin)
|
|
|
|
os.close(new_stdout)
|
|
|
|
|
2011-01-03 17:15:48 -04:00
|
|
|
def test_remapping_std_fds(self):
|
|
|
|
# open up some temporary files
|
2015-09-28 07:33:14 -03:00
|
|
|
temps = [tempfile.mkstemp() for i in range(3)]
|
2011-01-03 17:15:48 -04:00
|
|
|
try:
|
|
|
|
temp_fds = [fd for fd, fname in temps]
|
|
|
|
|
|
|
|
# unlink the files -- we won't need to reopen them
|
|
|
|
for fd, fname in temps:
|
|
|
|
os.unlink(fname)
|
|
|
|
|
|
|
|
# write some data to what will become stdin, and rewind
|
|
|
|
os.write(temp_fds[1], b"STDIN")
|
|
|
|
os.lseek(temp_fds[1], 0, 0)
|
|
|
|
|
|
|
|
# move the standard file descriptors out of the way
|
2013-08-27 19:53:59 -03:00
|
|
|
saved_fds = self._save_fds(range(3))
|
2011-01-03 17:15:48 -04:00
|
|
|
try:
|
|
|
|
# duplicate the file objects over the standard fd's
|
|
|
|
for fd, temp_fd in enumerate(temp_fds):
|
|
|
|
os.dup2(temp_fd, fd)
|
|
|
|
|
|
|
|
# now use those files in the "wrong" order, so that subprocess
|
|
|
|
# has to rearrange them in the child
|
|
|
|
p = subprocess.Popen([sys.executable, "-c",
|
|
|
|
'import sys; got = sys.stdin.read();'
|
|
|
|
'sys.stdout.write("got %s"%got); sys.stderr.write("err")'],
|
|
|
|
stdin=temp_fds[1],
|
|
|
|
stdout=temp_fds[2],
|
|
|
|
stderr=temp_fds[0])
|
|
|
|
p.wait()
|
|
|
|
finally:
|
2013-08-27 19:53:59 -03:00
|
|
|
self._restore_fds(saved_fds)
|
2011-01-03 17:15:48 -04:00
|
|
|
|
|
|
|
for fd in temp_fds:
|
|
|
|
os.lseek(fd, 0, 0)
|
|
|
|
|
|
|
|
out = os.read(temp_fds[2], 1024)
|
|
|
|
err = support.strip_python_stderr(os.read(temp_fds[0], 1024))
|
|
|
|
self.assertEqual(out, b"got STDIN")
|
|
|
|
self.assertEqual(err, b"err")
|
|
|
|
|
|
|
|
finally:
|
|
|
|
for fd in temp_fds:
|
|
|
|
os.close(fd)
|
|
|
|
|
2011-07-27 02:16:31 -03:00
|
|
|
def check_swap_fds(self, stdin_no, stdout_no, stderr_no):
|
|
|
|
# open up some temporary files
|
2015-09-28 07:33:14 -03:00
|
|
|
temps = [tempfile.mkstemp() for i in range(3)]
|
2011-07-27 02:16:31 -03:00
|
|
|
temp_fds = [fd for fd, fname in temps]
|
|
|
|
try:
|
|
|
|
# unlink the files -- we won't need to reopen them
|
|
|
|
for fd, fname in temps:
|
|
|
|
os.unlink(fname)
|
|
|
|
|
|
|
|
# save a copy of the standard file descriptors
|
2013-08-27 19:53:59 -03:00
|
|
|
saved_fds = self._save_fds(range(3))
|
2011-07-27 02:16:31 -03:00
|
|
|
try:
|
|
|
|
# duplicate the temp files over the standard fd's 0, 1, 2
|
|
|
|
for fd, temp_fd in enumerate(temp_fds):
|
|
|
|
os.dup2(temp_fd, fd)
|
|
|
|
|
|
|
|
# write some data to what will become stdin, and rewind
|
|
|
|
os.write(stdin_no, b"STDIN")
|
|
|
|
os.lseek(stdin_no, 0, 0)
|
|
|
|
|
|
|
|
# now use those files in the given order, so that subprocess
|
|
|
|
# has to rearrange them in the child
|
|
|
|
p = subprocess.Popen([sys.executable, "-c",
|
|
|
|
'import sys; got = sys.stdin.read();'
|
|
|
|
'sys.stdout.write("got %s"%got); sys.stderr.write("err")'],
|
|
|
|
stdin=stdin_no,
|
|
|
|
stdout=stdout_no,
|
|
|
|
stderr=stderr_no)
|
|
|
|
p.wait()
|
|
|
|
|
|
|
|
for fd in temp_fds:
|
|
|
|
os.lseek(fd, 0, 0)
|
|
|
|
|
|
|
|
out = os.read(stdout_no, 1024)
|
|
|
|
err = support.strip_python_stderr(os.read(stderr_no, 1024))
|
|
|
|
finally:
|
2013-08-27 19:53:59 -03:00
|
|
|
self._restore_fds(saved_fds)
|
2011-07-27 02:16:31 -03:00
|
|
|
|
|
|
|
self.assertEqual(out, b"got STDIN")
|
|
|
|
self.assertEqual(err, b"err")
|
|
|
|
|
|
|
|
finally:
|
|
|
|
for fd in temp_fds:
|
|
|
|
os.close(fd)
|
|
|
|
|
|
|
|
# When duping fds, if there arises a situation where one of the fds is
|
|
|
|
# either 0, 1 or 2, it is possible that it is overwritten (#12607).
|
|
|
|
# This tests all combinations of this.
|
|
|
|
def test_swap_fds(self):
|
|
|
|
self.check_swap_fds(0, 1, 2)
|
|
|
|
self.check_swap_fds(0, 2, 1)
|
|
|
|
self.check_swap_fds(1, 0, 2)
|
|
|
|
self.check_swap_fds(1, 2, 0)
|
|
|
|
self.check_swap_fds(2, 0, 1)
|
|
|
|
self.check_swap_fds(2, 1, 0)
|
|
|
|
|
2018-03-26 16:49:35 -03:00
|
|
|
def _check_swap_std_fds_with_one_closed(self, from_fds, to_fds):
|
|
|
|
saved_fds = self._save_fds(range(3))
|
|
|
|
try:
|
|
|
|
for from_fd in from_fds:
|
|
|
|
with tempfile.TemporaryFile() as f:
|
|
|
|
os.dup2(f.fileno(), from_fd)
|
|
|
|
|
|
|
|
fd_to_close = (set(range(3)) - set(from_fds)).pop()
|
|
|
|
os.close(fd_to_close)
|
|
|
|
|
|
|
|
arg_names = ['stdin', 'stdout', 'stderr']
|
|
|
|
kwargs = {}
|
|
|
|
for from_fd, to_fd in zip(from_fds, to_fds):
|
|
|
|
kwargs[arg_names[to_fd]] = from_fd
|
|
|
|
|
|
|
|
code = textwrap.dedent(r'''
|
|
|
|
import os, sys
|
|
|
|
skipped_fd = int(sys.argv[1])
|
|
|
|
for fd in range(3):
|
|
|
|
if fd != skipped_fd:
|
|
|
|
os.write(fd, str(fd).encode('ascii'))
|
|
|
|
''')
|
|
|
|
|
|
|
|
skipped_fd = (set(range(3)) - set(to_fds)).pop()
|
|
|
|
|
|
|
|
rc = subprocess.call([sys.executable, '-c', code, str(skipped_fd)],
|
|
|
|
**kwargs)
|
|
|
|
self.assertEqual(rc, 0)
|
|
|
|
|
|
|
|
for from_fd, to_fd in zip(from_fds, to_fds):
|
|
|
|
os.lseek(from_fd, 0, os.SEEK_SET)
|
|
|
|
read_bytes = os.read(from_fd, 1024)
|
|
|
|
read_fds = list(map(int, read_bytes.decode('ascii')))
|
|
|
|
msg = textwrap.dedent(f"""
|
|
|
|
When testing {from_fds} to {to_fds} redirection,
|
|
|
|
parent descriptor {from_fd} got redirected
|
|
|
|
to descriptor(s) {read_fds} instead of descriptor {to_fd}.
|
|
|
|
""")
|
|
|
|
self.assertEqual([to_fd], read_fds, msg)
|
|
|
|
finally:
|
|
|
|
self._restore_fds(saved_fds)
|
|
|
|
|
|
|
|
# Check that subprocess can remap std fds correctly even
|
|
|
|
# if one of them is closed (#32844).
|
|
|
|
def test_swap_std_fds_with_one_closed(self):
|
|
|
|
for from_fds in itertools.combinations(range(3), 2):
|
|
|
|
for to_fds in itertools.permutations(range(3), 2):
|
|
|
|
self._check_swap_std_fds_with_one_closed(from_fds, to_fds)
|
|
|
|
|
2010-04-23 18:41:56 -03:00
|
|
|
def test_surrogates_error_message(self):
|
2010-04-23 16:28:32 -03:00
|
|
|
def prepare():
|
|
|
|
raise ValueError("surrogate:\uDCff")
|
|
|
|
|
|
|
|
try:
|
|
|
|
subprocess.call(
|
2019-10-14 17:40:32 -03:00
|
|
|
ZERO_RETURN_CMD,
|
2010-04-23 16:28:32 -03:00
|
|
|
preexec_fn=prepare)
|
|
|
|
except ValueError as err:
|
|
|
|
# Pure Python implementations keeps the message
|
|
|
|
self.assertIsNone(subprocess._posixsubprocess)
|
|
|
|
self.assertEqual(str(err), "surrogate:\uDCff")
|
2012-11-11 03:53:47 -04:00
|
|
|
except subprocess.SubprocessError as err:
|
2010-04-23 16:28:32 -03:00
|
|
|
# _posixsubprocess uses a default message
|
|
|
|
self.assertIsNotNone(subprocess._posixsubprocess)
|
|
|
|
self.assertEqual(str(err), "Exception occurred in preexec_fn.")
|
|
|
|
else:
|
2012-11-11 03:53:47 -04:00
|
|
|
self.fail("Expected ValueError or subprocess.SubprocessError")
|
2010-04-23 16:28:32 -03:00
|
|
|
|
2010-04-23 18:41:56 -03:00
|
|
|
def test_undecodable_env(self):
|
|
|
|
for key, value in (('test', 'abc\uDCFF'), ('test\uDCFF', '42')):
|
2013-11-19 18:46:06 -04:00
|
|
|
encoded_value = value.encode("ascii", "surrogateescape")
|
|
|
|
|
2010-04-23 18:41:56 -03:00
|
|
|
# test str with surrogates
|
2010-09-19 19:46:05 -03:00
|
|
|
script = "import os; print(ascii(os.getenv(%s)))" % repr(key)
|
2010-04-23 19:55:39 -03:00
|
|
|
env = os.environ.copy()
|
|
|
|
env[key] = value
|
2013-11-19 18:46:06 -04:00
|
|
|
# Use C locale to get ASCII for the locale encoding to force
|
2018-08-26 14:29:36 -03:00
|
|
|
# surrogate-escaping of \xFF in the child process
|
2010-10-14 07:38:17 -03:00
|
|
|
env['LC_ALL'] = 'C'
|
2018-08-26 14:29:36 -03:00
|
|
|
decoded_value = value
|
2010-04-23 18:41:56 -03:00
|
|
|
stdout = subprocess.check_output(
|
|
|
|
[sys.executable, "-c", script],
|
2010-04-23 19:55:39 -03:00
|
|
|
env=env)
|
2010-04-23 18:41:56 -03:00
|
|
|
stdout = stdout.rstrip(b'\n\r')
|
2013-11-19 18:46:06 -04:00
|
|
|
self.assertEqual(stdout.decode('ascii'), ascii(decoded_value))
|
2010-04-23 18:41:56 -03:00
|
|
|
|
|
|
|
# test bytes
|
|
|
|
key = key.encode("ascii", "surrogateescape")
|
2010-09-19 19:46:05 -03:00
|
|
|
script = "import os; print(ascii(os.getenvb(%s)))" % repr(key)
|
2010-04-23 19:55:39 -03:00
|
|
|
env = os.environ.copy()
|
2013-11-19 18:46:06 -04:00
|
|
|
env[key] = encoded_value
|
2010-04-23 18:41:56 -03:00
|
|
|
stdout = subprocess.check_output(
|
|
|
|
[sys.executable, "-c", script],
|
2010-04-23 19:55:39 -03:00
|
|
|
env=env)
|
2010-04-23 18:41:56 -03:00
|
|
|
stdout = stdout.rstrip(b'\n\r')
|
2013-11-19 18:46:06 -04:00
|
|
|
self.assertEqual(stdout.decode('ascii'), ascii(encoded_value))
|
2010-04-23 18:41:56 -03:00
|
|
|
|
2010-05-18 14:17:23 -03:00
|
|
|
def test_bytes_program(self):
|
2019-10-14 17:40:32 -03:00
|
|
|
abs_program = os.fsencode(ZERO_RETURN_CMD[0])
|
|
|
|
args = list(ZERO_RETURN_CMD[1:])
|
|
|
|
path, program = os.path.split(ZERO_RETURN_CMD[0])
|
2010-05-18 14:17:23 -03:00
|
|
|
program = os.fsencode(program)
|
|
|
|
|
|
|
|
# absolute bytes path
|
2019-10-14 17:40:32 -03:00
|
|
|
exitcode = subprocess.call([abs_program]+args)
|
2010-11-20 15:04:17 -04:00
|
|
|
self.assertEqual(exitcode, 0)
|
2010-05-18 14:17:23 -03:00
|
|
|
|
2011-03-03 08:54:05 -04:00
|
|
|
# absolute bytes path as a string
|
2019-10-14 17:40:32 -03:00
|
|
|
cmd = b"'%s' %s" % (abs_program, " ".join(args).encode("utf-8"))
|
2011-03-03 08:54:05 -04:00
|
|
|
exitcode = subprocess.call(cmd, shell=True)
|
|
|
|
self.assertEqual(exitcode, 0)
|
|
|
|
|
2010-05-18 14:17:23 -03:00
|
|
|
# bytes program, unicode PATH
|
|
|
|
env = os.environ.copy()
|
|
|
|
env["PATH"] = path
|
2019-10-14 17:40:32 -03:00
|
|
|
exitcode = subprocess.call([program]+args, env=env)
|
2010-11-20 15:04:17 -04:00
|
|
|
self.assertEqual(exitcode, 0)
|
2010-05-18 14:17:23 -03:00
|
|
|
|
|
|
|
# bytes program, bytes PATH
|
|
|
|
envb = os.environb.copy()
|
|
|
|
envb[b"PATH"] = os.fsencode(path)
|
2019-10-14 17:40:32 -03:00
|
|
|
exitcode = subprocess.call([program]+args, env=envb)
|
2010-11-20 15:04:17 -04:00
|
|
|
self.assertEqual(exitcode, 0)
|
2010-05-18 14:17:23 -03:00
|
|
|
|
2010-12-13 03:59:39 -04:00
|
|
|
def test_pipe_cloexec(self):
|
|
|
|
sleeper = support.findfile("input_reader.py", subdir="subprocessdata")
|
|
|
|
fd_status = support.findfile("fd_status.py", subdir="subprocessdata")
|
|
|
|
|
|
|
|
p1 = subprocess.Popen([sys.executable, sleeper],
|
|
|
|
stdin=subprocess.PIPE, stdout=subprocess.PIPE,
|
|
|
|
stderr=subprocess.PIPE, close_fds=False)
|
|
|
|
|
|
|
|
self.addCleanup(p1.communicate, b'')
|
|
|
|
|
|
|
|
p2 = subprocess.Popen([sys.executable, fd_status],
|
|
|
|
stdout=subprocess.PIPE, close_fds=False)
|
|
|
|
|
|
|
|
output, error = p2.communicate()
|
|
|
|
result_fds = set(map(int, output.split(b',')))
|
|
|
|
unwanted_fds = set([p1.stdin.fileno(), p1.stdout.fileno(),
|
|
|
|
p1.stderr.fileno()])
|
|
|
|
|
|
|
|
self.assertFalse(result_fds & unwanted_fds,
|
|
|
|
"Expected no fds from %r to be open in child, "
|
|
|
|
"found %r" %
|
|
|
|
(unwanted_fds, result_fds & unwanted_fds))
|
|
|
|
|
|
|
|
def test_pipe_cloexec_real_tools(self):
|
|
|
|
qcat = support.findfile("qcat.py", subdir="subprocessdata")
|
|
|
|
qgrep = support.findfile("qgrep.py", subdir="subprocessdata")
|
|
|
|
|
|
|
|
subdata = b'zxcvbn'
|
|
|
|
data = subdata * 4 + b'\n'
|
|
|
|
|
|
|
|
p1 = subprocess.Popen([sys.executable, qcat],
|
|
|
|
stdin=subprocess.PIPE, stdout=subprocess.PIPE,
|
|
|
|
close_fds=False)
|
|
|
|
|
|
|
|
p2 = subprocess.Popen([sys.executable, qgrep, subdata],
|
|
|
|
stdin=p1.stdout, stdout=subprocess.PIPE,
|
|
|
|
close_fds=False)
|
|
|
|
|
|
|
|
self.addCleanup(p1.wait)
|
|
|
|
self.addCleanup(p2.wait)
|
2012-01-22 02:05:10 -04:00
|
|
|
def kill_p1():
|
|
|
|
try:
|
|
|
|
p1.terminate()
|
|
|
|
except ProcessLookupError:
|
|
|
|
pass
|
|
|
|
def kill_p2():
|
|
|
|
try:
|
|
|
|
p2.terminate()
|
|
|
|
except ProcessLookupError:
|
|
|
|
pass
|
|
|
|
self.addCleanup(kill_p1)
|
|
|
|
self.addCleanup(kill_p2)
|
2010-12-13 03:59:39 -04:00
|
|
|
|
|
|
|
p1.stdin.write(data)
|
|
|
|
p1.stdin.close()
|
|
|
|
|
|
|
|
readfiles, ignored1, ignored2 = select.select([p2.stdout], [], [], 10)
|
|
|
|
|
|
|
|
self.assertTrue(readfiles, "The child hung")
|
|
|
|
self.assertEqual(p2.stdout.read(), data)
|
|
|
|
|
2011-01-03 12:36:00 -04:00
|
|
|
p1.stdout.close()
|
|
|
|
p2.stdout.close()
|
|
|
|
|
2010-12-13 03:59:39 -04:00
|
|
|
def test_close_fds(self):
|
|
|
|
fd_status = support.findfile("fd_status.py", subdir="subprocessdata")
|
|
|
|
|
|
|
|
fds = os.pipe()
|
|
|
|
self.addCleanup(os.close, fds[0])
|
|
|
|
self.addCleanup(os.close, fds[1])
|
|
|
|
|
|
|
|
open_fds = set(fds)
|
2012-01-21 18:01:08 -04:00
|
|
|
# add a bunch more fds
|
|
|
|
for _ in range(9):
|
2015-02-15 07:58:23 -04:00
|
|
|
fd = os.open(os.devnull, os.O_RDONLY)
|
2012-01-21 18:01:08 -04:00
|
|
|
self.addCleanup(os.close, fd)
|
|
|
|
open_fds.add(fd)
|
2010-12-13 03:59:39 -04:00
|
|
|
|
2013-08-27 19:53:59 -03:00
|
|
|
for fd in open_fds:
|
|
|
|
os.set_inheritable(fd, True)
|
|
|
|
|
2010-12-13 03:59:39 -04:00
|
|
|
p = subprocess.Popen([sys.executable, fd_status],
|
|
|
|
stdout=subprocess.PIPE, close_fds=False)
|
|
|
|
output, ignored = p.communicate()
|
|
|
|
remaining_fds = set(map(int, output.split(b',')))
|
|
|
|
|
|
|
|
self.assertEqual(remaining_fds & open_fds, open_fds,
|
|
|
|
"Some fds were closed")
|
|
|
|
|
|
|
|
p = subprocess.Popen([sys.executable, fd_status],
|
|
|
|
stdout=subprocess.PIPE, close_fds=True)
|
|
|
|
output, ignored = p.communicate()
|
|
|
|
remaining_fds = set(map(int, output.split(b',')))
|
|
|
|
|
|
|
|
self.assertFalse(remaining_fds & open_fds,
|
|
|
|
"Some fds were left open")
|
|
|
|
self.assertIn(1, remaining_fds, "Subprocess failed")
|
|
|
|
|
2012-01-21 18:01:08 -04:00
|
|
|
# Keep some of the fd's we opened open in the subprocess.
|
|
|
|
# This tests _posixsubprocess.c's proper handling of fds_to_keep.
|
|
|
|
fds_to_keep = set(open_fds.pop() for _ in range(8))
|
|
|
|
p = subprocess.Popen([sys.executable, fd_status],
|
|
|
|
stdout=subprocess.PIPE, close_fds=True,
|
2017-12-18 16:26:49 -04:00
|
|
|
pass_fds=fds_to_keep)
|
2012-01-21 18:01:08 -04:00
|
|
|
output, ignored = p.communicate()
|
|
|
|
remaining_fds = set(map(int, output.split(b',')))
|
|
|
|
|
2017-12-18 16:26:49 -04:00
|
|
|
self.assertFalse((remaining_fds - fds_to_keep) & open_fds,
|
2012-01-21 18:01:08 -04:00
|
|
|
"Some fds not in pass_fds were left open")
|
|
|
|
self.assertIn(1, remaining_fds, "Subprocess failed")
|
|
|
|
|
2014-06-01 17:18:28 -03:00
|
|
|
|
2014-06-01 19:27:28 -03:00
|
|
|
@unittest.skipIf(sys.platform.startswith("freebsd") and
|
|
|
|
os.stat("/dev").st_dev == os.stat("/dev/fd").st_dev,
|
|
|
|
"Requires fdescfs mounted on /dev/fd on FreeBSD.")
|
2014-06-01 17:18:28 -03:00
|
|
|
def test_close_fds_when_max_fd_is_lowered(self):
|
|
|
|
"""Confirm that issue21618 is fixed (may fail under valgrind)."""
|
|
|
|
fd_status = support.findfile("fd_status.py", subdir="subprocessdata")
|
|
|
|
|
2014-06-15 21:51:04 -03:00
|
|
|
# This launches the meat of the test in a child process to
|
|
|
|
# avoid messing with the larger unittest processes maximum
|
|
|
|
# number of file descriptors.
|
|
|
|
# This process launches:
|
|
|
|
# +--> Process that lowers its RLIMIT_NOFILE aftr setting up
|
|
|
|
# a bunch of high open fds above the new lower rlimit.
|
|
|
|
# Those are reported via stdout before launching a new
|
|
|
|
# process with close_fds=False to run the actual test:
|
|
|
|
# +--> The TEST: This one launches a fd_status.py
|
|
|
|
# subprocess with close_fds=True so we can find out if
|
|
|
|
# any of the fds above the lowered rlimit are still open.
|
|
|
|
p = subprocess.Popen([sys.executable, '-c', textwrap.dedent(
|
|
|
|
'''
|
|
|
|
import os, resource, subprocess, sys, textwrap
|
2014-06-01 17:18:28 -03:00
|
|
|
open_fds = set()
|
|
|
|
# Add a bunch more fds to pass down.
|
2014-06-01 19:15:44 -03:00
|
|
|
for _ in range(40):
|
2015-02-15 07:58:23 -04:00
|
|
|
fd = os.open(os.devnull, os.O_RDONLY)
|
2014-06-01 17:18:28 -03:00
|
|
|
open_fds.add(fd)
|
|
|
|
|
|
|
|
# Leave a two pairs of low ones available for use by the
|
|
|
|
# internal child error pipe and the stdout pipe.
|
2014-06-01 19:15:44 -03:00
|
|
|
# We also leave 10 more open as some Python buildbots run into
|
|
|
|
# "too many open files" errors during the test if we do not.
|
|
|
|
for fd in sorted(open_fds)[:14]:
|
2014-06-01 17:18:28 -03:00
|
|
|
os.close(fd)
|
|
|
|
open_fds.remove(fd)
|
|
|
|
|
|
|
|
for fd in open_fds:
|
2014-06-15 21:51:04 -03:00
|
|
|
#self.addCleanup(os.close, fd)
|
2014-06-01 17:18:28 -03:00
|
|
|
os.set_inheritable(fd, True)
|
|
|
|
|
|
|
|
max_fd_open = max(open_fds)
|
|
|
|
|
2014-06-15 21:51:04 -03:00
|
|
|
# Communicate the open_fds to the parent unittest.TestCase process.
|
|
|
|
print(','.join(map(str, sorted(open_fds))))
|
|
|
|
sys.stdout.flush()
|
|
|
|
|
2014-06-01 17:18:28 -03:00
|
|
|
rlim_cur, rlim_max = resource.getrlimit(resource.RLIMIT_NOFILE)
|
|
|
|
try:
|
2014-06-01 19:15:44 -03:00
|
|
|
# 29 is lower than the highest fds we are leaving open.
|
|
|
|
resource.setrlimit(resource.RLIMIT_NOFILE, (29, rlim_max))
|
2014-06-01 17:18:28 -03:00
|
|
|
# Launch a new Python interpreter with our low fd rlim_cur that
|
|
|
|
# inherits open fds above that limit. It then uses subprocess
|
|
|
|
# with close_fds=True to get a report of open fds in the child.
|
|
|
|
# An explicit list of fds to check is passed to fd_status.py as
|
|
|
|
# letting fd_status rely on its default logic would miss the
|
|
|
|
# fds above rlim_cur as it normally only checks up to that limit.
|
2014-06-15 21:51:04 -03:00
|
|
|
subprocess.Popen(
|
2014-06-01 17:18:28 -03:00
|
|
|
[sys.executable, '-c',
|
|
|
|
textwrap.dedent("""
|
|
|
|
import subprocess, sys
|
2014-06-15 21:51:04 -03:00
|
|
|
subprocess.Popen([sys.executable, %r] +
|
2014-06-01 17:18:28 -03:00
|
|
|
[str(x) for x in range({max_fd})],
|
2014-06-01 17:46:54 -03:00
|
|
|
close_fds=True).wait()
|
2014-06-15 21:51:04 -03:00
|
|
|
""".format(max_fd=max_fd_open+1))],
|
|
|
|
close_fds=False).wait()
|
2014-06-01 17:18:28 -03:00
|
|
|
finally:
|
|
|
|
resource.setrlimit(resource.RLIMIT_NOFILE, (rlim_cur, rlim_max))
|
2014-06-15 21:51:04 -03:00
|
|
|
''' % fd_status)], stdout=subprocess.PIPE)
|
2014-06-01 17:18:28 -03:00
|
|
|
|
|
|
|
output, unused_stderr = p.communicate()
|
2014-06-15 21:51:04 -03:00
|
|
|
output_lines = output.splitlines()
|
|
|
|
self.assertEqual(len(output_lines), 2,
|
2014-06-16 00:16:01 -03:00
|
|
|
msg="expected exactly two lines of output:\n%r" % output)
|
2014-06-15 21:51:04 -03:00
|
|
|
opened_fds = set(map(int, output_lines[0].strip().split(b',')))
|
|
|
|
remaining_fds = set(map(int, output_lines[1].strip().split(b',')))
|
2014-06-01 17:18:28 -03:00
|
|
|
|
2014-06-15 21:51:04 -03:00
|
|
|
self.assertFalse(remaining_fds & opened_fds,
|
2014-06-01 17:18:28 -03:00
|
|
|
msg="Some fds were left open.")
|
|
|
|
|
|
|
|
|
2011-06-01 08:13:04 -03:00
|
|
|
# Mac OS X Tiger (10.4) has a kernel bug: sometimes, the file
|
|
|
|
# descriptor of a pipe closed in the parent process is valid in the
|
|
|
|
# child process according to fstat(), but the mode of the file
|
|
|
|
# descriptor is invalid, and read or write raise an error.
|
|
|
|
@support.requires_mac_ver(10, 5)
|
2010-12-14 09:43:30 -04:00
|
|
|
def test_pass_fds(self):
|
|
|
|
fd_status = support.findfile("fd_status.py", subdir="subprocessdata")
|
|
|
|
|
|
|
|
open_fds = set()
|
|
|
|
|
|
|
|
for x in range(5):
|
|
|
|
fds = os.pipe()
|
|
|
|
self.addCleanup(os.close, fds[0])
|
|
|
|
self.addCleanup(os.close, fds[1])
|
2013-08-27 19:53:59 -03:00
|
|
|
os.set_inheritable(fds[0], True)
|
|
|
|
os.set_inheritable(fds[1], True)
|
2010-12-14 09:43:30 -04:00
|
|
|
open_fds.update(fds)
|
|
|
|
|
|
|
|
for fd in open_fds:
|
|
|
|
p = subprocess.Popen([sys.executable, fd_status],
|
|
|
|
stdout=subprocess.PIPE, close_fds=True,
|
|
|
|
pass_fds=(fd, ))
|
|
|
|
output, ignored = p.communicate()
|
|
|
|
|
|
|
|
remaining_fds = set(map(int, output.split(b',')))
|
|
|
|
to_be_closed = open_fds - {fd}
|
|
|
|
|
|
|
|
self.assertIn(fd, remaining_fds, "fd to be passed not passed")
|
|
|
|
self.assertFalse(remaining_fds & to_be_closed,
|
|
|
|
"fd to be closed passed")
|
|
|
|
|
|
|
|
# pass_fds overrides close_fds with a warning.
|
|
|
|
with self.assertWarns(RuntimeWarning) as context:
|
|
|
|
self.assertFalse(subprocess.call(
|
2019-10-14 17:40:32 -03:00
|
|
|
ZERO_RETURN_CMD,
|
2010-12-14 09:43:30 -04:00
|
|
|
close_fds=False, pass_fds=(fd, )))
|
|
|
|
self.assertIn('overriding close_fds', str(context.warning))
|
|
|
|
|
2013-08-27 19:53:59 -03:00
|
|
|
def test_pass_fds_inheritable(self):
|
2013-09-01 05:22:41 -03:00
|
|
|
script = support.findfile("fd_status.py", subdir="subprocessdata")
|
2013-08-27 19:53:59 -03:00
|
|
|
|
|
|
|
inheritable, non_inheritable = os.pipe()
|
|
|
|
self.addCleanup(os.close, inheritable)
|
|
|
|
self.addCleanup(os.close, non_inheritable)
|
|
|
|
os.set_inheritable(inheritable, True)
|
|
|
|
os.set_inheritable(non_inheritable, False)
|
|
|
|
pass_fds = (inheritable, non_inheritable)
|
|
|
|
args = [sys.executable, script]
|
|
|
|
args += list(map(str, pass_fds))
|
|
|
|
|
|
|
|
p = subprocess.Popen(args,
|
|
|
|
stdout=subprocess.PIPE, close_fds=True,
|
|
|
|
pass_fds=pass_fds)
|
|
|
|
output, ignored = p.communicate()
|
|
|
|
fds = set(map(int, output.split(b',')))
|
|
|
|
|
|
|
|
# the inheritable file descriptor must be inherited, so its inheritable
|
|
|
|
# flag must be set in the child process after fork() and before exec()
|
2013-09-01 05:22:41 -03:00
|
|
|
self.assertEqual(fds, set(pass_fds), "output=%a" % output)
|
2013-08-27 19:53:59 -03:00
|
|
|
|
|
|
|
# inheritable flag must not be changed in the parent process
|
|
|
|
self.assertEqual(os.get_inheritable(inheritable), True)
|
|
|
|
self.assertEqual(os.get_inheritable(non_inheritable), False)
|
|
|
|
|
2018-09-10 21:46:22 -03:00
|
|
|
|
|
|
|
# bpo-32270: Ensure that descriptors specified in pass_fds
|
|
|
|
# are inherited even if they are used in redirections.
|
|
|
|
# Contributed by @izbyshev.
|
|
|
|
def test_pass_fds_redirected(self):
|
|
|
|
"""Regression test for https://bugs.python.org/issue32270."""
|
|
|
|
fd_status = support.findfile("fd_status.py", subdir="subprocessdata")
|
|
|
|
pass_fds = []
|
|
|
|
for _ in range(2):
|
|
|
|
fd = os.open(os.devnull, os.O_RDWR)
|
|
|
|
self.addCleanup(os.close, fd)
|
|
|
|
pass_fds.append(fd)
|
|
|
|
|
|
|
|
stdout_r, stdout_w = os.pipe()
|
|
|
|
self.addCleanup(os.close, stdout_r)
|
|
|
|
self.addCleanup(os.close, stdout_w)
|
|
|
|
pass_fds.insert(1, stdout_w)
|
|
|
|
|
|
|
|
with subprocess.Popen([sys.executable, fd_status],
|
|
|
|
stdin=pass_fds[0],
|
|
|
|
stdout=pass_fds[1],
|
|
|
|
stderr=pass_fds[2],
|
|
|
|
close_fds=True,
|
|
|
|
pass_fds=pass_fds):
|
|
|
|
output = os.read(stdout_r, 1024)
|
|
|
|
fds = {int(num) for num in output.split(b',')}
|
|
|
|
|
|
|
|
self.assertEqual(fds, {0, 1, 2} | frozenset(pass_fds), f"output={output!a}")
|
|
|
|
|
|
|
|
|
2011-03-15 15:55:17 -03:00
|
|
|
def test_stdout_stdin_are_single_inout_fd(self):
|
|
|
|
with io.open(os.devnull, "r+") as inout:
|
2019-10-14 17:40:32 -03:00
|
|
|
p = subprocess.Popen(ZERO_RETURN_CMD,
|
2011-03-15 15:55:17 -03:00
|
|
|
stdout=inout, stdin=inout)
|
|
|
|
p.wait()
|
|
|
|
|
|
|
|
def test_stdout_stderr_are_single_inout_fd(self):
|
|
|
|
with io.open(os.devnull, "r+") as inout:
|
2019-10-14 17:40:32 -03:00
|
|
|
p = subprocess.Popen(ZERO_RETURN_CMD,
|
2011-03-15 15:55:17 -03:00
|
|
|
stdout=inout, stderr=inout)
|
|
|
|
p.wait()
|
|
|
|
|
|
|
|
def test_stderr_stdin_are_single_inout_fd(self):
|
|
|
|
with io.open(os.devnull, "r+") as inout:
|
2019-10-14 17:40:32 -03:00
|
|
|
p = subprocess.Popen(ZERO_RETURN_CMD,
|
2011-03-15 15:55:17 -03:00
|
|
|
stderr=inout, stdin=inout)
|
|
|
|
p.wait()
|
|
|
|
|
2010-12-14 10:38:00 -04:00
|
|
|
def test_wait_when_sigchild_ignored(self):
|
|
|
|
# NOTE: sigchild_ignore.py may not be an effective test on all OSes.
|
|
|
|
sigchild_ignore = support.findfile("sigchild_ignore.py",
|
|
|
|
subdir="subprocessdata")
|
|
|
|
p = subprocess.Popen([sys.executable, sigchild_ignore],
|
|
|
|
stdout=subprocess.PIPE, stderr=subprocess.PIPE)
|
|
|
|
stdout, stderr = p.communicate()
|
|
|
|
self.assertEqual(0, p.returncode, "sigchild_ignore.py exited"
|
2010-12-14 11:23:02 -04:00
|
|
|
" non-zero with this error:\n%s" %
|
2011-02-25 11:42:01 -04:00
|
|
|
stderr.decode('utf-8'))
|
2010-12-14 10:38:00 -04:00
|
|
|
|
2011-03-19 13:04:13 -03:00
|
|
|
def test_select_unbuffered(self):
|
|
|
|
# Issue #11459: bufsize=0 should really set the pipes as
|
|
|
|
# unbuffered (and therefore let select() work properly).
|
|
|
|
select = support.import_module("select")
|
|
|
|
p = subprocess.Popen([sys.executable, "-c",
|
|
|
|
'import sys;'
|
|
|
|
'sys.stdout.write("apple")'],
|
|
|
|
stdout=subprocess.PIPE,
|
|
|
|
bufsize=0)
|
|
|
|
f = p.stdout
|
2011-03-26 16:21:46 -03:00
|
|
|
self.addCleanup(f.close)
|
2011-03-19 13:04:13 -03:00
|
|
|
try:
|
|
|
|
self.assertEqual(f.read(4), b"appl")
|
|
|
|
self.assertIn(f, select.select([f], [], [], 0.0)[0])
|
|
|
|
finally:
|
|
|
|
p.wait()
|
2008-05-26 16:04:21 -03:00
|
|
|
|
2011-08-18 13:49:39 -03:00
|
|
|
def test_zombie_fast_process_del(self):
|
|
|
|
# Issue #12650: on Unix, if Popen.__del__() was called before the
|
|
|
|
# process exited, it wouldn't be added to subprocess._active, and would
|
|
|
|
# remain a zombie.
|
|
|
|
# spawn a Popen, and delete its reference before it exits
|
|
|
|
p = subprocess.Popen([sys.executable, "-c",
|
|
|
|
'import sys, time;'
|
|
|
|
'time.sleep(0.2)'],
|
|
|
|
stdout=subprocess.PIPE,
|
|
|
|
stderr=subprocess.PIPE)
|
2011-08-19 00:12:01 -03:00
|
|
|
self.addCleanup(p.stdout.close)
|
|
|
|
self.addCleanup(p.stderr.close)
|
2011-08-18 13:49:39 -03:00
|
|
|
ident = id(p)
|
|
|
|
pid = p.pid
|
2016-05-20 07:11:15 -03:00
|
|
|
with support.check_warnings(('', ResourceWarning)):
|
|
|
|
p = None
|
|
|
|
|
2019-09-06 06:14:31 -03:00
|
|
|
if mswindows:
|
|
|
|
# subprocess._active is not used on Windows and is set to None.
|
|
|
|
self.assertIsNone(subprocess._active)
|
|
|
|
else:
|
|
|
|
# check that p is in the active processes list
|
|
|
|
self.assertIn(ident, [id(o) for o in subprocess._active])
|
2011-08-18 13:49:39 -03:00
|
|
|
|
|
|
|
def test_leak_fast_process_del_killed(self):
|
|
|
|
# Issue #12650: on Unix, if Popen.__del__() was called before the
|
|
|
|
# process exited, and the process got killed by a signal, it would never
|
|
|
|
# be removed from subprocess._active, which triggered a FD and memory
|
|
|
|
# leak.
|
|
|
|
# spawn a Popen, delete its reference and kill it
|
|
|
|
p = subprocess.Popen([sys.executable, "-c",
|
|
|
|
'import time;'
|
|
|
|
'time.sleep(3)'],
|
|
|
|
stdout=subprocess.PIPE,
|
|
|
|
stderr=subprocess.PIPE)
|
2011-08-19 00:12:01 -03:00
|
|
|
self.addCleanup(p.stdout.close)
|
|
|
|
self.addCleanup(p.stderr.close)
|
2011-08-18 13:49:39 -03:00
|
|
|
ident = id(p)
|
|
|
|
pid = p.pid
|
2016-05-20 07:11:15 -03:00
|
|
|
with support.check_warnings(('', ResourceWarning)):
|
|
|
|
p = None
|
|
|
|
|
2011-08-18 13:49:39 -03:00
|
|
|
os.kill(pid, signal.SIGKILL)
|
2019-09-06 06:14:31 -03:00
|
|
|
if mswindows:
|
|
|
|
# subprocess._active is not used on Windows and is set to None.
|
|
|
|
self.assertIsNone(subprocess._active)
|
|
|
|
else:
|
|
|
|
# check that p is in the active processes list
|
|
|
|
self.assertIn(ident, [id(o) for o in subprocess._active])
|
2011-08-18 13:49:39 -03:00
|
|
|
|
|
|
|
# let some time for the process to exit, and create a new Popen: this
|
|
|
|
# should trigger the wait() of p
|
|
|
|
time.sleep(0.2)
|
2018-01-25 14:06:05 -04:00
|
|
|
with self.assertRaises(OSError):
|
2017-08-21 18:51:31 -03:00
|
|
|
with subprocess.Popen(NONEXISTING_CMD,
|
2011-08-18 13:49:39 -03:00
|
|
|
stdout=subprocess.PIPE,
|
|
|
|
stderr=subprocess.PIPE) as proc:
|
|
|
|
pass
|
|
|
|
# p should have been wait()ed on, and removed from the _active list
|
|
|
|
self.assertRaises(OSError, os.waitpid, pid, 0)
|
2019-09-06 06:14:31 -03:00
|
|
|
if mswindows:
|
|
|
|
# subprocess._active is not used on Windows and is set to None.
|
|
|
|
self.assertIsNone(subprocess._active)
|
|
|
|
else:
|
|
|
|
self.assertNotIn(ident, [id(o) for o in subprocess._active])
|
2011-08-18 13:49:39 -03:00
|
|
|
|
2013-08-25 13:24:45 -03:00
|
|
|
def test_close_fds_after_preexec(self):
|
|
|
|
fd_status = support.findfile("fd_status.py", subdir="subprocessdata")
|
|
|
|
|
|
|
|
# this FD is used as dup2() target by preexec_fn, and should be closed
|
|
|
|
# in the child process
|
|
|
|
fd = os.dup(1)
|
|
|
|
self.addCleanup(os.close, fd)
|
|
|
|
|
|
|
|
p = subprocess.Popen([sys.executable, fd_status],
|
|
|
|
stdout=subprocess.PIPE, close_fds=True,
|
|
|
|
preexec_fn=lambda: os.dup2(1, fd))
|
|
|
|
output, ignored = p.communicate()
|
|
|
|
|
|
|
|
remaining_fds = set(map(int, output.split(b',')))
|
|
|
|
|
|
|
|
self.assertNotIn(fd, remaining_fds)
|
|
|
|
|
2014-10-05 12:25:19 -03:00
|
|
|
@support.cpython_only
|
|
|
|
def test_fork_exec(self):
|
|
|
|
# Issue #22290: fork_exec() must not crash on memory allocation failure
|
|
|
|
# or other errors
|
|
|
|
import _posixsubprocess
|
|
|
|
gc_enabled = gc.isenabled()
|
|
|
|
try:
|
|
|
|
# Use a preexec function and enable the garbage collector
|
|
|
|
# to force fork_exec() to re-enable the garbage collector
|
|
|
|
# on error.
|
|
|
|
func = lambda: None
|
|
|
|
gc.enable()
|
|
|
|
|
|
|
|
for args, exe_list, cwd, env_list in (
|
|
|
|
(123, [b"exe"], None, [b"env"]),
|
|
|
|
([b"arg"], 123, None, [b"env"]),
|
|
|
|
([b"arg"], [b"exe"], 123, [b"env"]),
|
|
|
|
([b"arg"], [b"exe"], None, 123),
|
|
|
|
):
|
|
|
|
with self.assertRaises(TypeError):
|
|
|
|
_posixsubprocess.fork_exec(
|
|
|
|
args, exe_list,
|
2017-04-19 15:12:46 -03:00
|
|
|
True, (), cwd, env_list,
|
2014-10-05 12:25:19 -03:00
|
|
|
-1, -1, -1, -1,
|
|
|
|
1, 2, 3, 4,
|
|
|
|
True, True, func)
|
|
|
|
finally:
|
|
|
|
if not gc_enabled:
|
|
|
|
gc.disable()
|
|
|
|
|
2015-11-16 01:15:26 -04:00
|
|
|
@support.cpython_only
|
|
|
|
def test_fork_exec_sorted_fd_sanity_check(self):
|
|
|
|
# Issue #23564: sanity check the fork_exec() fds_to_keep sanity check.
|
|
|
|
import _posixsubprocess
|
2017-04-19 15:12:46 -03:00
|
|
|
class BadInt:
|
|
|
|
first = True
|
|
|
|
def __init__(self, value):
|
|
|
|
self.value = value
|
|
|
|
def __int__(self):
|
|
|
|
if self.first:
|
|
|
|
self.first = False
|
|
|
|
return self.value
|
|
|
|
raise ValueError
|
|
|
|
|
2015-11-16 01:15:26 -04:00
|
|
|
gc_enabled = gc.isenabled()
|
|
|
|
try:
|
|
|
|
gc.enable()
|
|
|
|
|
|
|
|
for fds_to_keep in (
|
|
|
|
(-1, 2, 3, 4, 5), # Negative number.
|
|
|
|
('str', 4), # Not an int.
|
|
|
|
(18, 23, 42, 2**63), # Out of range.
|
|
|
|
(5, 4), # Not sorted.
|
|
|
|
(6, 7, 7, 8), # Duplicate.
|
2017-04-19 15:12:46 -03:00
|
|
|
(BadInt(1), BadInt(2)),
|
2015-11-16 01:15:26 -04:00
|
|
|
):
|
|
|
|
with self.assertRaises(
|
|
|
|
ValueError,
|
|
|
|
msg='fds_to_keep={}'.format(fds_to_keep)) as c:
|
|
|
|
_posixsubprocess.fork_exec(
|
|
|
|
[b"false"], [b"false"],
|
|
|
|
True, fds_to_keep, None, [b"env"],
|
|
|
|
-1, -1, -1, -1,
|
|
|
|
1, 2, 3, 4,
|
|
|
|
True, True, None)
|
|
|
|
self.assertIn('fds_to_keep', str(c.exception))
|
|
|
|
finally:
|
|
|
|
if not gc_enabled:
|
|
|
|
gc.disable()
|
2014-10-05 12:25:19 -03:00
|
|
|
|
2016-06-04 23:57:47 -03:00
|
|
|
def test_communicate_BrokenPipeError_stdin_close(self):
|
|
|
|
# By not setting stdout or stderr or a timeout we force the fast path
|
|
|
|
# that just calls _stdin_write() internally due to our mock.
|
2019-10-14 17:40:32 -03:00
|
|
|
proc = subprocess.Popen(ZERO_RETURN_CMD)
|
2016-06-04 23:57:47 -03:00
|
|
|
with proc, mock.patch.object(proc, 'stdin') as mock_proc_stdin:
|
|
|
|
mock_proc_stdin.close.side_effect = BrokenPipeError
|
|
|
|
proc.communicate() # Should swallow BrokenPipeError from close.
|
|
|
|
mock_proc_stdin.close.assert_called_with()
|
|
|
|
|
|
|
|
def test_communicate_BrokenPipeError_stdin_write(self):
|
|
|
|
# By not setting stdout or stderr or a timeout we force the fast path
|
|
|
|
# that just calls _stdin_write() internally due to our mock.
|
2019-10-14 17:40:32 -03:00
|
|
|
proc = subprocess.Popen(ZERO_RETURN_CMD)
|
2016-06-04 23:57:47 -03:00
|
|
|
with proc, mock.patch.object(proc, 'stdin') as mock_proc_stdin:
|
|
|
|
mock_proc_stdin.write.side_effect = BrokenPipeError
|
|
|
|
proc.communicate(b'stuff') # Should swallow the BrokenPipeError.
|
|
|
|
mock_proc_stdin.write.assert_called_once_with(b'stuff')
|
|
|
|
mock_proc_stdin.close.assert_called_once_with()
|
|
|
|
|
|
|
|
def test_communicate_BrokenPipeError_stdin_flush(self):
|
|
|
|
# Setting stdin and stdout forces the ._communicate() code path.
|
|
|
|
# python -h exits faster than python -c pass (but spams stdout).
|
|
|
|
proc = subprocess.Popen([sys.executable, '-h'],
|
|
|
|
stdin=subprocess.PIPE,
|
|
|
|
stdout=subprocess.PIPE)
|
|
|
|
with proc, mock.patch.object(proc, 'stdin') as mock_proc_stdin, \
|
|
|
|
open(os.devnull, 'wb') as dev_null:
|
|
|
|
mock_proc_stdin.flush.side_effect = BrokenPipeError
|
|
|
|
# because _communicate registers a selector using proc.stdin...
|
|
|
|
mock_proc_stdin.fileno.return_value = dev_null.fileno()
|
|
|
|
# _communicate() should swallow BrokenPipeError from flush.
|
|
|
|
proc.communicate(b'stuff')
|
|
|
|
mock_proc_stdin.flush.assert_called_once_with()
|
|
|
|
|
|
|
|
def test_communicate_BrokenPipeError_stdin_close_with_timeout(self):
|
|
|
|
# Setting stdin and stdout forces the ._communicate() code path.
|
|
|
|
# python -h exits faster than python -c pass (but spams stdout).
|
|
|
|
proc = subprocess.Popen([sys.executable, '-h'],
|
|
|
|
stdin=subprocess.PIPE,
|
|
|
|
stdout=subprocess.PIPE)
|
|
|
|
with proc, mock.patch.object(proc, 'stdin') as mock_proc_stdin:
|
|
|
|
mock_proc_stdin.close.side_effect = BrokenPipeError
|
|
|
|
# _communicate() should swallow BrokenPipeError from close.
|
|
|
|
proc.communicate(timeout=999)
|
|
|
|
mock_proc_stdin.close.assert_called_once_with()
|
|
|
|
|
2017-08-10 07:37:39 -03:00
|
|
|
@unittest.skipUnless(_testcapi is not None
|
|
|
|
and hasattr(_testcapi, 'W_STOPCODE'),
|
|
|
|
'need _testcapi.W_STOPCODE')
|
|
|
|
def test_stopped(self):
|
2017-01-22 21:28:38 -04:00
|
|
|
"""Test wait() behavior when waitpid returns WIFSTOPPED; issue29335."""
|
2019-10-14 17:40:32 -03:00
|
|
|
args = ZERO_RETURN_CMD
|
2017-08-10 07:37:39 -03:00
|
|
|
proc = subprocess.Popen(args)
|
|
|
|
|
|
|
|
# Wait until the real process completes to avoid zombie process
|
|
|
|
pid = proc.pid
|
|
|
|
pid, status = os.waitpid(pid, 0)
|
|
|
|
self.assertEqual(status, 0)
|
|
|
|
|
|
|
|
status = _testcapi.W_STOPCODE(3)
|
|
|
|
with mock.patch('subprocess.os.waitpid', return_value=(pid, status)):
|
|
|
|
returncode = proc.wait()
|
|
|
|
|
|
|
|
self.assertEqual(returncode, -3)
|
2017-01-22 21:28:38 -04:00
|
|
|
|
2010-02-27 18:12:37 -04:00
|
|
|
|
2018-06-25 21:11:06 -03:00
|
|
|
@unittest.skipUnless(mswindows, "Windows specific tests")
|
2010-03-27 19:47:23 -03:00
|
|
|
class Win32ProcessTestCase(BaseTestCase):
|
2010-03-04 17:50:56 -04:00
|
|
|
|
2010-02-27 18:12:37 -04:00
|
|
|
def test_startupinfo(self):
|
|
|
|
# startupinfo argument
|
|
|
|
# We uses hardcoded constants, because we do not want to
|
|
|
|
# depend on win32all.
|
|
|
|
STARTF_USESHOWWINDOW = 1
|
|
|
|
SW_MAXIMIZE = 3
|
|
|
|
startupinfo = subprocess.STARTUPINFO()
|
|
|
|
startupinfo.dwFlags = STARTF_USESHOWWINDOW
|
|
|
|
startupinfo.wShowWindow = SW_MAXIMIZE
|
|
|
|
# Since Python is a console process, it won't be affected
|
|
|
|
# by wShowWindow, but the argument should be silently
|
|
|
|
# ignored
|
2019-10-14 17:40:32 -03:00
|
|
|
subprocess.call(ZERO_RETURN_CMD,
|
2004-10-12 12:26:28 -03:00
|
|
|
startupinfo=startupinfo)
|
|
|
|
|
2017-02-25 10:59:05 -04:00
|
|
|
def test_startupinfo_keywords(self):
|
|
|
|
# startupinfo argument
|
|
|
|
# We use hardcoded constants, because we do not want to
|
|
|
|
# depend on win32all.
|
|
|
|
STARTF_USERSHOWWINDOW = 1
|
|
|
|
SW_MAXIMIZE = 3
|
|
|
|
startupinfo = subprocess.STARTUPINFO(
|
|
|
|
dwFlags=STARTF_USERSHOWWINDOW,
|
|
|
|
wShowWindow=SW_MAXIMIZE
|
|
|
|
)
|
|
|
|
# Since Python is a console process, it won't be affected
|
|
|
|
# by wShowWindow, but the argument should be silently
|
|
|
|
# ignored
|
2019-10-14 17:40:32 -03:00
|
|
|
subprocess.call(ZERO_RETURN_CMD,
|
2017-02-25 10:59:05 -04:00
|
|
|
startupinfo=startupinfo)
|
|
|
|
|
2018-07-05 17:54:17 -03:00
|
|
|
def test_startupinfo_copy(self):
|
|
|
|
# bpo-34044: Popen must not modify input STARTUPINFO structure
|
|
|
|
startupinfo = subprocess.STARTUPINFO()
|
|
|
|
startupinfo.dwFlags = subprocess.STARTF_USESHOWWINDOW
|
|
|
|
startupinfo.wShowWindow = subprocess.SW_HIDE
|
|
|
|
|
|
|
|
# Call Popen() twice with the same startupinfo object to make sure
|
|
|
|
# that it's not modified
|
|
|
|
for _ in range(2):
|
2019-10-14 17:40:32 -03:00
|
|
|
cmd = ZERO_RETURN_CMD
|
2018-07-05 17:54:17 -03:00
|
|
|
with open(os.devnull, 'w') as null:
|
|
|
|
proc = subprocess.Popen(cmd,
|
|
|
|
stdout=null,
|
|
|
|
stderr=subprocess.STDOUT,
|
|
|
|
startupinfo=startupinfo)
|
|
|
|
with proc:
|
|
|
|
proc.communicate()
|
|
|
|
self.assertEqual(proc.returncode, 0)
|
|
|
|
|
|
|
|
self.assertEqual(startupinfo.dwFlags,
|
|
|
|
subprocess.STARTF_USESHOWWINDOW)
|
|
|
|
self.assertIsNone(startupinfo.hStdInput)
|
|
|
|
self.assertIsNone(startupinfo.hStdOutput)
|
|
|
|
self.assertIsNone(startupinfo.hStdError)
|
|
|
|
self.assertEqual(startupinfo.wShowWindow, subprocess.SW_HIDE)
|
|
|
|
self.assertEqual(startupinfo.lpAttributeList, {"handle_list": []})
|
|
|
|
|
2010-02-27 18:12:37 -04:00
|
|
|
def test_creationflags(self):
|
|
|
|
# creationflags argument
|
|
|
|
CREATE_NEW_CONSOLE = 16
|
|
|
|
sys.stderr.write(" a DOS box should flash briefly ...\n")
|
|
|
|
subprocess.call(sys.executable +
|
|
|
|
' -c "import time; time.sleep(0.25)"',
|
|
|
|
creationflags=CREATE_NEW_CONSOLE)
|
|
|
|
|
|
|
|
def test_invalid_args(self):
|
|
|
|
# invalid arguments should raise ValueError
|
|
|
|
self.assertRaises(ValueError, subprocess.call,
|
|
|
|
[sys.executable, "-c",
|
|
|
|
"import sys; sys.exit(47)"],
|
|
|
|
preexec_fn=lambda: 1)
|
|
|
|
|
2017-09-14 16:30:28 -03:00
|
|
|
@support.cpython_only
|
|
|
|
def test_issue31471(self):
|
|
|
|
# There shouldn't be an assertion failure in Popen() in case the env
|
|
|
|
# argument has a bad keys() method.
|
|
|
|
class BadEnv(dict):
|
|
|
|
keys = None
|
|
|
|
with self.assertRaises(TypeError):
|
2019-10-14 17:40:32 -03:00
|
|
|
subprocess.Popen(ZERO_RETURN_CMD, env=BadEnv())
|
2017-09-14 16:30:28 -03:00
|
|
|
|
2010-02-27 18:12:37 -04:00
|
|
|
def test_close_fds(self):
|
|
|
|
# close file descriptors
|
|
|
|
rc = subprocess.call([sys.executable, "-c",
|
|
|
|
"import sys; sys.exit(47)"],
|
2004-10-12 12:26:28 -03:00
|
|
|
close_fds=True)
|
2010-02-27 18:12:37 -04:00
|
|
|
self.assertEqual(rc, 47)
|
2004-10-12 12:26:28 -03:00
|
|
|
|
2017-12-18 05:28:19 -04:00
|
|
|
def test_close_fds_with_stdio(self):
|
|
|
|
import msvcrt
|
|
|
|
|
|
|
|
fds = os.pipe()
|
|
|
|
self.addCleanup(os.close, fds[0])
|
|
|
|
self.addCleanup(os.close, fds[1])
|
|
|
|
|
|
|
|
handles = []
|
|
|
|
for fd in fds:
|
|
|
|
os.set_inheritable(fd, True)
|
|
|
|
handles.append(msvcrt.get_osfhandle(fd))
|
|
|
|
|
|
|
|
p = subprocess.Popen([sys.executable, "-c",
|
|
|
|
"import msvcrt; print(msvcrt.open_osfhandle({}, 0))".format(handles[0])],
|
|
|
|
stdout=subprocess.PIPE, close_fds=False)
|
|
|
|
stdout, stderr = p.communicate()
|
|
|
|
self.assertEqual(p.returncode, 0)
|
|
|
|
int(stdout.strip()) # Check that stdout is an integer
|
|
|
|
|
|
|
|
p = subprocess.Popen([sys.executable, "-c",
|
|
|
|
"import msvcrt; print(msvcrt.open_osfhandle({}, 0))".format(handles[0])],
|
|
|
|
stdout=subprocess.PIPE, stderr=subprocess.PIPE, close_fds=True)
|
|
|
|
stdout, stderr = p.communicate()
|
|
|
|
self.assertEqual(p.returncode, 1)
|
|
|
|
self.assertIn(b"OSError", stderr)
|
|
|
|
|
|
|
|
# The same as the previous call, but with an empty handle_list
|
|
|
|
handle_list = []
|
|
|
|
startupinfo = subprocess.STARTUPINFO()
|
|
|
|
startupinfo.lpAttributeList = {"handle_list": handle_list}
|
|
|
|
p = subprocess.Popen([sys.executable, "-c",
|
|
|
|
"import msvcrt; print(msvcrt.open_osfhandle({}, 0))".format(handles[0])],
|
|
|
|
stdout=subprocess.PIPE, stderr=subprocess.PIPE,
|
|
|
|
startupinfo=startupinfo, close_fds=True)
|
|
|
|
stdout, stderr = p.communicate()
|
|
|
|
self.assertEqual(p.returncode, 1)
|
|
|
|
self.assertIn(b"OSError", stderr)
|
|
|
|
|
|
|
|
# Check for a warning due to using handle_list and close_fds=False
|
|
|
|
with support.check_warnings((".*overriding close_fds", RuntimeWarning)):
|
|
|
|
startupinfo = subprocess.STARTUPINFO()
|
|
|
|
startupinfo.lpAttributeList = {"handle_list": handles[:]}
|
|
|
|
p = subprocess.Popen([sys.executable, "-c",
|
|
|
|
"import msvcrt; print(msvcrt.open_osfhandle({}, 0))".format(handles[0])],
|
|
|
|
stdout=subprocess.PIPE, stderr=subprocess.PIPE,
|
|
|
|
startupinfo=startupinfo, close_fds=False)
|
|
|
|
stdout, stderr = p.communicate()
|
|
|
|
self.assertEqual(p.returncode, 0)
|
|
|
|
|
|
|
|
def test_empty_attribute_list(self):
|
|
|
|
startupinfo = subprocess.STARTUPINFO()
|
|
|
|
startupinfo.lpAttributeList = {}
|
2019-10-14 17:40:32 -03:00
|
|
|
subprocess.call(ZERO_RETURN_CMD,
|
2017-12-18 05:28:19 -04:00
|
|
|
startupinfo=startupinfo)
|
|
|
|
|
|
|
|
def test_empty_handle_list(self):
|
|
|
|
startupinfo = subprocess.STARTUPINFO()
|
|
|
|
startupinfo.lpAttributeList = {"handle_list": []}
|
2019-10-14 17:40:32 -03:00
|
|
|
subprocess.call(ZERO_RETURN_CMD,
|
2017-12-18 05:28:19 -04:00
|
|
|
startupinfo=startupinfo)
|
|
|
|
|
2010-02-27 18:12:37 -04:00
|
|
|
def test_shell_sequence(self):
|
|
|
|
# Run command through the shell (sequence)
|
|
|
|
newenv = os.environ.copy()
|
|
|
|
newenv["FRUIT"] = "physalis"
|
|
|
|
p = subprocess.Popen(["set"], shell=1,
|
|
|
|
stdout=subprocess.PIPE,
|
|
|
|
env=newenv)
|
2016-05-20 07:43:15 -03:00
|
|
|
with p:
|
|
|
|
self.assertIn(b"physalis", p.stdout.read())
|
2004-10-12 12:26:28 -03:00
|
|
|
|
2010-02-27 18:12:37 -04:00
|
|
|
def test_shell_string(self):
|
|
|
|
# Run command through the shell (string)
|
|
|
|
newenv = os.environ.copy()
|
|
|
|
newenv["FRUIT"] = "physalis"
|
|
|
|
p = subprocess.Popen("set", shell=1,
|
|
|
|
stdout=subprocess.PIPE,
|
|
|
|
env=newenv)
|
2016-05-20 07:43:15 -03:00
|
|
|
with p:
|
|
|
|
self.assertIn(b"physalis", p.stdout.read())
|
2004-10-12 12:26:28 -03:00
|
|
|
|
2016-09-07 00:16:17 -03:00
|
|
|
def test_shell_encodings(self):
|
|
|
|
# Run command through the shell (string)
|
|
|
|
for enc in ['ansi', 'oem']:
|
|
|
|
newenv = os.environ.copy()
|
|
|
|
newenv["FRUIT"] = "physalis"
|
|
|
|
p = subprocess.Popen("set", shell=1,
|
|
|
|
stdout=subprocess.PIPE,
|
|
|
|
env=newenv,
|
|
|
|
encoding=enc)
|
|
|
|
with p:
|
|
|
|
self.assertIn("physalis", p.stdout.read(), enc)
|
|
|
|
|
2010-02-27 18:12:37 -04:00
|
|
|
def test_call_string(self):
|
|
|
|
# call() function with string argument on Windows
|
|
|
|
rc = subprocess.call(sys.executable +
|
|
|
|
' -c "import sys; sys.exit(47)"')
|
|
|
|
self.assertEqual(rc, 47)
|
Merged revisions 62386-62387,62389-62393,62396,62400-62402,62407,62409-62410,62412-62414,62418-62419 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk
........
r62386 | christian.heimes | 2008-04-19 04:23:57 +0200 (Sat, 19 Apr 2008) | 2 lines
Added kill, terminate and send_signal to subprocess.Popen
The bits and pieces for the Windows side were already in place. The POSIX side is trivial (as usual) and uses os.kill().
........
r62387 | georg.brandl | 2008-04-19 10:23:59 +0200 (Sat, 19 Apr 2008) | 2 lines
Fix-up docs for revision 62386.
........
r62389 | georg.brandl | 2008-04-19 18:57:43 +0200 (Sat, 19 Apr 2008) | 2 lines
#2369: clarify that copyfile() doesn't take a target directory.
........
r62390 | georg.brandl | 2008-04-19 18:58:28 +0200 (Sat, 19 Apr 2008) | 2 lines
#2634: clarify meaning of env parameter to spawn/exec*e.
........
r62391 | georg.brandl | 2008-04-19 18:58:49 +0200 (Sat, 19 Apr 2008) | 2 lines
#2633: clarify meaning of env parameter.
........
r62392 | georg.brandl | 2008-04-19 18:59:16 +0200 (Sat, 19 Apr 2008) | 2 lines
#2631: clarify IMPORT_NAME semantics.
........
r62393 | georg.brandl | 2008-04-19 19:00:14 +0200 (Sat, 19 Apr 2008) | 2 lines
:func: et al. should *not* include the parens.
........
r62396 | mark.dickinson | 2008-04-19 20:51:48 +0200 (Sat, 19 Apr 2008) | 5 lines
Additional tests for math.pow, and extra special-case
handling code in math.pow, in the hope of making all
tests pass on the alpha Tru64 buildbot.
........
r62400 | mark.dickinson | 2008-04-19 21:41:52 +0200 (Sat, 19 Apr 2008) | 3 lines
Additional special-case handling for math.pow.
Windows/VS2008 doesn't like (-1)**(+-inf).
........
r62401 | benjamin.peterson | 2008-04-19 21:47:34 +0200 (Sat, 19 Apr 2008) | 2 lines
Complete documentation for errors argument of io's open and TextIOWrapper
........
r62402 | mark.dickinson | 2008-04-19 22:31:16 +0200 (Sat, 19 Apr 2008) | 2 lines
Document updates to math and cmath modules.
........
r62407 | georg.brandl | 2008-04-19 23:28:38 +0200 (Sat, 19 Apr 2008) | 2 lines
Update template for newest Sphinx.
........
r62409 | mark.dickinson | 2008-04-19 23:35:35 +0200 (Sat, 19 Apr 2008) | 5 lines
Correct documentation for math.pow;
0**nan is nan, not 0. (But nan**0 and 1**nan are 1.)
Also fix minor typo: 'quite NaN' -> 'quiet NaN'
........
r62410 | mark.dickinson | 2008-04-19 23:49:22 +0200 (Sat, 19 Apr 2008) | 4 lines
Move asinh documentation to the proper place.
Remove meaningless 'in radians' from inverse
hyperbolic functions.
........
r62412 | mark.dickinson | 2008-04-20 03:22:30 +0200 (Sun, 20 Apr 2008) | 5 lines
Report additional diagnostic information in
test_math, to help track down debian-alpha
buildbot failure.
........
r62413 | mark.dickinson | 2008-04-20 03:39:24 +0200 (Sun, 20 Apr 2008) | 3 lines
FreeBSD doesn't follow C99 for modf(inf); so add explicit
special-value handling to math.modf code.
........
r62414 | mark.dickinson | 2008-04-20 06:13:13 +0200 (Sun, 20 Apr 2008) | 5 lines
Yet more explicit special case handling to make
math.pow behave on alpha Tru64. All IEEE 754
special values are now handled directly; only
the finite**finite case is handled by libm.
........
r62418 | mark.dickinson | 2008-04-20 18:13:17 +0200 (Sun, 20 Apr 2008) | 7 lines
Issue 2662: Initialize special value tables dynamically (i.e. when
cmath module is loaded) instead of statically. This fixes compile-time
problems on platforms where HUGE_VAL is an extern variable rather than
a constant.
Thanks Hirokazu Yamamoto for the patch.
........
r62419 | andrew.kuchling | 2008-04-20 18:54:02 +0200 (Sun, 20 Apr 2008) | 1 line
Move description of math module changes; various edits to description of cmath changes
........
2008-04-20 18:01:16 -03:00
|
|
|
|
Merged revisions 78736,78759,78761,78767,78788-78789 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk
........
r78736 | florent.xicluna | 2010-03-06 20:43:41 +0100 (sam, 06 mar 2010) | 2 lines
Skip test_send_signal, test_kill, test_terminate on win32 platforms, for 2.7a4 release.
........
r78759 | florent.xicluna | 2010-03-07 13:21:36 +0100 (dim, 07 mar 2010) | 2 lines
#2777: Enable test_send_signal, test_terminate and test_kill on win32 platforms.
........
r78761 | florent.xicluna | 2010-03-07 16:27:39 +0100 (dim, 07 mar 2010) | 4 lines
Do not fail if returncode is 0 on send_signal/kill/terminate, for win32 platforms.
Do not hide the KeyboardInterrupt on POSIX platforms.
........
r78767 | florent.xicluna | 2010-03-07 18:12:23 +0100 (dim, 07 mar 2010) | 2 lines
#2777: Try hard to make Win7 buildbot happy...
........
r78788 | florent.xicluna | 2010-03-08 11:58:12 +0100 (lun, 08 mar 2010) | 2 lines
Fix syntax: "rc != None" -> "rc is not None"
........
r78789 | florent.xicluna | 2010-03-08 11:59:33 +0100 (lun, 08 mar 2010) | 2 lines
Replace the stderr logging with assertNotEqual(returncode, 0).
........
2010-03-08 09:27:26 -04:00
|
|
|
def _kill_process(self, method, *args):
|
|
|
|
# Some win32 buildbot raises EOFError if stdin is inherited
|
2010-09-24 15:57:01 -03:00
|
|
|
p = subprocess.Popen([sys.executable, "-c", """if 1:
|
|
|
|
import sys, time
|
|
|
|
sys.stdout.write('x\\n')
|
|
|
|
sys.stdout.flush()
|
|
|
|
time.sleep(30)
|
|
|
|
"""],
|
|
|
|
stdin=subprocess.PIPE,
|
|
|
|
stdout=subprocess.PIPE,
|
|
|
|
stderr=subprocess.PIPE)
|
2016-05-20 07:43:15 -03:00
|
|
|
with p:
|
|
|
|
# Wait for the interpreter to be completely initialized before
|
|
|
|
# sending any signal.
|
|
|
|
p.stdout.read(1)
|
|
|
|
getattr(p, method)(*args)
|
|
|
|
_, stderr = p.communicate()
|
|
|
|
self.assertStderrEqual(stderr, b'')
|
|
|
|
returncode = p.wait()
|
Merged revisions 78736,78759,78761,78767,78788-78789 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk
........
r78736 | florent.xicluna | 2010-03-06 20:43:41 +0100 (sam, 06 mar 2010) | 2 lines
Skip test_send_signal, test_kill, test_terminate on win32 platforms, for 2.7a4 release.
........
r78759 | florent.xicluna | 2010-03-07 13:21:36 +0100 (dim, 07 mar 2010) | 2 lines
#2777: Enable test_send_signal, test_terminate and test_kill on win32 platforms.
........
r78761 | florent.xicluna | 2010-03-07 16:27:39 +0100 (dim, 07 mar 2010) | 4 lines
Do not fail if returncode is 0 on send_signal/kill/terminate, for win32 platforms.
Do not hide the KeyboardInterrupt on POSIX platforms.
........
r78767 | florent.xicluna | 2010-03-07 18:12:23 +0100 (dim, 07 mar 2010) | 2 lines
#2777: Try hard to make Win7 buildbot happy...
........
r78788 | florent.xicluna | 2010-03-08 11:58:12 +0100 (lun, 08 mar 2010) | 2 lines
Fix syntax: "rc != None" -> "rc is not None"
........
r78789 | florent.xicluna | 2010-03-08 11:59:33 +0100 (lun, 08 mar 2010) | 2 lines
Replace the stderr logging with assertNotEqual(returncode, 0).
........
2010-03-08 09:27:26 -04:00
|
|
|
self.assertNotEqual(returncode, 0)
|
Merged revisions 62386-62387,62389-62393,62396,62400-62402,62407,62409-62410,62412-62414,62418-62419 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk
........
r62386 | christian.heimes | 2008-04-19 04:23:57 +0200 (Sat, 19 Apr 2008) | 2 lines
Added kill, terminate and send_signal to subprocess.Popen
The bits and pieces for the Windows side were already in place. The POSIX side is trivial (as usual) and uses os.kill().
........
r62387 | georg.brandl | 2008-04-19 10:23:59 +0200 (Sat, 19 Apr 2008) | 2 lines
Fix-up docs for revision 62386.
........
r62389 | georg.brandl | 2008-04-19 18:57:43 +0200 (Sat, 19 Apr 2008) | 2 lines
#2369: clarify that copyfile() doesn't take a target directory.
........
r62390 | georg.brandl | 2008-04-19 18:58:28 +0200 (Sat, 19 Apr 2008) | 2 lines
#2634: clarify meaning of env parameter to spawn/exec*e.
........
r62391 | georg.brandl | 2008-04-19 18:58:49 +0200 (Sat, 19 Apr 2008) | 2 lines
#2633: clarify meaning of env parameter.
........
r62392 | georg.brandl | 2008-04-19 18:59:16 +0200 (Sat, 19 Apr 2008) | 2 lines
#2631: clarify IMPORT_NAME semantics.
........
r62393 | georg.brandl | 2008-04-19 19:00:14 +0200 (Sat, 19 Apr 2008) | 2 lines
:func: et al. should *not* include the parens.
........
r62396 | mark.dickinson | 2008-04-19 20:51:48 +0200 (Sat, 19 Apr 2008) | 5 lines
Additional tests for math.pow, and extra special-case
handling code in math.pow, in the hope of making all
tests pass on the alpha Tru64 buildbot.
........
r62400 | mark.dickinson | 2008-04-19 21:41:52 +0200 (Sat, 19 Apr 2008) | 3 lines
Additional special-case handling for math.pow.
Windows/VS2008 doesn't like (-1)**(+-inf).
........
r62401 | benjamin.peterson | 2008-04-19 21:47:34 +0200 (Sat, 19 Apr 2008) | 2 lines
Complete documentation for errors argument of io's open and TextIOWrapper
........
r62402 | mark.dickinson | 2008-04-19 22:31:16 +0200 (Sat, 19 Apr 2008) | 2 lines
Document updates to math and cmath modules.
........
r62407 | georg.brandl | 2008-04-19 23:28:38 +0200 (Sat, 19 Apr 2008) | 2 lines
Update template for newest Sphinx.
........
r62409 | mark.dickinson | 2008-04-19 23:35:35 +0200 (Sat, 19 Apr 2008) | 5 lines
Correct documentation for math.pow;
0**nan is nan, not 0. (But nan**0 and 1**nan are 1.)
Also fix minor typo: 'quite NaN' -> 'quiet NaN'
........
r62410 | mark.dickinson | 2008-04-19 23:49:22 +0200 (Sat, 19 Apr 2008) | 4 lines
Move asinh documentation to the proper place.
Remove meaningless 'in radians' from inverse
hyperbolic functions.
........
r62412 | mark.dickinson | 2008-04-20 03:22:30 +0200 (Sun, 20 Apr 2008) | 5 lines
Report additional diagnostic information in
test_math, to help track down debian-alpha
buildbot failure.
........
r62413 | mark.dickinson | 2008-04-20 03:39:24 +0200 (Sun, 20 Apr 2008) | 3 lines
FreeBSD doesn't follow C99 for modf(inf); so add explicit
special-value handling to math.modf code.
........
r62414 | mark.dickinson | 2008-04-20 06:13:13 +0200 (Sun, 20 Apr 2008) | 5 lines
Yet more explicit special case handling to make
math.pow behave on alpha Tru64. All IEEE 754
special values are now handled directly; only
the finite**finite case is handled by libm.
........
r62418 | mark.dickinson | 2008-04-20 18:13:17 +0200 (Sun, 20 Apr 2008) | 7 lines
Issue 2662: Initialize special value tables dynamically (i.e. when
cmath module is loaded) instead of statically. This fixes compile-time
problems on platforms where HUGE_VAL is an extern variable rather than
a constant.
Thanks Hirokazu Yamamoto for the patch.
........
r62419 | andrew.kuchling | 2008-04-20 18:54:02 +0200 (Sun, 20 Apr 2008) | 1 line
Move description of math module changes; various edits to description of cmath changes
........
2008-04-20 18:01:16 -03:00
|
|
|
|
2012-03-11 15:29:12 -03:00
|
|
|
def _kill_dead_process(self, method, *args):
|
|
|
|
p = subprocess.Popen([sys.executable, "-c", """if 1:
|
|
|
|
import sys, time
|
|
|
|
sys.stdout.write('x\\n')
|
|
|
|
sys.stdout.flush()
|
|
|
|
sys.exit(42)
|
|
|
|
"""],
|
|
|
|
stdin=subprocess.PIPE,
|
|
|
|
stdout=subprocess.PIPE,
|
|
|
|
stderr=subprocess.PIPE)
|
2016-05-20 07:43:15 -03:00
|
|
|
with p:
|
|
|
|
# Wait for the interpreter to be completely initialized before
|
|
|
|
# sending any signal.
|
|
|
|
p.stdout.read(1)
|
|
|
|
# The process should end after this
|
|
|
|
time.sleep(1)
|
|
|
|
# This shouldn't raise even though the child is now dead
|
|
|
|
getattr(p, method)(*args)
|
|
|
|
_, stderr = p.communicate()
|
|
|
|
self.assertStderrEqual(stderr, b'')
|
|
|
|
rc = p.wait()
|
2012-03-11 15:29:12 -03:00
|
|
|
self.assertEqual(rc, 42)
|
|
|
|
|
Merged revisions 78736,78759,78761,78767,78788-78789 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk
........
r78736 | florent.xicluna | 2010-03-06 20:43:41 +0100 (sam, 06 mar 2010) | 2 lines
Skip test_send_signal, test_kill, test_terminate on win32 platforms, for 2.7a4 release.
........
r78759 | florent.xicluna | 2010-03-07 13:21:36 +0100 (dim, 07 mar 2010) | 2 lines
#2777: Enable test_send_signal, test_terminate and test_kill on win32 platforms.
........
r78761 | florent.xicluna | 2010-03-07 16:27:39 +0100 (dim, 07 mar 2010) | 4 lines
Do not fail if returncode is 0 on send_signal/kill/terminate, for win32 platforms.
Do not hide the KeyboardInterrupt on POSIX platforms.
........
r78767 | florent.xicluna | 2010-03-07 18:12:23 +0100 (dim, 07 mar 2010) | 2 lines
#2777: Try hard to make Win7 buildbot happy...
........
r78788 | florent.xicluna | 2010-03-08 11:58:12 +0100 (lun, 08 mar 2010) | 2 lines
Fix syntax: "rc != None" -> "rc is not None"
........
r78789 | florent.xicluna | 2010-03-08 11:59:33 +0100 (lun, 08 mar 2010) | 2 lines
Replace the stderr logging with assertNotEqual(returncode, 0).
........
2010-03-08 09:27:26 -04:00
|
|
|
def test_send_signal(self):
|
|
|
|
self._kill_process('send_signal', signal.SIGTERM)
|
2010-02-27 18:12:37 -04:00
|
|
|
|
Merged revisions 78736,78759,78761,78767,78788-78789 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk
........
r78736 | florent.xicluna | 2010-03-06 20:43:41 +0100 (sam, 06 mar 2010) | 2 lines
Skip test_send_signal, test_kill, test_terminate on win32 platforms, for 2.7a4 release.
........
r78759 | florent.xicluna | 2010-03-07 13:21:36 +0100 (dim, 07 mar 2010) | 2 lines
#2777: Enable test_send_signal, test_terminate and test_kill on win32 platforms.
........
r78761 | florent.xicluna | 2010-03-07 16:27:39 +0100 (dim, 07 mar 2010) | 4 lines
Do not fail if returncode is 0 on send_signal/kill/terminate, for win32 platforms.
Do not hide the KeyboardInterrupt on POSIX platforms.
........
r78767 | florent.xicluna | 2010-03-07 18:12:23 +0100 (dim, 07 mar 2010) | 2 lines
#2777: Try hard to make Win7 buildbot happy...
........
r78788 | florent.xicluna | 2010-03-08 11:58:12 +0100 (lun, 08 mar 2010) | 2 lines
Fix syntax: "rc != None" -> "rc is not None"
........
r78789 | florent.xicluna | 2010-03-08 11:59:33 +0100 (lun, 08 mar 2010) | 2 lines
Replace the stderr logging with assertNotEqual(returncode, 0).
........
2010-03-08 09:27:26 -04:00
|
|
|
def test_kill(self):
|
|
|
|
self._kill_process('kill')
|
2010-02-27 18:12:37 -04:00
|
|
|
|
Merged revisions 78736,78759,78761,78767,78788-78789 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk
........
r78736 | florent.xicluna | 2010-03-06 20:43:41 +0100 (sam, 06 mar 2010) | 2 lines
Skip test_send_signal, test_kill, test_terminate on win32 platforms, for 2.7a4 release.
........
r78759 | florent.xicluna | 2010-03-07 13:21:36 +0100 (dim, 07 mar 2010) | 2 lines
#2777: Enable test_send_signal, test_terminate and test_kill on win32 platforms.
........
r78761 | florent.xicluna | 2010-03-07 16:27:39 +0100 (dim, 07 mar 2010) | 4 lines
Do not fail if returncode is 0 on send_signal/kill/terminate, for win32 platforms.
Do not hide the KeyboardInterrupt on POSIX platforms.
........
r78767 | florent.xicluna | 2010-03-07 18:12:23 +0100 (dim, 07 mar 2010) | 2 lines
#2777: Try hard to make Win7 buildbot happy...
........
r78788 | florent.xicluna | 2010-03-08 11:58:12 +0100 (lun, 08 mar 2010) | 2 lines
Fix syntax: "rc != None" -> "rc is not None"
........
r78789 | florent.xicluna | 2010-03-08 11:59:33 +0100 (lun, 08 mar 2010) | 2 lines
Replace the stderr logging with assertNotEqual(returncode, 0).
........
2010-03-08 09:27:26 -04:00
|
|
|
def test_terminate(self):
|
|
|
|
self._kill_process('terminate')
|
Merged revisions 62386-62387,62389-62393,62396,62400-62402,62407,62409-62410,62412-62414,62418-62419 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk
........
r62386 | christian.heimes | 2008-04-19 04:23:57 +0200 (Sat, 19 Apr 2008) | 2 lines
Added kill, terminate and send_signal to subprocess.Popen
The bits and pieces for the Windows side were already in place. The POSIX side is trivial (as usual) and uses os.kill().
........
r62387 | georg.brandl | 2008-04-19 10:23:59 +0200 (Sat, 19 Apr 2008) | 2 lines
Fix-up docs for revision 62386.
........
r62389 | georg.brandl | 2008-04-19 18:57:43 +0200 (Sat, 19 Apr 2008) | 2 lines
#2369: clarify that copyfile() doesn't take a target directory.
........
r62390 | georg.brandl | 2008-04-19 18:58:28 +0200 (Sat, 19 Apr 2008) | 2 lines
#2634: clarify meaning of env parameter to spawn/exec*e.
........
r62391 | georg.brandl | 2008-04-19 18:58:49 +0200 (Sat, 19 Apr 2008) | 2 lines
#2633: clarify meaning of env parameter.
........
r62392 | georg.brandl | 2008-04-19 18:59:16 +0200 (Sat, 19 Apr 2008) | 2 lines
#2631: clarify IMPORT_NAME semantics.
........
r62393 | georg.brandl | 2008-04-19 19:00:14 +0200 (Sat, 19 Apr 2008) | 2 lines
:func: et al. should *not* include the parens.
........
r62396 | mark.dickinson | 2008-04-19 20:51:48 +0200 (Sat, 19 Apr 2008) | 5 lines
Additional tests for math.pow, and extra special-case
handling code in math.pow, in the hope of making all
tests pass on the alpha Tru64 buildbot.
........
r62400 | mark.dickinson | 2008-04-19 21:41:52 +0200 (Sat, 19 Apr 2008) | 3 lines
Additional special-case handling for math.pow.
Windows/VS2008 doesn't like (-1)**(+-inf).
........
r62401 | benjamin.peterson | 2008-04-19 21:47:34 +0200 (Sat, 19 Apr 2008) | 2 lines
Complete documentation for errors argument of io's open and TextIOWrapper
........
r62402 | mark.dickinson | 2008-04-19 22:31:16 +0200 (Sat, 19 Apr 2008) | 2 lines
Document updates to math and cmath modules.
........
r62407 | georg.brandl | 2008-04-19 23:28:38 +0200 (Sat, 19 Apr 2008) | 2 lines
Update template for newest Sphinx.
........
r62409 | mark.dickinson | 2008-04-19 23:35:35 +0200 (Sat, 19 Apr 2008) | 5 lines
Correct documentation for math.pow;
0**nan is nan, not 0. (But nan**0 and 1**nan are 1.)
Also fix minor typo: 'quite NaN' -> 'quiet NaN'
........
r62410 | mark.dickinson | 2008-04-19 23:49:22 +0200 (Sat, 19 Apr 2008) | 4 lines
Move asinh documentation to the proper place.
Remove meaningless 'in radians' from inverse
hyperbolic functions.
........
r62412 | mark.dickinson | 2008-04-20 03:22:30 +0200 (Sun, 20 Apr 2008) | 5 lines
Report additional diagnostic information in
test_math, to help track down debian-alpha
buildbot failure.
........
r62413 | mark.dickinson | 2008-04-20 03:39:24 +0200 (Sun, 20 Apr 2008) | 3 lines
FreeBSD doesn't follow C99 for modf(inf); so add explicit
special-value handling to math.modf code.
........
r62414 | mark.dickinson | 2008-04-20 06:13:13 +0200 (Sun, 20 Apr 2008) | 5 lines
Yet more explicit special case handling to make
math.pow behave on alpha Tru64. All IEEE 754
special values are now handled directly; only
the finite**finite case is handled by libm.
........
r62418 | mark.dickinson | 2008-04-20 18:13:17 +0200 (Sun, 20 Apr 2008) | 7 lines
Issue 2662: Initialize special value tables dynamically (i.e. when
cmath module is loaded) instead of statically. This fixes compile-time
problems on platforms where HUGE_VAL is an extern variable rather than
a constant.
Thanks Hirokazu Yamamoto for the patch.
........
r62419 | andrew.kuchling | 2008-04-20 18:54:02 +0200 (Sun, 20 Apr 2008) | 1 line
Move description of math module changes; various edits to description of cmath changes
........
2008-04-20 18:01:16 -03:00
|
|
|
|
2012-03-11 15:29:12 -03:00
|
|
|
def test_send_signal_dead(self):
|
|
|
|
self._kill_dead_process('send_signal', signal.SIGTERM)
|
|
|
|
|
|
|
|
def test_kill_dead(self):
|
|
|
|
self._kill_dead_process('kill')
|
|
|
|
|
|
|
|
def test_terminate_dead(self):
|
|
|
|
self._kill_dead_process('terminate')
|
|
|
|
|
2016-04-16 08:28:10 -03:00
|
|
|
class MiscTests(unittest.TestCase):
|
2018-01-30 01:27:39 -04:00
|
|
|
|
|
|
|
class RecordingPopen(subprocess.Popen):
|
|
|
|
"""A Popen that saves a reference to each instance for testing."""
|
|
|
|
instances_created = []
|
|
|
|
|
|
|
|
def __init__(self, *args, **kwargs):
|
|
|
|
super().__init__(*args, **kwargs)
|
|
|
|
self.instances_created.append(self)
|
|
|
|
|
|
|
|
@mock.patch.object(subprocess.Popen, "_communicate")
|
|
|
|
def _test_keyboardinterrupt_no_kill(self, popener, mock__communicate,
|
|
|
|
**kwargs):
|
|
|
|
"""Fake a SIGINT happening during Popen._communicate() and ._wait().
|
|
|
|
|
|
|
|
This avoids the need to actually try and get test environments to send
|
|
|
|
and receive signals reliably across platforms. The net effect of a ^C
|
|
|
|
happening during a blocking subprocess execution which we want to clean
|
|
|
|
up from is a KeyboardInterrupt coming out of communicate() or wait().
|
|
|
|
"""
|
|
|
|
|
|
|
|
mock__communicate.side_effect = KeyboardInterrupt
|
|
|
|
try:
|
|
|
|
with mock.patch.object(subprocess.Popen, "_wait") as mock__wait:
|
|
|
|
# We patch out _wait() as no signal was involved so the
|
|
|
|
# child process isn't actually going to exit rapidly.
|
|
|
|
mock__wait.side_effect = KeyboardInterrupt
|
|
|
|
with mock.patch.object(subprocess, "Popen",
|
|
|
|
self.RecordingPopen):
|
|
|
|
with self.assertRaises(KeyboardInterrupt):
|
|
|
|
popener([sys.executable, "-c",
|
|
|
|
"import time\ntime.sleep(9)\nimport sys\n"
|
|
|
|
"sys.stderr.write('\\n!runaway child!\\n')"],
|
|
|
|
stdout=subprocess.DEVNULL, **kwargs)
|
|
|
|
for call in mock__wait.call_args_list[1:]:
|
|
|
|
self.assertNotEqual(
|
|
|
|
call, mock.call(timeout=None),
|
|
|
|
"no open-ended wait() after the first allowed: "
|
|
|
|
f"{mock__wait.call_args_list}")
|
|
|
|
sigint_calls = []
|
|
|
|
for call in mock__wait.call_args_list:
|
|
|
|
if call == mock.call(timeout=0.25): # from Popen.__init__
|
|
|
|
sigint_calls.append(call)
|
|
|
|
self.assertLessEqual(mock__wait.call_count, 2,
|
|
|
|
msg=mock__wait.call_args_list)
|
|
|
|
self.assertEqual(len(sigint_calls), 1,
|
|
|
|
msg=mock__wait.call_args_list)
|
|
|
|
finally:
|
|
|
|
# cleanup the forgotten (due to our mocks) child process
|
|
|
|
process = self.RecordingPopen.instances_created.pop()
|
|
|
|
process.kill()
|
|
|
|
process.wait()
|
|
|
|
self.assertEqual([], self.RecordingPopen.instances_created)
|
|
|
|
|
|
|
|
def test_call_keyboardinterrupt_no_kill(self):
|
|
|
|
self._test_keyboardinterrupt_no_kill(subprocess.call, timeout=6.282)
|
|
|
|
|
|
|
|
def test_run_keyboardinterrupt_no_kill(self):
|
|
|
|
self._test_keyboardinterrupt_no_kill(subprocess.run, timeout=6.282)
|
|
|
|
|
|
|
|
def test_context_manager_keyboardinterrupt_no_kill(self):
|
|
|
|
def popen_via_context_manager(*args, **kwargs):
|
|
|
|
with subprocess.Popen(*args, **kwargs) as unused_process:
|
|
|
|
raise KeyboardInterrupt # Test how __exit__ handles ^C.
|
|
|
|
self._test_keyboardinterrupt_no_kill(popen_via_context_manager)
|
|
|
|
|
2010-02-27 18:12:37 -04:00
|
|
|
def test_getoutput(self):
|
|
|
|
self.assertEqual(subprocess.getoutput('echo xyzzy'), 'xyzzy')
|
|
|
|
self.assertEqual(subprocess.getstatusoutput('echo xyzzy'),
|
|
|
|
(0, 'xyzzy'))
|
|
|
|
|
|
|
|
# we use mkdtemp in the next line to create an empty directory
|
|
|
|
# under our exclusive control; from that, we can invent a pathname
|
|
|
|
# that we _know_ won't exist. This is guaranteed to fail.
|
|
|
|
dir = None
|
|
|
|
try:
|
|
|
|
dir = tempfile.mkdtemp()
|
|
|
|
name = os.path.join(dir, "foo")
|
2013-11-03 08:53:17 -04:00
|
|
|
status, output = subprocess.getstatusoutput(
|
2018-06-25 21:11:06 -03:00
|
|
|
("type " if mswindows else "cat ") + name)
|
2010-02-27 18:12:37 -04:00
|
|
|
self.assertNotEqual(status, 0)
|
|
|
|
finally:
|
|
|
|
if dir is not None:
|
|
|
|
os.rmdir(dir)
|
2009-07-03 23:46:54 -03:00
|
|
|
|
2015-04-07 19:57:54 -03:00
|
|
|
def test__all__(self):
|
|
|
|
"""Ensure that __all__ is populated properly."""
|
2016-04-16 20:42:37 -03:00
|
|
|
intentionally_excluded = {"list2cmdline", "Handle"}
|
2015-04-07 19:57:54 -03:00
|
|
|
exported = set(subprocess.__all__)
|
|
|
|
possible_exports = set()
|
|
|
|
import types
|
|
|
|
for name, value in subprocess.__dict__.items():
|
|
|
|
if name.startswith('_'):
|
|
|
|
continue
|
|
|
|
if isinstance(value, (types.ModuleType,)):
|
|
|
|
continue
|
|
|
|
possible_exports.add(name)
|
|
|
|
self.assertEqual(exported, possible_exports - intentionally_excluded)
|
|
|
|
|
|
|
|
|
2016-04-16 08:28:10 -03:00
|
|
|
@unittest.skipUnless(hasattr(selectors, 'PollSelector'),
|
|
|
|
"Test needs selectors.PollSelector")
|
|
|
|
class ProcessTestCaseNoPoll(ProcessTestCase):
|
|
|
|
def setUp(self):
|
|
|
|
self.orig_selector = subprocess._PopenSelector
|
|
|
|
subprocess._PopenSelector = selectors.SelectSelector
|
|
|
|
ProcessTestCase.setUp(self)
|
|
|
|
|
|
|
|
def tearDown(self):
|
|
|
|
subprocess._PopenSelector = self.orig_selector
|
|
|
|
ProcessTestCase.tearDown(self)
|
|
|
|
|
2009-07-03 23:46:54 -03:00
|
|
|
|
2018-06-25 21:11:06 -03:00
|
|
|
@unittest.skipUnless(mswindows, "Windows-specific tests")
|
2010-08-11 11:20:40 -03:00
|
|
|
class CommandsWithSpaces (BaseTestCase):
|
|
|
|
|
|
|
|
def setUp(self):
|
|
|
|
super().setUp()
|
2015-09-28 07:33:14 -03:00
|
|
|
f, fname = tempfile.mkstemp(".py", "te st")
|
2010-08-11 11:20:40 -03:00
|
|
|
self.fname = fname.lower ()
|
|
|
|
os.write(f, b"import sys;"
|
|
|
|
b"sys.stdout.write('%d %s' % (len(sys.argv), [a.lower () for a in sys.argv]))"
|
|
|
|
)
|
|
|
|
os.close(f)
|
|
|
|
|
|
|
|
def tearDown(self):
|
|
|
|
os.remove(self.fname)
|
|
|
|
super().tearDown()
|
|
|
|
|
|
|
|
def with_spaces(self, *args, **kwargs):
|
|
|
|
kwargs['stdout'] = subprocess.PIPE
|
|
|
|
p = subprocess.Popen(*args, **kwargs)
|
2016-05-20 07:43:15 -03:00
|
|
|
with p:
|
|
|
|
self.assertEqual(
|
|
|
|
p.stdout.read ().decode("mbcs"),
|
|
|
|
"2 [%r, 'ab cd']" % self.fname
|
|
|
|
)
|
2010-08-11 11:20:40 -03:00
|
|
|
|
|
|
|
def test_shell_string_with_spaces(self):
|
|
|
|
# call() function with string argument with spaces on Windows
|
2010-08-13 17:42:57 -03:00
|
|
|
self.with_spaces('"%s" "%s" "%s"' % (sys.executable, self.fname,
|
|
|
|
"ab cd"), shell=1)
|
2010-08-11 11:20:40 -03:00
|
|
|
|
|
|
|
def test_shell_sequence_with_spaces(self):
|
|
|
|
# call() function with sequence argument with spaces on Windows
|
2010-08-13 17:42:57 -03:00
|
|
|
self.with_spaces([sys.executable, self.fname, "ab cd"], shell=1)
|
2010-08-11 11:20:40 -03:00
|
|
|
|
|
|
|
def test_noshell_string_with_spaces(self):
|
|
|
|
# call() function with string argument with spaces on Windows
|
|
|
|
self.with_spaces('"%s" "%s" "%s"' % (sys.executable, self.fname,
|
|
|
|
"ab cd"))
|
|
|
|
|
|
|
|
def test_noshell_sequence_with_spaces(self):
|
|
|
|
# call() function with sequence argument with spaces on Windows
|
|
|
|
self.with_spaces([sys.executable, self.fname, "ab cd"])
|
|
|
|
|
2010-12-02 22:46:02 -04:00
|
|
|
|
2012-02-20 16:34:57 -04:00
|
|
|
class ContextManagerTests(BaseTestCase):
|
2010-12-02 22:46:02 -04:00
|
|
|
|
|
|
|
def test_pipe(self):
|
|
|
|
with subprocess.Popen([sys.executable, "-c",
|
|
|
|
"import sys;"
|
|
|
|
"sys.stdout.write('stdout');"
|
|
|
|
"sys.stderr.write('stderr');"],
|
|
|
|
stdout=subprocess.PIPE,
|
|
|
|
stderr=subprocess.PIPE) as proc:
|
|
|
|
self.assertEqual(proc.stdout.read(), b"stdout")
|
|
|
|
self.assertStderrEqual(proc.stderr.read(), b"stderr")
|
|
|
|
|
|
|
|
self.assertTrue(proc.stdout.closed)
|
|
|
|
self.assertTrue(proc.stderr.closed)
|
|
|
|
|
|
|
|
def test_returncode(self):
|
|
|
|
with subprocess.Popen([sys.executable, "-c",
|
|
|
|
"import sys; sys.exit(100)"]) as proc:
|
2011-05-12 01:42:08 -03:00
|
|
|
pass
|
|
|
|
# __exit__ calls wait(), so the returncode should be set
|
2010-12-02 22:46:02 -04:00
|
|
|
self.assertEqual(proc.returncode, 100)
|
|
|
|
|
|
|
|
def test_communicate_stdin(self):
|
|
|
|
with subprocess.Popen([sys.executable, "-c",
|
|
|
|
"import sys;"
|
|
|
|
"sys.exit(sys.stdin.read() == 'context')"],
|
|
|
|
stdin=subprocess.PIPE) as proc:
|
|
|
|
proc.communicate(b"context")
|
|
|
|
self.assertEqual(proc.returncode, 1)
|
|
|
|
|
|
|
|
def test_invalid_args(self):
|
2018-01-25 14:06:05 -04:00
|
|
|
with self.assertRaises(NONEXISTING_ERRORS):
|
2017-08-21 18:51:31 -03:00
|
|
|
with subprocess.Popen(NONEXISTING_CMD,
|
2010-12-02 22:46:02 -04:00
|
|
|
stdout=subprocess.PIPE,
|
|
|
|
stderr=subprocess.PIPE) as proc:
|
|
|
|
pass
|
|
|
|
|
2015-02-28 06:43:08 -04:00
|
|
|
def test_broken_pipe_cleanup(self):
|
|
|
|
"""Broken pipe error should not prevent wait() (Issue 21619)"""
|
2019-10-14 17:40:32 -03:00
|
|
|
proc = subprocess.Popen(ZERO_RETURN_CMD,
|
2015-03-04 21:38:41 -04:00
|
|
|
stdin=subprocess.PIPE,
|
|
|
|
bufsize=support.PIPE_MAX_SIZE*2)
|
2015-03-08 04:16:40 -03:00
|
|
|
proc = proc.__enter__()
|
|
|
|
# Prepare to send enough data to overflow any OS pipe buffering and
|
|
|
|
# guarantee a broken pipe error. Data is held in BufferedWriter
|
|
|
|
# buffer until closed.
|
|
|
|
proc.stdin.write(b'x' * support.PIPE_MAX_SIZE)
|
2015-02-28 06:43:08 -04:00
|
|
|
self.assertIsNone(proc.returncode)
|
2015-03-08 04:16:40 -03:00
|
|
|
# EPIPE expected under POSIX; EINVAL under Windows
|
2015-02-28 07:27:54 -04:00
|
|
|
self.assertRaises(OSError, proc.__exit__, None, None, None)
|
2015-03-08 04:16:40 -03:00
|
|
|
self.assertEqual(proc.returncode, 0)
|
2015-02-28 06:43:08 -04:00
|
|
|
self.assertTrue(proc.stdin.closed)
|
|
|
|
|
2010-12-02 22:46:02 -04:00
|
|
|
|
2004-10-12 12:26:28 -03:00
|
|
|
if __name__ == "__main__":
|
2011-03-15 15:55:17 -03:00
|
|
|
unittest.main()
|