Commit Graph

6601 Commits

Author SHA1 Message Date
Tomás Andrighetti
a2ae36bb54 Exclude directories in is_hardlink_master 2022-02-13 19:23:40 -03:00
TW
0cebe62264
Merge pull request #6290 from ThomasWaldmann/compact-free-space-master
compact segments: improve freeable / freed space log output
2022-02-13 18:25:01 +01:00
TW
aafb22ecf7
Merge pull request #6292 from ThomasWaldmann/fix-setdefault-master
implement more standard hashindex.setdefault behaviour
2022-02-13 13:54:13 +01:00
Thomas Waldmann
603b58f6a1 implement more standard hashindex.setdefault behaviour
the .get() like behaviour (== returning the value) was missing.

it's still not 100% like dict.setdefault, because there is no
default value None. but None doesn't make sense here, because we
usually need a N-tuple matching the hash table's value format.

note: this "bug" (or unusual implementation) was without consequences,
      because hashindex.setdefault is not used anywhere in borg, so
      it was also not used in a wrong way anywhere.

https://docs.python.org/3/library/stdtypes.html#dict.setdefault
2022-02-13 03:47:44 +01:00
Thomas Waldmann
17e8aef394 compact: not "freeable", but "maybe freeable"
e.g. if there is a ton of DELs in a segment, they all are maybe freeable,
but only if we also got rid of the respective PUTs (see also #6289).
2022-02-12 20:37:28 +01:00
Thomas Waldmann
e80b5c2272 compact: derive freed space from quota use before/after, fixes #5679
due to the way quota accounting is done, this is likely not
100% precise, but much better than selling the hints as the truth.
2022-02-12 20:37:18 +01:00
TW
94c3d7eb27
Merge pull request #6263 from ThomasWaldmann/docs-links-master
improve linking inside docs
2022-02-08 22:34:11 +01:00
TW
c56b15f271
Merge branch 'master' into docs-links-master 2022-02-08 21:57:58 +01:00
Andrey Bienkowski
24e8b38f1a
Doc: borg init: explain the encryption modes better (#6184)
docs:borg init: explain the encryption modes better

The documentation for borg init was not structured logically:
1. The topic is switched from the general discussion of `borg init`
   to the discussion of encryption modes without a title.
2. Obscure technical details (chunking, id generation etc) were
   above the high-level overview and other key information.
2022-02-08 21:55:51 +01:00
Thomas Waldmann
3428b9f2b4 docs: link to python 3.8 docs
because py38 is our minimum requirement.
2022-02-07 23:23:15 +01:00
Thomas Waldmann
510ceb86f8 docs: link to borg_placeholders 2022-02-07 22:36:24 +01:00
Thomas Waldmann
d79b325494 docs: link to borg_patterns 2022-02-07 22:33:28 +01:00
Thomas Waldmann
42fb25d4a7 docs: use same phrasing in misc. help texts 2022-02-07 21:40:15 +01:00
bobthebadguy
45df345d29
Clarify usage of patternfile roots (#6242) 2022-02-07 20:53:25 +01:00
TW
713efb5704
Merge pull request #6260 from hexagonrecursion/patch-1
Add hexagon-recursion to AUTHORS (master)
2022-02-07 20:17:39 +01:00
Andrey Bienkowski
3b5aab9e3d
Add hexagon-recursion to AUTHORS 2022-02-07 07:29:55 +00:00
TW
8c95dd46e3
Merge pull request #6257 from ThomasWaldmann/upgrade-docs
docs: add borg 1.2 upgrade notes, fixes #6217
2022-02-06 23:17:21 +01:00
Thomas Waldmann
634b1e5a1a docs: add borg 1.2 upgrade notes 2022-02-06 21:22:37 +01:00
TW
5fec0b8cb2
Merge pull request #6255 from ThomasWaldmann/docs-fixes-master
docs: indentation fixes (master)
2022-02-06 15:30:49 +01:00
Thomas Waldmann
f0809cfeba docs: rst markup: remove accidental indentation in patterns help 2022-02-06 00:47:33 +01:00
Thomas Waldmann
3f02d3cd3d docs: rst markup: remove accidental indentation, fixes #6248 2022-02-06 00:44:51 +01:00
TW
d4eb9bbd35
Merge pull request #6243 from hexagonrecursion/test-keyfile
Test: borg init refuses to overwrite keyfile
2022-02-06 00:04:51 +01:00
TW
e336e74659
Merge pull request #6249 from borgbackup/rel120rc1
release 1.2.0 rc1
2022-02-05 23:05:44 +01:00
Andrey Bienkowski
e21343d2a8 Fix ArchiverTestCaseBinary.test_init_refuse_to_overwrite_keyfile 2022-02-05 22:32:09 +03:00
Andrey Bienkowski
29201a0eb5 Test: borg init refuses to overwrite keyfile
https://github.com/borgbackup/borg/pull/6046 neglected to
add a regression test
2022-02-05 22:32:09 +03:00
Thomas Waldmann
d6bfb1147c appveyor: use py38 2022-02-05 18:04:47 +01:00
Thomas Waldmann
ef8aac2e4c build_man 2022-02-05 17:52:25 +01:00
Thomas Waldmann
b430c8d15a build_usage 2022-02-05 17:52:25 +01:00
Thomas Waldmann
55591b882e setup_docs: put import-tar into same file as export-tar 2022-02-05 17:52:25 +01:00
Thomas Waldmann
fa26d5f7c4 update CHANGES 2022-02-05 17:45:35 +01:00
TW
cde1f491aa
Merge pull request #6246 from ThomasWaldmann/excl-broken-setuptools-master
setuptools 60.7.0 is incompatible with pyinstaller
2022-02-05 15:42:32 +01:00
Thomas Waldmann
209a9e786c setuptools 60.7.0 is incompatible with pyinstaller
... even after fixes there.
2022-02-05 15:25:13 +01:00
TW
4fa9f1faa4
Merge pull request #6188 from hexagonrecursion/nonce
docs: impact of deleting path/to/repo/nonce
2022-02-05 13:31:07 +01:00
Andrey Bienkowski
6bc1f48e4e Apply review suggestions 2022-02-05 09:07:13 +03:00
Andrey Bienkowski
d6c16d77cb Review suggestion: mention local nonce path
> do we maybe also want to mention the specific path where the local
> nonce is kept?
2022-02-05 09:07:13 +03:00
Andrey Bienkowski
fab5024cb7 Doc: warn about tampered server nonce
https://github.com/borgbackup/borg/pull/6188#discussion_r794752672
> Well, guess one could also use max(list of trusted nonce values).
>
> The real issue is if you have lost all or some of the trusted
> (client side) nonce values and you also have reason to not trust the
> server side nonce, because someone might attack you on the server.
2022-02-05 09:07:13 +03:00
Andrey Bienkowski
62fe1cab30 Doc: impact of deleting path/to/repo/nonce
Fixes: https://github.com/borgbackup/borg/issues/5858
2022-02-05 09:07:04 +03:00
Andrey Bienkowski
4931eadd91 Refactor: extract get_security_dir() 2022-02-05 09:06:53 +03:00
Andrey Bienkowski
e663c9aa10 Strengthen the test: we can read data w/o nonces 2022-02-05 09:06:25 +03:00
Andrey Bienkowski
37dde58154 Add tests for path/to/repo/nonce deletion
I am about to add documentation for this feature. Per the "If you liked
it, you should have put a CI test on it" rule I am adding tests to
detect if the feature regresses (causing a discrepancy between the docs
and the real behavior).
2022-02-05 09:06:17 +03:00
TW
2197e94a31
Merge pull request #6241 from ThomasWaldmann/argparse-highlander-master
argument parsing: accept some options only once, fixes #6026
2022-02-04 22:33:16 +01:00
TW
b8ad7cd07a
Merge pull request #6235 from ThomasWaldmann/requirements-locked-master
add locked requirements (master)
2022-02-04 22:32:17 +01:00
Thomas Waldmann
c70788cef9 argument parsing: accept some options only once, fixes #6026 2022-02-04 22:08:09 +01:00
Thomas Waldmann
8363169031 vagrant: use requirements.d/development.lock.txt 2022-02-04 21:03:28 +01:00
Thomas Waldmann
02227f30ac add requirements.d/development.lock.txt 2022-02-04 20:57:51 +01:00
TW
1a6437d8ca
Merge pull request #6046 from Killamus/fix_overwrite_keys
Disallow overwriting of existing keyfiles on init
2022-02-04 20:15:53 +01:00
Thomas Waldmann
7edba854b2 use create=True when creating new keys, fixes #6036 2022-02-04 19:33:45 +01:00
Thomas Waldmann
d299b8bc9c KeyfileKeyBase: add create=False param to save method
If we create a new repo (and a new keyfile key, create=True),
there must not already exist a keyfile at the path/filename
where we want to write the new one.

In other use cases (e.g. if we overwrite a keyfile due
to the user changing their passphrase, create=False),
of course overwriting at the same path/fname is desired.
2022-02-04 19:33:45 +01:00
Andrey Bienkowski
9f311abd79
Doc: borg key export: add examples (#6227)
docs: borg key export: add examples

see: https://github.com/borgbackup/borg/issues/6204#issuecomment-1027150308
2022-02-04 18:37:33 +01:00
TW
f96e443975
Merge pull request #6223 from ThomasWaldmann/fix-codeql-master
do not use broken setuptools version
2022-02-02 05:45:29 +01:00