Commit Graph

193 Commits

Author SHA1 Message Date
Larry Hastings 9cf065cfdc Issue #14626: Large refactoring of functions / parameters in the os module.
Many functions now support "dir_fd" and "follow_symlinks" parameters;
some also support accepting an open file descriptor in place of of a path
string.  Added os.support_* collections as LBYL helpers.  Removed many
functions only previously seen in 3.3 alpha releases (often starting with
"f" or "l", or ending with "at").  Originally suggested by Serhiy Storchaka;
implemented by Larry Hastings.
2012-06-22 16:30:09 -07:00
Richard Oudkerk 73d9a292ae Issue #13841: Make child processes exit using sys.exit() on Windows 2012-06-14 15:30:10 +01:00
Hynek Schlawack e02ba1031f #14885: Make support.skip_unless_xattr check also tempfile
There is a rare edge case where the filesystem used by the tempfile functions
(usually /tmp) doesn't support xattrs while the one used by TESTFN (the current
directory, so likely to be below /home) does. This causes the xattr related
test_shutil tests fail. skip_unless_xattr now checks both.

I have also added skip_unless_xattr to __all__ where it has been missing.
2012-05-23 11:22:44 +02:00
Antoine Pitrou ebdcd859e5 Move private function _args_from_interpreter_flags() to subprocess.py, so
that it can be imported when threads are disabled.
(followup to issue #12098)
2012-05-18 18:33:07 +02:00
Richard Oudkerk 77c84f2def #12098: Make multiprocessing's child processes inherit sys.flags on Windows
Initial patch by Sergey Mezentsev.
2012-05-18 14:28:02 +01:00
Martin v. Löwis 7fb79fcb64 Issue #14366: Support lzma compression in zip files.
Patch by Serhiy Storchaka.
2012-05-13 10:06:36 +02:00
Antoine Pitrou 424246fbf3 Issue #14082: shutil.copy2() now copies extended attributes, if possible.
Patch by Hynek Schlawack.
2012-05-12 19:02:01 +02:00
Martin v. Löwis f6b16a4b50 Issue #14371: Support bzip2 in zipfile module.
Patch by Serhiy Storchaka.
2012-05-01 07:58:44 +02:00
Alexander Belopolsky 934cb18ef5 merged 2012-04-29 18:20:05 -04:00
Alexander Belopolsky b8f02b5a5f fixed test_imaplib failure on Win 2012-04-29 18:16:46 -04:00
Alexander Belopolsky 5a38f80f9c Issue #10941: Fix imaplib.Internaldate2tuple to produce correct result near
the DST transition.  Patch by Joe Peterson.
2012-04-29 16:12:27 -04:00
Alexander Belopolsky 2420d83158 Issue #10941: Fix imaplib.Internaldate2tuple to produce correct result near
the DST transition.  Patch by Joe Peterson.
2012-04-29 15:56:49 -04:00
Charles-François Natali 55bce63ea0 Issue #14154: Reimplement the bigmem test memory watchdog as a subprocess. 2012-03-24 10:06:23 +01:00
Stefan Krah 1919b7e72b Issue #7652: Integrate the decimal floating point libmpdec library to speed
up the decimal module. Performance gains of the new C implementation are
between 12x and 80x, depending on the application.
2012-03-21 18:25:23 +01:00
Charles-François Natali 9578757ec4 Issue #14107: test: Fix a deadlock involving the memory watchdog thread. 2012-02-26 17:27:32 +01:00
Georg Brandl 2fb477c0f0 Merge 3.2: Issue #13703 plus some related test suite fixes. 2012-02-21 00:33:36 +01:00
Antoine Pitrou e9f637b062 Make "regrtest -j" "-R"-aware 2012-02-20 23:49:07 +01:00
Charles-François Natali 1635e9cc59 Issue #13453: Catch EAI_FAIL in support.transient_internet. 2011-12-10 13:17:46 +01:00
Charles-François Natali 13859bfedc Issue #13453: Catch EAI_FAIL in support.transient_internet. 2011-12-10 13:16:44 +01:00
Éric Araujo 4300f69afd Update skip message printed by test.support.get_attribute.
This helper was changed to work with any object instead of only modules
(or technically something with a __name__ attribute, see code in 3.2)
but the message stayed as is.
2011-10-05 01:50:22 +02:00
Antoine Pitrou 5b99df68b0 Collect stats a bit more often 2011-10-04 12:06:06 +02:00
Antoine Pitrou 75e78b6c77 Use the faulthandler module's infrastructure to write a GIL-less
memory watchdog for timely stats collection.
2011-10-04 11:51:23 +02:00
Antoine Pitrou 1a3ff48c55 Start fixing test_bigmem:
- bigmemtest is replaced by precisionbigmemtest
- add a poor man's watchdog thread to print memory consumption
2011-10-04 10:28:37 +02:00
Antoine Pitrou 94190bb6e7 Start fixing test_bigmem:
- bigmemtest is replaced by precisionbigmemtest
- add a poor man's watchdog thread to print memory consumption
2011-10-04 10:22:36 +02:00
Charles-François Natali 87b3c92b5b Introduce support.requires_freebsd_version decorator. 2011-10-03 19:40:37 +02:00
Nick Coghlan 2496f331a7 Close issue 12958 by flagging expected failures in test_socket on Mac OS X 2011-09-19 20:26:31 +10:00
Antoine Pitrou 7a18d21230 Remove misleading comment and code.
Windows does set the errno attribute to ENOENT, but the error message
displays the Windows error number (3 -> ERROR_PATH_NOT_FOUND), not the
errno number (2 -> ENOENT).
The Unix errno corresponding to 3 is ESRCH, explaining the confusion,
which can be seen in the following snippet:

>>> shutil.rmtree("foo")
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "Z:\default\lib\shutil.py", line 272, in rmtree
    onerror(os.listdir, path, sys.exc_info())
  File "Z:\default\lib\shutil.py", line 270, in rmtree
    names = os.listdir(path)
WindowsError: [Error 3] The system cannot find the path specified:
'foo\\*.*'
>>> e = sys.last_value
>>> e.errno
2
>>> e.winerror
3
>>> errno.errorcode[2]
'ENOENT'

For reference, see PC/errmap.h and
http://msdn.microsoft.com/en-us/library/ms681382%28v=vs.85%29.aspx
2011-08-30 18:34:47 +02:00
Antoine Pitrou ee763e2acc Issue #11564: Avoid crashes when trying to pickle huge objects or containers
(more than 2**31 items).  Instead, in most cases, an OverflowError is raised.
2011-08-29 23:14:53 +02:00
Antoine Pitrou 82be19f889 Issue #11564: Avoid crashes when trying to pickle huge objects or containers
(more than 2**31 items).  Instead, in most cases, an OverflowError is raised.
2011-08-29 23:09:33 +02:00
Victor Stinner e67474725b Issue #12326: refactor usage of sys.platform
* Use str.startswith(tuple): I didn't know this Python feature, Python rocks!
 * Replace sometimes sys.platform.startswith('linux') with
   sys.platform == 'linux'
 * sys.platform doesn't contain the major version on Cygwin on Mac OS X
   (it's just 'cygwin' and 'darwin')
2011-08-21 00:39:18 +02:00
Antoine Pitrou f83e4acbae Issue #12626: In regrtest, allow to filter tests using a glob filter
with the `-m` (or `--match`) option.  This works with all test cases
using the unittest module.  This is useful with long test suites
such as test_io or test_subprocess.
2011-07-29 23:57:10 +02:00
Antoine Pitrou b9c73e8cf0 Issue #12626: In regrtest, allow to filter tests using a glob filter
with the `-m` (or `--match`) option.  This works with all test cases
using the unittest module.  This is useful with long test suites
such as test_io or test_subprocess.
2011-07-29 23:53:38 +02:00
Antoine Pitrou 8dbd8573e5 Issue #12624: It is now possible to fail after the first failure when
running in verbose mode (`-v` or `-W`), by using the `--failfast`
(or `-G`) option to regrtest.  This is useful with long test suites
such as test_io or test_subprocess.
2011-07-23 22:37:52 +02:00
Antoine Pitrou 216a3bc36d Issue #12624: It is now possible to fail after the first failure when
running in verbose mode (`-v` or `-W`), by using the `--failfast`
(or `-G`) option to regrtest.  This is useful with long test suites
such as test_io or test_subprocess.
2011-07-23 22:33:39 +02:00
Eli Bendersky 6c51999221 Issue #11049: adding some tests to test.support
Based on original patch by Giampaolo Rodola with contributions from R. David Murray
2011-07-23 08:48:53 +03:00
Antoine Pitrou afed6ecf21 Merge from 3.2 2011-07-15 22:43:33 +02:00
Antoine Pitrou 707f228b1e Try harder to reap dangling threads in test.support.reap_threads(). 2011-07-15 22:29:44 +02:00
Éric Araujo af5bacf9bb Always use repr for regrtest resources names 2011-07-15 17:50:15 +02:00
Benjamin Peterson 31f4beb15e add a contextmanager to disable the gc 2011-07-14 12:48:01 -05:00
Antoine Pitrou 13d7db19f6 Skip network tests when getaddrinfo() returns EAI_AGAIN, meaning a temporary
failure in name resolution.

Should fix a buildbot failure.
2011-07-09 02:32:36 +02:00
Antoine Pitrou 4875c46538 Skip network tests when getaddrinfo() returns EAI_AGAIN, meaning a temporary
failure in name resolution.

Should fix a buildbot failure.
2011-07-09 02:31:24 +02:00
Victor Stinner bf816223df Issue #12451: Add support.create_empty_file()
We don't need to create a temporary buffered binary or text file object just to
create an empty file.

Replace also os.fdopen(handle).close() by os.close(handle).
2011-06-30 23:25:47 +02:00
Victor Stinner 05d34fc953 Issue #12400: test.support.run_doctest() doesn't change sys.stdout anymore
regrtest doesn't check that tests doesn't write something to stdout anymore.

Don't replace sys.stdout by the original sys.stdout to be able to capture the
output for regrtest -W.
2011-06-29 15:53:11 +02:00
Victor Stinner bddc4d4607 Issue #12400: test.support.run_doctest() doesn't change sys.stdout anymore
regrtest doesn't check that tests doesn't write something to stdout anymore.

Don't replace sys.stdout by the original sys.stdout to be able to capture the
output for regrtest -W.
2011-06-29 15:52:46 +02:00
Brian Curtin a87d586fd6 branch merge? 2011-06-13 16:10:32 -05:00
Brian Curtin c9d6a501db branch merge 2011-06-13 16:03:01 -05:00
Brian Curtin 3e86c99f90 Merge from 3.2 for Issue #12084. 2011-06-13 16:00:35 -05:00
Brian Curtin d25aef55c8 Fix #12084. os.stat on Windows wasn't working properly with relative symlinks.
Use of DeviceIoControl to obtain the symlink path via the reparse tag was
removed. The code now uses GetFinalPathNameByHandle in the case of a
symbolic link and works properly given the added test which creates a symbolic
link and calls os.stat on it from multiple locations.

Victor Stinner also noticed an issue with os.lstat following the os.stat
code path when being passed bytes. The posix_lstat function was adjusted to
properly hook up win32_lstat instead of the previous STAT macro (win32_stat).
2011-06-13 15:16:04 -05:00
Victor Stinner 3adba1ff81 (Merge 3.2) test.support: don't catch OSError when can_symlink() removes the
temporary symbolic link.
2011-06-07 12:19:34 +02:00
Victor Stinner 62ec61fb6a test.support: can_symlink() removes the temporary symbolic link 2011-06-07 12:17:15 +02:00