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).
This commit is contained in:
Charles-François Natali 2012-02-06 19:54:48 +01:00
parent 9878b63c7c
commit 7794090251
7 changed files with 15 additions and 15 deletions

View File

@ -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.

View File

@ -571,7 +571,7 @@ os
* Other new functions:
* :func:`~os.fdlistdir` (:issue:`10755`)
* :func:`~os.flistdir` (:issue:`10755`)
* :func:`~os.getgrouplist` (:issue:`9344`)

View File

@ -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

View File

@ -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:

View File

@ -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):

View File

@ -1745,7 +1745,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.

View File

@ -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__},