summaryrefslogtreecommitdiffstats
path: root/Lib
diff options
context:
space:
mode:
authorBrett Cannon <bcannon@gmail.com>2008-05-10 21:11:46 (GMT)
committerBrett Cannon <bcannon@gmail.com>2008-05-10 21:11:46 (GMT)
commitf4fd99344a9c18c1aaee2f1840907e4a38576edd (patch)
tree1226807b9e4bf901a4d19819cef15b9bfadb21fa /Lib
parent7ecf3dcaeec4c0561fa2a952b08c259f3a542587 (diff)
downloadcpython-f4fd99344a9c18c1aaee2f1840907e4a38576edd.zip
cpython-f4fd99344a9c18c1aaee2f1840907e4a38576edd.tar.gz
cpython-f4fd99344a9c18c1aaee2f1840907e4a38576edd.tar.bz2
Remove the dircache module.
Diffstat (limited to 'Lib')
-rw-r--r--Lib/dircache.py38
-rwxr-xr-xLib/test/regrtest.py3
-rw-r--r--Lib/test/test_dircache.py73
3 files changed, 1 insertions, 113 deletions
diff --git a/Lib/dircache.py b/Lib/dircache.py
deleted file mode 100644
index 78ec7fe..0000000
--- a/Lib/dircache.py
+++ /dev/null
@@ -1,38 +0,0 @@
-"""Read and cache directory listings.
-
-The listdir() routine returns a sorted list of the files in a directory,
-using a cache to avoid reading the directory more often than necessary.
-The annotate() routine appends slashes to directories."""
-
-import os
-
-__all__ = ["listdir", "opendir", "annotate", "reset"]
-
-cache = {}
-
-def reset():
- """Reset the cache completely."""
- global cache
- cache = {}
-
-def listdir(path):
- """List directory contents, using cache."""
- try:
- cached_mtime, list = cache[path]
- del cache[path]
- except KeyError:
- cached_mtime, list = -1, []
- mtime = os.stat(path).st_mtime
- if mtime != cached_mtime:
- list = os.listdir(path)
- list.sort()
- cache[path] = mtime, list
- return list
-
-opendir = listdir # XXX backward compatibility
-
-def annotate(head, list):
- """Add '/' suffixes to directories."""
- for i in range(len(list)):
- if os.path.isdir(os.path.join(head, list[i])):
- list[i] = list[i] + '/'
diff --git a/Lib/test/regrtest.py b/Lib/test/regrtest.py
index 675cea3..bbc81bc 100755
--- a/Lib/test/regrtest.py
+++ b/Lib/test/regrtest.py
@@ -725,7 +725,7 @@ def dash_R(the_module, test, indirect_test, huntrleaks):
def dash_R_cleanup(fs, ps, pic, abcs):
import gc, copy_reg
- import _strptime, linecache, dircache
+ import _strptime, linecache
import urlparse, urllib, urllib2, mimetypes, doctest
import struct, filecmp, _abcoll
from distutils.dir_util import _path_created
@@ -762,7 +762,6 @@ def dash_R_cleanup(fs, ps, pic, abcs):
urlparse.clear_cache()
urllib.urlcleanup()
urllib2.install_opener(None)
- dircache.reset()
linecache.clearcache()
mimetypes._default_mime_types()
filecmp._cache.clear()
diff --git a/Lib/test/test_dircache.py b/Lib/test/test_dircache.py
deleted file mode 100644
index 68f6fc2..0000000
--- a/Lib/test/test_dircache.py
+++ /dev/null
@@ -1,73 +0,0 @@
-"""
- Test cases for the dircache module
- Nick Mathewson
-"""
-
-import unittest
-from test.test_support import run_unittest, TESTFN
-import dircache, os, time, sys, tempfile
-
-
-class DircacheTests(unittest.TestCase):
- def setUp(self):
- self.tempdir = tempfile.mkdtemp()
-
- def tearDown(self):
- for fname in os.listdir(self.tempdir):
- self.delTemp(fname)
- os.rmdir(self.tempdir)
-
- def writeTemp(self, fname):
- f = open(os.path.join(self.tempdir, fname), 'w')
- f.close()
-
- def mkdirTemp(self, fname):
- os.mkdir(os.path.join(self.tempdir, fname))
-
- def delTemp(self, fname):
- fname = os.path.join(self.tempdir, fname)
- if os.path.isdir(fname):
- os.rmdir(fname)
- else:
- os.unlink(fname)
-
- def test_listdir(self):
- ## SUCCESSFUL CASES
- entries = dircache.listdir(self.tempdir)
- self.assertEquals(entries, [])
-
- # Check that cache is actually caching, not just passing through.
- self.assert_(dircache.listdir(self.tempdir) is entries)
-
- # Directories aren't "files" on Windows, and directory mtime has
- # nothing to do with when files under a directory get created.
- # That is, this test can't possibly work under Windows -- dircache
- # is only good for capturing a one-shot snapshot there.
-
- if sys.platform[:3] not in ('win', 'os2'):
- # Sadly, dircache has the same granularity as stat.mtime, and so
- # can't notice any changes that occurred within 1 sec of the last
- # time it examined a directory.
- time.sleep(1)
- self.writeTemp("test1")
- entries = dircache.listdir(self.tempdir)
- self.assertEquals(entries, ['test1'])
- self.assert_(dircache.listdir(self.tempdir) is entries)
-
- ## UNSUCCESSFUL CASES
- self.assertRaises(OSError, dircache.listdir, self.tempdir+"_nonexistent")
-
- def test_annotate(self):
- self.writeTemp("test2")
- self.mkdirTemp("A")
- lst = ['A', 'test2', 'test_nonexistent']
- dircache.annotate(self.tempdir, lst)
- self.assertEquals(lst, ['A/', 'test2', 'test_nonexistent'])
-
-
-def test_main():
- run_unittest(DircacheTests)
-
-
-if __name__ == "__main__":
- test_main()