Commit Graph

323 Commits

Author SHA1 Message Date
Serhiy Storchaka 43767638a9 Issue #18702: All skipped tests now reported as skipped. 2013-11-03 21:31:38 +02:00
Serhiy Storchaka 7908068627 Issue #18702: All skipped tests now reported as skipped. 2013-11-03 21:31:18 +02:00
Tim Golden 1cc3540669 Correct whitespace in test_os 2013-10-25 21:26:06 +01:00
Tim Golden 781bbebacb Issue13234 Allow listdir to handle extended paths on Windows (Patch by Santoso Wijaya) 2013-10-25 20:24:06 +01:00
Victor Stinner 370cb25307 test_os: report tests as skipped when os.statvfs() fails with ENOSYS 2013-10-12 01:33:54 +02:00
Christian Heimes 2582762b1b Issue #19209: Remove import of copyreg from the os module to speed up
interpreter startup. stat_result and statvfs_result are now hard-coded to
reside in the os module.
The patch is based on Victor Stinner's patch.
2013-10-12 01:27:08 +02:00
Victor Stinner 4f7a36f84f Issue #18904: test_os and test_socket use unittest.skipIf() to check if fcntl
module is present (to record skipped tests)
2013-09-08 14:14:38 +02:00
Victor Stinner 7ba6b0f943 Issue #18904: Improve os.get/set_inheritable() tests 2013-09-08 11:47:54 +02:00
Victor Stinner daf455554b Issue #18571: Implementation of the PEP 446: file descriptors and file handles
are now created non-inheritable; add functions os.get/set_inheritable(),
os.get/set_handle_inheritable() and socket.socket.get/set_inheritable().
2013-08-28 00:53:59 +02:00
Antoine Pitrou f5e30d8b54 Issue #18756: make test_urandom_failure more robust by executing its code in a subprocess 2013-08-24 20:52:45 +02:00
Antoine Pitrou eba25bafc7 Issue #18756: make test_urandom_failure more robust by executing its code in a subprocess 2013-08-24 20:52:27 +02:00
Victor Stinner a93c6db68b (Merge 3.3) Close #17702: On error, os.environb now removes suppress the except
context when raising a new KeyError with the original key.
2013-08-23 19:23:42 +02:00
Victor Stinner 0c2dd0c0a9 Close #17702: On error, os.environb now removes suppress the except context
when raising a new KeyError with the original key.
2013-08-23 19:19:15 +02:00
Antoine Pitrou 95b21460ee Issue #18756: Improve error reporting in os.urandom() when the failure is due to something else than /dev/urandom not existing. 2013-08-16 20:49:32 +02:00
Antoine Pitrou ec34ab5010 Issue #18756: Improve error reporting in os.urandom() when the failure is due to something else than /dev/urandom not existing. 2013-08-16 20:44:38 +02:00
Victor Stinner f0e521036c (Merge 3.3) Issue #18296: Try to fix TestSendfile.test_trailers() of test_os on FreeBSD 2013-08-15 11:57:19 +02:00
Victor Stinner 5e4d6398a1 Issue #18296: Try to fix TestSendfile.test_trailers() of test_os on FreeBSD 2013-08-15 11:57:02 +02:00
Terry Jan Reedy 4a0b6f70f6 Issue #15301: skip new test method so Windows builtbots stop failing. 2013-08-10 20:58:59 -04:00
Larry Hastings a27b83ad2d Issue #15301: Parsing fd, uid, and gid parameters for builtins
in Modules/posixmodule.c is now far more robust.
2013-08-08 00:19:50 -07:00
Jason R. Coombs b501b565c6 Use simple call to os.symlink for broken link (intended for previous commit) 2013-05-27 23:52:43 -04:00
Jason R. Coombs 3a09286790 Issue #13772: Restored directory detection of targets in `os.symlink` on Windows, which was temporarily removed in Python 3.2.3 due to an incomplete implementation. The implementation now works even if the symlink is created in a location other than the current directory. 2013-05-27 23:21:28 -04:00
Jason R. Coombs fb1141cd55 Merge with 3.3 2013-05-27 23:53:02 -04:00
Jason R. Coombs 8f1a8e32b1 Merge with 3.3 2013-05-27 23:26:36 -04:00
Charles-Francois Natali 44feda3cd0 Issue #17914: Add os.cpu_count(). Patch by Yogesh Chaudhari, based on an
initial patch by Trent Nelson.
2013-05-20 14:40:46 +02:00
Victor Stinner 672559fc4f (Merge 3.3) Issue #17702: use assertRaises() for the unit test 2013-04-14 16:43:38 +02:00
Victor Stinner 839e5eafcb Issue #17702: use assertRaises() for the unit test 2013-04-14 16:43:03 +02:00
Victor Stinner 43aa0d07e2 (Merge 3.3) Close #17702: os.environ now raises KeyError with the original
environment variable name (str on UNIX), instead of using the encoded name
(bytes on UNIX).
2013-04-14 16:38:35 +02:00
Victor Stinner 6d10139d70 Close #17702: os.environ now raises KeyError with the original environment
variable name (str on UNIX), instead of using the encoded name (bytes on UNIX).
2013-04-14 16:35:04 +02:00
Stefan Krah a8e59feeb5 Merge 3.3. 2013-01-17 15:34:50 +01:00
Stefan Krah ebee49a487 Issue #14110: Fix test failures on FreeBSD if the user is in the wheel group. 2013-01-17 15:31:00 +01:00
Victor Stinner 67eb8df902 (Merge 3.3) Issue #9644: Add a test on os.statvfs() for the PEP 383 2013-01-01 23:17:22 +01:00
Victor Stinner a25be07103 Issue #9644: Add a test on os.statvfs() for the PEP 383 2013-01-01 23:11:21 +01:00
Victor Stinner e4110dc11f Issue #9644: Fix the encoding used by os.statvfs(): use the filesystem encoding
with the surrogateescape error handler, instead of UTF-8 in strict mode.
2013-01-01 23:05:55 +01:00
Andrew Svetlov 914ab8420e Add test coverage for os.removedirs (#16775) 2012-12-25 12:21:49 +02:00
Andrew Svetlov 34dcdee177 Add test coverage for os.removedirs (#16775) 2012-12-25 12:20:39 +02:00
Andrew Svetlov 405faed511 Add test coverage for os.removedirs (#16775) 2012-12-25 12:18:09 +02:00
Andrew Svetlov 8b33dd8e54 Use OESeeror instead of os.error (#16720)
Patch by Serhiy Storchaka.
2012-12-24 19:58:48 +02:00
Andrew Svetlov 2606a6f197 Issue #16719: Get rid of WindowsError. Use OSError instead
Patch by Serhiy Storchaka.
2012-12-19 14:33:35 +02:00
Andrew Svetlov a191959849 Issue #16714: use 'raise' exceptions, don't 'throw'.
Patch by Serhiy Storchaka.
2012-12-18 21:27:16 +02:00
Andrew Svetlov 5b89840d9c Issue #16714: use 'raise' exceptions, don't 'throw'.
Patch by Serhiy Storchaka.
2012-12-18 21:26:36 +02:00
Andrew Svetlov 737fb89dd1 Issue #16714: use 'raise' exceptions, don't 'throw'.
Patch by Serhiy Storchaka.
2012-12-18 21:14:22 +02:00
Victor Stinner ee36c24d15 Issue #15478: os.lchflags() is not always available when os.chflags() is available 2012-11-13 09:31:51 +01:00
Victor Stinner e667e98faa Issue #16218, #16444: Backport improvment on tests for non-ASCII characters 2012-11-12 01:23:15 +01:00
Victor Stinner 64e039af02 Issue #16414: Fix test_os on Windows, don't test os.listdir() with undecodable
With the ANSI code page 932, os.listdir(b'\xe7') return an empty list (instead
of failing), whereas os.listdir(b'\xff') raises a FileNotFoundError.

It looks like a Windows bug: b'\xe7' directory does not exist,
FindFirstFileA(b'\xe7') fails with ERROR_FILE_NOT_FOUND (2), instead of
ERROR_PATH_NOT_FOUND (3).
2012-11-07 00:10:14 +01:00
Victor Stinner 8b219b2936 Issue #16414: Add support.FS_NONASCII and support.TESTFN_NONASCII
These constants are used to test functions with non-ASCII data, especially
filenames.
2012-11-06 23:23:43 +01:00
Victor Stinner afe1706457 Issue #15478: Use source filename in OSError, not destination filename
And other fixes for Windows:

 * rename, replace and link require arguments of the same type on Windows
 * readlink only supports unicode filenames on Windows
 * os.open() specifies the filename on OSError
2012-10-31 22:47:43 +01:00
Victor Stinner a0c811e439 Issue #15478: Fix again to fix test_os on Windows 2012-10-31 22:16:38 +01:00
Victor Stinner bd54f0eb3a Issue #15478: Fix test_os on FreeBSD
Calling OS functions can fail with errors other than FileNotFoundError: a
FreeBSD buildbot fails for example with a PermissionError.
2012-10-31 01:12:55 +01:00
Victor Stinner f69055efba Issue #15478: Fix test_os on Windows (os.chown is missing) 2012-10-31 01:04:10 +01:00
Victor Stinner 292c835548 Issue #15478: Raising an OSError doesn't decode or encode the filename anymore
Pass the original filename argument to OSError constructor, instead of trying
to encode it to or decode it from the filesystem encoding. This change avoids
an additionnal UnicodeDecodeError on Windows if the filename cannot be decoded
from the filesystem encoding (ANSI code page).
2012-10-30 02:17:38 +01:00
Ezio Melotti c7e139b431 #1087: use proper skips in test_os. 2012-09-26 20:01:34 +03:00
Ned Deily 3a2b97e48a Issue #14992: merge from 3.2 2012-08-08 21:03:02 -07:00
Ned Deily c622f4254b Issue #14992: Prevent test_os test_exist_ok_s_isgid_directory test case
failure on OS X built with 10.4 ABI.
2012-08-08 20:57:24 -07:00
Larry Hastings b40380667c Issue #15202: Consistently use the name "follow_symlinks" for
new parameters in os and shutil functions.  Patch by Serhiy Storchaka.
2012-07-15 10:57:38 -07:00
Victor Stinner 0af71aae2d Issue #16218, #16414, #16444: Backport FS_NONASCII, TESTFN_UNDECODABLE,
TESTFN_NONASCII of test.support from Python 3.4. Backport tests on non-ASCII
paths.
2013-01-03 01:50:30 +01:00
Richard Oudkerk 2240ac1eae Issue #15261: Stop os.stat(fd) crashing on Windows when fd not open. 2012-07-06 12:05:32 +01:00
Larry Hastings c48fe98a7c Issue #15177: Added dir_fd parameter to os.fwalk(). 2012-06-25 04:49:05 -07:00
Georg Brandl 306336bcda Closes #15161: add support for giving path as a fd for truncate() and pathconf(). 2012-06-24 12:55:33 +02:00
Larry Hastings b698d8e7e9 Issue #15154: Add "dir_fd" parameter to os.rmdir, remove "rmdir"
parameter from os.remove / os.unlink.
Patch written by Georg Brandl.  (I'm really looking forward to George
getting commit privileges so I don't have to keep doing checkins on his
behalf.)
2012-06-23 16:55:07 -07:00
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
Victor Stinner 034d0aa217 Issue #14711: os.stat_float_times() has been deprecated. 2012-06-05 01:22:15 +02:00
Gregory P. Smith f0a9a9b502 Fixes Issue #14992: os.makedirs(path, exist_ok=True) would raise an OSError
when the path existed and had the S_ISGID mode bit set when it was
not explicitly asked for.  This is no longer an exception as mkdir
cannot control if the OS sets that bit for it or not.
2012-06-03 14:35:09 -07:00
Gregory P. Smith a81c856436 Fixes Issue #14992: os.makedirs(path, exist_ok=True) would raise an OSError
when the path existed and had the S_ISGID mode bit set when it was not
explicitly asked for.  This is no longer an exception as mkdir cannot control
if the OS sets that bit for it or not.
2012-06-03 14:30:44 -07:00
Hynek Schlawack 39bf90d319 Add two more sorts to test_os.WalkTests I've missed before 2012-05-15 18:40:17 +02:00
Hynek Schlawack c96f5a0457 Sort file list in test_os.WalkTests
Adding new files into the tree lead to buildbot fails as the order wasn't
deterministic.
2012-05-15 17:55:38 +02:00
Hynek Schlawack 66bfcc1b0f #14773: Fix os.fwalk() failing on dangling symlinks 2012-05-15 16:32:21 +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
Larry Hastings 76ad59b7e8 Issue #14127: Add ns= parameter to utime, futimes, and lutimes.
Removed futimens as it is now redundant.
Changed shutil.copystat to use st_atime_ns and st_mtime_ns from os.stat
and ns= parameter to utime--it once again preserves exact metadata on Linux!
2012-05-03 00:30:07 -07:00
Larry Hastings 6fe20b3aee Issue #14127: Add st_{cma}time_ns fields to os.stat() result object. 2012-04-19 15:07:49 -07:00
Benjamin Peterson 4ca5661669 all OSErrors should indicate there are no extended attributes (closes #14358) 2012-03-18 22:26:05 -04:00
Philip Jenvey d7aff2d696 update skip reason 2012-02-29 16:21:25 -08:00
Philip Jenvey e308b7c0c0 also skip test_device_encoding when stdin isn't a tty 2012-02-29 16:16:15 -08:00
Brett Cannon efb00c0cc1 Issue #14153 Create _Py_device_encoding() to prevent _io from having to import
the os module.
2012-02-29 18:31:31 -05:00
Georg Brandl 2fb477c0f0 Merge 3.2: Issue #13703 plus some related test suite fixes. 2012-02-21 00:33:36 +01:00
Georg Brandl 09a7c72cad Merge from 3.1: Issue #13703: add a way to randomize the hash values of basic types (str, bytes, datetime)
in order to make algorithmic complexity attacks on (e.g.) web apps much more complicated.

The environment variable PYTHONHASHSEED and the new command line flag -R control this
behavior.
2012-02-20 21:31:46 +01:00
Georg Brandl 2daf6ae249 Issue #13703: add a way to randomize the hash values of basic types (str, bytes, datetime)
in order to make algorithmic complexity attacks on (e.g.) web apps much more complicated.

The environment variable PYTHONHASHSEED and the new command line flag -R control this
behavior.
2012-02-20 19:54:16 +01:00
Antoine Pitrou 81a1fa5c77 get_terminal_size() can also fail with ENOTTY if the fd is not connected to a terminal. 2012-02-09 00:11:00 +01:00
Antoine Pitrou cfade36227 Relax tests to fix buildbot failure 2012-02-08 23:48:59 +01:00
Antoine Pitrou bcf2b59fb5 Issue #13609: Add two functions to query the terminal size:
os.get_terminal_size (low level) and shutil.get_terminal_size (high level).
Patch by Zbigniew Jędrzejewski-Szmek.
2012-02-08 23:28:36 +01:00
Victor Stinner 4195b5caea Backout f8409b3d6449: the PEP 410 is not accepted yet 2012-02-08 23:03:19 +01:00
Victor Stinner ccd5715a14 PEP 410 2012-02-08 14:31:50 +01:00
Victor Stinner 1aa54a417d Issue #13964: Skip os.*utime*() tests if os.stat() doesn't support timestamp
with a subsecond resolution
2012-02-08 04:09:37 +01:00
Victor Stinner a2f7c00638 Issue #13964: Split os.*utime*() subsecond tests into multiple tests to help
debugging
2012-02-08 03:36:25 +01:00
Victor Stinner 8b6f10dda2 Issue #13964: Test also os.futimesat() 2012-02-08 03:07:25 +01:00
Victor Stinner be557dedf9 Issue #13964: Write tests for new os.*utime*() functions 2012-02-08 03:01:11 +01:00
Charles-François Natali 7794090251 Following Nick's suggestion, rename posix.fdlistdir() to posix.flistdir(), to
be consistent with other functions accepting file descriptors (fdlistdir() was
added in 3.3, so hasn't been released yet).
2012-02-06 19:54:48 +01:00
Charles-François Natali 7372b06cd7 Issue #13734: Add os.fwalk(), a directory walking function yielding file
descriptors.
2012-02-05 15:15:38 +01:00
Antoine Pitrou f3b2d88b67 Issue #8828: Add new function os.replace(), for cross-platform renaming with overwriting. 2012-01-30 22:08:52 +01:00
Antoine Pitrou 91ecea24f5 Issue #13772: In os.symlink() under Windows, do not try to guess the link
target's type (file or directory).  The detection was buggy and made the
call non-atomic (therefore prone to race conditions).
2012-01-24 09:05:18 +01:00
Antoine Pitrou 5311c1d7ab Issue #13772: In os.symlink() under Windows, do not try to guess the link
target's type (file or directory).  The detection was buggy and made the
call non-atomic (therefore prone to race conditions).
2012-01-24 08:59:28 +01:00
Charles-François Natali 2966f10ec0 Issue #13415: Skip test_os.test_unset_error on FreeBSD < 7 and OS X < 10.6
(where unsetenv() doesn't return a value).
2011-11-26 11:32:46 +01:00
Victor Stinner 9329029ed7 (Merge 3.2) Issue #13436: Fix unsetenv() test on Windows 2011-11-22 22:32:28 +01:00
Victor Stinner b3f8268031 Issue #13436: Fix unsetenv() test on Windows 2011-11-22 22:30:19 +01:00
Victor Stinner 65170954e0 (Merge 3.2) Issue #13415: os.unsetenv() doesn't ignore errors anymore. 2011-11-22 22:16:17 +01:00
Victor Stinner 60b385e813 Issue #13415: os.unsetenv() doesn't ignore errors anymore. 2011-11-22 22:01:28 +01:00
Victor Stinner f7c5ae2257 Issue #13374: Deprecate os.getcwdb() on Windows 2011-11-16 23:43:07 +01:00
Victor Stinner 2821644d8a Issue #13374: Skip deprecation tests for os.symlink() on Windows XP
To avoid a NotImplementedError('CreateSymbolicLinkW not found') error.
2011-11-16 00:34:44 +01:00
Victor Stinner 1ab6c2d2c2 Issue #13374: The Windows bytes API has been deprecated in the os module. Use
Unicode filenames instead of bytes filenames to not depend on the ANSI code
page anymore and to support any filename.
2011-11-15 22:27:41 +01:00
Brian Curtin 0277aa3b24 Oops. Update a placeholder comment with the issue number. 2011-11-06 13:50:15 -06:00
Brian Curtin 52fbea1d87 Fix #13327. Remove the need for an explicit None as the second argument to
os.utime in order to update to the current time. The second argument is now
optional.
2011-11-06 13:41:17 -06:00