summaryrefslogtreecommitdiff
path: root/giscanner/cachestore.py
diff options
context:
space:
mode:
Diffstat (limited to 'giscanner/cachestore.py')
-rw-r--r--giscanner/cachestore.py21
1 files changed, 11 insertions, 10 deletions
diff --git a/giscanner/cachestore.py b/giscanner/cachestore.py
index 44e3b04c..ad4c7a36 100644
--- a/giscanner/cachestore.py
+++ b/giscanner/cachestore.py
@@ -31,6 +31,7 @@ import giscanner
_CACHE_VERSION_FILENAME = '.cache-version'
+
def _get_versionhash():
toplevel = os.path.dirname(giscanner.__file__)
# Use pyc instead of py to avoid extra IO
@@ -40,6 +41,7 @@ def _get_versionhash():
mtimes = (str(os.stat(source).st_mtime) for source in sources)
return hashlib.sha1(''.join(mtimes)).hexdigest()
+
def _get_cachedir():
if 'GI_SCANNER_DISABLE_CACHE' in os.environ:
return None
@@ -73,7 +75,7 @@ class CacheStore(object):
def __init__(self):
try:
self._directory = _get_cachedir()
- except OSError, e:
+ except OSError as e:
if e.errno != errno.EPERM:
raise
self._directory = None
@@ -88,7 +90,7 @@ class CacheStore(object):
version = os.path.join(self._directory, _CACHE_VERSION_FILENAME)
try:
cache_hash = open(version).read()
- except IOError, e:
+ except IOError as e:
# File does not exist
if e.errno == errno.ENOENT:
cache_hash = 0
@@ -101,7 +103,7 @@ class CacheStore(object):
self._clean()
try:
fp = open(version, 'w')
- except IOError, e:
+ except IOError as e:
# Permission denied
if e.errno == errno.EACCES:
return
@@ -126,13 +128,13 @@ class CacheStore(object):
def _remove_filename(self, filename):
try:
os.unlink(filename)
- except IOError, e:
+ except IOError as e:
# Permission denied
if e.errno == errno.EACCES:
return
else:
raise
- except OSError, e:
+ except OSError as e:
# File does not exist
if e.errno == errno.ENOENT:
return
@@ -150,14 +152,13 @@ class CacheStore(object):
if store_filename is None:
return
- if (os.path.exists(store_filename) and
- self._cache_is_valid(store_filename, filename)):
+ if (os.path.exists(store_filename) and self._cache_is_valid(store_filename, filename)):
return None
tmp_fd, tmp_filename = tempfile.mkstemp(prefix='g-ir-scanner-cache-')
try:
cPickle.dump(data, os.fdopen(tmp_fd, 'w'))
- except IOError, e:
+ except IOError as e:
# No space left on device
if e.errno == errno.ENOSPC:
self._remove_filename(tmp_filename)
@@ -167,7 +168,7 @@ class CacheStore(object):
try:
shutil.move(tmp_filename, store_filename)
- except IOError, e:
+ except IOError as e:
# Permission denied
if e.errno == errno.EACCES:
self._remove_filename(tmp_filename)
@@ -180,7 +181,7 @@ class CacheStore(object):
return
try:
fd = open(store_filename)
- except IOError, e:
+ except IOError as e:
if e.errno == errno.ENOENT:
return None
else: