summaryrefslogtreecommitdiffstats
path: root/Lib/test/test__xxsubinterpreters.py
Commit message (Collapse)AuthorAgeFilesLines
* bpo-37224: Improve test__xxsubinterpreters.DestroyTests (GH-18058)Miss Islington (bot)2020-02-041-1/+5
| | | | | | | | Adds an additional assertion check based on a race condition for `test__xxsubinterpreters.DestroyTests.test_still_running` discovered in the bpo issue. https://bugs.python.org/issue37224 (cherry picked from commit f03a8f8d5001963ad5b5b28dbd95497e9cc15596) Co-authored-by: Kyle Stanley <aeros167@gmail.com>
* bpo-38005: Remove support of string argument in InterpreterID(). (GH-16227)Miss Islington (bot)2019-09-251-9/+6
| | | | | | Make negative interpreter id to raise ValueError instead of RuntimeError. (cherry picked from commit 543a3951a1c96bae0ea839eacec71d3b1a563a10) Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
* [3.8] bpo-38005: Fixed comparing and creating of InterpreterID and ↵Serhiy Storchaka2019-09-141-39/+38
| | | | | | | | | | | | | | ChannelID. (GH-15652) (GH-16145) * Fix a crash in comparing with float (and maybe other crashes). * They are now never equal to strings and non-integer numbers. * Comparison with a large number no longer raises OverflowError. * Arbitrary exceptions no longer silenced in constructors and comparisons. * TypeError raised in the constructor contains now the name of the type. * Accept only ChannelID and int-like objects in channel functions. * Accept only InterpreterId, int-like objects and str in the InterpreterId constructor. * Accept int-like objects, not just int in interpreter related functions. (cherry picked from commit bf169915ecdd42329726104278eb723a7dda2736)
* Remove unused imports in tests (GH-14518) (GH-14520)Victor Stinner2019-07-011-1/+1
| | | (cherry picked from commit 8f4ef3b019ce380022018587571b0f970e668de3)
* bpo-35972: _xxsubinterpreters: Fix potential integer truncation on 32-bit in ↵Alexey Izbyshev2019-02-121-1/+13
| | | | channel_send() (gh-11822)
* bpo-34651: Only allow the main interpreter to fork. (gh-9279)Eric Snow2018-09-141-14/+3
| | | | | When os.fork() is called (on platforms that support it) all threads but the current one are destroyed in the child process. Consequently we must ensure that all but the associated interpreter are likewise destroyed. The main interpreter is critical for runtime operation, so we must ensure that fork only happens in the main interpreter. https://bugs.python.org/issue34651
* bpo-33615: Re-enable subinterpreter tests. (#7552)Eric Snow2018-06-131-5/+6
| | | All the subinterpreter tests were disabled in gh-7513. This commit re-enables them, but leaves one bad test disabled. The test is partly causing problems because it makes assumptions about the availability of a high-level interpreters module (see PEP 554). So I'm disabling the test until such a high-level module is available.
* bpo-33615: Skip test__xxsubinterpreters (GH-7503)Victor Stinner2018-06-081-0/+2
| | | | | The test does crash on multiple CIs causing many troubles. For example, the test prevents to get results of the two Refleak 3.x buildbots.
* bpo-33615: Re-enable a subinterpreter test. (gh-7251)Eric Snow2018-06-021-2/+0
| | | For bpo-32604 I added extra subinterpreter-related tests (see #6914), which caused a few buildbots to crash. This patch fixes the crash by ensuring that refcounts in channels are handled properly.
* bpo-33615: Temporarily disable a test that is triggering crashes on a few ↵Eric Snow2018-05-311-0/+2
| | | | | buildbots. (gh-7288) For bpo-32604 I added some subinterpreter-related tests (see #6914) that are causing crashes on a few buildbots. I'm working on fixing the crashes (see #7251). This change temporarily disables the triggering test.
* bpo-32604: Implement force-closing channels. (gh-6937)Eric Snow2018-05-171-4/+96
| | | This will make it easier to clean up channels (e.g. when used in tests).
* bpo-32604: Improve subinterpreter tests. (#6914)Eric Snow2018-05-161-199/+995
| | | Add more tests for subinterpreters. This patch also fixes a few small defects in the channel implementation.
* Spelling fixes to docs, docstrings, and comments (GH-6374)Ville Skyttä2018-04-201-1/+1
|
* bpo-32604: Swap threads only if the interpreter is different. (gh-5778)Eric Snow2018-02-201-0/+49
| | | The CPython runtime assumes that there is a one-to-one relationship (for a given interpreter) between PyThreadState and OS threads. Sending and receiving on a channel in the same interpreter was causing crashes because of this (specifically due to a check in PyThreadState_Swap()). The solution is to not switch threads if the interpreter is the same.
* bpo-32604: Clean up created subinterpreters before runtime finalization. ↵Eric Snow2018-02-171-9/+69
| | | | | | (gh-5709)
* bpo-32604: Fix memory leaks in the new _xxsubinterpreters module. (#5507)Eric Snow2018-02-031-8/+10
|
* bpo-32604: Expose the subinterpreters C-API in a "private" stdlib module. ↵Eric Snow2018-01-301-0/+1118
(gh-1748) The module is primarily intended for internal use in the test suite. Building the module under Windows will come in a follow-up PR.