summaryrefslogtreecommitdiffstats
path: root/Lib/test/test_signal.py
Commit message (Collapse)AuthorAgeFilesLines
...
| * Issue #12469: Run "wakeup" signal tests in subprocess to run the test in aVictor Stinner2011-07-041-37/+68
| | | | | | | | | | fresh process with only one thread and to not change signal handling of the parent process.
* | (merge 3.2) Issue #12363: increase the timeout of siginterrupt() testsVictor Stinner2011-07-011-4/+4
|\ \ | |/ | | | | | | | | | | | | Move also the "ready" trigger after the installation of the signal handler and the call to siginterrupt(). Use a timeout of 5 seconds instead of 3. Two seconds are supposed to be enough, but some of our buildbots are really slow (especially the FreeBSD 6 VM).
| * Issue #12363: increase the timeout of siginterrupt() testsVictor Stinner2011-07-011-5/+5
| | | | | | | | | | | | | | | | Move also the "ready" trigger after the installation of the signal handler and the call to siginterrupt(). Use a timeout of 5 seconds instead of 3. Two seconds are supposed to be enough, but some of our buildbots are really slow (especially the FreeBSD 6 VM).
| * Issue #12363: improve siginterrupt() testsVictor Stinner2011-07-011-89/+86
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Backport commits 968b9ff9a059 and aff0a7b0cb12 from the default branch to 3.2 branch. Extract of the changelog messages: "The previous tests used time.sleep() to synchronize two processes. If the host was too slow, the test could fail. The new tests only use one process, but they use a subprocess to: - have only one thread - have a timeout on the blocking read (select cannot be used in the test, select always fail with EINTR, the kernel doesn't restart it) - not touch signal handling of the parent process" and "Add a basic synchronization code between the child and the parent processes: the child writes "ready" to stdout." I replaced .communicate(timeout=3.0) by an explicit waiting loop using Popen.poll().
* | Issue #12303: run sig*wait*() tests in a subprocesssVictor Stinner2011-06-291-56/+81
| | | | | | | | | | | | | | ... instead of using fork(): sig*wait*() functions behave differently (not correctly) after a fork, especially on FreeBSD 6. Skip also test_sigtimedwait_poll() on FreeBSD 6 because of a kernel bug.
* | Fix test_signal on Windows after #12303.Ross Lagerwall2011-06-251-6/+6
| |
* | Issue #12303: Add sigwaitinfo() and sigtimedwait() to the signal module.Ross Lagerwall2011-06-251-16/+83
| |
* | Issue #12392: fix thread initialization on FreeBSD 6Victor Stinner2011-06-241-0/+25
| | | | | | | | | | | | | | | | On FreeBSD6, pthread_kill() doesn't work on the main thread before the creation of the first thread. Create therefore a dummy thread (no-op) a startup to initialize the pthread library. Add also a test for this use case, test written by Charles-François Natali.
* | Issue #12363: improve siginterrupt() testsVictor Stinner2011-06-221-0/+7
| | | | | | | | | | Add a basic synchronization code between the child and the parent processes: the child writes "ready" to stdout.
* | Close #12363: fix a race condition in siginterrupt() testsVictor Stinner2011-06-201-74/+50
| | | | | | | | | | | | | | | | | | | | | | | | The previous tests used time.sleep() to synchronize two processes. If the host was too slow, the test could fail. The new tests only use one process, but they use a subprocess to: - have only one thread - have a timeout on the blocking read (select cannot be used in the test, select always fail with EINTR, the kernel doesn't restart it) - not touch signal handling of the parent process
* | Issue #12316: Fix sigwait() test using threadsVictor Stinner2011-06-131-29/+41
| | | | | | | | | | Spawn a new process instead of using fork(). Patch written by Charles-François Natali.
* | Issue #8407: skip sigwait() tests if pthread_sigmask() is missingVictor Stinner2011-06-101-0/+2
| | | | | | | | | | The new tests now requires pthread_sigmask(). Skip the test if the function is missing, e.g. if Python is compiled without threads.
* | Issue #8407: write error message on sigwait test failureVictor Stinner2011-06-101-3/+4
| |
* | Issue #8407: Make signal.sigwait() tests more reliableVictor Stinner2011-06-101-14/+53
| | | | | | | | | | | | | | Block the signal before calling sigwait(). Use os.fork() to ensure that we have only one thread. Initial patch written by Charles-François Natali.
* | Issue #8407: signal.sigwait() releases the GILVictor Stinner2011-06-091-0/+19
| | | | | | | | Initial patch by Charles-François Natali.
* | Issue #8407: test_signal doesn't check signal delivery orderVictor Stinner2011-05-311-5/+6
| | | | | | | | Tthe signal delivery order is not portable or reliable.
* | Close #12028: Make threading._get_ident() public, rename it toVictor Stinner2011-05-301-2/+2
| | | | | | | | | | threading.get_ident() and document it. This function was used by _thread.get_ident().
* | Issue #8407: Fix the signal handler of the signal module: if it is calledVictor Stinner2011-05-251-4/+32
| | | | | | | | twice, it now writes the number of the second signal into the wakeup fd.
* | Issue #8407: Remove debug code from test_signalVictor Stinner2011-05-081-37/+10
| | | | | | | | I don't think that we still need it.
* | Issue #8407: The signal handler writes the signal number as a single byteVictor Stinner2011-05-081-0/+15
| | | | | | | | | | instead of a nul byte into the wakeup file descriptor. So it is possible to wait more than one signal and know which signals were raised.
* | Issue #8407: Add pthread_kill(), sigpending() and sigwait() functions to theVictor Stinner2011-05-071-33/+108
| | | | | | | | signal module.
* | Issue #8407: signal.pthread_sigmask() returns a set instead of a listVictor Stinner2011-05-041-15/+18
| | | | | | | | Update the doc. Refactor also related tests.
* | Issue #11998, issue #8407: workaround _tkinter issue in test_signalVictor Stinner2011-05-041-3/+16
| | | | | | | | | | | | The _tkinter module loads the Tcl library which creates a thread waiting events in select(). This thread receives signals blocked by all other threads. We cannot test blocked signals if the _tkinter module is loaded.
* | Issue #8407: disable faulthandler timeout thread on all platformsVictor Stinner2011-05-031-14/+13
| | | | | | | | The problem is not specific to Mac OS X.
* | Issue #8407: pthread_sigmask() checks immediatly if signal handlers have beenVictor Stinner2011-05-031-14/+16
| | | | | | | | | | | | called. The test checks that SIG_UNBLOCK calls immediatly the signal handler of the pending SIGUSR1. Improve also the tests using an exception (division by zero) instead of a flag (a function attribute).
* | Issue #8407: Fix pthread_sigmask() tests on Mac OS XVictor Stinner2011-05-031-0/+15
| | | | | | | | | | Disable faulthandler timeout thread on Mac OS X: it interacts with pthread_sigmask() tests.
* | Issue #8407, issue #11859: Add signal.pthread_sigmask() function to fetchVictor Stinner2011-04-301-1/+55
|/ | | | | | | | | and/or change the signal mask of the calling thread. Fix also tests of test_io using threads and an alarm: use pthread_sigmask() to ensure that the SIGALRM signal is received by the main thread. Original patch written by Jean-Paul Calderone.
* Call reap_children() where appropriateAntoine Pitrou2011-03-201-3/+6
|
* Merged revisions 86596 via svnmerge fromEzio Melotti2010-11-211-6/+6
| | | | | | | | | | svn+ssh://pythondev@svn.python.org/python/branches/py3k ........ r86596 | ezio.melotti | 2010-11-20 21:04:17 +0200 (Sat, 20 Nov 2010) | 1 line #9424: Replace deprecated assert* methods in the Python test suite. ........
* Merged revisions 85586-85587,85596-85598 via svnmerge fromGregory P. Smith2010-10-171-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | svn+ssh://pythondev@svn.python.org/python/branches/py3k ........ r85586 | gregory.p.smith | 2010-10-16 17:17:24 -0700 (Sat, 16 Oct 2010) | 2 lines fix for netbsd. ........ r85587 | gregory.p.smith | 2010-10-16 17:43:10 -0700 (Sat, 16 Oct 2010) | 3 lines applying netbsd-wizs-mod.patch from issue5510 - fixes for netbsd (and dragonflybsd?) ........ r85596 | gregory.p.smith | 2010-10-16 19:14:36 -0700 (Sat, 16 Oct 2010) | 6 lines Fix multiprocessing Semaphore's on netbsd5. SEM_VALUE_MAX is defined as (~0U) on NetBSD which was causing it to appear as -1 when used as a signed int for _multprocessing.SemLock.SEM_VALUE_MAX. This works around the problem by substituting INT_MAX on systems where it appears negative when used as an int. ........ r85597 | gregory.p.smith | 2010-10-16 19:57:19 -0700 (Sat, 16 Oct 2010) | 2 lines skip test_itimer_virtual on NetBSD to prevent the test suite from hanging. ........ r85598 | gregory.p.smith | 2010-10-16 20:09:12 -0700 (Sat, 16 Oct 2010) | 2 lines Avoid hanging the test on netbsd5. ........
* Merged revisions 85140 via svnmerge fromBrian Curtin2010-10-011-6/+6
| | | | | | | | | | | | svn+ssh://pythondev@svn.python.org/python/branches/py3k ........ r85140 | brian.curtin | 2010-10-01 09:49:24 -0500 (Fri, 01 Oct 2010) | 4 lines Fix #10003. Add SIGBREAK to the set of valid signals on Windows. This fixes a regression noticed by bzr, introduced by issue #9324. ........
* Merged revisions 84556 via svnmerge fromBrian Curtin2010-09-061-3/+2
| | | | | | | | | | | | | | svn+ssh://pythondev@svn.python.org/python/branches/py3k ........ r84556 | brian.curtin | 2010-09-06 11:04:10 -0500 (Mon, 06 Sep 2010) | 7 lines Clean up the fix to #9324 with some of the suggestions raised on python-dev in response to the original checkin. Move the validation from the original loop into a switch statement, and adjust a platform check in the tests. ........
* Merged revisions 83771 via svnmerge fromBrian Curtin2010-08-071-6/+6
| | | | | | | | | | | svn+ssh://pythondev@svn.python.org/python/branches/py3k ........ r83771 | brian.curtin | 2010-08-06 22:47:21 -0500 (Fri, 06 Aug 2010) | 3 lines Fix an assertRaises situation and typo. Also pass all tests to run_unittest rather than do it by platform -- the proper skips are in place already. ........
* Merged revisions 83763 via svnmerge fromBrian Curtin2010-08-061-5/+28
| | | | | | | | | | | svn+ssh://pythondev@svn.python.org/python/branches/py3k ........ r83763 | brian.curtin | 2010-08-06 14:27:32 -0500 (Fri, 06 Aug 2010) | 3 lines Fix #9324: Add parameter validation to signal.signal on Windows in order to prevent crashes. ........
* Merged revisions 81201 via svnmerge fromBenjamin Peterson2010-05-151-4/+4
| | | | | | | | | | | | | | | | | svn+ssh://pythondev@svn.python.org/python/branches/py3k ................ r81201 | benjamin.peterson | 2010-05-15 12:52:12 -0500 (Sat, 15 May 2010) | 9 lines Merged revisions 81200 via svnmerge from svn+ssh://pythondev@svn.python.org/python/trunk ........ r81200 | benjamin.peterson | 2010-05-15 12:48:55 -0500 (Sat, 15 May 2010) | 1 line use TestCase skip method ........ ................
* Merged revisions 81188 via svnmerge fromStefan Krah2010-05-151-6/+4
| | | | | | | | | | | | | | | | | | svn+ssh://pythondev@svn.python.org/python/branches/py3k ................ r81188 | stefan.krah | 2010-05-15 11:41:27 +0200 (Sat, 15 May 2010) | 10 lines Merged revisions 81185 via svnmerge from svn+ssh://pythondev@svn.python.org/python/trunk ........ r81185 | stefan.krah | 2010-05-15 11:31:08 +0200 (Sat, 15 May 2010) | 4 lines If the timeout is exceeded, count the tests as skipped instead of just issuing a warning. ........ ................
* Merged revisions 81016 via svnmerge fromJean-Paul Calderone2010-05-091-18/+75
| | | | | | | | | | | | | | | | | svn+ssh://pythondev@svn.python.org/python/branches/py3k ................ r81016 | jean-paul.calderone | 2010-05-08 23:18:57 -0400 (Sat, 08 May 2010) | 9 lines Merged revisions 81007 via svnmerge from svn+ssh://pythondev@svn.python.org/python/trunk ........ r81007 | jean-paul.calderone | 2010-05-08 16:06:02 -0400 (Sat, 08 May 2010) | 1 line Skip signal handler re-installation if it is not necessary. Issue 8354. ........ ................
* Merged revisions 80296 via svnmerge fromR. David Murray2010-04-211-0/+10
| | | | | | | | | | | | | | | | | | | | | | svn+ssh://pythondev@svn.python.org/python/branches/py3k ................ r80296 | r.david.murray | 2010-04-20 21:51:57 -0400 (Tue, 20 Apr 2010) | 14 lines Merged revisions 80144 via svnmerge from svn+ssh://pythondev@svn.python.org/python/trunk ........ r80144 | r.david.murray | 2010-04-17 01:26:26 -0400 (Sat, 17 Apr 2010) | 8 lines Issue #3864: Skip three test_signal tests on freebsd6 due to platform bug. Two itimer tests and an interprocess signal test fail on FreeBSD 6 if any test that starts a thread runs before test_signal. Since FreeBSD7 does not show this behavior, the bug is most likely a platform bug, so this patch just skips the failing tests on freebsd6. ........ ................
* Merged revisions 80240 via svnmerge fromStefan Krah2010-04-201-8/+10
| | | | | | | | | | | | | | | | | | | | | | | svn+ssh://pythondev@svn.python.org/python/branches/py3k ................ r80240 | stefan.krah | 2010-04-20 10:13:03 +0200 (Tue, 20 Apr 2010) | 15 lines Merged revisions 80238 via svnmerge from svn+ssh://pythondev@svn.python.org/python/trunk ........ r80238 | stefan.krah | 2010-04-20 09:59:10 +0200 (Tue, 20 Apr 2010) | 9 lines 1) The timeout in the itimer tests was too low for slow or heavily loaded machines. 2) Even with the increased timeout, the OS does not guarantee that a process will get a certain amount of virtual time in 60s, so the failure is changed to a diagnostic. ........ ................
* Merged revisions 76185 via svnmerge fromMark Dickinson2009-11-091-1/+3
| | | | | | | | | | | | | | | | | svn+ssh://pythondev@www.python.org/python/branches/py3k ................ r76185 | mark.dickinson | 2009-11-09 20:08:57 +0000 (Mon, 09 Nov 2009) | 9 lines Merged revisions 76182 via svnmerge from svn+ssh://pythondev@svn.python.org/python/trunk ........ r76182 | mark.dickinson | 2009-11-09 19:54:51 +0000 (Mon, 09 Nov 2009) | 1 line Add extra information to a test_signal failure message to aid diagnosis of buildbot failure. ........ ................
* Merged revisions 75988 via svnmerge fromMark Dickinson2009-10-311-2/+10
| | | | | | | | | | | | | | | | | svn+ssh://pythondev@svn.python.org/python/branches/py3k ................ r75988 | mark.dickinson | 2009-10-31 10:38:43 +0000 (Sat, 31 Oct 2009) | 9 lines Merged revisions 75986 via svnmerge from svn+ssh://pythondev@svn.python.org/python/trunk ........ r75986 | mark.dickinson | 2009-10-31 10:36:06 +0000 (Sat, 31 Oct 2009) | 2 lines Issue #7042: Use a better mechanism for testing timers in test_signal. ........ ................
* Merged revisions 75238 via svnmerge fromMark Dickinson2009-10-041-0/+2
| | | | | | | | | | | | | | | | | | | svn+ssh://pythondev@www.python.org/python/branches/py3k ................ r75238 | mark.dickinson | 2009-10-04 19:43:54 +0100 (Sun, 04 Oct 2009) | 11 lines Merged revisions 75236 via svnmerge from svn+ssh://pythondev@svn.python.org/python/trunk ........ r75236 | mark.dickinson | 2009-10-04 19:38:39 +0100 (Sun, 04 Oct 2009) | 4 lines Issue #7042: Fix test_signal failure on OS X 10.6 64-bit builds (and also, with luck, on the x86 FreeBSD buildbot), by making sure that some user time is used in test_itimer_virtual. ........ ................
* Merged revisions 73715 via svnmerge fromGeorg Brandl2009-08-131-3/+3
| | | | | | | | | | svn+ssh://svn.python.org/python/branches/py3k ........ r73715 | benjamin.peterson | 2009-07-01 01:06:06 +0200 (Mi, 01 Jul 2009) | 1 line convert old fail* assertions to assert* ........
* Remove unused importRaymond Hettinger2009-06-181-1/+1
|
* Use new form of with-statement instead of contextlib.nested().Raymond Hettinger2009-06-041-2/+2
|
* Merged revisions ↵Benjamin Peterson2009-03-281-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 70554,70588-70589,70598,70605,70611-70621,70623-70624,70626-70627 via svnmerge from svn+ssh://pythondev@svn.python.org/python/trunk ........ r70554 | benjamin.peterson | 2009-03-23 16:25:15 -0500 (Mon, 23 Mar 2009) | 1 line complain when there's no last exception ........ r70588 | benjamin.peterson | 2009-03-24 17:56:32 -0500 (Tue, 24 Mar 2009) | 1 line fix newline issue in test summary ........ r70589 | benjamin.peterson | 2009-03-24 18:07:07 -0500 (Tue, 24 Mar 2009) | 1 line another style nit ........ r70598 | benjamin.peterson | 2009-03-25 16:24:04 -0500 (Wed, 25 Mar 2009) | 1 line add shorthands for expected failures and unexpected success ........ r70605 | benjamin.peterson | 2009-03-26 11:32:23 -0500 (Thu, 26 Mar 2009) | 1 line remove uneeded function ........ r70611 | benjamin.peterson | 2009-03-26 13:35:37 -0500 (Thu, 26 Mar 2009) | 1 line add much better tests for python version information parsing ........ r70612 | benjamin.peterson | 2009-03-26 13:55:48 -0500 (Thu, 26 Mar 2009) | 1 line more and more implementations now support sys.subversion ........ r70613 | benjamin.peterson | 2009-03-26 13:58:30 -0500 (Thu, 26 Mar 2009) | 1 line roll old test in with new one ........ r70614 | benjamin.peterson | 2009-03-26 14:09:21 -0500 (Thu, 26 Mar 2009) | 1 line add support for PyPy ........ r70615 | benjamin.peterson | 2009-03-26 14:58:18 -0500 (Thu, 26 Mar 2009) | 5 lines add some useful utilities for skipping tests with unittest's new skipping ability most significantly apply a modified portion of the patch from #4242 with patches for skipping implementation details ........ r70616 | benjamin.peterson | 2009-03-26 15:05:50 -0500 (Thu, 26 Mar 2009) | 1 line rename TestCase.skip() to skipTest() because it causes annoying problems with trial #5571 ........ r70617 | benjamin.peterson | 2009-03-26 15:17:27 -0500 (Thu, 26 Mar 2009) | 1 line apply the second part of #4242's patch; classify all the implementation details in test_descr ........ r70618 | benjamin.peterson | 2009-03-26 15:48:25 -0500 (Thu, 26 Mar 2009) | 1 line remove test_support.TestSkipped and just use unittest.SkipTest ........ r70619 | benjamin.peterson | 2009-03-26 15:49:40 -0500 (Thu, 26 Mar 2009) | 1 line fix naming ........ r70620 | benjamin.peterson | 2009-03-26 16:10:30 -0500 (Thu, 26 Mar 2009) | 1 line fix incorrect auto-translation of TestSkipped -> unittest.SkipTest ........ r70621 | benjamin.peterson | 2009-03-26 16:11:16 -0500 (Thu, 26 Mar 2009) | 1 line must pass argument to get expected behavior ;) ........ r70623 | benjamin.peterson | 2009-03-26 16:30:10 -0500 (Thu, 26 Mar 2009) | 1 line add missing import ........ r70624 | benjamin.peterson | 2009-03-26 16:30:54 -0500 (Thu, 26 Mar 2009) | 1 line ** is required here ........ r70626 | benjamin.peterson | 2009-03-26 16:40:29 -0500 (Thu, 26 Mar 2009) | 1 line update email tests to use SkipTest ........ r70627 | benjamin.peterson | 2009-03-26 16:44:43 -0500 (Thu, 26 Mar 2009) | 1 line fix another name ........
* #2621 rename test.test_support to test.supportBenjamin Peterson2008-05-201-13/+13
|
* Merged revisions ↵Christian Heimes2008-04-091-5/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 62194,62197-62198,62204-62205,62214,62219-62221,62227,62229-62231,62233-62235,62237-62239 via svnmerge from svn+ssh://pythondev@svn.python.org/python/trunk ........ r62194 | jeffrey.yasskin | 2008-04-07 01:04:28 +0200 (Mon, 07 Apr 2008) | 7 lines Add enough debugging information to diagnose failures where the HandlerBException is ignored, and fix one such problem, where it was thrown during the __del__ method of the previous Popen object. We may want to find a better way of printing verbose information so it's not spammy when the test passes. ........ r62197 | mark.hammond | 2008-04-07 03:53:39 +0200 (Mon, 07 Apr 2008) | 2 lines Issue #2513: enable 64bit cross compilation on windows. ........ r62198 | mark.hammond | 2008-04-07 03:59:40 +0200 (Mon, 07 Apr 2008) | 2 lines correct heading underline for new "Cross-compiling on Windows" section ........ r62204 | gregory.p.smith | 2008-04-07 08:33:21 +0200 (Mon, 07 Apr 2008) | 4 lines Use the new PyFile_IncUseCount & PyFile_DecUseCount calls appropriatly within the standard library. These modules use PyFile_AsFile and later release the GIL while operating on the previously returned FILE*. ........ r62205 | mark.summerfield | 2008-04-07 09:39:23 +0200 (Mon, 07 Apr 2008) | 4 lines changed "2500 components" to "several thousand" since the number keeps growning:-) ........ r62214 | georg.brandl | 2008-04-07 20:51:59 +0200 (Mon, 07 Apr 2008) | 2 lines #2525: update timezone info examples in the docs. ........ r62219 | andrew.kuchling | 2008-04-08 01:57:07 +0200 (Tue, 08 Apr 2008) | 1 line Write PEP 3127 section; add items ........ r62220 | andrew.kuchling | 2008-04-08 01:57:21 +0200 (Tue, 08 Apr 2008) | 1 line Typo fix ........ r62221 | andrew.kuchling | 2008-04-08 03:33:10 +0200 (Tue, 08 Apr 2008) | 1 line Typographical fix: 32bit -> 32-bit, 64bit -> 64-bit ........ r62227 | andrew.kuchling | 2008-04-08 23:22:53 +0200 (Tue, 08 Apr 2008) | 1 line Add items ........ r62229 | amaury.forgeotdarc | 2008-04-08 23:27:42 +0200 (Tue, 08 Apr 2008) | 7 lines Issue2564: Prevent a hang in "import test.autotest", which runs the entire test suite as a side-effect of importing the module. - in test_capi, a thread tried to import other modules - re.compile() imported sre_parse again on every call. ........ r62230 | amaury.forgeotdarc | 2008-04-08 23:51:57 +0200 (Tue, 08 Apr 2008) | 2 lines Prevent an error when inspect.isabstract() is called with something else than a new-style class. ........ r62231 | amaury.forgeotdarc | 2008-04-09 00:07:05 +0200 (Wed, 09 Apr 2008) | 8 lines Issue 2408: remove the _types module It was only used as a helper in types.py to access types (GetSetDescriptorType and MemberDescriptorType), when they can easily be obtained with python code. These expressions even work with Jython. I don't know what the future of the types module is; (cf. discussion in http://bugs.python.org/issue1605 ) at least this change makes it simpler. ........ r62233 | amaury.forgeotdarc | 2008-04-09 01:10:07 +0200 (Wed, 09 Apr 2008) | 2 lines Add a NEWS entry for previous checkin ........ r62234 | trent.nelson | 2008-04-09 01:47:30 +0200 (Wed, 09 Apr 2008) | 37 lines - Issue #2550: The approach used by client/server code for obtaining ports to listen on in network-oriented tests has been refined in an effort to facilitate running multiple instances of the entire regression test suite in parallel without issue. test_support.bind_port() has been fixed such that it will always return a unique port -- which wasn't always the case with the previous implementation, especially if socket options had been set that affected address reuse (i.e. SO_REUSEADDR, SO_REUSEPORT). The new implementation of bind_port() will actually raise an exception if it is passed an AF_INET/SOCK_STREAM socket with either the SO_REUSEADDR or SO_REUSEPORT socket option set. Furthermore, if available, bind_port() will set the SO_EXCLUSIVEADDRUSE option on the socket it's been passed. This currently only applies to Windows. This option prevents any other sockets from binding to the host/port we've bound to, thus removing the possibility of the 'non-deterministic' behaviour, as Microsoft puts it, that occurs when a second SOCK_STREAM socket binds and accepts to a host/port that's already been bound by another socket. The optional preferred port parameter to bind_port() has been removed. Under no circumstances should tests be hard coding ports! test_support.find_unused_port() has also been introduced, which will pass a temporary socket object to bind_port() in order to obtain an unused port. The temporary socket object is then closed and deleted, and the port is returned. This method should only be used for obtaining an unused port in order to pass to an external program (i.e. the -accept [port] argument to openssl's s_server mode) or as a parameter to a server-oriented class that doesn't give you direct access to the underlying socket used. Finally, test_support.HOST has been introduced, which should be used for the host argument of any relevant socket calls (i.e. bind and connect). The following tests were updated to following the new conventions: test_socket, test_smtplib, test_asyncore, test_ssl, test_httplib, test_poplib, test_ftplib, test_telnetlib, test_socketserver, test_asynchat and test_socket_ssl. It is now possible for multiple instances of the regression test suite to run in parallel without issue. ........ r62235 | gregory.p.smith | 2008-04-09 02:25:17 +0200 (Wed, 09 Apr 2008) | 3 lines Fix zlib crash from zlib.decompressobj().flush(val) when val was not positive. It tried to allocate negative or zero memory. That fails. ........ r62237 | trent.nelson | 2008-04-09 02:34:53 +0200 (Wed, 09 Apr 2008) | 1 line Fix typo with regards to self.PORT shadowing class variables with the same name. ........ r62238 | andrew.kuchling | 2008-04-09 03:08:32 +0200 (Wed, 09 Apr 2008) | 1 line Add items ........ r62239 | jerry.seutter | 2008-04-09 07:07:58 +0200 (Wed, 09 Apr 2008) | 1 line Changed test so it no longer runs as a side effect of importing. ........
* Merged revisions ↵Neal Norwitz2008-04-051-3/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 61440-61441,61443,61445-61448,61451-61452,61455-61457,61459-61464,61466-61467,61469-61470,61476-61477,61479,61481-61482,61485,61487,61490,61493-61494,61497,61499-61502,61505-61506,61508,61511-61514,61519,61521-61522,61530-61531,61533-61537,61541-61555,61557-61558,61561-61562,61566-61569,61572-61574,61578-61579,61583-61584,61588-61589,61592,61594,61598-61601,61603-61604,61607-61612,61617,61619-61620,61624,61626,61628-61630,61635-61638,61640-61643,61645,61648,61653-61655,61659-61662,61664,61666,61668-61671,61673,61675,61679-61680,61682,61685-61686,61689-61695,61697-61699,61701-61703,61706,61710,61713,61717,61723,61726-61730,61736,61738,61740,61742,61745-61752,61754-61760,61762-61764,61768,61770-61772,61774-61775,61784-61787,61789-61792,61794-61795,61797-61806,61808-61809,61811-61812,61814-61819,61824,61826-61833,61835-61840,61843-61845,61848,61850,61854-61862,61865-61866,61868,61872-61873,61876-61877,61883-61888,61890-61891,61893-61899,61901-61903,61905-61912,61914,61917,61920-61921,61927,61930,61932-61934,61939,61941-61942,61944-61951,61955,61960-61963,61980,61982-61983,61991,61994-61996,62001-62003,62008-62010,62016-62017,62022,62024,62027,62031-62034,62041,62045-62046,62055-62058,62060-62066,62068-62074,62076-62079,62081-62083,62086-62089,62092-62094,62098,62101,62104,62106-62109,62115-62122,62124-62125,62127-62128,62130,62132,62134-62137,62139-62142,62144,62146-62148,62150-62152,62155-62161 via svnmerge from svn+ssh://pythondev@svn.python.org/python/trunk ........ r62127 | trent.nelson | 2008-04-03 08:39:17 -0700 (Thu, 03 Apr 2008) | 1 line Remove the building of Berkeley DB step; _bsddb44.vcproj takes care of this for us now. ........ r62136 | amaury.forgeotdarc | 2008-04-03 16:07:55 -0700 (Thu, 03 Apr 2008) | 9 lines #1733757: the interpreter would hang on shutdown, if the function set by sys.settrace calls threading.currentThread. The correction somewhat improves the code, but it was close. Many thanks to the "with" construct, which turns python code into C calls. I wonder if it is not better to sys.settrace(None) just after running the __main__ module and before finalization. ........ r62141 | jeffrey.yasskin | 2008-04-03 21:51:19 -0700 (Thu, 03 Apr 2008) | 5 lines Doh! os.read() raises an OSError, not an IOError when it's interrupted. And fix some flakiness in test_itimer_prof, which could detect that the timer had reached 0 before the signal arrived announcing that fact. ........ r62142 | fred.drake | 2008-04-03 22:41:30 -0700 (Thu, 03 Apr 2008) | 4 lines - Issue #2385: distutils.core.run_script() makes __file__ available, so the controlled environment will more closely mirror the typical script environment. This supports setup.py scripts that refer to data files. ........ r62147 | fred.drake | 2008-04-04 04:31:14 -0700 (Fri, 04 Apr 2008) | 6 lines my previous change did what I said it should not: it changed the current directory to the directory in which the setup.py script lived (which made __file__ wrong) fixed, with test that the script is run in the current directory of the caller ........ r62148 | fred.drake | 2008-04-04 04:38:51 -0700 (Fri, 04 Apr 2008) | 2 lines stupid, stupid, stupid! ........ r62150 | jeffrey.yasskin | 2008-04-04 09:48:19 -0700 (Fri, 04 Apr 2008) | 2 lines Oops again. EINTR is in errno, not signal. ........ r62158 | andrew.kuchling | 2008-04-04 19:42:20 -0700 (Fri, 04 Apr 2008) | 1 line Minor edits ........ r62159 | andrew.kuchling | 2008-04-04 19:47:07 -0700 (Fri, 04 Apr 2008) | 1 line Markup fix; explain what interval timers do; typo fix ........ r62160 | andrew.kuchling | 2008-04-04 20:38:39 -0700 (Fri, 04 Apr 2008) | 1 line Various edits ........ r62161 | neal.norwitz | 2008-04-04 21:26:31 -0700 (Fri, 04 Apr 2008) | 9 lines Prevent test_sqlite from hanging on older versions of sqlite. The problem is that when trying to do the second insert, sqlite seems to sleep for a very long time. Here is the output from strace: read(6, "SQLite format 3\0\4\0\1\1\0@ \0\0\0\1\0\0\0\0"..., 1024) = 1024 nanosleep({4294, 966296000}, <unfinished ...> I don't know which version this was fixed in, but 3.2.1 definitely fails. ........
* Merged revisions 62090-62091,62096,62100,62102,62110-62114 via svnmerge fromBenjamin Peterson2008-04-021-6/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | svn+ssh://pythondev@svn.python.org/python/trunk ........ r62090 | brett.cannon | 2008-04-01 07:37:43 -0500 (Tue, 01 Apr 2008) | 3 lines Generalize test.test_support.test_stdout() with a base context manager so that it is easy to capture stderr if desired. ........ r62091 | brett.cannon | 2008-04-01 07:46:02 -0500 (Tue, 01 Apr 2008) | 3 lines Add ``if __name__ == '__main__'`` to some test files where it didn't take a lot of effort to do so. ........ r62096 | amaury.forgeotdarc | 2008-04-01 17:52:48 -0500 (Tue, 01 Apr 2008) | 4 lines Newly enabled test appears to leak: it registers the same codec on each iteration. Do it only once at load time. ........ r62100 | amaury.forgeotdarc | 2008-04-01 19:55:04 -0500 (Tue, 01 Apr 2008) | 4 lines A DocTestSuite cannot run multiple times: it clears its globals dictionary after the first run. Rebuild the DocTestSuite on each iteration. ........ r62102 | jeffrey.yasskin | 2008-04-01 23:07:44 -0500 (Tue, 01 Apr 2008) | 3 lines Try to make test_signal less flaky. I still see some flakiness in test_itimer_prof. ........ r62110 | vinay.sajip | 2008-04-02 16:09:27 -0500 (Wed, 02 Apr 2008) | 1 line Fix: #2315, #2316, #2317: TimedRotatingFileHandler - changed logic to better handle daylight savings time, deletion of old log files, and fixed a bug in calculating rollover when no logging occurs for a longer interval than the rollover period. ........ r62111 | vinay.sajip | 2008-04-02 16:10:23 -0500 (Wed, 02 Apr 2008) | 1 line Added updates with respect to recent changes to TimedRotatingFileHandler. ........ r62112 | vinay.sajip | 2008-04-02 16:17:25 -0500 (Wed, 02 Apr 2008) | 1 line Added updates with respect to recent changes to TimedRotatingFileHandler. ........ r62113 | amaury.forgeotdarc | 2008-04-02 16:18:46 -0500 (Wed, 02 Apr 2008) | 2 lines Remove debug prints; the buildbot now passes the tests ........ r62114 | benjamin.peterson | 2008-04-02 16:20:35 -0500 (Wed, 02 Apr 2008) | 2 lines Suggested proposed changes to Python be considered on some mailing lists first ........