PR #206 - Merge branch 'fixes' of https://github.com/thomaswaldmann/attic into merge

This commit is contained in:
Thomas Waldmann 2015-03-06 23:18:08 +01:00
commit fbaa505191
6 changed files with 15 additions and 15 deletions

1
.gitignore vendored
View File

@ -15,3 +15,4 @@ platform_linux.c
*.pyo
*.so
docs/usage/*.inc
.idea/

View File

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

View File

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

View File

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

View File

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

View File

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