borgbackup 2.0.0b9__tar.gz → 2.0.0b11__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (442) hide show
  1. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/.pre-commit-config.yaml +1 -1
  2. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/CHANGES.rst +149 -31
  3. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/PKG-INFO +6 -4
  4. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/README.rst +3 -3
  5. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/changes.rst +149 -31
  6. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/changes_1.x.rst +1 -1
  7. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/deployment/automated-local.rst +4 -4
  8. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/deployment/central-backup-server.rst +4 -4
  9. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/deployment/hosting-repositories.rst +0 -2
  10. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/deployment/image-backup.rst +6 -6
  11. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/faq.rst +62 -181
  12. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/installation.rst +2 -1
  13. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/internals/data-structures.rst +149 -377
  14. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/internals/frontends.rst +2 -2
  15. borgbackup-2.0.0b11/docs/internals/object-graph.odg +0 -0
  16. borgbackup-2.0.0b11/docs/internals/object-graph.png +0 -0
  17. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/internals/security.rst +22 -10
  18. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/man/borg-benchmark-cpu.1 +1 -1
  19. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/man/borg-benchmark-crud.1 +1 -1
  20. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/man/borg-benchmark.1 +1 -1
  21. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/man/borg-break-lock.1 +1 -1
  22. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/man/borg-check.1 +19 -13
  23. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/man/borg-common.1 +2 -5
  24. borgbackup-2.0.0b11/docs/man/borg-compact.1 +67 -0
  25. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/man/borg-compression.1 +1 -1
  26. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/man/borg-create.1 +13 -32
  27. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/man/borg-delete.1 +14 -24
  28. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/man/borg-diff.1 +1 -1
  29. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/man/borg-export-tar.1 +1 -1
  30. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/man/borg-extract.1 +1 -1
  31. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/man/borg-import-tar.1 +3 -9
  32. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/man/borg-info.1 +12 -6
  33. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/man/borg-key-change-location.1 +1 -1
  34. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/man/borg-key-change-passphrase.1 +3 -3
  35. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/man/borg-key-export.1 +1 -1
  36. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/man/borg-key-import.1 +1 -1
  37. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/man/borg-key.1 +1 -1
  38. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/man/borg-list.1 +2 -6
  39. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/man/borg-match-archives.1 +1 -1
  40. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/man/borg-mount.1 +1 -4
  41. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/man/borg-patterns.1 +1 -1
  42. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/man/borg-placeholders.1 +1 -1
  43. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/man/borg-prune.1 +30 -32
  44. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/man/borg-recreate.1 +2 -8
  45. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/man/borg-rename.1 +3 -3
  46. borgbackup-2.0.0b9/docs/man/borg-rcompress.1 → borgbackup-2.0.0b11/docs/man/borg-repo-compress.1 +10 -19
  47. borgbackup-2.0.0b9/docs/man/borg-rcreate.1 → borgbackup-2.0.0b11/docs/man/borg-repo-create.1 +26 -17
  48. borgbackup-2.0.0b9/docs/man/borg-rdelete.1 → borgbackup-2.0.0b11/docs/man/borg-repo-delete.1 +4 -4
  49. borgbackup-2.0.0b9/docs/man/borg-rinfo.1 → borgbackup-2.0.0b11/docs/man/borg-repo-info.1 +4 -13
  50. borgbackup-2.0.0b9/docs/man/borg-rlist.1 → borgbackup-2.0.0b11/docs/man/borg-repo-list.1 +6 -9
  51. borgbackup-2.0.0b11/docs/man/borg-repo-space.1 +94 -0
  52. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/man/borg-serve.1 +1 -1
  53. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/man/borg-transfer.1 +24 -17
  54. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/man/borg-umount.1 +1 -1
  55. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/man/borg-version.1 +1 -1
  56. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/man/borg-with-lock.1 +1 -1
  57. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/man/borg.1 +72 -69
  58. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/man/borgfs.1 +1 -4
  59. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/man_intro.rst +1 -1
  60. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/quickstart.rst +39 -46
  61. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/quickstart_example.rst.inc +18 -20
  62. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/usage/check.rst.inc +19 -13
  63. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/usage/common-options.rst.inc +1 -2
  64. borgbackup-2.0.0b11/docs/usage/compact.rst.inc +46 -0
  65. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/usage/create.rst +8 -12
  66. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/usage/create.rst.inc +3 -18
  67. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/usage/delete.rst +5 -2
  68. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/usage/delete.rst.inc +39 -52
  69. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/usage/general/date-time.rst.inc +7 -0
  70. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/usage/general/environment.rst.inc +4 -17
  71. borgbackup-2.0.0b11/docs/usage/general/file-systems.rst.inc +37 -0
  72. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/usage/general/repository-urls.rst.inc +11 -1
  73. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/usage/general.rst +1 -1
  74. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/usage/import-tar.rst.inc +0 -6
  75. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/usage/info.rst +3 -3
  76. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/usage/info.rst.inc +7 -1
  77. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/usage/key.rst +2 -2
  78. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/usage/list.rst.inc +0 -2
  79. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/usage/mount.rst.inc +0 -3
  80. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/usage/notes.rst +3 -3
  81. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/usage/prune.rst +14 -4
  82. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/usage/prune.rst.inc +62 -74
  83. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/usage/recreate.rst.inc +14 -20
  84. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/usage/rename.rst +2 -2
  85. borgbackup-2.0.0b11/docs/usage/repo-compress.rst +12 -0
  86. borgbackup-2.0.0b9/docs/usage/rcompress.rst.inc → borgbackup-2.0.0b11/docs/usage/repo-compress.rst.inc +9 -18
  87. borgbackup-2.0.0b11/docs/usage/repo-create.rst +27 -0
  88. borgbackup-2.0.0b9/docs/usage/rcreate.rst.inc → borgbackup-2.0.0b11/docs/usage/repo-create.rst.inc +20 -9
  89. borgbackup-2.0.0b9/docs/usage/rdelete.rst → borgbackup-2.0.0b11/docs/usage/repo-delete.rst +2 -2
  90. borgbackup-2.0.0b9/docs/usage/rdelete.rst.inc → borgbackup-2.0.0b11/docs/usage/repo-delete.rst.inc +4 -4
  91. borgbackup-2.0.0b9/docs/usage/rinfo.rst → borgbackup-2.0.0b11/docs/usage/repo-info.rst +2 -2
  92. borgbackup-2.0.0b9/docs/usage/rinfo.rst.inc → borgbackup-2.0.0b11/docs/usage/repo-info.rst.inc +5 -14
  93. borgbackup-2.0.0b9/docs/usage/rlist.rst → borgbackup-2.0.0b11/docs/usage/repo-list.rst +2 -2
  94. borgbackup-2.0.0b9/docs/usage/rlist.rst.inc → borgbackup-2.0.0b11/docs/usage/repo-list.rst.inc +6 -9
  95. borgbackup-2.0.0b11/docs/usage/repo-space.rst +1 -0
  96. borgbackup-2.0.0b11/docs/usage/repo-space.rst.inc +80 -0
  97. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/usage/tar.rst +2 -2
  98. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/usage/transfer.rst +1 -1
  99. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/usage/transfer.rst.inc +25 -13
  100. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/usage.rst +6 -6
  101. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/pyproject.toml +2 -0
  102. borgbackup-2.0.0b11/requirements.d/codestyle.txt +1 -0
  103. borgbackup-2.0.0b11/requirements.d/development.lock.txt +14 -0
  104. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/scripts/make.py +13 -5
  105. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/scripts/msys2-install-deps +2 -1
  106. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/scripts/upload-pypi +3 -3
  107. borgbackup-2.0.0b11/src/borg/_version.py +1 -0
  108. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/archive.py +265 -517
  109. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/archiver/__init__.py +26 -59
  110. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/archiver/_common.py +42 -24
  111. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/archiver/check_cmd.py +25 -15
  112. borgbackup-2.0.0b11/src/borg/archiver/compact_cmd.py +186 -0
  113. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/archiver/create_cmd.py +8 -57
  114. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/archiver/debug_cmd.py +47 -172
  115. borgbackup-2.0.0b11/src/borg/archiver/delete_cmd.py +93 -0
  116. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/archiver/diff_cmd.py +6 -5
  117. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/archiver/info_cmd.py +11 -7
  118. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/archiver/key_cmds.py +2 -7
  119. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/archiver/list_cmd.py +4 -2
  120. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/archiver/lock_cmds.py +6 -23
  121. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/archiver/mount_cmds.py +0 -6
  122. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/archiver/prune_cmd.py +26 -83
  123. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/archiver/recreate_cmd.py +15 -35
  124. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/archiver/rename_cmd.py +1 -3
  125. borgbackup-2.0.0b9/src/borg/archiver/rcompress_cmd.py → borgbackup-2.0.0b11/src/borg/archiver/repo_compress_cmd.py +36 -82
  126. borgbackup-2.0.0b9/src/borg/archiver/rcreate_cmd.py → borgbackup-2.0.0b11/src/borg/archiver/repo_create_cmd.py +35 -15
  127. borgbackup-2.0.0b9/src/borg/archiver/rdelete_cmd.py → borgbackup-2.0.0b11/src/borg/archiver/repo_delete_cmd.py +9 -9
  128. borgbackup-2.0.0b9/src/borg/archiver/rinfo_cmd.py → borgbackup-2.0.0b11/src/borg/archiver/repo_info_cmd.py +8 -18
  129. borgbackup-2.0.0b9/src/borg/archiver/rlist_cmd.py → borgbackup-2.0.0b11/src/borg/archiver/repo_list_cmd.py +10 -16
  130. borgbackup-2.0.0b11/src/borg/archiver/repo_space_cmd.py +110 -0
  131. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/archiver/serve_cmd.py +5 -1
  132. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/archiver/tar_cmds.py +2 -30
  133. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/archiver/transfer_cmd.py +66 -36
  134. borgbackup-2.0.0b11/src/borg/cache.py +893 -0
  135. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/checksums.c +654 -659
  136. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/chunker.c +1422 -1417
  137. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/compress.c +681 -662
  138. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/compress.pyx +1 -1
  139. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/constants.py +10 -3
  140. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/crypto/keymanager.py +1 -7
  141. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/crypto/low_level.c +1166 -1135
  142. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/fuse.py +7 -7
  143. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/hashindex.c +3931 -7115
  144. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/hashindex.pyi +0 -14
  145. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/hashindex.pyx +13 -189
  146. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/helpers/__init__.py +2 -1
  147. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/helpers/fs.py +1 -1
  148. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/helpers/misc.py +1 -1
  149. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/helpers/parseformat.py +46 -30
  150. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/helpers/process.py +54 -5
  151. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/item.c +2570 -2505
  152. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/item.pyi +4 -0
  153. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/item.pyx +2 -0
  154. borgbackup-2.0.0b11/src/borg/legacyremote.py +953 -0
  155. borgbackup-2.0.0b9/src/borg/repository.py → borgbackup-2.0.0b11/src/borg/legacyrepository.py +33 -126
  156. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/manifest.py +245 -59
  157. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/platform/darwin.c +753 -743
  158. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/platform/freebsd.c +703 -692
  159. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/platform/linux.c +1034 -1017
  160. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/platform/posix.c +486 -476
  161. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/platform/syncfilerange.c +422 -427
  162. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/platform/windows.c +632 -640
  163. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/remote.py +93 -40
  164. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/repoobj.py +22 -18
  165. borgbackup-2.0.0b11/src/borg/repository.py +481 -0
  166. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/selftest.py +1 -1
  167. borgbackup-2.0.0b11/src/borg/storelocking.py +267 -0
  168. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/testsuite/archiver/__init__.py +7 -41
  169. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/testsuite/archiver/argparsing.py +7 -6
  170. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/testsuite/archiver/benchmark_cmd.py +1 -1
  171. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/testsuite/archiver/check_cmd.py +114 -74
  172. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/testsuite/archiver/checks.py +45 -110
  173. borgbackup-2.0.0b11/src/borg/testsuite/archiver/compact_cmd.py +44 -0
  174. borgbackup-2.0.0b11/src/borg/testsuite/archiver/corruption.py +32 -0
  175. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/testsuite/archiver/create_cmd.py +67 -152
  176. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/testsuite/archiver/debug_cmds.py +8 -30
  177. borgbackup-2.0.0b11/src/borg/testsuite/archiver/delete_cmd.py +34 -0
  178. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/testsuite/archiver/diff_cmd.py +3 -3
  179. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/testsuite/archiver/disk_full.py +6 -5
  180. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/testsuite/archiver/extract_cmd.py +27 -27
  181. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/testsuite/archiver/help_cmd.py +3 -3
  182. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/testsuite/archiver/info_cmd.py +3 -3
  183. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/testsuite/archiver/key_cmds.py +26 -26
  184. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/testsuite/archiver/list_cmd.py +5 -5
  185. borgbackup-2.0.0b11/src/borg/testsuite/archiver/lock_cmds.py +52 -0
  186. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/testsuite/archiver/mount_cmds.py +12 -11
  187. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/testsuite/archiver/prune_cmd.py +15 -36
  188. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/testsuite/archiver/recreate_cmd.py +25 -39
  189. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/testsuite/archiver/rename_cmd.py +4 -4
  190. borgbackup-2.0.0b11/src/borg/testsuite/archiver/repo_compress_cmd.py +71 -0
  191. borgbackup-2.0.0b11/src/borg/testsuite/archiver/repo_create_cmd.py +57 -0
  192. borgbackup-2.0.0b9/src/borg/testsuite/archiver/rdelete_cmd.py → borgbackup-2.0.0b11/src/borg/testsuite/archiver/repo_delete_cmd.py +4 -4
  193. borgbackup-2.0.0b11/src/borg/testsuite/archiver/repo_info_cmd.py +31 -0
  194. borgbackup-2.0.0b9/src/borg/testsuite/archiver/rlist_cmd.py → borgbackup-2.0.0b11/src/borg/testsuite/archiver/repo_list_cmd.py +19 -39
  195. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/testsuite/archiver/return_codes.py +2 -5
  196. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/testsuite/archiver/serve_cmd.py +5 -3
  197. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/testsuite/archiver/tar_cmds.py +10 -10
  198. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/testsuite/archiver/transfer_cmd.py +6 -6
  199. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/testsuite/benchmark.py +1 -1
  200. borgbackup-2.0.0b11/src/borg/testsuite/cache.py +55 -0
  201. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/testsuite/conftest.py +1 -25
  202. borgbackup-2.0.0b9/src/borg/testsuite/locking.py → borgbackup-2.0.0b11/src/borg/testsuite/fslocking.py +1 -1
  203. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/testsuite/hashindex.py +6 -203
  204. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/testsuite/helpers.py +16 -0
  205. borgbackup-2.0.0b9/src/borg/testsuite/repository.py → borgbackup-2.0.0b11/src/borg/testsuite/legacyrepository.py +42 -143
  206. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/testsuite/platform.py +1 -1
  207. borgbackup-2.0.0b11/src/borg/testsuite/repository.py +277 -0
  208. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/testsuite/shellpattern.py +3 -3
  209. borgbackup-2.0.0b11/src/borg/testsuite/storelocking.py +100 -0
  210. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/upgrade.py +1 -1
  211. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borgbackup.egg-info/PKG-INFO +6 -4
  212. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borgbackup.egg-info/SOURCES.txt +37 -42
  213. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borgbackup.egg-info/requires.txt +1 -0
  214. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/tox.ini +2 -2
  215. borgbackup-2.0.0b9/docs/internals/compaction.odg +0 -0
  216. borgbackup-2.0.0b9/docs/internals/compaction.png +0 -0
  217. borgbackup-2.0.0b9/docs/internals/object-graph.odg +0 -0
  218. borgbackup-2.0.0b9/docs/internals/object-graph.png +0 -0
  219. borgbackup-2.0.0b9/docs/man/borg-compact.1 +0 -82
  220. borgbackup-2.0.0b9/docs/usage/compact.rst.inc +0 -63
  221. borgbackup-2.0.0b9/docs/usage/config.rst +0 -22
  222. borgbackup-2.0.0b9/docs/usage/config.rst.inc +0 -75
  223. borgbackup-2.0.0b9/docs/usage/general/file-systems.rst.inc +0 -30
  224. borgbackup-2.0.0b9/docs/usage/rcompress.rst +0 -12
  225. borgbackup-2.0.0b9/docs/usage/rcreate.rst +0 -27
  226. borgbackup-2.0.0b9/requirements.d/codestyle.txt +0 -1
  227. borgbackup-2.0.0b9/requirements.d/development.lock.txt +0 -14
  228. borgbackup-2.0.0b9/scripts/fuzz-cache-sync/HOWTO +0 -10
  229. borgbackup-2.0.0b9/scripts/fuzz-cache-sync/main.c +0 -33
  230. borgbackup-2.0.0b9/scripts/fuzz-cache-sync/testcase_dir/test_simple +0 -0
  231. borgbackup-2.0.0b9/src/borg/_version.py +0 -1
  232. borgbackup-2.0.0b9/src/borg/archiver/compact_cmd.py +0 -64
  233. borgbackup-2.0.0b9/src/borg/archiver/config_cmd.py +0 -177
  234. borgbackup-2.0.0b9/src/borg/archiver/delete_cmd.py +0 -158
  235. borgbackup-2.0.0b9/src/borg/cache.py +0 -1389
  236. borgbackup-2.0.0b9/src/borg/cache_sync/cache_sync.c +0 -138
  237. borgbackup-2.0.0b9/src/borg/cache_sync/sysdep.h +0 -194
  238. borgbackup-2.0.0b9/src/borg/cache_sync/unpack.h +0 -416
  239. borgbackup-2.0.0b9/src/borg/cache_sync/unpack_define.h +0 -95
  240. borgbackup-2.0.0b9/src/borg/cache_sync/unpack_template.h +0 -365
  241. borgbackup-2.0.0b9/src/borg/testsuite/archiver/bypass_lock_option.py +0 -130
  242. borgbackup-2.0.0b9/src/borg/testsuite/archiver/config_cmd.py +0 -64
  243. borgbackup-2.0.0b9/src/borg/testsuite/archiver/corruption.py +0 -144
  244. borgbackup-2.0.0b9/src/borg/testsuite/archiver/delete_cmd.py +0 -81
  245. borgbackup-2.0.0b9/src/borg/testsuite/archiver/lock_cmds.py +0 -29
  246. borgbackup-2.0.0b9/src/borg/testsuite/archiver/rcompress_cmd.py +0 -76
  247. borgbackup-2.0.0b9/src/borg/testsuite/archiver/rcreate_cmd.py +0 -86
  248. borgbackup-2.0.0b9/src/borg/testsuite/archiver/rinfo_cmd.py +0 -55
  249. borgbackup-2.0.0b9/src/borg/testsuite/cache.py +0 -228
  250. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/.coveragerc +0 -0
  251. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/.git-blame-ignore-revs +0 -0
  252. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/.readthedocs.yaml +0 -0
  253. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/AUTHORS +0 -0
  254. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/Brewfile +0 -0
  255. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/LICENSE +0 -0
  256. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/MANIFEST.in +0 -0
  257. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/SECURITY.md +0 -0
  258. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/3rd_party/README +0 -0
  259. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/Makefile +0 -0
  260. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/_static/Makefile +0 -0
  261. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/_static/favicon.ico +0 -0
  262. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/_static/logo.pdf +0 -0
  263. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/_static/logo.png +0 -0
  264. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/_static/logo.svg +0 -0
  265. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/_static/logo_font.txt +0 -0
  266. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/_templates/globaltoc.html +0 -0
  267. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/_templates/logo-text.html +0 -0
  268. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/authors.rst +0 -0
  269. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/binaries/00_README.txt +0 -0
  270. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/book.rst +0 -0
  271. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/borg_theme/css/borg.css +0 -0
  272. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/changes_0.x.rst +0 -0
  273. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/conf.py +0 -0
  274. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/deployment/non-root-user.rst +0 -0
  275. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/deployment/pull-backup.rst +0 -0
  276. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/deployment.rst +0 -0
  277. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/development.rst +0 -0
  278. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/global.rst.inc +0 -0
  279. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/index.rst +0 -0
  280. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/internals/encryption-aead.odg +0 -0
  281. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/internals/encryption-aead.png +0 -0
  282. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/internals/structure.odg +0 -0
  283. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/internals/structure.png +0 -0
  284. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/internals.rst +0 -0
  285. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/introduction.rst +0 -0
  286. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/man/borg-change-passphrase.1 +0 -0
  287. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/man/borg-config.1 +0 -0
  288. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/man/borg-key-change-algorithm.1 +0 -0
  289. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/man/borg-key-migrate-to-repokey.1 +0 -0
  290. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/man/borg-upgrade.1 +0 -0
  291. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/misc/asciinema/README +0 -0
  292. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/misc/asciinema/Vagrantfile +0 -0
  293. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/misc/asciinema/advanced.json +0 -0
  294. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/misc/asciinema/advanced.tcl +0 -0
  295. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/misc/asciinema/basic.json +0 -0
  296. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/misc/asciinema/basic.tcl +0 -0
  297. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/misc/asciinema/install.json +0 -0
  298. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/misc/asciinema/install.tcl +0 -0
  299. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/misc/asciinema/sample-wallpapers.txt +0 -0
  300. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/misc/benchmark-crud.txt +0 -0
  301. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/misc/borg-data-flow.odg +0 -0
  302. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/misc/borg-data-flow.png +0 -0
  303. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/misc/create_chunker-params.txt +0 -0
  304. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/misc/internals-picture.txt +0 -0
  305. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/misc/logging.conf +0 -0
  306. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/misc/prune-example.txt +0 -0
  307. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/support.rst +0 -0
  308. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/usage/benchmark.rst +0 -0
  309. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/usage/benchmark_cpu.rst.inc +0 -0
  310. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/usage/benchmark_crud.rst.inc +0 -0
  311. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/usage/borgfs.rst +0 -0
  312. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/usage/borgfs.rst.inc +0 -0
  313. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/usage/break-lock.rst.inc +0 -0
  314. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/usage/change-passphrase.rst.inc +0 -0
  315. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/usage/check.rst +0 -0
  316. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/usage/compact.rst +0 -0
  317. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/usage/debug.rst +0 -0
  318. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/usage/diff.rst +0 -0
  319. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/usage/diff.rst.inc +0 -0
  320. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/usage/export-tar.rst.inc +0 -0
  321. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/usage/extract.rst +0 -0
  322. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/usage/extract.rst.inc +0 -0
  323. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/usage/general/file-metadata.rst.inc +0 -0
  324. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/usage/general/logging.rst.inc +0 -0
  325. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/usage/general/positional-arguments.rst.inc +0 -0
  326. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/usage/general/repository-locations.rst.inc +0 -0
  327. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/usage/general/resources.rst.inc +0 -0
  328. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/usage/general/return-codes.rst.inc +0 -0
  329. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/usage/general/units.rst.inc +0 -0
  330. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/usage/help.rst +0 -0
  331. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/usage/help.rst.inc +0 -0
  332. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/usage/key_change-location.rst.inc +0 -0
  333. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/usage/key_change-passphrase.rst.inc +0 -0
  334. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/usage/key_export.rst.inc +0 -0
  335. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/usage/key_import.rst.inc +0 -0
  336. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/usage/list.rst +0 -0
  337. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/usage/lock.rst +0 -0
  338. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/usage/mount.rst +0 -0
  339. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/usage/recreate.rst +0 -0
  340. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/usage/rename.rst.inc +0 -0
  341. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/usage/serve.rst +0 -0
  342. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/usage/serve.rst.inc +0 -0
  343. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/usage/umount.rst.inc +0 -0
  344. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/usage/usage_general.rst.inc +0 -0
  345. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/usage/version.rst +0 -0
  346. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/usage/version.rst.inc +0 -0
  347. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/usage/with-lock.rst.inc +0 -0
  348. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/docs/usage_general.rst.inc +0 -0
  349. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/requirements.d/development.txt +0 -0
  350. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/requirements.d/docs.txt +0 -0
  351. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/scripts/borg.exe.spec +0 -0
  352. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/scripts/errorlist.py +0 -0
  353. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/scripts/fetch-binaries +0 -0
  354. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/scripts/glibc_check.py +0 -0
  355. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/scripts/hash_sizes.py +0 -0
  356. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/scripts/make-testdata/test_transfer_upgrade.sh +0 -0
  357. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/scripts/sdist-sign +0 -0
  358. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/scripts/shell_completions/bash/borg +0 -0
  359. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/scripts/shell_completions/fish/borg.fish +0 -0
  360. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/scripts/shell_completions/zsh/_borg +0 -0
  361. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/scripts/sign-binaries +0 -0
  362. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/setup.cfg +0 -0
  363. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/setup.py +0 -0
  364. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/__init__.py +0 -0
  365. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/__main__.py +0 -0
  366. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/_chunker.c +0 -0
  367. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/_endian.h +0 -0
  368. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/_hashindex.c +0 -0
  369. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/_item.c +0 -0
  370. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/archiver/benchmark_cmd.py +0 -0
  371. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/archiver/extract_cmd.py +0 -0
  372. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/archiver/help_cmd.py +0 -0
  373. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/archiver/version_cmd.py +0 -0
  374. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/checksums.pyi +0 -0
  375. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/checksums.pyx +0 -0
  376. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/chunker.pyi +0 -0
  377. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/chunker.pyx +0 -0
  378. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/compress.pyi +0 -0
  379. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/crypto/__init__.py +0 -0
  380. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/crypto/file_integrity.py +0 -0
  381. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/crypto/key.py +0 -0
  382. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/crypto/low_level.pyx +0 -0
  383. /borgbackup-2.0.0b9/src/borg/locking.py → /borgbackup-2.0.0b11/src/borg/fslocking.py +0 -0
  384. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/fuse_impl.py +0 -0
  385. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/helpers/checks.py +0 -0
  386. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/helpers/datastruct.py +0 -0
  387. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/helpers/errors.py +0 -0
  388. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/helpers/lrucache.py +0 -0
  389. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/helpers/msgpack.py +0 -0
  390. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/helpers/nanorst.py +0 -0
  391. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/helpers/passphrase.py +0 -0
  392. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/helpers/progress.py +0 -0
  393. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/helpers/shellpattern.py +0 -0
  394. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/helpers/time.py +0 -0
  395. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/helpers/yes_no.py +0 -0
  396. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/logger.py +0 -0
  397. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/paperkey.html +0 -0
  398. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/patterns.py +0 -0
  399. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/platform/__init__.py +0 -0
  400. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/platform/base.py +0 -0
  401. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/platform/darwin.pyx +0 -0
  402. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/platform/freebsd.pyx +0 -0
  403. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/platform/linux.pyx +0 -0
  404. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/platform/posix.pyx +0 -0
  405. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/platform/syncfilerange.pyx +0 -0
  406. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/platform/windows.pyx +0 -0
  407. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/platform/xattr.py +0 -0
  408. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/platformflags.py +0 -0
  409. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/testsuite/__init__.py +0 -0
  410. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/testsuite/archive.py +0 -0
  411. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/testsuite/archiver/dotdot_path.tar +0 -0
  412. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/testsuite/archiver/patterns.py +0 -0
  413. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/testsuite/archiver/repo12.tar.gz +0 -0
  414. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/testsuite/archiver/unusual_paths.tar +0 -0
  415. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/testsuite/checksums.py +0 -0
  416. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/testsuite/chunker.py +0 -0
  417. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/testsuite/chunker_pytest.py +0 -0
  418. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/testsuite/chunker_slow.py +0 -0
  419. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/testsuite/compress.py +0 -0
  420. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/testsuite/crypto.py +0 -0
  421. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/testsuite/efficient_collection_queue.py +0 -0
  422. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/testsuite/file_integrity.py +0 -0
  423. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/testsuite/hashindex_pytest.py +0 -0
  424. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/testsuite/item.py +0 -0
  425. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/testsuite/key.py +0 -0
  426. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/testsuite/logger.py +0 -0
  427. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/testsuite/lrucache.py +0 -0
  428. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/testsuite/nanorst.py +0 -0
  429. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/testsuite/patterns.py +0 -0
  430. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/testsuite/platform_darwin.py +0 -0
  431. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/testsuite/platform_freebsd.py +0 -0
  432. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/testsuite/platform_linux.py +0 -0
  433. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/testsuite/platform_posix.py +0 -0
  434. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/testsuite/remote.py +0 -0
  435. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/testsuite/repoobj.py +0 -0
  436. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/testsuite/version.py +0 -0
  437. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/testsuite/xattr.py +0 -0
  438. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/version.py +0 -0
  439. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borg/xattr.py +0 -0
  440. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borgbackup.egg-info/dependency_links.txt +0 -0
  441. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borgbackup.egg-info/entry_points.txt +0 -0
  442. {borgbackup-2.0.0b9 → borgbackup-2.0.0b11}/src/borgbackup.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  repos:
2
2
  - repo: https://github.com/psf/black
3
- rev: 23.1.0
3
+ rev: 24.8.0
4
4
  hooks:
5
5
  - id: black
6
6
  - repo: https://github.com/astral-sh/ruff-pre-commit
@@ -12,8 +12,8 @@ This section provides information about security and corruption issues.
12
12
  Upgrade Notes
13
13
  =============
14
14
 
15
- borg 1.2.x to borg 2.0
16
- ----------------------
15
+ borg 1.2.x/1.4.x to borg 2.0
16
+ ----------------------------
17
17
 
18
18
  Compatibility notes:
19
19
 
@@ -21,11 +21,11 @@ Compatibility notes:
21
21
 
22
22
  We tried to put all the necessary "breaking" changes into this release, so we
23
23
  hopefully do not need another breaking release in the near future. The changes
24
- were necessary for improved security, improved speed, unblocking future
25
- improvements, getting rid of legacy crap / design limitations, having less and
26
- simpler code to maintain.
24
+ were necessary for improved security, improved speed and parallelism,
25
+ unblocking future improvements, getting rid of legacy crap and design
26
+ limitations, having less and simpler code to maintain.
27
27
 
28
- You can use "borg transfer" to transfer archives from borg 1.1/1.2 repos to
28
+ You can use "borg transfer" to transfer archives from borg 1.2/1.4 repos to
29
29
  a new borg 2.0 repo, but it will need some time and space.
30
30
 
31
31
  Before using "borg transfer", you must have upgraded to borg >= 1.2.6 (or
@@ -42,37 +42,45 @@ Compatibility notes:
42
42
  - ssh:// URLs: removed support for /~otheruser/, #6855.
43
43
  If you used this, just replace it by: ssh://user@host:port/home/otheruser/
44
44
  - -P / --prefix option was removed, please use the similar -a / --match-archives.
45
- - the archive name is always given separately from the repository
45
+ - archive names don't need to be unique anymore. to the contrary:
46
+ it is now strongly recommended to use the identical name for borg create
47
+ within the same series of archives to make borg work more efficiently.
48
+ the name now identifies a series of archive, to identify a single archive
49
+ please use aid:<archive-hash-prefix>, e.g.: borg delete aid:d34db33f
50
+ - the archive id is always given separately from the repository
46
51
  (differently than with borg 1.x you must not give repo::archive).
47
- - the archive name is either given as a positional parameter, like:
52
+ - the series name or archive id is either given as a positional parameter,
53
+ like:
48
54
 
49
- - borg create myarchive2 /some/path
50
- - borg diff myarchive1 myarchive2
55
+ - borg create documents ~/Documents
56
+ - borg diff aid:deadbeef aid:d34db33f
51
57
  - or, if the command makes sense for an arbitrary amount of archives, archives
52
58
  can be selected using a glob pattern, like:
53
59
 
54
- - borg delete -a 'sh:myarchive*'
55
- - borg recreate -a 'sh:myarchive*'
60
+ - borg delete -a 'sh:myarchive-2024-??-??'
61
+ - borg recreate -a 'sh:myarchive-2024-??-??'
56
62
  - some borg 1.x commands that supported working on a repo AND on an archive
57
63
  were split into 2 commands, some others were renamed:
58
64
 
59
65
  - borg 2 repo commands:
60
66
 
61
- - borg rcreate # "repo create", was: borg init
62
- - borg rlist # "repo list"
63
- - borg rinfo # "repo info"
64
- - borg rdelete # "repo delete"
67
+ - borg repo-create # was: borg init
68
+ - borg repo-list
69
+ - borg repo-info
70
+ - borg repo-delete
71
+ - borg repo-compress
72
+ - borg repo-space
65
73
  - borg 2 archive commands:
66
74
 
67
- - borg create ARCHIVE ...
68
- - borg list ARCHIVE
69
- - borg extract ARCHIVE ...
70
- - borg diff ARCH1 ARCH2
71
- - borg rename OLDNAME NEWNAME
72
- - borg info -a ARCH_GLOB
73
- - borg delete -a ARCH_GLOB
74
- - borg recreate -a ARCH_GLOB ...
75
- - borg mount -a ARCH_GLOB mountpoint ...
75
+ - borg create NAME ...
76
+ - borg list ID
77
+ - borg extract ID ...
78
+ - borg diff ID1 ID2
79
+ - borg rename ID NEWNAME
80
+ - borg info ID
81
+ - borg delete ID
82
+ - borg recreate ID ...
83
+ - borg mount -a ID mountpoint ...
76
84
 
77
85
  For more details, please consult the docs or --help option output.
78
86
  - create/recreate/import-tar --timestamp: defaults to local timezone
@@ -84,6 +92,8 @@ Compatibility notes:
84
92
  - removed --nobsdflags (use --noflags)
85
93
  - removed --noatime (default now, see also --atime)
86
94
  - removed --save-space option (does not change behaviour)
95
+ - removed --bypass-lock option
96
+ - removed borg config command (only worked locally anyway)
87
97
  - using --list together with --progress is now disallowed (except with --log-json), #7219
88
98
  - the --glob-archives option was renamed to --match-archives (the short option
89
99
  name -a is unchanged) and extended to support different pattern styles:
@@ -94,8 +104,8 @@ Compatibility notes:
94
104
 
95
105
  So you might need to edit your scripts like e.g.::
96
106
 
97
- borg 1.x: --glob-archives 'myserver-*'
98
- borg 2.0: --match-archives 'sh:myserver-*'
107
+ borg 1.x: --glob-archives 'myserver-2024-*'
108
+ borg 2.0: --match-archives 'sh:myserver-2024-*'
99
109
 
100
110
  - use platformdirs 3.x.x instead of home-grown code. Due to that:
101
111
 
@@ -114,24 +124,132 @@ Compatibility notes:
114
124
  fail now that somehow "worked" before (but maybe didn't work as intended due to
115
125
  the contradicting options).
116
126
 
117
-
118
127
  .. _changelog:
119
128
 
120
129
  Change Log 2.x
121
130
  ==============
122
131
 
123
- Version 2.0.0b9 (2024-07-20)
124
- ----------------------------
132
+ Version 2.0.0b11 (2024-09-26)
133
+ -----------------------------
125
134
 
126
135
  Please note:
127
136
 
128
- This is a beta release, only for testing - do not use for production repos.
137
+ Beta releases are only for testing on NEW repos - do not use for production.
129
138
 
130
139
  For upgrade and compatibility hints, please also read the section "Upgrade Notes"
131
140
  above.
132
141
 
133
142
  New features:
134
143
 
144
+ - Support rclone:// URLs for borg repositories.
145
+
146
+ This enables 70+ cloud storage products, including Amazon S3, Backblaze B2,
147
+ Ceph, Dropbox, ftp(s), Google Cloud Storage, Google Drive, Microsoft Azure,
148
+ Microsoft OneDrive, OpenStack Swift, pCloud, Seafile, sftp, SMB / CIFS and
149
+ WebDAV!
150
+
151
+ See https://rclone.org/ for more details.
152
+ - Parallel operations in same repo from same client (same user/machine).
153
+ - Archive series feature, #7930.
154
+
155
+ TL;DR: a NAME now identifies a series of identically named archives,
156
+ to identify a specific single archive, use aid:<archive hash>.
157
+
158
+ in borg 1.x, we used to put a timestamp into the archive name, because borg1
159
+ required unique archive names.
160
+
161
+ borg2 does not require unique archive names, but it encourages you to even
162
+ use a identical archive names within the same SERIES of archives, e.g. you
163
+ could backup user files to archives named "user-files" and system files to
164
+ archives named "system-files".
165
+ that makes matching (e.g. for prune, for the files cache, ...) much simpler
166
+ and borg now KNOWS which archives belong to the same series (because they all
167
+ have the same name).
168
+ - info/delete/prune: allow positional NAME argument, e.g.:
169
+
170
+ - borg prune --keep-daily 30 <seriesname>
171
+ - borg delete aid:<archive hash>
172
+ - create: also archive inode number, #8362
173
+
174
+ Borg can use this when using archive series to rebuild the local files cache
175
+ from the previous archive (of the same series) in the repository.
176
+
177
+ Fixes:
178
+
179
+ - Remove superfluous repository.list() call. for high latency repos
180
+ (like sftp, cloud), this improves performance of borg check and compact.
181
+ - repository.list: refresh lock more frequently
182
+ - misc. commands fixed for non-unique archive names
183
+ - remote: allow get_manifest method
184
+ - files cache: fix rare race condition with data loss potential, #3536
185
+ - storelocking: misc. fixes / cleanups
186
+
187
+ Other changes:
188
+
189
+ - Cache the chunks index in the repository, #8397.
190
+ Improves high latency repo performance for most commands compared to b10.
191
+ - repo-compress: faster by using chunks index rather than repository.list().
192
+ - Files cache entries now have both ctime AND mtime.
193
+ - Borg updates the ctime and mtime of known and "unchanged" files, #4915.
194
+ - Rebuild files cache from previous archive in same series, #8385.
195
+ - Reduce RAM usage by splitting the files cache by archive series, #5658.
196
+ - Remove AdHocCache, remove BORG_CACHE_IMPL (we only have one implementation).
197
+ - Docs: user@ and :port are optional in sftp and ssh URLs.
198
+ - CI: re-enable windows build after fixing it.
199
+ - Upgrade pyinstaller to 6.10.0.
200
+ - Increase IDS_PER_CHUNK, #6945.
201
+
202
+
203
+ Version 2.0.0b10 (2024-09-09)
204
+ -----------------------------
205
+
206
+ New features:
207
+
208
+ - borgstore based repository, file:, ssh: and sftp: for now, more possible.
209
+ - repository stores objects separately now, not using segment files.
210
+ this has more fs overhead, but needs much less I/O because no segment
211
+ files compaction is required anymore. also, no repository index is
212
+ needed anymore because we can directly find the objects by their ID.
213
+ - locking: new borgstore based repository locking with automatic stale
214
+ lock removal (if lock does not get refreshed, if lock owner process is dead).
215
+ - simultaneous repository access for many borg commands except check/compact.
216
+ the cache lock for adhocwithfiles is still exclusive though, so use
217
+ BORG_CACHE_IMPL=adhoc if you want to try that out using only 1 machine
218
+ and 1 user (that implementation doesn't use a cache lock). When using
219
+ multiple client machines or users, it also works with the default cache.
220
+ - delete/prune: much quicker now and can be undone.
221
+ - check --repair --undelete-archives: bring archives back from the dead.
222
+ - repo-space: manage reserved space in repository (avoid dead-end situation if
223
+ repository filesystem runs full).
224
+
225
+ Bugs/issues fixed:
226
+
227
+ - a lot! all linked from PR #8332.
228
+
229
+ Other changes:
230
+
231
+ - repository: remove transactions, solved differently and much simpler now
232
+ (convergence and write order primarily).
233
+ - repository: replaced precise reference counting with "object exists in repo?"
234
+ and "garbage collection of unused objects".
235
+ - cache: remove transactions, remove chunks cache.
236
+ removed LocalCache, BORG_CACHE_IMPL=local, solving all related issues.
237
+ as in beta 9, adhowwithfiles is the default implementation.
238
+ - compact: needs the borg key now (run it clientside), -v gives nice stats.
239
+ - transfer: archive transfers from borg 1.x need the --from-borg1 option
240
+ - check: reimplemented / bigger changes.
241
+ - code: got rid of a metric ton of not needed complexity.
242
+ when borg does not need to read borg 1.x repos/archives anymore, after
243
+ users have transferred their archives, even much more can be removed.
244
+ - docs: updated / removed outdated stuff
245
+ - renamed r* commands to repo-*
246
+
247
+
248
+ Version 2.0.0b9 (2024-07-20)
249
+ ----------------------------
250
+
251
+ New features:
252
+
135
253
  - add BORG_CACHE_IMPL, default is "adhocwithfiles" to test the new cache
136
254
  implementation, featuring an adhoc non-persistent chunks cache and a
137
255
  persistent files cache. See the docs for other values.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: borgbackup
3
- Version: 2.0.0b9
3
+ Version: 2.0.0b11
4
4
  Summary: Deduplicated, encrypted, authenticated and compressed backups
5
5
  Author: The Borg Collective (see AUTHORS file)
6
6
  Maintainer-email: Thomas Waldmann <tw@waldmann-edv.de>
@@ -26,11 +26,13 @@ Classifier: Programming Language :: Python :: 3.9
26
26
  Classifier: Programming Language :: Python :: 3.10
27
27
  Classifier: Programming Language :: Python :: 3.11
28
28
  Classifier: Programming Language :: Python :: 3.12
29
+ Classifier: Programming Language :: Python :: 3.13
29
30
  Classifier: Topic :: Security :: Cryptography
30
31
  Classifier: Topic :: System :: Archiving :: Backup
31
32
  Requires-Python: >=3.9
32
33
  License-File: LICENSE
33
34
  License-File: AUTHORS
35
+ Requires-Dist: borgstore~=0.0.4
34
36
  Requires-Dist: msgpack<=1.1.0,>=1.0.3
35
37
  Requires-Dist: packaging
36
38
  Requires-Dist: platformdirs<5.0.0,>=3.0.0; sys_platform == "darwin"
@@ -93,7 +95,7 @@ Main features
93
95
  **Speed**
94
96
  * performance-critical code (chunking, compression, encryption) is
95
97
  implemented in C/Cython
96
- * local caching of files/chunks index data
98
+ * local caching
97
99
  * quick detection of unmodified files
98
100
 
99
101
  **Data encryption**
@@ -146,9 +148,9 @@ For ease of use, set the BORG_REPO environment variable::
146
148
 
147
149
  $ export BORG_REPO=/path/to/repo
148
150
 
149
- Create a new backup repository (see ``borg rcreate --help`` for encryption options)::
151
+ Create a new backup repository (see ``borg repo-create --help`` for encryption options)::
150
152
 
151
- $ borg rcreate -e repokey-aes-ocb
153
+ $ borg repo-create -e repokey-aes-ocb
152
154
 
153
155
  Create a new backup archive::
154
156
 
@@ -69,7 +69,7 @@ Main features
69
69
  **Speed**
70
70
  * performance-critical code (chunking, compression, encryption) is
71
71
  implemented in C/Cython
72
- * local caching of files/chunks index data
72
+ * local caching
73
73
  * quick detection of unmodified files
74
74
 
75
75
  **Data encryption**
@@ -122,9 +122,9 @@ For ease of use, set the BORG_REPO environment variable::
122
122
 
123
123
  $ export BORG_REPO=/path/to/repo
124
124
 
125
- Create a new backup repository (see ``borg rcreate --help`` for encryption options)::
125
+ Create a new backup repository (see ``borg repo-create --help`` for encryption options)::
126
126
 
127
- $ borg rcreate -e repokey-aes-ocb
127
+ $ borg repo-create -e repokey-aes-ocb
128
128
 
129
129
  Create a new backup archive::
130
130
 
@@ -12,8 +12,8 @@ This section provides information about security and corruption issues.
12
12
  Upgrade Notes
13
13
  =============
14
14
 
15
- borg 1.2.x to borg 2.0
16
- ----------------------
15
+ borg 1.2.x/1.4.x to borg 2.0
16
+ ----------------------------
17
17
 
18
18
  Compatibility notes:
19
19
 
@@ -21,11 +21,11 @@ Compatibility notes:
21
21
 
22
22
  We tried to put all the necessary "breaking" changes into this release, so we
23
23
  hopefully do not need another breaking release in the near future. The changes
24
- were necessary for improved security, improved speed, unblocking future
25
- improvements, getting rid of legacy crap / design limitations, having less and
26
- simpler code to maintain.
24
+ were necessary for improved security, improved speed and parallelism,
25
+ unblocking future improvements, getting rid of legacy crap and design
26
+ limitations, having less and simpler code to maintain.
27
27
 
28
- You can use "borg transfer" to transfer archives from borg 1.1/1.2 repos to
28
+ You can use "borg transfer" to transfer archives from borg 1.2/1.4 repos to
29
29
  a new borg 2.0 repo, but it will need some time and space.
30
30
 
31
31
  Before using "borg transfer", you must have upgraded to borg >= 1.2.6 (or
@@ -42,37 +42,45 @@ Compatibility notes:
42
42
  - ssh:// URLs: removed support for /~otheruser/, #6855.
43
43
  If you used this, just replace it by: ssh://user@host:port/home/otheruser/
44
44
  - -P / --prefix option was removed, please use the similar -a / --match-archives.
45
- - the archive name is always given separately from the repository
45
+ - archive names don't need to be unique anymore. to the contrary:
46
+ it is now strongly recommended to use the identical name for borg create
47
+ within the same series of archives to make borg work more efficiently.
48
+ the name now identifies a series of archive, to identify a single archive
49
+ please use aid:<archive-hash-prefix>, e.g.: borg delete aid:d34db33f
50
+ - the archive id is always given separately from the repository
46
51
  (differently than with borg 1.x you must not give repo::archive).
47
- - the archive name is either given as a positional parameter, like:
52
+ - the series name or archive id is either given as a positional parameter,
53
+ like:
48
54
 
49
- - borg create myarchive2 /some/path
50
- - borg diff myarchive1 myarchive2
55
+ - borg create documents ~/Documents
56
+ - borg diff aid:deadbeef aid:d34db33f
51
57
  - or, if the command makes sense for an arbitrary amount of archives, archives
52
58
  can be selected using a glob pattern, like:
53
59
 
54
- - borg delete -a 'sh:myarchive*'
55
- - borg recreate -a 'sh:myarchive*'
60
+ - borg delete -a 'sh:myarchive-2024-??-??'
61
+ - borg recreate -a 'sh:myarchive-2024-??-??'
56
62
  - some borg 1.x commands that supported working on a repo AND on an archive
57
63
  were split into 2 commands, some others were renamed:
58
64
 
59
65
  - borg 2 repo commands:
60
66
 
61
- - borg rcreate # "repo create", was: borg init
62
- - borg rlist # "repo list"
63
- - borg rinfo # "repo info"
64
- - borg rdelete # "repo delete"
67
+ - borg repo-create # was: borg init
68
+ - borg repo-list
69
+ - borg repo-info
70
+ - borg repo-delete
71
+ - borg repo-compress
72
+ - borg repo-space
65
73
  - borg 2 archive commands:
66
74
 
67
- - borg create ARCHIVE ...
68
- - borg list ARCHIVE
69
- - borg extract ARCHIVE ...
70
- - borg diff ARCH1 ARCH2
71
- - borg rename OLDNAME NEWNAME
72
- - borg info -a ARCH_GLOB
73
- - borg delete -a ARCH_GLOB
74
- - borg recreate -a ARCH_GLOB ...
75
- - borg mount -a ARCH_GLOB mountpoint ...
75
+ - borg create NAME ...
76
+ - borg list ID
77
+ - borg extract ID ...
78
+ - borg diff ID1 ID2
79
+ - borg rename ID NEWNAME
80
+ - borg info ID
81
+ - borg delete ID
82
+ - borg recreate ID ...
83
+ - borg mount -a ID mountpoint ...
76
84
 
77
85
  For more details, please consult the docs or --help option output.
78
86
  - create/recreate/import-tar --timestamp: defaults to local timezone
@@ -84,6 +92,8 @@ Compatibility notes:
84
92
  - removed --nobsdflags (use --noflags)
85
93
  - removed --noatime (default now, see also --atime)
86
94
  - removed --save-space option (does not change behaviour)
95
+ - removed --bypass-lock option
96
+ - removed borg config command (only worked locally anyway)
87
97
  - using --list together with --progress is now disallowed (except with --log-json), #7219
88
98
  - the --glob-archives option was renamed to --match-archives (the short option
89
99
  name -a is unchanged) and extended to support different pattern styles:
@@ -94,8 +104,8 @@ Compatibility notes:
94
104
 
95
105
  So you might need to edit your scripts like e.g.::
96
106
 
97
- borg 1.x: --glob-archives 'myserver-*'
98
- borg 2.0: --match-archives 'sh:myserver-*'
107
+ borg 1.x: --glob-archives 'myserver-2024-*'
108
+ borg 2.0: --match-archives 'sh:myserver-2024-*'
99
109
 
100
110
  - use platformdirs 3.x.x instead of home-grown code. Due to that:
101
111
 
@@ -114,24 +124,132 @@ Compatibility notes:
114
124
  fail now that somehow "worked" before (but maybe didn't work as intended due to
115
125
  the contradicting options).
116
126
 
117
-
118
127
  .. _changelog:
119
128
 
120
129
  Change Log 2.x
121
130
  ==============
122
131
 
123
- Version 2.0.0b9 (2024-07-20)
124
- ----------------------------
132
+ Version 2.0.0b11 (2024-09-26)
133
+ -----------------------------
125
134
 
126
135
  Please note:
127
136
 
128
- This is a beta release, only for testing - do not use for production repos.
137
+ Beta releases are only for testing on NEW repos - do not use for production.
129
138
 
130
139
  For upgrade and compatibility hints, please also read the section "Upgrade Notes"
131
140
  above.
132
141
 
133
142
  New features:
134
143
 
144
+ - Support rclone:// URLs for borg repositories.
145
+
146
+ This enables 70+ cloud storage products, including Amazon S3, Backblaze B2,
147
+ Ceph, Dropbox, ftp(s), Google Cloud Storage, Google Drive, Microsoft Azure,
148
+ Microsoft OneDrive, OpenStack Swift, pCloud, Seafile, sftp, SMB / CIFS and
149
+ WebDAV!
150
+
151
+ See https://rclone.org/ for more details.
152
+ - Parallel operations in same repo from same client (same user/machine).
153
+ - Archive series feature, #7930.
154
+
155
+ TL;DR: a NAME now identifies a series of identically named archives,
156
+ to identify a specific single archive, use aid:<archive hash>.
157
+
158
+ in borg 1.x, we used to put a timestamp into the archive name, because borg1
159
+ required unique archive names.
160
+
161
+ borg2 does not require unique archive names, but it encourages you to even
162
+ use a identical archive names within the same SERIES of archives, e.g. you
163
+ could backup user files to archives named "user-files" and system files to
164
+ archives named "system-files".
165
+ that makes matching (e.g. for prune, for the files cache, ...) much simpler
166
+ and borg now KNOWS which archives belong to the same series (because they all
167
+ have the same name).
168
+ - info/delete/prune: allow positional NAME argument, e.g.:
169
+
170
+ - borg prune --keep-daily 30 <seriesname>
171
+ - borg delete aid:<archive hash>
172
+ - create: also archive inode number, #8362
173
+
174
+ Borg can use this when using archive series to rebuild the local files cache
175
+ from the previous archive (of the same series) in the repository.
176
+
177
+ Fixes:
178
+
179
+ - Remove superfluous repository.list() call. for high latency repos
180
+ (like sftp, cloud), this improves performance of borg check and compact.
181
+ - repository.list: refresh lock more frequently
182
+ - misc. commands fixed for non-unique archive names
183
+ - remote: allow get_manifest method
184
+ - files cache: fix rare race condition with data loss potential, #3536
185
+ - storelocking: misc. fixes / cleanups
186
+
187
+ Other changes:
188
+
189
+ - Cache the chunks index in the repository, #8397.
190
+ Improves high latency repo performance for most commands compared to b10.
191
+ - repo-compress: faster by using chunks index rather than repository.list().
192
+ - Files cache entries now have both ctime AND mtime.
193
+ - Borg updates the ctime and mtime of known and "unchanged" files, #4915.
194
+ - Rebuild files cache from previous archive in same series, #8385.
195
+ - Reduce RAM usage by splitting the files cache by archive series, #5658.
196
+ - Remove AdHocCache, remove BORG_CACHE_IMPL (we only have one implementation).
197
+ - Docs: user@ and :port are optional in sftp and ssh URLs.
198
+ - CI: re-enable windows build after fixing it.
199
+ - Upgrade pyinstaller to 6.10.0.
200
+ - Increase IDS_PER_CHUNK, #6945.
201
+
202
+
203
+ Version 2.0.0b10 (2024-09-09)
204
+ -----------------------------
205
+
206
+ New features:
207
+
208
+ - borgstore based repository, file:, ssh: and sftp: for now, more possible.
209
+ - repository stores objects separately now, not using segment files.
210
+ this has more fs overhead, but needs much less I/O because no segment
211
+ files compaction is required anymore. also, no repository index is
212
+ needed anymore because we can directly find the objects by their ID.
213
+ - locking: new borgstore based repository locking with automatic stale
214
+ lock removal (if lock does not get refreshed, if lock owner process is dead).
215
+ - simultaneous repository access for many borg commands except check/compact.
216
+ the cache lock for adhocwithfiles is still exclusive though, so use
217
+ BORG_CACHE_IMPL=adhoc if you want to try that out using only 1 machine
218
+ and 1 user (that implementation doesn't use a cache lock). When using
219
+ multiple client machines or users, it also works with the default cache.
220
+ - delete/prune: much quicker now and can be undone.
221
+ - check --repair --undelete-archives: bring archives back from the dead.
222
+ - repo-space: manage reserved space in repository (avoid dead-end situation if
223
+ repository filesystem runs full).
224
+
225
+ Bugs/issues fixed:
226
+
227
+ - a lot! all linked from PR #8332.
228
+
229
+ Other changes:
230
+
231
+ - repository: remove transactions, solved differently and much simpler now
232
+ (convergence and write order primarily).
233
+ - repository: replaced precise reference counting with "object exists in repo?"
234
+ and "garbage collection of unused objects".
235
+ - cache: remove transactions, remove chunks cache.
236
+ removed LocalCache, BORG_CACHE_IMPL=local, solving all related issues.
237
+ as in beta 9, adhowwithfiles is the default implementation.
238
+ - compact: needs the borg key now (run it clientside), -v gives nice stats.
239
+ - transfer: archive transfers from borg 1.x need the --from-borg1 option
240
+ - check: reimplemented / bigger changes.
241
+ - code: got rid of a metric ton of not needed complexity.
242
+ when borg does not need to read borg 1.x repos/archives anymore, after
243
+ users have transferred their archives, even much more can be removed.
244
+ - docs: updated / removed outdated stuff
245
+ - renamed r* commands to repo-*
246
+
247
+
248
+ Version 2.0.0b9 (2024-07-20)
249
+ ----------------------------
250
+
251
+ New features:
252
+
135
253
  - add BORG_CACHE_IMPL, default is "adhocwithfiles" to test the new cache
136
254
  implementation, featuring an adhoc non-persistent chunks cache and a
137
255
  persistent files cache. See the docs for other values.
@@ -3469,7 +3469,7 @@ Other changes:
3469
3469
  - archiver tests: add check_cache tool - lints refcounts
3470
3470
 
3471
3471
  - fixed cache sync performance regression from 1.1.0b1 onwards, #1940
3472
- - syncing the cache without chunks.archive.d (see :ref:`disable_archive_chunks`)
3472
+ - syncing the cache without chunks.archive.d
3473
3473
  now avoids any merges and is thus faster, #1940
3474
3474
  - borg check --verify-data: faster due to linear on-disk-order scan
3475
3475
  - borg debug-xxx commands removed, we use "debug xxx" subcommands now, #1627
@@ -105,7 +105,7 @@ modify it to suit your needs (e.g. more backup sets, dumping databases etc.).
105
105
  #
106
106
 
107
107
  # Options for borg create
108
- BORG_OPTS="--stats --one-file-system --compression lz4 --checkpoint-interval 86400"
108
+ BORG_OPTS="--stats --one-file-system --compression lz4"
109
109
 
110
110
  # Set BORG_PASSPHRASE or BORG_PASSCOMMAND somewhere around here, using export,
111
111
  # if encryption is used.
@@ -150,7 +150,7 @@ modify it to suit your needs (e.g. more backup sets, dumping databases etc.).
150
150
  fi
151
151
 
152
152
  Create the ``/etc/backups/autoeject`` file to have the script automatically eject the drive
153
- after creating the backup. Rename the file to something else (e.g. ``/etc/backup/autoeject-no``)
153
+ after creating the backup. Rename the file to something else (e.g. ``/etc/backups/autoeject-no``)
154
154
  when you want to do something with the drive after creating backups (e.g running check).
155
155
 
156
156
  Create the ``/etc/backups/backup-suspend`` file if the machine should suspend after completing
@@ -177,7 +177,7 @@ Find the UUID of the file system that backups should be stored on::
177
177
 
178
178
  lsblk -o+uuid,label
179
179
 
180
- Note the UUID into the ``/etc/backup/backup.disks`` file.
180
+ Note the UUID into the ``/etc/backups/backup.disks`` file.
181
181
 
182
182
  Mount the drive to /mnt/backup.
183
183
 
@@ -198,7 +198,7 @@ Security considerations
198
198
  -----------------------
199
199
 
200
200
  The script as shown above will mount any file system with an UUID listed in
201
- ``/etc/backup/backup.disks``. The UUID check is a safety / annoyance-reduction
201
+ ``/etc/backups/backup.disks``. The UUID check is a safety / annoyance-reduction
202
202
  mechanism to keep the script from blowing up whenever a random USB thumb drive is connected.
203
203
  It is not meant as a security mechanism. Mounting file systems and reading repository
204
204
  data exposes additional attack surfaces (kernel file system drivers,
@@ -82,7 +82,7 @@ The options which are added to the key will perform the following:
82
82
  Due to the ``cd`` command we use, the server automatically changes the current
83
83
  working directory. Then client doesn't need to have knowledge of the absolute
84
84
  or relative remote repository path and can directly access the repositories at
85
- ``<user>@<host>:<repo>``.
85
+ ``ssh://<user>@<host>/./<repo>``.
86
86
 
87
87
  .. note:: The setup above ignores all client given commandline parameters
88
88
  which are normally appended to the `borg serve` command.
@@ -94,21 +94,21 @@ The client needs to initialize the `pictures` repository like this:
94
94
 
95
95
  ::
96
96
 
97
- borg init backup@backup01.srv.local:pictures
97
+ borg init ssh://backup@backup01.srv.local/./pictures
98
98
 
99
99
  Or with the full path (should actually never be used, as only for demonstration purposes).
100
100
  The server should automatically change the current working directory to the `<client fqdn>` folder.
101
101
 
102
102
  ::
103
103
 
104
- borg init backup@backup01.srv.local:/home/backup/repos/johndoe.clnt.local/pictures
104
+ borg init ssh://backup@backup01.srv.local/home/backup/repos/johndoe.clnt.local/pictures
105
105
 
106
106
  When `johndoe.clnt.local` tries to access a not restricted path the following error is raised.
107
107
  John Doe tries to back up into the Web 01 path:
108
108
 
109
109
  ::
110
110
 
111
- borg init backup@backup01.srv.local:/home/backup/repos/web01.srv.local/pictures
111
+ borg init ssh://backup@backup01.srv.local/home/backup/repos/web01.srv.local/pictures
112
112
 
113
113
  ::
114
114
 
@@ -68,8 +68,6 @@ can be filled to the specified quota.
68
68
  If storage quotas are used, ensure that all deployed Borg releases
69
69
  support storage quotas.
70
70
 
71
- Refer to :ref:`internals_storage_quota` for more details on storage quotas.
72
-
73
71
  **Specificities: Append-only repositories**
74
72
 
75
73
  Running ``borg init`` via a ``borg serve --append-only`` server will **not**