Martin Hostettler
193e8bcaef
Add tests for mandatory repository feature flags.
2017-06-09 23:20:07 +02:00
Martin Hostettler
fd0250d34a
Add minimal version of in repository mandatory feature flags.
...
This should allow us to make sure older borg versions can be cleanly
prevented from doing operations that are no longer safe because of
repository format evolution. This allows more fine grained control than
just incrementing the manifest version. So for example a change that
still allows new archives to be created but would corrupt the repository
when an old version tries to delete an archive or check the repository
would add the new feature to the check and delete set but leave it out
of the write set.
This is somewhat inspired by ext{2,3,4} which uses sets for
compat (everything except fsck), ro-compat (may only be accessed
read-only by older versions) and features (refuse all access).
2017-06-09 23:13:31 +02:00
Andrea Gelmini
e4247cc0d2
Fix typos
2017-06-09 16:49:30 +02:00
TW
eeaeaf9e12
Merge pull request #2634 from ThomasWaldmann/cygwin
...
enable remote tests on cygwin
2017-06-09 00:08:01 +02:00
Marian Beermann
b75c214af5
hashindex: Cython defines PY_SSIZE_T_CLEAN
2017-06-08 15:16:52 +02:00
Thomas Waldmann
4766d66875
enable remote tests on cygwin
...
the cygwin issue that caused these tests to break was fixed in cygwin
at least since cygwin 2.8.0 (maybe even since 2.7.0).
also added a comment to our workaround (os_write wrapper, that is needed
still for people running older cygwin versions) that it can be removed
when cygwin 2.8.0 is considered ancient (and everybody has upgraded to
some fixed version).
2017-06-08 02:23:57 +02:00
enkore
19c8adb109
Merge pull request #2632 from enkore/docs/nanorst
...
nanorst for --help
2017-06-08 02:00:55 +02:00
Marian Beermann
5b9c34f523
borg.algorithms definition
2017-06-07 23:53:19 +02:00
Marian Beermann
3f8a0221ee
Revert "move chunker to borg.algorithms"
...
This reverts commit 956b50b29c .
# Conflicts:
# setup.py
# src/borg/archive.py
# src/borg/helpers.py
2017-06-07 23:51:42 +02:00
Marian Beermann
1cf031045c
nanorst for --help
2017-06-07 18:16:11 +02:00
TW
af979c2b2a
Merge pull request #2617 from ThomasWaldmann/fix-parse-version
...
fix parse_version, add tests, fixes #2556
2017-06-07 02:04:25 +02:00
Thomas Waldmann
a7e8e8ccd9
fix parse_version, add tests, fixes #2556
2017-06-07 01:15:58 +02:00
Marian Beermann
1135114520
helpers: truncate_and_unlink doc
2017-06-06 19:52:08 +02:00
Marian Beermann
ed0a5c798f
platform.SaveFile: truncate_and_unlink temporary
...
SaveFile is typically used for small files where this is not
necessary. The sole exception is the files cache.
2017-06-06 18:13:20 +02:00
Marian Beermann
95064cd241
repository: truncate segments before unlinking
2017-06-06 17:21:45 +02:00
enkore
68b61acffd
Merge pull request #2619 from ThomasWaldmann/remove-attic-dependency
...
remove attic dependency of the tests, fixes #2505
2017-06-06 11:43:52 +02:00
Thomas Waldmann
f5d2e67129
whitespace changes by coala
2017-06-06 04:46:15 +02:00
Thomas Waldmann
fed5873e29
remove attic dependency of the tests, fixes #2505
...
attic.tar.gz contains a repo + corresponding keyfile - all the
upgrader module tests need.
.tar.gz because the .tar was 20x bigger.
2017-06-06 04:26:48 +02:00
TW
88669611b1
Merge pull request #2615 from ThomasWaldmann/suppress-timestamp-future-errmsg
...
tests: suppress tar's future timestamp warning
2017-06-05 16:59:12 +02:00
Thomas Waldmann
4e6c56538a
test: suppress tar's future timestamp warning
...
in this case, it is expected as we archived a file with such a ts.
2017-06-05 15:43:13 +02:00
Marian Beermann
909f099b1a
algorithms.checksums: work around GCC 4.4 bug by disabling CLMUL
...
Also disabling this code path for 4.5; 4.6 was tested iirc.
2017-06-05 15:07:49 +02:00
TW
50bcd7843d
recreate: keep timestamps as in original archive, fixes #2384 ( #2607 )
...
the timestamps of the recreated archive (in the archive metadata and
also in the manifest) are now as they were for the original archive.
they are important metadata about the archive contents and should
therefore be kept "as is".
note: when using -v --stats, the timestamps shown there for recreate
are about the recreate start/end/duration.
2017-06-05 09:59:17 +02:00
enkore
60811fc2ce
Merge pull request #2593 from enkore/issue/2384.1
...
recreate: if single archive is not processed, exit 2
2017-06-04 23:01:20 +02:00
Thomas Waldmann
ffcf6b76b6
DEFAULT_SEGMENTS_PER_DIR = 1000
...
prettier increments for the directory names.
2017-06-03 21:54:41 +02:00
TW
a2d08e3186
Merge pull request #2575 from edgimar/master
...
patterns: don't recurse with ! / --exclude for pf:, fixes #2509
2017-06-03 21:47:11 +02:00
Mark Edgington
fd0215c3c2
patterns: don't recurse with !/--exclude for path-prefix (pf:)
...
Fixes issue #2509
2017-06-03 12:13:32 -04:00
Marian Beermann
8ad309ae2a
recreate: if single archive is not processed, exit 2
2017-06-03 15:47:01 +02:00
Marian Beermann
8dfe2a8080
remote: show path in PathNotAllowed
...
not 100 % sure whether "if old_server" is required, so let's play it safe.
1.0 -> 1.1 server is no problem.
2017-06-03 15:07:08 +02:00
Marian Beermann
07fbba4ee9
serve: add --restrict-to-repository
2017-06-03 15:07:08 +02:00
Marian Beermann
54e023c75a
repository: add complementary index corruption test
2017-06-02 21:44:45 +02:00
Marian Beermann
2e067a7ae8
repository: add refcount corruption test
2017-06-02 21:44:45 +02:00
Marian Beermann
f61ee038d0
repository: checksum index and hints
2017-06-02 21:44:45 +02:00
Marian Beermann
6c91a750d1
algorithms: rename crc32 to checksums
2017-06-01 21:26:42 +02:00
Marian Beermann
0221e31058
file_integrity: use xxh64
2017-06-01 21:26:42 +02:00
enkore
23d591c1c3
Merge pull request #2565 from enkore/issue/2517
...
Implement storage quotas
2017-06-01 14:39:17 +02:00
Marian Beermann
bcf4b4492b
testsuite: add test for parse_storage_quota
2017-05-31 20:28:17 +02:00
Marian Beermann
4e6a771ee7
BORG_PASSCOMMAND: use same cmd-string splitting as BORG_RSH
2017-05-31 19:41:17 +02:00
enkore
349a4ade7c
Merge pull request #2568 from enkore/issue/1101.integration.cache
...
1101.integration.cache
2017-05-31 19:34:43 +02:00
TuXicc
578b76af3a
Added BORG_PASSCOMMAND environment variable ( #2573 )
2017-05-31 19:25:21 +02:00
Marian Beermann
f8b48dc8d7
remote: propagate Error.traceback correctly
2017-05-31 18:48:48 +02:00
Marian Beermann
4edf77788d
Implement storage quotas
2017-05-31 18:36:03 +02:00
Marian Beermann
9032aa062b
testsuite: simplify ArchiverCorruptionTestCase
2017-05-31 18:08:20 +02:00
Marian Beermann
0a5d9b6f7c
cache sync: close archive chunks file before renaming
2017-05-31 18:06:28 +02:00
Marian Beermann
d35d388d9c
cache integrity: handle interference from old versions
2017-05-25 17:44:01 +02:00
Marian Beermann
50ac9d914d
testsuite: add ArchiverCorruptionTestCase
2017-05-25 17:44:01 +02:00
Marian Beermann
83bca02a4e
file_integrity: hash_part: mix length into state
2017-05-25 17:44:01 +02:00
Marian Beermann
d463dd89aa
hashindex: read/write: use hash_part for HashHeader
2017-05-25 17:44:01 +02:00
Marian Beermann
f59affe585
cache: fix possible printf issue with archive names in sync
2017-05-25 17:44:01 +02:00
Marian Beermann
addd7addfe
cache: chunks.archive.d: autofix corruption
2017-05-25 17:44:01 +02:00
Marian Beermann
1dfe693003
cache: integrity checking in archive.chunks.d
2017-05-25 16:28:46 +02:00