diff --git a/.gitignore b/.gitignore index 0ffe9757..1e38a147 100644 --- a/.gitignore +++ b/.gitignore @@ -15,3 +15,4 @@ platform_linux.c *.pyo *.so docs/usage/*.inc +.idea/ diff --git a/attic/_version.py b/attic/_version.py index adcaf93b..bb5f6079 100644 --- a/attic/_version.py +++ b/attic/_version.py @@ -1,7 +1,7 @@ IN_LONG_VERSION_PY = True # This file helps to compute a version number in source trees obtained from -# git-archive tarball (such as those provided by githubs download-from-tag +# git-archive tarball (such as those provided by github's download-from-tag # feature). Distribution tarballs (build by setup.py sdist) and build # directories (produced by setup.py build) will contain a much shorter file # that just contains the computed version number. @@ -15,7 +15,7 @@ git_full = "$Format:%H$" import subprocess -import sys + def run_command(args, cwd=None, verbose=False): try: diff --git a/attic/helpers.py b/attic/helpers.py index 9fadbd1d..2b94fb4b 100644 --- a/attic/helpers.py +++ b/attic/helpers.py @@ -5,7 +5,6 @@ import msgpack import os import pwd import re -import stat import sys import time from datetime import datetime, timezone, timedelta @@ -481,7 +480,7 @@ def write_msgpack(filename, d): with open(filename + '.tmp', 'wb') as fd: msgpack.pack(d, fd) fd.flush() - os.fsync(fd) + os.fsync(fd.fileno()) os.rename(filename + '.tmp', filename) diff --git a/attic/repository.py b/attic/repository.py index eed85dc4..d2905727 100644 --- a/attic/repository.py +++ b/attic/repository.py @@ -3,7 +3,6 @@ from binascii import hexlify from itertools import islice import errno import os -import shutil import struct import sys from zlib import crc32 @@ -42,7 +41,7 @@ class Repository(object): """{} is not a valid repository""" class CheckNeeded(Error): - '''Inconsistency detected. Please run "attic check {}"''' + """Inconsistency detected. Please run "attic check {}".""" class ObjectNotFound(Error): """Object with key {} not found in repository {}""" @@ -80,9 +79,9 @@ class Repository(object): config.write(fd) def get_index_transaction_id(self): - indicies = sorted((int(name[6:]) for name in os.listdir(self.path) if name.startswith('index.') and name[6:].isdigit())) - if indicies: - return indicies[-1] + indices = sorted((int(name[6:]) for name in os.listdir(self.path) if name.startswith('index.') and name[6:].isdigit())) + if indices: + return indices[-1] else: return None @@ -577,6 +576,7 @@ class LoggedIO(object): if self._write_fd: self.segment += 1 self.offset = 0 - os.fsync(self._write_fd) + self._write_fd.flush() + os.fsync(self._write_fd.fileno()) self._write_fd.close() self._write_fd = None diff --git a/attic/testsuite/__init__.py b/attic/testsuite/__init__.py index 684eeb91..6b9d4fe9 100644 --- a/attic/testsuite/__init__.py +++ b/attic/testsuite/__init__.py @@ -19,7 +19,7 @@ except ImportError: has_lchflags = hasattr(os, 'lchflags') -# The mtime get/set precison varies on different OS and Python versions +# The mtime get/set precision varies on different OS and Python versions if 'HAVE_FUTIMENS' in getattr(posix, '_have_functions', []): st_mtime_ns_round = 0 elif 'HAVE_UTIMES' in sysconfig.get_config_vars(): @@ -68,7 +68,7 @@ class AtticTestCase(unittest.TestCase): if has_lchflags: attrs.append('st_flags') if not fuse or not os.path.isdir(path1): - # dir nlink is always 1 on our fuse fileystem + # dir nlink is always 1 on our fuse filesystem attrs.append('st_nlink') d1 = [filename] + [getattr(s1, a) for a in attrs] d2 = [filename] + [getattr(s2, a) for a in attrs] @@ -109,7 +109,7 @@ def get_tests(suite): class TestLoader(unittest.TestLoader): - """A customzied test loader that properly detects and filters our test cases + """A customized test loader that properly detects and filters our test cases """ def loadTestsFromName(self, pattern, module=None): diff --git a/attic/testsuite/helpers.py b/attic/testsuite/helpers.py index e01b652c..472b8e2e 100644 --- a/attic/testsuite/helpers.py +++ b/attic/testsuite/helpers.py @@ -4,7 +4,7 @@ from datetime import datetime, timezone, timedelta import os import tempfile import unittest -from attic.helpers import adjust_patterns, exclude_path, Location, format_timedelta, IncludePattern, ExcludePattern, make_path_safe, UpgradableLock, prune_within, prune_split, to_localtime, \ +from attic.helpers import adjust_patterns, exclude_path, Location, format_timedelta, ExcludePattern, make_path_safe, UpgradableLock, prune_within, prune_split, \ StableDict, int_to_bigint, bigint_to_int from attic.testsuite import AtticTestCase import msgpack @@ -139,7 +139,7 @@ class PruneSplitTestCase(AtticTestCase): def test(self): def local_to_UTC(month, day): - 'Convert noon on the month and day in 2013 to UTC.' + """Convert noon on the month and day in 2013 to UTC.""" seconds = mktime(strptime('2013-%02d-%02d 12:00' % (month, day), '%Y-%m-%d %H:%M')) return datetime.fromtimestamp(seconds, tz=timezone.utc)