mirror of
https://github.com/borgbackup/borg.git
synced 2025-02-23 14:41:43 +00:00
Merge pull request #1 from borgbackup/master
Update form upstream to fork
This commit is contained in:
commit
6fde90b7f8
9 changed files with 21 additions and 19 deletions
|
@ -41,7 +41,7 @@ def main():
|
|||
overall_versions.add(requires_glibc)
|
||||
if verbose:
|
||||
print("%s %s" % (filename, format_version(requires_glibc)))
|
||||
except subprocess.CalledProcessError as e:
|
||||
except subprocess.CalledProcessError:
|
||||
if verbose:
|
||||
print("%s errored." % filename)
|
||||
|
||||
|
|
|
@ -5,7 +5,9 @@ python_files = testsuite/*.py
|
|||
# please note that the values are adjusted so that they do not cause failures
|
||||
# with existing code. if you want to change them, you should first fix all
|
||||
# flake8 failures that appear with your change.
|
||||
ignore = E122,E123,E125,E126,E127,E128,E226,E402,E722,E731,E741,F401,F405,F811
|
||||
ignore = E122,E123,E125,E126,E127,E128,E226,E402,E722,E731,E741,
|
||||
F401,F405,F811,
|
||||
W504
|
||||
# line length long term target: 120
|
||||
max-line-length = 255
|
||||
exclude = build,dist,.git,.idea,.cache,.tox,docs/conf.py
|
||||
|
|
|
@ -758,7 +758,7 @@ class ChunksIndexError(Error):
|
|||
def fetch_async_response(wait=True):
|
||||
try:
|
||||
return self.repository.async_response(wait=wait)
|
||||
except Repository.ObjectNotFound as e:
|
||||
except Repository.ObjectNotFound:
|
||||
nonlocal error
|
||||
# object not in repo - strange, but we wanted to delete it anyway.
|
||||
if forced == 0:
|
||||
|
@ -1627,7 +1627,7 @@ def valid_item(obj):
|
|||
yield Item(internal_dict=item)
|
||||
else:
|
||||
report('Did not get expected metadata dict when unpacking item metadata (%s)' % reason, chunk_id, i)
|
||||
except msgpack.UnpackException as err:
|
||||
except msgpack.UnpackException:
|
||||
report('Unpacker crashed while unpacking item metadata, trying to resync...', chunk_id, i)
|
||||
unpacker.resync()
|
||||
except Exception:
|
||||
|
|
|
@ -1978,7 +1978,7 @@ def do_break_lock(self, args, repository):
|
|||
|
||||
`Fnmatch <https://docs.python.org/3/library/fnmatch.html>`_, selector `fm:`
|
||||
This is the default style for ``--exclude`` and ``--exclude-from``.
|
||||
These patterns use a variant of shell pattern syntax, with '\*' matching
|
||||
These patterns use a variant of shell pattern syntax, with '\\*' matching
|
||||
any number of characters, '?' matching any single character, '[...]'
|
||||
matching any single character specified, including ranges, and '[!...]'
|
||||
matching any character not specified. For the purpose of these patterns,
|
||||
|
@ -1989,7 +1989,7 @@ def do_break_lock(self, args, repository):
|
|||
from the start of the full path to just before a path separator. Except
|
||||
for the root path, paths will never end in the path separator when
|
||||
matching is attempted. Thus, if a given pattern ends in a path
|
||||
separator, a '\*' is appended before matching is attempted.
|
||||
separator, a '\\*' is appended before matching is attempted.
|
||||
|
||||
Shell-style patterns, selector `sh:`
|
||||
This is the default style for ``--pattern`` and ``--patterns-from``.
|
||||
|
@ -2064,7 +2064,7 @@ def do_break_lock(self, args, repository):
|
|||
|
||||
# The contents of directories in '/home' are not backed up when their name
|
||||
# ends in '.tmp'
|
||||
$ borg create --exclude 're:^/home/[^/]+\.tmp/' backup /
|
||||
$ borg create --exclude 're:^/home/[^/]+\\.tmp/' backup /
|
||||
|
||||
# Load exclusions from file
|
||||
$ cat >exclude.txt <<EOF
|
||||
|
@ -2072,7 +2072,7 @@ def do_break_lock(self, args, repository):
|
|||
/home/*/junk
|
||||
*.tmp
|
||||
fm:aa:something/*
|
||||
re:^/home/[^/]\.tmp/
|
||||
re:^/home/[^/]\\.tmp/
|
||||
sh:/home/*/.thumbnails
|
||||
EOF
|
||||
$ borg create --exclude-from exclude.txt backup /
|
||||
|
@ -3037,7 +3037,7 @@ def define_archive_filters_group(subparser, *, sort_by=True, first_last=True):
|
|||
|
||||
The ``--exclude`` patterns are not like tar. In tar ``--exclude`` .bundler/gems will
|
||||
exclude foo/.bundler/gems. In borg it will not, you need to use ``--exclude``
|
||||
'\*/.bundler/gems' to get the same effect. See ``borg help patterns`` for
|
||||
'\\*/.bundler/gems' to get the same effect. See ``borg help patterns`` for
|
||||
more information.
|
||||
|
||||
In addition to using ``--exclude`` patterns, it is possible to use
|
||||
|
@ -4074,7 +4074,7 @@ def define_archive_filters_group(subparser, *, sort_by=True, first_last=True):
|
|||
|
||||
It creates input data below the given PATH and backups this data into the given REPO.
|
||||
The REPO must already exist (it could be a fresh empty repo or an existing repo, the
|
||||
command will create / read / update / delete some archives named borg-test-data\* there.
|
||||
command will create / read / update / delete some archives named borg-test-data\\* there.
|
||||
|
||||
Make sure you have free space there, you'll need about 1GB each (+ overhead).
|
||||
|
||||
|
|
|
@ -36,7 +36,7 @@ def commit_local_nonce_reservation(self, next_unreserved, start_nonce):
|
|||
def get_repo_free_nonce(self):
|
||||
try:
|
||||
return self.repository.get_free_nonce()
|
||||
except InvalidRPCMethod as error:
|
||||
except InvalidRPCMethod:
|
||||
# old server version, suppress further calls
|
||||
sys.stderr.write("Please upgrade to borg version 1.1+ on the server for safer AES-CTR nonce handling.\n")
|
||||
self.get_repo_free_nonce = lambda: None
|
||||
|
|
|
@ -414,9 +414,9 @@ def __str__(self):
|
|||
return ', '.join(items)
|
||||
|
||||
def to_key_filename(self):
|
||||
name = re.sub('[^\w]', '_', self.path).strip('_')
|
||||
name = re.sub(r'[^\w]', '_', self.path).strip('_')
|
||||
if self.proto != 'file':
|
||||
name = re.sub('[^\w]', '_', self.host) + '__' + name
|
||||
name = re.sub(r'[^\w]', '_', self.host) + '__' + name
|
||||
if len(name) > 100:
|
||||
# Limit file names to some reasonable length. Most file systems
|
||||
# limit them to 255 [unit of choice]; due to variations in unicode
|
||||
|
|
|
@ -111,7 +111,7 @@ def is_utime_fully_supported():
|
|||
new_stats = os.stat(filepath, follow_symlinks=False)
|
||||
if new_stats.st_atime == 1000 and new_stats.st_mtime == 2000:
|
||||
return True
|
||||
except OSError as err:
|
||||
except OSError:
|
||||
pass
|
||||
return False
|
||||
|
||||
|
@ -133,7 +133,7 @@ def is_birthtime_fully_supported():
|
|||
new_stats = os.stat(filepath, follow_symlinks=False)
|
||||
if new_stats.st_birthtime == birthtime and new_stats.st_mtime == mtime and new_stats.st_atime == atime:
|
||||
return True
|
||||
except OSError as err:
|
||||
except OSError:
|
||||
pass
|
||||
return False
|
||||
|
||||
|
|
|
@ -35,7 +35,7 @@ class MockArgs:
|
|||
/cXJq7jrqmrJ1phd6dg4SHAM/i+hubadZoS6m25OQzYAW09wZD/phG8OVa698Z5ed3HTaT
|
||||
SmrtgJL3EoOKgUI9d6BLE4dJdBqntifo""".strip()
|
||||
|
||||
keyfile2_cdata = unhexlify(re.sub('\W', '', """
|
||||
keyfile2_cdata = unhexlify(re.sub(r'\W', '', """
|
||||
0055f161493fcfc16276e8c31493c4641e1eb19a79d0326fad0291e5a9c98e5933
|
||||
00000000000003e8d21eaf9b86c297a8cd56432e1915bb
|
||||
"""))
|
||||
|
|
|
@ -229,13 +229,13 @@ def test_invalid_unicode_pattern(pattern):
|
|||
"",
|
||||
"# EOF"],
|
||||
["/more/data", "/home", " #/wsfoobar"]),
|
||||
(["re:.*"], []),
|
||||
(["re:\s"], ["/data/something00.txt", "/more/data", "/home"]),
|
||||
([r"re:.*"], []),
|
||||
([r"re:\s"], ["/data/something00.txt", "/more/data", "/home"]),
|
||||
([r"re:(.)(\1)"], ["/more/data", "/home", "\tstart/whitespace", "/whitespace/end\t"]),
|
||||
(["", "", "",
|
||||
"# This is a test with mixed pattern styles",
|
||||
# Case-insensitive pattern
|
||||
"re:(?i)BAR|ME$",
|
||||
r"re:(?i)BAR|ME$",
|
||||
"",
|
||||
"*whitespace*",
|
||||
"fm:*/something00*"],
|
||||
|
|
Loading…
Reference in a new issue