diff options
author | Brett Cannon <brett@python.org> | 2012-02-07 14:20:20 (GMT) |
---|---|---|
committer | Brett Cannon <brett@python.org> | 2012-02-07 14:20:20 (GMT) |
commit | 3fd6e2b9108e8c2df1b584868c5fc830f2afb7e1 (patch) | |
tree | e879004b8de69ae04d999add8f00a20b75f68e87 | |
parent | 466e6a90f2639f4155d4d11b96e4f5275d893370 (diff) | |
parent | 9a74c57ed74acc32486083476289eae5f51036a1 (diff) | |
download | cpython-3fd6e2b9108e8c2df1b584868c5fc830f2afb7e1.zip cpython-3fd6e2b9108e8c2df1b584868c5fc830f2afb7e1.tar.gz cpython-3fd6e2b9108e8c2df1b584868c5fc830f2afb7e1.tar.bz2 |
Merge
-rw-r--r-- | Doc/library/os.rst | 2 | ||||
-rw-r--r-- | Doc/whatsnew/3.3.rst | 2 | ||||
-rw-r--r-- | Lib/os.py | 2 | ||||
-rw-r--r-- | Lib/test/test_os.py | 4 | ||||
-rw-r--r-- | Lib/test/test_posix.py | 8 | ||||
-rw-r--r-- | Misc/NEWS | 5 | ||||
-rw-r--r-- | Modules/posixmodule.c | 10 |
7 files changed, 18 insertions, 15 deletions
diff --git a/Doc/library/os.rst b/Doc/library/os.rst index 8601687..06f1452 100644 --- a/Doc/library/os.rst +++ b/Doc/library/os.rst @@ -769,7 +769,7 @@ as internal buffering of data. .. versionadded:: 3.3 -.. function:: fdlistdir(fd) +.. function:: flistdir(fd) Like :func:`listdir`, but uses a file descriptor instead and always returns strings. diff --git a/Doc/whatsnew/3.3.rst b/Doc/whatsnew/3.3.rst index c20c889..d3044b3 100644 --- a/Doc/whatsnew/3.3.rst +++ b/Doc/whatsnew/3.3.rst @@ -571,7 +571,7 @@ os * Other new functions: - * :func:`~os.fdlistdir` (:issue:`10755`) + * :func:`~os.flistdir` (:issue:`10755`) * :func:`~os.getgrouplist` (:issue:`9344`) @@ -357,7 +357,7 @@ if _exists("openat"): # whether to follow symlinks flag = 0 if followlinks else AT_SYMLINK_NOFOLLOW - names = fdlistdir(topfd) + names = flistdir(topfd) dirs, nondirs = [], [] for name in names: # Here, we don't use AT_SYMLINK_NOFOLLOW to be consistent with diff --git a/Lib/test/test_os.py b/Lib/test/test_os.py index 7f955d1..8b07c77 100644 --- a/Lib/test/test_os.py +++ b/Lib/test/test_os.py @@ -611,8 +611,8 @@ class FwalkTests(WalkTests): for root, dirs, files, rootfd in os.fwalk(*args): # check that the FD is valid os.fstat(rootfd) - # check that fdlistdir() returns consistent information - self.assertEqual(set(os.fdlistdir(rootfd)), set(dirs) | set(files)) + # check that flistdir() returns consistent information + self.assertEqual(set(os.flistdir(rootfd)), set(dirs) | set(files)) def test_fd_leak(self): # Since we're opening a lot of FDs, we must be careful to avoid leaks: diff --git a/Lib/test/test_posix.py b/Lib/test/test_posix.py index f8c6baa..c3dfffb 100644 --- a/Lib/test/test_posix.py +++ b/Lib/test/test_posix.py @@ -451,18 +451,18 @@ class PosixTester(unittest.TestCase): if hasattr(posix, 'listdir'): self.assertTrue(support.TESTFN in posix.listdir()) - @unittest.skipUnless(hasattr(posix, 'fdlistdir'), "test needs posix.fdlistdir()") - def test_fdlistdir(self): + @unittest.skipUnless(hasattr(posix, 'flistdir'), "test needs posix.flistdir()") + def test_flistdir(self): f = posix.open(posix.getcwd(), posix.O_RDONLY) self.addCleanup(posix.close, f) self.assertEqual( sorted(posix.listdir('.')), - sorted(posix.fdlistdir(f)) + sorted(posix.flistdir(f)) ) # Check that the fd offset was reset (issue #13739) self.assertEqual( sorted(posix.listdir('.')), - sorted(posix.fdlistdir(f)) + sorted(posix.flistdir(f)) ) def test_access(self): @@ -466,6 +466,9 @@ Core and Builtins Library ------- +- Issue #10811: Fix recursive usage of cursors. Instead of crashing, + raise a ProgrammingError now. + - Issue #10881: Fix test_site failure with OS X framework builds. - Issue #964437 Make IDLE help window non-modal. @@ -1745,7 +1748,7 @@ Library - Issue #11297: Add collections.ChainMap(). -- Issue #10755: Add the posix.fdlistdir() function. Patch by Ross Lagerwall. +- Issue #10755: Add the posix.flistdir() function. Patch by Ross Lagerwall. - Issue #4761: Add the *at() family of functions (openat(), etc.) to the posix module. Patch by Ross Lagerwall. diff --git a/Modules/posixmodule.c b/Modules/posixmodule.c index 2269fe9..2251a62 100644 --- a/Modules/posixmodule.c +++ b/Modules/posixmodule.c @@ -2867,12 +2867,12 @@ posix_listdir(PyObject *self, PyObject *args) } /* end of posix_listdir */ #ifdef HAVE_FDOPENDIR -PyDoc_STRVAR(posix_fdlistdir__doc__, -"fdlistdir(fd) -> list_of_strings\n\n\ +PyDoc_STRVAR(posix_flistdir__doc__, +"flistdir(fd) -> list_of_strings\n\n\ Like listdir(), but uses a file descriptor instead."); static PyObject * -posix_fdlistdir(PyObject *self, PyObject *args) +posix_flistdir(PyObject *self, PyObject *args) { PyObject *d, *v; DIR *dirp; @@ -2880,7 +2880,7 @@ posix_fdlistdir(PyObject *self, PyObject *args) int fd; errno = 0; - if (!PyArg_ParseTuple(args, "i:fdlistdir", &fd)) + if (!PyArg_ParseTuple(args, "i:flistdir", &fd)) return NULL; /* closedir() closes the FD, so we duplicate it */ fd = dup(fd); @@ -10555,7 +10555,7 @@ static PyMethodDef posix_methods[] = { #endif /* HAVE_LINK */ {"listdir", posix_listdir, METH_VARARGS, posix_listdir__doc__}, #ifdef HAVE_FDOPENDIR - {"fdlistdir", posix_fdlistdir, METH_VARARGS, posix_fdlistdir__doc__}, + {"flistdir", posix_flistdir, METH_VARARGS, posix_flistdir__doc__}, #endif {"lstat", posix_lstat, METH_VARARGS, posix_lstat__doc__}, {"mkdir", posix_mkdir, METH_VARARGS, posix_mkdir__doc__}, |