Thomas Waldmann
0937ae9078
msgpack: require msgpack >= 1.0.3
...
... and remove support code for older versions.
2022-02-23 04:01:51 +01:00
TW
9e669f6db8
Merge pull request #6313 from borgbackup/rel120
...
release 1.2.0
2022-02-22 22:25:25 +01:00
TW
561b164540
Merge pull request #6335 from ThomasWaldmann/vagrant-jammy
...
vagrant: add ubuntu "jammy" 22.04 LTS VM
2022-02-22 15:36:53 +01:00
Thomas Waldmann
d4dee41a5b
vagrant: add ubuntu "jammy" 22.04 LTS VM
2022-02-22 14:27:42 +01:00
Andrey Bienkowski
0132eee1d4
Write a test for safe_unlink ( #6311 )
...
write a test for safe_unlink
2022-02-20 14:27:44 +01:00
Thomas Waldmann
7265f6adb8
quickstart docs: only borg compact frees disk space
2022-02-19 19:25:16 +01:00
Thomas Waldmann
6641a9629d
build_man
2022-02-19 18:48:13 +01:00
Thomas Waldmann
9a8eec6af1
build_usage
2022-02-19 18:47:47 +01:00
Thomas Waldmann
7b36f001f6
fixup: set release date
2022-02-19 18:45:19 +01:00
Thomas Waldmann
0a5b329008
update CHANGES
2022-02-19 18:41:43 +01:00
TW
8a409ec1fb
Merge pull request #6306 from ThomasWaldmann/fix-savefile-races-master
...
SaveFile: fix race conditions
2022-02-17 16:51:43 +01:00
Laurent
6015ded828
docs: explain the difference between a path that ends with or without a slash ( #6297 )
...
docs: explain the difference between a path that ends with or without a slash
2022-02-16 23:53:11 +01:00
Thomas Waldmann
14b5c005d8
SaveFile: fix race conditions
...
Thanks to Andrey Bienkowski (@hexagonrecursion) for reporting this and writing reproducer code.
Changes:
- use different, randomly (but recognizably) named temp files while writing (securely made by os.mkstemp())
- make sure temp files are cleaned up in normal and error conditions
- SyncFile can now get corresponding pair of path + open os-level fd
- cleaned up: fd now means os-level fd, f means python-file-like object
- fixed a caller of SaveFile
2022-02-16 23:23:47 +01:00
TW
da763cedda
Merge pull request #6301 from ThomasWaldmann/safe-unlink-master
...
safe_unlink (was: truncate_and_unlink)
2022-02-16 22:56:03 +01:00
Thomas Waldmann
b292e158a6
rename truncate_and_unlink to safe_unlink
...
it usually does not truncate any more,
only under "disk full" circumstances and only if there is only one hardlink.
2022-02-15 21:08:34 +01:00
Thomas Waldmann
4a2ab496e0
safer truncate_and_unlink implementation
...
the previous implementation caused collateral damage on hardlink-copies of a repository,
see: https://github.com/borgbackup/borg/discussions/6286
2022-02-15 12:58:37 +01:00
TW
6c5e818510
Merge pull request #6299 from ThomasWaldmann/update-changes-master
...
update CHANGES
2022-02-14 20:33:27 +01:00
Thomas Waldmann
ee32c1b63d
update CHANGES
2022-02-14 18:55:59 +01:00
TW
4896fe1560
Merge pull request #6296 from ThomasWaldmann/cache-pre12-archive-meta
...
info: use a pre12-meta cache to accelerate stats for borg < 1.2 archives
2022-02-14 18:29:17 +01:00
TW
fb194baf09
Merge pull request #6295 from taandrighetti/fix-dir-hardlinkmasters
...
diff: reduce memory consumption, fix is_hardlink_master
2022-02-14 18:25:36 +01:00
Thomas Waldmann
a2fb9cde4e
calc_stats progress display: add archive name
2022-02-14 18:00:02 +01:00
Thomas Waldmann
25e27a1539
info: use a pre12-meta cache to accelerate stats for borg < 1.2 archives
...
first time borg info is invoked on a borg 1.1 repo, it can take
a rather long time computing and caching some stats values for
1.1 archives, which borg 1.2 archives have in their archive
metadata structure. be patient, esp. if you have lots of old
archives.
following invocations are much faster.
2022-02-14 18:00:02 +01:00
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