Commit Graph

6761 Commits

Author SHA1 Message Date
Thomas Waldmann 801751e44e set 1.3.0a1 release date
also: cosmetic fixes in changelog
2022-04-14 21:03:11 +02:00
TW 4c749eac2a
Merge pull request #6595 from ThomasWaldmann/update-changes3
update CHANGES
2022-04-14 20:47:48 +02:00
Thomas Waldmann 38a7a48d8e update CHANGES 2022-04-14 20:47:12 +02:00
TW a1ba1c1149
Merge pull request #6593 from ThomasWaldmann/openbsd-openssl
openbsd: use openssl, remove libressl support, fixes #6474
2022-04-14 20:46:40 +02:00
Thomas Waldmann be9e7d37c2 remove libressl support
currently it does not have what we need, so we can simplify our code.
2022-04-14 19:31:55 +02:00
Thomas Waldmann c592b20262 use openssl on openbsd, fixes #6474 2022-04-14 19:31:55 +02:00
TW 3ef355a98f
Merge pull request #6592 from ThomasWaldmann/fix-md-chunks-processing-master
metadata stream can produce all-zero chunks, fixes #6587
2022-04-14 03:53:36 +02:00
Thomas Waldmann e199f5bc6c metadata stream can produce all-zero chunks, fixes #6587
all-zero chunks are propagated as:
CH_ALLOC, data=None, size=len(zeros)

other chunks are:
CH_DATA, data=data, size=len(data)

also: remove the comment with the wrong assumption
2022-04-14 00:22:05 +02:00
TW 1b9a49c5c2
Merge pull request #6588 from ThomasWaldmann/docs-virt-master
virtualisation speed tips, fixes #6456
2022-04-13 23:08:00 +02:00
TW cfb0821006
Merge pull request #6586 from ThomasWaldmann/alpha
master branch is alpha
2022-04-13 22:50:47 +02:00
Thomas Waldmann 18c398e708 virtualisation speed tips 2022-04-13 22:48:27 +02:00
Thomas Waldmann 2872d7acfd point to setup.cfg also 2022-04-13 03:50:54 +02:00
Thomas Waldmann f5f85b9e76 use borgbackup.org as main site
the github site is linked via project_urls -> Source Code
2022-04-13 03:48:33 +02:00
Thomas Waldmann 4b561cfb95 master branch is alpha development status (or worse) 2022-04-13 03:42:05 +02:00
TW b59230380f
Merge pull request #6580 from ThomasWaldmann/docs-max-duration-master
docs: improve borg check --max-duration description
2022-04-12 19:41:04 +02:00
TW 8d3db4637d
Merge pull request #6564 from ThomasWaldmann/deleted-key-master
load_key: no key is same as empty key, fixes #6441
2022-04-12 19:06:12 +02:00
TW 6c74cccbeb
Merge pull request #6578 from ThomasWaldmann/compact-docs-master
docs: borg compact --cleanup-commits also runs a normal compaction
2022-04-12 18:53:37 +02:00
Thomas Waldmann e90cf8a32f docs: improve borg check --max-duration description 2022-04-12 18:43:52 +02:00
TW bc3b2eb719
Merge pull request #6575 from ThomasWaldmann/more-robust-iterator-master
borg check improvements (master)
2022-04-12 18:13:51 +02:00
Thomas Waldmann 7ae76962f9 docs: borg compact --cleanup-commits also runs a normal compaction, fixes #6324 2022-04-12 18:10:44 +02:00
Thomas Waldmann b5f7f2376c check archives: improve error handling for corrupt archive metadata block
this is similar to #4777.

borg check must not crash if an archive metadata block does not decrypt.

Instead, report the archive_id, remove the archive from the manifest and skip to the next archive.
2022-04-12 17:47:43 +02:00
Thomas Waldmann ced3d8b9d5 check archive: make robust_iterator more robust, fixes #4777
borg check must not crash if an archive metadata chunk does not decrypt.

Instead, report the chunk and skip to the next one.
2022-04-12 17:47:32 +02:00
TW 6bb75ddf6b
Merge pull request #6568 from jwilk-forks/secure-erase-msg
Remove stray punctuation from secure-erase message
2022-04-11 19:51:39 +02:00
Jakub Wilk 3a5c79e881 remove stray punctuation from secure-erase message 2022-04-11 18:47:59 +02:00
TW b2ce258066
Merge pull request #6565 from hexagonrecursion/move-tests
Fix selftest
2022-04-11 11:23:05 +02:00
Andrey Andreyevich Bienkowski 08f82ee408
Argon2: documentation and changelog (#6560)
docs: borg key change-algorithm
docs: borg init --key-algorithm
docs: "this is not a borg repo" can be due to argon2 and old borg
2022-04-11 11:21:07 +02:00
Andrey Bienkowski 8e8e14c374 Fix selftest
selftest imports testsuite.crypto
I did not realise this and imported pytest from testsuite.crypto
This broke the selftest.

Solution: move the tests that depend on pytest to testsuite.key.
All three affected tests are tests for the Key classes, so
this is probably a better plase for them anyway.
2022-04-11 07:00:29 +03:00
Thomas Waldmann f5cddf0224 load_key: no key is same as empty key, fixes #6441
when migrating from repokey to keyfile, we just store an empty key into the repo config,
because we do not have a "delete key" RPC api. thus, empty key means "there is no key".

here we fix load_key, so that it does not behave differently for no key and empty key:
in both cases, it just returns an empty value.

additionally, we strip the value we get from the config, so whitespace does not matter.

All callers now check for the repokey not being empty, otherwise RepoKeyNotFoundError
is raised.
2022-04-10 20:58:59 +02:00
TW dfd4bd7e00
Merge pull request #6556 from hexagonrecursion/kdf-refactor
Move the key derivation code from helpers.Passphrase to crypto.FlexiKey
2022-04-10 17:07:17 +02:00
Andrey Bienkowski 0c29faddec Simplify tests 2022-04-10 15:44:51 +03:00
Andrey Bienkowski 6cf5ae4ca1 Give types for every argument 2022-04-10 15:36:46 +03:00
Andrey Bienkowski fc6d423052 Passphrase.argon2 -> FlexiKey.argon2 2022-04-10 15:06:26 +03:00
Andrey Bienkowski 0850a7c295 Passphrase.kdf -> FlexiKey.pbkdf2 2022-04-10 05:33:10 +03:00
TW eba6d5cd1c
Merge pull request #6553 from ThomasWaldmann/update-changes2
update CHANGES
2022-04-09 21:26:50 +02:00
Thomas Waldmann 83941d0b83 update CHANGES 2022-04-09 20:42:40 +02:00
TW 28fa9e0f0b
Merge pull request #6523 from ThomasWaldmann/pax-borg-item-master
import/export-tar: --tar-format=BORG: roundtrip ALL item metadata
2022-04-09 20:22:36 +02:00
TW 1b95950613
Merge pull request #6514 from ThomasWaldmann/repo-v2
repository v2
2022-04-09 19:27:00 +02:00
Thomas Waldmann 38f390ae45 repository: create and use version 2 repos only for now
for now, this code shall only work on v2 repos (created by this code).

the code to read v1 repos is still present though, so for experiments,
it is possible to change the repo version in the repo config from 1 to
2 manually.

having version 2 in the repo config also avoids that borg < 1.3 is
used on such a repo, which would cause damage:
old borg would not recognize the PUT2 tagged segment entries and
old borg check --repair would likely kill them all due to that.

also: keep repo version in Repository.version
2022-04-09 18:58:47 +02:00
Thomas Waldmann 85d4b98a16 docs: updated for repository version 2, PUT2 tag 2022-04-09 18:58:47 +02:00
Thomas Waldmann 52f75d7722 repository: implement PUT2: header crc32, overall xxh64, fixes #1704
note: this required a slight increase of MAX_OBJECT_SIZE so that MAX_DATA_SIZE
      could stay the same as before.

For PUT2, compute the hash over the whole entry (header and content, excluding
hash and crc32 fields, because the crc32 computation includes the hash).

Also: refactor crc32 checks into function, use f-strings, structure _read in
a more logical sequential order.

write_put: avoid creating a large temporary bytes object

why use xxh64?
- fast even without hw acceleration
- borg depends on it already anyway
- stronger than crc32 and strong enough for this purpose
2022-04-09 18:58:47 +02:00
TW 7d33ad3db1
Merge pull request #6552 from hexagonrecursion/cpu
Argon2 fourth part: borg benchmark cpu: use ARGON2_ARGS
2022-04-09 15:48:07 +02:00
Andrey Bienkowski 18963bff5f Remove outdated comment 2022-04-09 16:18:03 +03:00
Andrey Bienkowski 102ce3c5b6 borg benchmark cpu: use ARGON2_ARGS 2022-04-09 14:14:00 +03:00
Andrey Andreyevich Bienkowski d386b0346d
Argon2 the third part: `borg key change-algorithm` (#6549)
add `borg key change-algorithm` to change the kdf / key processing
2022-04-09 12:42:05 +02:00
TW 1a9841347a
Merge pull request #6550 from ThomasWaldmann/update-changes
update CHANGES (master)
2022-04-08 19:49:21 +02:00
Thomas Waldmann 6ffd11fc12 update CHANGES (master) 2022-04-08 19:40:20 +02:00
TW 1e213e93a3
Merge pull request #6544 from ThomasWaldmann/fix-progress-archivename-master
escape % chars in archive name, fixes #6500
2022-04-07 20:22:20 +02:00
TW d1c018bef4
Merge pull request #6546 from ThomasWaldmann/modernize-setuptools_scm
modernize setuptools _scm usage
2022-04-07 20:10:28 +02:00
Thomas Waldmann f930fe3f26 relax Cython requirement
0.27 was broken, but it will install the latest release anyway now.
2022-04-07 19:12:19 +02:00
Thomas Waldmann 9642ace953 require/configure setuptools_scm via pyproject.toml 2022-04-07 19:11:15 +02:00