borgbackup 1.4.1__tar.gz → 1.4.3__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 (337) hide show
  1. {borgbackup-1.4.1 → borgbackup-1.4.3}/Brewfile +2 -2
  2. {borgbackup-1.4.1 → borgbackup-1.4.3}/CHANGES.rst +132 -12
  3. {borgbackup-1.4.1 → borgbackup-1.4.3}/MANIFEST.in +3 -3
  4. {borgbackup-1.4.1 → borgbackup-1.4.3}/PKG-INFO +26 -27
  5. {borgbackup-1.4.1 → borgbackup-1.4.3}/README.rst +26 -26
  6. borgbackup-1.4.3/README_WINDOWS.rst +48 -0
  7. borgbackup-1.4.3/docs/binaries/00_README.txt +121 -0
  8. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/book.rst +1 -1
  9. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/borg_theme/css/borg.css +17 -1
  10. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/changes.rst +132 -12
  11. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/deployment/automated-local.rst +8 -8
  12. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/deployment/central-backup-server.rst +9 -9
  13. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/deployment/hosting-repositories.rst +2 -2
  14. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/deployment/image-backup.rst +4 -4
  15. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/deployment/non-root-user.rst +12 -12
  16. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/deployment/pull-backup.rst +6 -6
  17. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/development.rst +27 -26
  18. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/faq.rst +36 -14
  19. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/index.rst +1 -1
  20. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/installation.rst +31 -10
  21. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/internals/data-structures.rst +8 -8
  22. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/internals/frontends.rst +16 -16
  23. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/internals/security.rst +3 -3
  24. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/internals.rst +3 -3
  25. borgbackup-1.4.3/docs/introduction.rst +8 -0
  26. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/man/borg-benchmark-crud.1 +8 -8
  27. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/man/borg-benchmark.1 +2 -2
  28. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/man/borg-break-lock.1 +3 -3
  29. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/man/borg-check.1 +5 -5
  30. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/man/borg-common.1 +1 -1
  31. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/man/borg-compact.1 +10 -3
  32. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/man/borg-compression.1 +1 -1
  33. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/man/borg-config.1 +2 -2
  34. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/man/borg-create.1 +42 -27
  35. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/man/borg-delete.1 +2 -2
  36. borgbackup-1.4.3/docs/man/borg-diff.1 +232 -0
  37. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/man/borg-export-tar.1 +7 -7
  38. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/man/borg-extract.1 +16 -9
  39. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/man/borg-import-tar.1 +5 -5
  40. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/man/borg-info.1 +3 -3
  41. borgbackup-1.4.3/docs/man/borg-init.1 +334 -0
  42. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/man/borg-key-change-passphrase.1 +4 -4
  43. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/man/borg-key-export.1 +7 -7
  44. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/man/borg-key-import.1 +3 -3
  45. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/man/borg-key-migrate-to-repokey.1 +5 -5
  46. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/man/borg-key.1 +1 -1
  47. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/man/borg-list.1 +2 -2
  48. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/man/borg-mount.1 +13 -6
  49. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/man/borg-patterns.1 +36 -16
  50. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/man/borg-placeholders.1 +3 -3
  51. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/man/borg-prune.1 +17 -17
  52. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/man/borg-recreate.1 +15 -15
  53. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/man/borg-rename.1 +1 -1
  54. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/man/borg-serve.1 +40 -19
  55. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/man/borg-umount.1 +3 -3
  56. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/man/borg-upgrade.1 +10 -10
  57. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/man/borg-version.1 +7 -7
  58. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/man/borg-with-lock.1 +5 -5
  59. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/man/borg.1 +8 -2
  60. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/man/borgfs.1 +13 -6
  61. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/man_intro.rst +1 -1
  62. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/misc/create_chunker-params.txt +1 -2
  63. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/quickstart.rst +16 -16
  64. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/support.rst +3 -3
  65. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/usage/benchmark_crud.rst.inc +8 -8
  66. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/usage/break-lock.rst.inc +2 -2
  67. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/usage/check.rst.inc +4 -4
  68. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/usage/compact.rst +1 -1
  69. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/usage/compact.rst.inc +8 -1
  70. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/usage/config.rst.inc +1 -1
  71. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/usage/create.rst.inc +37 -26
  72. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/usage/debug.rst +2 -2
  73. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/usage/delete.rst +1 -1
  74. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/usage/diff.rst +9 -1
  75. borgbackup-1.4.3/docs/usage/diff.rst.inc +158 -0
  76. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/usage/export-tar.rst.inc +1 -1
  77. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/usage/extract.rst +3 -0
  78. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/usage/extract.rst.inc +12 -8
  79. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/usage/general/environment.rst.inc +7 -0
  80. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/usage/general.rst +5 -5
  81. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/usage/help.rst.inc +31 -17
  82. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/usage/import-tar.rst.inc +4 -4
  83. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/usage/info.rst.inc +2 -2
  84. borgbackup-1.4.3/docs/usage/init.rst.inc +272 -0
  85. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/usage/key_change-passphrase.rst.inc +3 -3
  86. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/usage/key_export.rst.inc +6 -6
  87. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/usage/key_import.rst.inc +2 -2
  88. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/usage/key_migrate-to-repokey.rst.inc +4 -4
  89. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/usage/list.rst.inc +2 -2
  90. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/usage/mount.rst +2 -2
  91. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/usage/mount.rst.inc +13 -6
  92. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/usage/notes.rst +17 -17
  93. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/usage/prune.rst +13 -13
  94. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/usage/prune.rst.inc +3 -3
  95. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/usage/recreate.rst +5 -5
  96. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/usage/recreate.rst.inc +9 -9
  97. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/usage/serve.rst +34 -18
  98. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/usage/tar.rst +5 -5
  99. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/usage/umount.rst.inc +1 -1
  100. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/usage/upgrade.rst +4 -4
  101. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/usage/upgrade.rst.inc +5 -5
  102. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/usage/version.rst.inc +6 -6
  103. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/usage/with-lock.rst.inc +4 -4
  104. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/usage.rst +1 -1
  105. {borgbackup-1.4.1 → borgbackup-1.4.3}/pyproject.toml +125 -14
  106. borgbackup-1.4.3/requirements.d/development.lock.txt +13 -0
  107. {borgbackup-1.4.1 → borgbackup-1.4.3}/requirements.d/development.txt +2 -1
  108. {borgbackup-1.4.1 → borgbackup-1.4.3}/scripts/borg.exe.spec +8 -7
  109. {borgbackup-1.4.1 → borgbackup-1.4.3}/scripts/errorlist.py +8 -8
  110. {borgbackup-1.4.1 → borgbackup-1.4.3}/scripts/fetch-binaries +5 -7
  111. {borgbackup-1.4.1 → borgbackup-1.4.3}/scripts/hash_sizes.py +6 -6
  112. {borgbackup-1.4.1 → borgbackup-1.4.3}/scripts/make.py +5 -5
  113. {borgbackup-1.4.1 → borgbackup-1.4.3}/scripts/shell_completions/bash/borg +5 -5
  114. {borgbackup-1.4.1 → borgbackup-1.4.3}/scripts/shell_completions/fish/borg.fish +5 -5
  115. {borgbackup-1.4.1 → borgbackup-1.4.3}/scripts/shell_completions/zsh/_borg +1 -1
  116. {borgbackup-1.4.1 → borgbackup-1.4.3}/scripts/upload-pypi +2 -2
  117. {borgbackup-1.4.1 → borgbackup-1.4.3}/setup.py +4 -4
  118. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/__init__.py +1 -1
  119. borgbackup-1.4.3/src/borg/__main__.py +15 -0
  120. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/_chunker.c +15 -15
  121. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/_hashindex.c +11 -11
  122. borgbackup-1.4.3/src/borg/_version.py +1 -0
  123. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/algorithms/__init__.py +1 -1
  124. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/algorithms/checksums.c +4888 -4040
  125. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/archive.py +59 -27
  126. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/archiver.py +544 -279
  127. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/cache.py +6 -6
  128. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/chunker.c +7069 -7191
  129. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/chunker.pyx +14 -14
  130. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/compress.c +11539 -13596
  131. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/compress.pyx +38 -42
  132. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/constants.py +21 -21
  133. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/crypto/_crypto_helpers.c +1 -1
  134. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/crypto/file_integrity.py +10 -10
  135. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/crypto/key.py +13 -14
  136. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/crypto/keymanager.py +1 -1
  137. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/crypto/low_level.c +9013 -10182
  138. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/crypto/low_level.pyx +18 -18
  139. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/crypto/nonces.py +10 -10
  140. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/fuse.py +3 -3
  141. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/fuse_impl.py +1 -1
  142. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/hashindex.c +7079 -7203
  143. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/hashindex.pyx +10 -10
  144. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/helpers/__init__.py +46 -19
  145. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/helpers/datastruct.py +19 -19
  146. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/helpers/errors.py +5 -5
  147. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/helpers/fs.py +15 -14
  148. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/helpers/manifest.py +8 -8
  149. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/helpers/misc.py +14 -14
  150. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/helpers/msgpack.py +13 -4
  151. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/helpers/parseformat.py +20 -19
  152. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/helpers/process.py +9 -3
  153. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/helpers/progress.py +6 -6
  154. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/helpers/time.py +14 -16
  155. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/helpers/yes.py +28 -28
  156. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/item.c +10869 -13642
  157. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/item.pyx +4 -4
  158. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/locking.py +17 -17
  159. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/logger.py +29 -29
  160. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/lrucache.py +2 -2
  161. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/nanorst.py +5 -5
  162. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/paperkey.html +19 -18
  163. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/patterns.py +10 -10
  164. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/platform/__init__.py +4 -2
  165. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/platform/base.py +21 -21
  166. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/platform/darwin.c +7851 -6362
  167. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/platform/darwin.pyx +66 -4
  168. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/platform/freebsd.c +8043 -6468
  169. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/platform/freebsd.pyx +82 -16
  170. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/platform/linux.c +8867 -9136
  171. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/platform/linux.pyx +38 -23
  172. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/platform/posix.c +5426 -4871
  173. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/platform/posix.pyx +2 -3
  174. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/platform/syncfilerange.c +1864 -1342
  175. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/platform/windows.c +4626 -3729
  176. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/platform/xattr.py +9 -9
  177. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/platformflags.py +4 -2
  178. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/remote.py +7 -7
  179. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/repository.py +14 -11
  180. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/selftest.py +4 -4
  181. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/shellpattern.py +2 -2
  182. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/testsuite/__init__.py +57 -9
  183. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/testsuite/archive.py +27 -4
  184. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/testsuite/archiver.py +267 -37
  185. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/testsuite/benchmark.py +1 -1
  186. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/testsuite/chunker.py +1 -1
  187. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/testsuite/chunker_pytest.py +44 -3
  188. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/testsuite/chunker_slow.py +9 -6
  189. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/testsuite/compress.py +8 -8
  190. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/testsuite/hashindex.py +18 -18
  191. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/testsuite/hashindex_stress.py +5 -5
  192. borgbackup-1.4.3/src/borg/testsuite/issue_8535.py +109 -0
  193. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/testsuite/item.py +1 -1
  194. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/testsuite/key.py +1 -1
  195. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/testsuite/nonces.py +1 -1
  196. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/testsuite/patterns.py +8 -4
  197. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/testsuite/platform.py +1 -1
  198. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/testsuite/repository.py +14 -15
  199. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/testsuite/shellpattern.py +2 -2
  200. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/testsuite/upgrader.py +22 -22
  201. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/testsuite/xattr.py +4 -4
  202. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/upgrader.py +48 -47
  203. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/version.py +2 -2
  204. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/xattr.py +13 -14
  205. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borgbackup.egg-info/PKG-INFO +26 -27
  206. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borgbackup.egg-info/SOURCES.txt +1 -2
  207. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borgbackup.egg-info/requires.txt +1 -1
  208. borgbackup-1.4.1/.coveragerc +0 -24
  209. borgbackup-1.4.1/README_WINDOWS.rst +0 -48
  210. borgbackup-1.4.1/docs/binaries/00_README.txt +0 -87
  211. borgbackup-1.4.1/docs/introduction.rst +0 -8
  212. borgbackup-1.4.1/docs/man/borg-diff.1 +0 -157
  213. borgbackup-1.4.1/docs/man/borg-init.1 +0 -265
  214. borgbackup-1.4.1/docs/usage/diff.rst.inc +0 -108
  215. borgbackup-1.4.1/docs/usage/init.rst.inc +0 -193
  216. borgbackup-1.4.1/requirements.d/development.lock.txt +0 -12
  217. borgbackup-1.4.1/src/borg/__main__.py +0 -15
  218. borgbackup-1.4.1/src/borg/_version.py +0 -1
  219. borgbackup-1.4.1/tox.ini +0 -34
  220. {borgbackup-1.4.1 → borgbackup-1.4.3}/.pre-commit-config.yaml +0 -0
  221. {borgbackup-1.4.1 → borgbackup-1.4.3}/.readthedocs.yaml +0 -0
  222. {borgbackup-1.4.1 → borgbackup-1.4.3}/AUTHORS +0 -0
  223. {borgbackup-1.4.1 → borgbackup-1.4.3}/LICENSE +0 -0
  224. {borgbackup-1.4.1 → borgbackup-1.4.3}/SECURITY.md +0 -0
  225. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/Makefile +0 -0
  226. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/_static/Makefile +0 -0
  227. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/_static/favicon.ico +0 -0
  228. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/_static/logo.pdf +0 -0
  229. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/_static/logo.png +0 -0
  230. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/_static/logo.svg +0 -0
  231. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/_static/logo_font.txt +0 -0
  232. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/_templates/globaltoc.html +0 -0
  233. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/_templates/layout.html +0 -0
  234. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/_templates/logo-text.html +0 -0
  235. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/authors.rst +0 -0
  236. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/conf.py +0 -0
  237. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/deployment.rst +0 -0
  238. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/global.rst.inc +0 -0
  239. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/internals/compaction.png +0 -0
  240. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/internals/compaction.vsd +0 -0
  241. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/internals/encryption.png +0 -0
  242. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/internals/encryption.vsd +0 -0
  243. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/internals/object-graph.png +0 -0
  244. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/internals/object-graph.vsd +0 -0
  245. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/internals/structure.png +0 -0
  246. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/internals/structure.vsd +0 -0
  247. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/man/borg-change-passphrase.1 +0 -0
  248. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/misc/asciinema/README +0 -0
  249. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/misc/asciinema/Vagrantfile +0 -0
  250. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/misc/asciinema/advanced.json +0 -0
  251. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/misc/asciinema/advanced.tcl +0 -0
  252. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/misc/asciinema/basic.json +0 -0
  253. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/misc/asciinema/basic.tcl +0 -0
  254. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/misc/asciinema/install.json +0 -0
  255. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/misc/asciinema/install.tcl +0 -0
  256. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/misc/asciinema/sample-wallpapers.txt +0 -0
  257. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/misc/benchmark-crud.txt +0 -0
  258. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/misc/borg-data-flow.png +0 -0
  259. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/misc/borg-data-flow.vsd +0 -0
  260. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/misc/internals-picture.txt +0 -0
  261. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/misc/logging.conf +0 -0
  262. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/misc/prune-example.txt +0 -0
  263. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/quickstart_example.rst.inc +0 -0
  264. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/usage/benchmark.rst +0 -0
  265. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/usage/borgfs.rst +0 -0
  266. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/usage/borgfs.rst.inc +0 -0
  267. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/usage/change-passphrase.rst.inc +0 -0
  268. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/usage/check.rst +0 -0
  269. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/usage/common-options.rst.inc +0 -0
  270. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/usage/config.rst +0 -0
  271. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/usage/create.rst +0 -0
  272. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/usage/delete.rst.inc +0 -0
  273. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/usage/general/date-time.rst.inc +0 -0
  274. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/usage/general/file-metadata.rst.inc +0 -0
  275. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/usage/general/file-systems.rst.inc +0 -0
  276. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/usage/general/logging.rst.inc +0 -0
  277. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/usage/general/positional-arguments.rst.inc +0 -0
  278. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/usage/general/repository-locations.rst.inc +0 -0
  279. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/usage/general/repository-urls.rst.inc +0 -0
  280. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/usage/general/resources.rst.inc +0 -0
  281. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/usage/general/return-codes.rst.inc +0 -0
  282. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/usage/general/units.rst.inc +0 -0
  283. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/usage/help.rst +0 -0
  284. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/usage/info.rst +0 -0
  285. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/usage/init.rst +0 -0
  286. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/usage/key.rst +0 -0
  287. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/usage/list.rst +0 -0
  288. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/usage/lock.rst +0 -0
  289. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/usage/rename.rst +0 -0
  290. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/usage/rename.rst.inc +0 -0
  291. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/usage/serve.rst.inc +0 -0
  292. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/usage/usage_general.rst.inc +0 -0
  293. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/usage/version.rst +0 -0
  294. {borgbackup-1.4.1 → borgbackup-1.4.3}/docs/usage_general.rst.inc +0 -0
  295. {borgbackup-1.4.1 → borgbackup-1.4.3}/requirements.d/docs.txt +0 -0
  296. {borgbackup-1.4.1 → borgbackup-1.4.3}/scripts/fuzz-cache-sync/HOWTO +0 -0
  297. {borgbackup-1.4.1 → borgbackup-1.4.3}/scripts/fuzz-cache-sync/main.c +0 -0
  298. {borgbackup-1.4.1 → borgbackup-1.4.3}/scripts/fuzz-cache-sync/testcase_dir/test_simple +0 -0
  299. {borgbackup-1.4.1 → borgbackup-1.4.3}/scripts/glibc_check.py +0 -0
  300. {borgbackup-1.4.1 → borgbackup-1.4.3}/scripts/msys2-build +0 -0
  301. {borgbackup-1.4.1 → borgbackup-1.4.3}/scripts/msys2-install-deps +0 -0
  302. {borgbackup-1.4.1 → borgbackup-1.4.3}/scripts/sdist-sign +0 -0
  303. {borgbackup-1.4.1 → borgbackup-1.4.3}/scripts/sign-binaries +0 -0
  304. {borgbackup-1.4.1 → borgbackup-1.4.3}/setup.cfg +0 -0
  305. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/_endian.h +0 -0
  306. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/_item.c +0 -0
  307. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/algorithms/checksums.pyx +0 -0
  308. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/algorithms/crc32_clmul.c +0 -0
  309. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/algorithms/crc32_dispatch.c +0 -0
  310. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/algorithms/crc32_slice_by_8.c +0 -0
  311. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/cache_sync/cache_sync.c +0 -0
  312. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/cache_sync/sysdep.h +0 -0
  313. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/cache_sync/unpack.h +0 -0
  314. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/cache_sync/unpack_define.h +0 -0
  315. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/cache_sync/unpack_template.h +0 -0
  316. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/crypto/__init__.py +0 -0
  317. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/crypto/_crypto_helpers.h +0 -0
  318. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/helpers/checks.py +0 -0
  319. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/platform/syncfilerange.pyx +0 -0
  320. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/platform/windows.pyx +0 -0
  321. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/testsuite/attic.tar.gz +0 -0
  322. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/testsuite/cache.py +0 -0
  323. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/testsuite/checksums.py +0 -0
  324. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/testsuite/conftest.py +0 -0
  325. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/testsuite/crypto.py +0 -0
  326. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/testsuite/efficient_collection_queue.py +0 -0
  327. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/testsuite/file_integrity.py +0 -0
  328. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/testsuite/helpers.py +0 -0
  329. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/testsuite/locking.py +0 -0
  330. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/testsuite/logger.py +0 -0
  331. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/testsuite/lrucache.py +0 -0
  332. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/testsuite/nanorst.py +0 -0
  333. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/testsuite/remote.py +0 -0
  334. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borg/testsuite/version.py +0 -0
  335. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borgbackup.egg-info/dependency_links.txt +0 -0
  336. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borgbackup.egg-info/entry_points.txt +0 -0
  337. {borgbackup-1.4.1 → borgbackup-1.4.3}/src/borgbackup.egg-info/top_level.txt +0 -0
@@ -2,10 +2,10 @@ brew 'pkg-config'
2
2
  brew 'zstd'
3
3
  brew 'lz4'
4
4
  brew 'xxhash'
5
- brew 'openssl@3.0'
5
+ brew 'openssl@3'
6
6
 
7
7
  # osxfuse (aka macFUSE) is only required for "borg mount",
8
- # but won't work on github actions' workers.
8
+ # but won't work on GitHub Actions' workers.
9
9
  # it requires installing a kernel extension, so some users
10
10
  # may want it and some won't.
11
11
 
@@ -87,11 +87,11 @@ no matter what encryption mode they use, including "none"):
87
87
 
88
88
  5. Done. Manifest and archives are TAM authenticated now.
89
89
 
90
- Vulnerability time line:
90
+ Vulnerability timeline:
91
91
 
92
92
  * 2023-06-13: Vulnerability discovered during code review by Thomas Waldmann
93
93
  * 2023-06-13...: Work on fixing the issue, upgrade procedure, docs.
94
- * 2023-06-30: CVE was assigned via Github CNA
94
+ * 2023-06-30: CVE was assigned via GitHub CNA
95
95
  * 2023-06-30 .. 2023-08-29: Fixed issue, code review, docs, testing.
96
96
  * 2023-08-30: Released fixed version 1.2.5 (broken upgrade procedure for some repos)
97
97
  * 2023-08-31: Released fixed version 1.2.6 (fixes upgrade procedure)
@@ -230,7 +230,7 @@ This attack is mitigated by:
230
230
 
231
231
  We are not aware of others having discovered, disclosed or exploited this vulnerability.
232
232
 
233
- Vulnerability time line:
233
+ Vulnerability timeline:
234
234
 
235
235
  * 2016-11-14: Vulnerability and fix discovered during review of cryptography by Marian Beermann (@enkore)
236
236
  * 2016-11-20: First patch
@@ -414,14 +414,134 @@ Compatibility notes:
414
414
  Change Log
415
415
  ==========
416
416
 
417
- Version 1.4.1 (2025-04-19)
417
+ Version 1.4.3 (2025-12-02)
418
418
  --------------------------
419
419
 
420
- For upgrade and compatibility hints, please also read the section "Upgrade Notes"
420
+ For upgrade and compatibility hints, please also read the "Upgrade Notes" section
421
421
  above.
422
422
 
423
423
  New features:
424
424
 
425
+ - None.
426
+
427
+ Fixes:
428
+
429
+ - compact: replace AssertionError with a warning, #8535.
430
+ - compact: also fix segment hints data for lost segment files.
431
+ - CI: FUSE-related fixes and improvements, #9182:
432
+
433
+ - The Linux and FreeBSD binaries built on GitHub now include working
434
+ FUSE support (based on llfuse).
435
+ - We can't include FUSE support in the macOS binaries built on GitHub,
436
+ because we can't install macFUSE there; use our Homebrew tap for that.
437
+
438
+ Other changes:
439
+
440
+ - Drop Python 3.9 support (has reached end of life at python.org).
441
+ - CI:
442
+
443
+ - Install the correct FUSE library depending on the tox environment.
444
+ - PyInstaller binary building: build and upload early, then run CI tests.
445
+ - For now, use llfuse, as there is an issue with PyInstaller and pyfuse3.
446
+ - Backported vm_tests (FreeBSD/NetBSD/OpenBSD/Haiku) from the master branch.
447
+ - Dynamic code analysis (Address and Undefined Behavior Sanitizers), #6819.
448
+ - Add tag-based workflows and provenance attestation for GitHub-built
449
+ binaries, #9135, #9136.
450
+ - Docs:
451
+
452
+ - Some fixes and updates to the FAQ, #9188.
453
+ - Update binary README; release binaries are built on GitHub now.
454
+
455
+
456
+ Version 1.4.2 (2025-10-31)
457
+ --------------------------
458
+
459
+ New features:
460
+
461
+ - BORG_MSGPACK_VERSION_CHECK=no to optionally disable the msgpack version
462
+ check; default is "yes"; use at your own risk, #9109.
463
+ - fat binary builds on GitHub (see assets on the GitHub releases page):
464
+
465
+ - for Linux with glibc 2.35+ (Intel/AMD and ARM64)
466
+ - for macOS 14+ (Apple Silicon/ARM64) and macOS 13+ (Intel)
467
+ - diff --sort-by: enhanced sorting, #8998
468
+ - create: add --files-changed=MODE option (controls how borg detects whether
469
+ a file has changed while it is being backed up)
470
+ - improve tty-less progress reporting (--progress)
471
+
472
+ Fixes:
473
+
474
+ - extract: fs flags: use get/set to influence only specific flags, #9039,
475
+ Linux/macOS/FreeBSD only.
476
+ - extract: fs flags: remove support for the compression flag; this wasn't
477
+ working correctly anyway.
478
+ - create/info: fix discrepancies in archive stats, #8898, #9003
479
+ - import-tar: fix the dot-slash issue; add a test, #8947
480
+ - import-tar: when printing the path, use the already-normalized item.path
481
+ - preprocess_args: fix option name matching
482
+ - fix ChunkerParams validation
483
+ - mount --show-rc: display main process rc, #8308
484
+ - json: include archive keys in JSON lines when requested via --format, #9095
485
+
486
+ Other changes:
487
+
488
+ - support Python 3.14
489
+ - msgpack: allow 1.1.2
490
+ - Brewfile: use openssl@3 rather than openssl@3.0, to have a more recent OpenSSL.
491
+ - msgpack version check: ignore "rc" and other version elements
492
+ - pyproject.toml: use SPDX expression for license, add license-files, #8771.
493
+ Also raise the setuptools version requirement appropriately.
494
+
495
+ If the setuptools requirement is problematic when packaging borg for an
496
+ OS distribution that must use an older setuptools, apply a reverse patch
497
+ when packaging borg; using an older setuptools should not be a problem.
498
+ - Chunker params: warn about an even window size for buzhash, #8868
499
+ - suppress compiler warning about CYTHON_FALLTHROUGH
500
+ - remove unnecessary check that Padmé overhead is at most 12%
501
+ - PyInstaller spec: avoid pkg_resources warning
502
+ - update requirements.lock.txt to current versions
503
+ - docs:
504
+
505
+ - borg-serve: simplify example of environment variables in authorized_keys, #8318
506
+ - unify `master` and `1.4-maint` installation docs
507
+ - update install docs to include `SETUPTOOLS_SCM_PRETEND_VERSION`
508
+ - add Arch Linux to the "Installing from source" docs
509
+ - add systemd-inhibit and examples, #8989
510
+ - fix typos / grammar in docs and code
511
+ - document how to debug borg mount, #5461
512
+ - document what happens when a new keyfile repo is created at the same path, #6230
513
+ - borg serve: recommend using a simple shell, #8318
514
+ - update the README for the binaries
515
+ - extract: document how to use wildcards in PATHs, #8589
516
+ - improve borg help patterns, #7144
517
+ - clarify the scope of the default pattern style, #9004
518
+ - explain how to get maximum compaction with --threshold 0 and trade-offs, #9112, #8716
519
+ - rewrite `borg init --encryption` docs
520
+ - tests:
521
+
522
+ - save temporary space
523
+ - test_chunkpoints_unchanged: do not use blake2b_256
524
+ - fix diff command test on macOS HFS+, #8860
525
+ - fuzzing test for default chunker
526
+ - read_only CM: skip test if cmd_immutable is unsuccessful, #9021
527
+ - pyproject.toml: correctly define test environments for FUSE testing
528
+ - coverage/tox: use pyproject.toml, disable no-ctracer warning
529
+ - CI: speed up pull requests
530
+ - vagrant:
531
+
532
+ - use Python 3.11.14
533
+ - add debian trixie box
534
+ - drop broken/EOL debian buster VM / borg-linux-glibc228
535
+ - drop outdated/slow/unsupported macOS 10.12 VM / borg-macos1012 (Intel)
536
+ - add an OpenBSD 7.7 box
537
+ - try to fix OpenIndiana box, please see #9118
538
+
539
+
540
+ Version 1.4.1 (2025-04-19)
541
+ --------------------------
542
+
543
+ New features:
544
+
425
545
  - prune: add 13weekly and 3monthly quarterly pruning strategies, #8337
426
546
  - add BORG_USE_CHUNKS_ARCHIVE env var as a cleaner way to control whether
427
547
  borg shall use chunks.archive.d/ cache directory. the previous "hack" to
@@ -1206,7 +1326,7 @@ Fixes:
1206
1326
  fix potential memory leak with ssh: remote repository with partial extraction.
1207
1327
  - remove empty shadowed_segments lists, #5275
1208
1328
  - fix bad default: manifest.archives.list(consider_checkpoints=False),
1209
- fixes tracebacks / KeyErros for missing objects in ChunkIndex, #5668
1329
+ fixes tracebacks / KeyErrors for missing objects in ChunkIndex, #5668
1210
1330
 
1211
1331
  New features:
1212
1332
 
@@ -1217,7 +1337,7 @@ New features:
1217
1337
  - detect all-zero chunks in read data in "buzhash" and "fixed" chunkers
1218
1338
  - cached_hash: use a small LRU cache to accelerate all-zero chunks hashing
1219
1339
  - use cached_hash also to generate all-zero replacement chunks
1220
- - create --remote-buffer, add a upload buffer for remote repos, #5574
1340
+ - create --remote-buffer, add an upload buffer for remote repos, #5574
1221
1341
  - prune: keep oldest archive when retention target not met
1222
1342
 
1223
1343
  Other changes:
@@ -1229,7 +1349,7 @@ Other changes:
1229
1349
  - create: add repository location to --stats output, #5491
1230
1350
  - check: debug log the segment filename
1231
1351
  - delete: add a --list switch to borg delete, #5116
1232
- - borg debug dump-hints - implemented to e.g. to look at shadow_index
1352
+ - borg debug dump-hints - implemented e.g. to look at shadow_index
1233
1353
  - Tab completion support for additional archives for 'borg delete'
1234
1354
  - refactor: have one borg.constants.zero all-zero bytes object
1235
1355
  - refactor shadow_index updating repo.put/delete, #5661, #5636.
@@ -1265,12 +1385,12 @@ Fixes:
1265
1385
  New features:
1266
1386
 
1267
1387
  - create: implement --paths-from-stdin and --paths-from-command, see #5492.
1268
- These switches read paths to archive from stdin. Delimiter can specified
1269
- by --paths-delimiter=DELIM. Paths read will be added honoring every
1270
- option but exclusion options and --one-file-system. borg won't recurse
1388
+ These switches read paths to archive from stdin. Delimiter can be specified
1389
+ by --paths-delimiter=DELIM. Paths read will be added honoring all
1390
+ options except exclusion options and --one-file-system. borg won't recurse
1271
1391
  into directories.
1272
1392
  - 'obfuscate' pseudo compressor obfuscates compressed chunk size in repo
1273
- - add pyfuse3 (successor of llfuse) as an alternative lowlevel fuse
1393
+ - add pyfuse3 (successor of llfuse) as an alternative low-level FUSE
1274
1394
  implementation to llfuse (deprecated), #5407.
1275
1395
  FUSE implementation can be switched via env var BORG_FUSE_IMPL.
1276
1396
  - allow appending to the files cache filename with BORG_FILES_CACHE_SUFFIX
@@ -1,6 +1,6 @@
1
- # stuff we need to include into the sdist is handled automatically by
2
- # setuptools_scm - it includes all git-committed files.
3
- # but we want to exclude some committed files/dirs not needed in the sdist:
1
+ # Files to include into the sdist are handled automatically by
2
+ # setuptools_scm — it includes all Git-committed files.
3
+ # But we want to exclude some committed files/dirs not needed in the sdist:
4
4
  exclude .editorconfig .gitattributes .gitignore .mailmap Vagrantfile
5
5
  prune .github
6
6
  include src/borg/platform/darwin.c src/borg/platform/freebsd.c src/borg/platform/linux.c src/borg/platform/posix.c
@@ -1,10 +1,10 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: borgbackup
3
- Version: 1.4.1
3
+ Version: 1.4.3
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>
7
- License: BSD
7
+ License-Expression: BSD-3-Clause
8
8
  Project-URL: Homepage, https://borgbackup.org/
9
9
  Project-URL: Bug Tracker, https://github.com/borgbackup/borg/issues
10
10
  Project-URL: Documentation, https://borgbackup.readthedocs.io/
@@ -14,7 +14,6 @@ Keywords: backup,borgbackup
14
14
  Classifier: Development Status :: 4 - Beta
15
15
  Classifier: Environment :: Console
16
16
  Classifier: Intended Audience :: System Administrators
17
- Classifier: License :: OSI Approved :: BSD License
18
17
  Classifier: Operating System :: POSIX :: BSD :: FreeBSD
19
18
  Classifier: Operating System :: POSIX :: BSD :: OpenBSD
20
19
  Classifier: Operating System :: POSIX :: BSD :: NetBSD
@@ -22,17 +21,17 @@ Classifier: Operating System :: MacOS :: MacOS X
22
21
  Classifier: Operating System :: POSIX :: Linux
23
22
  Classifier: Programming Language :: Python
24
23
  Classifier: Programming Language :: Python :: 3
25
- Classifier: Programming Language :: Python :: 3.9
26
24
  Classifier: Programming Language :: Python :: 3.10
27
25
  Classifier: Programming Language :: Python :: 3.11
28
26
  Classifier: Programming Language :: Python :: 3.12
29
27
  Classifier: Programming Language :: Python :: 3.13
28
+ Classifier: Programming Language :: Python :: 3.14
30
29
  Classifier: Topic :: Security :: Cryptography
31
30
  Classifier: Topic :: System :: Archiving :: Backup
32
- Requires-Python: >=3.9
31
+ Requires-Python: >=3.10
33
32
  License-File: LICENSE
34
33
  License-File: AUTHORS
35
- Requires-Dist: msgpack<=1.1.0,>=1.0.3
34
+ Requires-Dist: msgpack<=1.1.2,>=1.0.3
36
35
  Requires-Dist: packaging
37
36
  Provides-Extra: llfuse
38
37
  Requires-Dist: llfuse>=1.3.8; extra == "llfuse"
@@ -59,7 +58,7 @@ See the `installation manual`_ or, if you have already
59
58
  downloaded Borg, ``docs/installation.rst`` to get started with Borg.
60
59
  There is also an `offline documentation`_ available, in multiple formats.
61
60
 
62
- .. _installation manual: https://borgbackup.readthedocs.org/en/stable/installation.html
61
+ .. _installation manual: https://borgbackup.readthedocs.io/en/stable/installation.html
63
62
  .. _offline documentation: https://readthedocs.org/projects/borgbackup/downloads
64
63
 
65
64
  Main features
@@ -98,10 +97,10 @@ Main features
98
97
 
99
98
  **Data encryption**
100
99
  All data can be protected using 256-bit AES encryption, data integrity and
101
- authenticity is verified using HMAC-SHA256. Data is encrypted clientside.
100
+ authenticity is verified using HMAC-SHA256. Data is encrypted client-side.
102
101
 
103
102
  **Obfuscation**
104
- Optionally, borg can actively obfuscate e.g. the size of files / chunks to
103
+ Optionally, Borg can actively obfuscate, e.g., the size of files/chunks to
105
104
  make fingerprinting attacks more difficult.
106
105
 
107
106
  **Compression**
@@ -114,24 +113,24 @@ Main features
114
113
  * lzma (low speed, high compression)
115
114
 
116
115
  **Off-site backups**
117
- Borg can store data on any remote host accessible over SSH. If Borg is
118
- installed on the remote host, big performance gains can be achieved
119
- compared to using a network filesystem (sshfs, nfs, ...).
116
+ Borg can store data on any remote host accessible over SSH. If Borg is
117
+ installed on the remote host, significant performance gains can be achieved
118
+ compared to using a network file system (sshfs, NFS, ...).
120
119
 
121
- **Backups mountable as filesystems**
122
- Backup archives are mountable as userspace filesystems for easy interactive
123
- backup examination and restores (e.g. by using a regular file manager).
120
+ **Backups mountable as file systems**
121
+ Backup archives are mountable as user-space file systems for easy interactive
122
+ backup examination and restores (e.g., by using a regular file manager).
124
123
 
125
124
  **Easy installation on multiple platforms**
126
125
  We offer single-file binaries that do not require installing anything -
127
126
  you can just run them on these platforms:
128
127
 
129
128
  * Linux
130
- * Mac OS X
129
+ * macOS
131
130
  * FreeBSD
132
131
  * OpenBSD and NetBSD (no xattrs/ACLs support or binaries yet)
133
132
  * Cygwin (experimental, no binaries yet)
134
- * Linux Subsystem of Windows 10 (experimental)
133
+ * Windows Subsystem for Linux (WSL) on Windows 10/11 (experimental)
135
134
 
136
135
  **Free and Open Source Software**
137
136
  * security and functionality can be audited independently
@@ -169,9 +168,9 @@ Now doing another backup, just to show off the great deduplication::
169
168
  -----------------------------------------------------------------------------
170
169
 
171
170
 
172
- For a graphical frontend refer to our complementary project `BorgWeb <https://borgweb.readthedocs.io/>`_.
171
+ For a graphical frontend, refer to our complementary project `BorgWeb <https://borgweb.readthedocs.io/>`_.
173
172
 
174
- Helping, Donations and Bounties, becoming a Patron
173
+ Helping, donations and bounties, becoming a Patron
175
174
  --------------------------------------------------
176
175
 
177
176
  Your help is always welcome!
@@ -185,17 +184,17 @@ https://www.borgbackup.org/support/fund.html
185
184
  Links
186
185
  -----
187
186
 
188
- * `Main Web Site <https://borgbackup.readthedocs.org/>`_
187
+ * `Main website <https://borgbackup.readthedocs.io/>`_
189
188
  * `Releases <https://github.com/borgbackup/borg/releases>`_,
190
189
  `PyPI packages <https://pypi.python.org/pypi/borgbackup>`_ and
191
- `ChangeLog <https://github.com/borgbackup/borg/blob/master/docs/changes.rst>`_
192
- * `Offline Documentation <https://readthedocs.org/projects/borgbackup/downloads>`_
190
+ `Changelog <https://github.com/borgbackup/borg/blob/master/docs/changes.rst>`_
191
+ * `Offline documentation <https://readthedocs.org/projects/borgbackup/downloads>`_
193
192
  * `GitHub <https://github.com/borgbackup/borg>`_ and
194
- `Issue Tracker <https://github.com/borgbackup/borg/issues>`_.
195
- * `Web-Chat (IRC) <https://web.libera.chat/#borgbackup>`_ and
196
- `Mailing List <https://mail.python.org/mailman/listinfo/borgbackup>`_
197
- * `License <https://borgbackup.readthedocs.org/en/stable/authors.html#license>`_
198
- * `Security contact <https://borgbackup.readthedocs.io/en/latest/support.html#security-contact>`_
193
+ `Issue tracker <https://github.com/borgbackup/borg/issues>`_.
194
+ * `Web chat (IRC) <https://web.libera.chat/#borgbackup>`_ and
195
+ `Mailing list <https://mail.python.org/mailman/listinfo/borgbackup>`_
196
+ * `License <https://borgbackup.readthedocs.io/en/stable/authors.html#license>`_
197
+ * `Security contact <https://borgbackup.readthedocs.io/en/stable/support.html#security-contact>`_
199
198
 
200
199
  Compatibility notes
201
200
  -------------------
@@ -18,7 +18,7 @@ See the `installation manual`_ or, if you have already
18
18
  downloaded Borg, ``docs/installation.rst`` to get started with Borg.
19
19
  There is also an `offline documentation`_ available, in multiple formats.
20
20
 
21
- .. _installation manual: https://borgbackup.readthedocs.org/en/stable/installation.html
21
+ .. _installation manual: https://borgbackup.readthedocs.io/en/stable/installation.html
22
22
  .. _offline documentation: https://readthedocs.org/projects/borgbackup/downloads
23
23
 
24
24
  Main features
@@ -57,10 +57,10 @@ Main features
57
57
 
58
58
  **Data encryption**
59
59
  All data can be protected using 256-bit AES encryption, data integrity and
60
- authenticity is verified using HMAC-SHA256. Data is encrypted clientside.
60
+ authenticity is verified using HMAC-SHA256. Data is encrypted client-side.
61
61
 
62
62
  **Obfuscation**
63
- Optionally, borg can actively obfuscate e.g. the size of files / chunks to
63
+ Optionally, Borg can actively obfuscate, e.g., the size of files/chunks to
64
64
  make fingerprinting attacks more difficult.
65
65
 
66
66
  **Compression**
@@ -73,24 +73,24 @@ Main features
73
73
  * lzma (low speed, high compression)
74
74
 
75
75
  **Off-site backups**
76
- Borg can store data on any remote host accessible over SSH. If Borg is
77
- installed on the remote host, big performance gains can be achieved
78
- compared to using a network filesystem (sshfs, nfs, ...).
76
+ Borg can store data on any remote host accessible over SSH. If Borg is
77
+ installed on the remote host, significant performance gains can be achieved
78
+ compared to using a network file system (sshfs, NFS, ...).
79
79
 
80
- **Backups mountable as filesystems**
81
- Backup archives are mountable as userspace filesystems for easy interactive
82
- backup examination and restores (e.g. by using a regular file manager).
80
+ **Backups mountable as file systems**
81
+ Backup archives are mountable as user-space file systems for easy interactive
82
+ backup examination and restores (e.g., by using a regular file manager).
83
83
 
84
84
  **Easy installation on multiple platforms**
85
85
  We offer single-file binaries that do not require installing anything -
86
86
  you can just run them on these platforms:
87
87
 
88
88
  * Linux
89
- * Mac OS X
89
+ * macOS
90
90
  * FreeBSD
91
91
  * OpenBSD and NetBSD (no xattrs/ACLs support or binaries yet)
92
92
  * Cygwin (experimental, no binaries yet)
93
- * Linux Subsystem of Windows 10 (experimental)
93
+ * Windows Subsystem for Linux (WSL) on Windows 10/11 (experimental)
94
94
 
95
95
  **Free and Open Source Software**
96
96
  * security and functionality can be audited independently
@@ -128,9 +128,9 @@ Now doing another backup, just to show off the great deduplication::
128
128
  -----------------------------------------------------------------------------
129
129
 
130
130
 
131
- For a graphical frontend refer to our complementary project `BorgWeb <https://borgweb.readthedocs.io/>`_.
131
+ For a graphical frontend, refer to our complementary project `BorgWeb <https://borgweb.readthedocs.io/>`_.
132
132
 
133
- Helping, Donations and Bounties, becoming a Patron
133
+ Helping, donations and bounties, becoming a Patron
134
134
  --------------------------------------------------
135
135
 
136
136
  Your help is always welcome!
@@ -144,17 +144,17 @@ https://www.borgbackup.org/support/fund.html
144
144
  Links
145
145
  -----
146
146
 
147
- * `Main Web Site <https://borgbackup.readthedocs.org/>`_
147
+ * `Main website <https://borgbackup.readthedocs.io/>`_
148
148
  * `Releases <https://github.com/borgbackup/borg/releases>`_,
149
149
  `PyPI packages <https://pypi.python.org/pypi/borgbackup>`_ and
150
- `ChangeLog <https://github.com/borgbackup/borg/blob/master/docs/changes.rst>`_
151
- * `Offline Documentation <https://readthedocs.org/projects/borgbackup/downloads>`_
150
+ `Changelog <https://github.com/borgbackup/borg/blob/master/docs/changes.rst>`_
151
+ * `Offline documentation <https://readthedocs.org/projects/borgbackup/downloads>`_
152
152
  * `GitHub <https://github.com/borgbackup/borg>`_ and
153
- `Issue Tracker <https://github.com/borgbackup/borg/issues>`_.
154
- * `Web-Chat (IRC) <https://web.libera.chat/#borgbackup>`_ and
155
- `Mailing List <https://mail.python.org/mailman/listinfo/borgbackup>`_
156
- * `License <https://borgbackup.readthedocs.org/en/stable/authors.html#license>`_
157
- * `Security contact <https://borgbackup.readthedocs.io/en/latest/support.html#security-contact>`_
153
+ `Issue tracker <https://github.com/borgbackup/borg/issues>`_.
154
+ * `Web chat (IRC) <https://web.libera.chat/#borgbackup>`_ and
155
+ `Mailing list <https://mail.python.org/mailman/listinfo/borgbackup>`_
156
+ * `License <https://borgbackup.readthedocs.io/en/stable/authors.html#license>`_
157
+ * `Security contact <https://borgbackup.readthedocs.io/en/stable/support.html#security-contact>`_
158
158
 
159
159
  Compatibility notes
160
160
  -------------------
@@ -175,15 +175,15 @@ see ``docs/support.rst`` in the source distribution).
175
175
 
176
176
  .. |doc| image:: https://readthedocs.org/projects/borgbackup/badge/?version=stable
177
177
  :alt: Documentation
178
- :target: https://borgbackup.readthedocs.org/en/stable/
178
+ :target: https://borgbackup.readthedocs.io/en/stable/
179
179
 
180
- .. |build| image:: https://github.com/borgbackup/borg/workflows/CI/badge.svg?branch=master
181
- :alt: Build Status (master)
180
+ .. |build| image:: https://github.com/borgbackup/borg/workflows/CI/badge.svg?branch=1.4-maint
181
+ :alt: Build Status (1.4-maint)
182
182
  :target: https://github.com/borgbackup/borg/actions
183
183
 
184
- .. |coverage| image:: https://codecov.io/github/borgbackup/borg/coverage.svg?branch=master
184
+ .. |coverage| image:: https://codecov.io/github/borgbackup/borg/coverage.svg?branch=1.4-maint
185
185
  :alt: Test Coverage
186
- :target: https://codecov.io/github/borgbackup/borg?branch=master
186
+ :target: https://codecov.io/github/borgbackup/borg?branch=1.4-maint
187
187
 
188
188
  .. |screencast_basic| image:: https://asciinema.org/a/133292.png
189
189
  :alt: BorgBackup Basic Usage
@@ -0,0 +1,48 @@
1
+ Borg native on Windows
2
+ ======================
3
+
4
+ Running Borg natively on Windows is in an early alpha stage. Expect many things to fail.
5
+ Do not use the native Windows build on any data that you do not want to lose!
6
+
7
+ Build Requirements
8
+ ------------------
9
+
10
+ - VC 14.0 Compiler
11
+ - OpenSSL Library v1.1.1c, 64-bit (available at https://github.com/python/cpython-bin-deps)
12
+ Use the `win-download-openssl.ps1` script to download and extract the library to
13
+ the correct location. See also the OpenSSL section below.
14
+ - Patience and a lot of coffee/beer
15
+
16
+ What's working
17
+ --------------
18
+
19
+ .. note::
20
+ The following examples assume that the `BORG_REPO` and `BORG_PASSPHRASE` environment variables are set
21
+ when the repository or passphrase is not explicitly provided.
22
+
23
+ - Borg does not crash if called with ``borg``
24
+ - ``borg init --encryption repokey-blake2 ./demoRepo`` runs without errors or warnings.
25
+ Note that absolute paths only work if the protocol is explicitly set to ``file://``
26
+ - ``borg create ::backup-{now} D:\DemoData`` works as expected.
27
+ - ``borg list`` works as expected.
28
+ - ``borg extract --strip-components 1 ::backup-XXXX`` works.
29
+ If absolute paths are extracted, it is important to pass ``--strip-components 1``,
30
+ otherwise the data is restored to the original location!
31
+
32
+ What's NOT working
33
+ ------------------
34
+
35
+ - Extracting a backup created on a Windows machine on a non-Windows machine will fail.
36
+ - Many other things.
37
+
38
+
39
+ OpenSSL, Windows and Python
40
+ ---------------------------
41
+ Windows does not ship OpenSSL by default, so we need to get the library from somewhere else.
42
+ However, a default Python installation does include `libcrypto`, which is required by Borg.
43
+ The only things missing to build Borg are the header and `*.lib` files.
44
+ Luckily, the Python developers provide all required files in a separate repository.
45
+ The `win-download-openssl.ps1` script can be used to download the package from
46
+ https://github.com/python/cpython-bin-deps and extract the files to the correct location.
47
+ For Anaconda, the required libraries can be installed with ``conda install -c anaconda openssl``.
48
+
@@ -0,0 +1,121 @@
1
+ Binary BorgBackup builds
2
+ ========================
3
+
4
+ General notes
5
+ -------------
6
+
7
+ The binaries are supposed to work on the specified platform without installing anything else.
8
+
9
+ There are some limitations, though:
10
+ - for Linux, your system must have the same or newer glibc version as the one used for building
11
+ - for macOS, you need to have the same or newer macOS version as the one used for building
12
+ - for other OSes, there are likely similar limitations
13
+
14
+ If you don't find something working on your system, check the older borg releases.
15
+
16
+ *.asc are GnuPG signatures - only provided for locally built binaries.
17
+ *.exe (or no extension) is the single-file fat binary.
18
+ *.tgz is the single-directory fat binary (extract it once with tar -xzf).
19
+
20
+ Using the single-directory build is faster and does not require as much space
21
+ in the temporary directory as the self-extracting single-file build.
22
+
23
+ macOS: to avoid issues, download the file via the command line OR remove the
24
+ "quarantine" attribute after downloading:
25
+ $ xattr -dr com.apple.quarantine borg-macos1012.tgz
26
+
27
+
28
+ Download the correct files
29
+ --------------------------
30
+
31
+ Binaries built on GitHub servers
32
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
33
+
34
+ borg-linux-glibc235-x86_64-gh Linux AMD/Intel (built on Ubuntu 22.04 LTS with glibc 2.35)
35
+ borg-linux-glibc235-arm64-gh Linux ARM (built on Ubuntu 22.04 LTS with glibc 2.35)
36
+
37
+ borg-macos-14-arm64-gh macOS Apple Silicon (built on macOS 14 w/o FUSE support)
38
+ borg-macos-13-x86_64-gh macOS Intel (built on macOS 13 w/o FUSE support)
39
+
40
+
41
+ Binaries built locally
42
+ ~~~~~~~~~~~~~~~~~~~~~~
43
+
44
+ borg-linux-glibc241-x86_64 Linux (built on Debian 13 "Trixie" with glibc 2.41)
45
+ borg-linux-glibc236-x86_64 Linux (built on Debian 12 "Bookworm" with glibc 2.36)
46
+ borg-linux-glibc231-x86_64 Linux (built on Debian 11 "Bullseye" with glibc 2.31)
47
+
48
+ borg-freebsd-13-x86_64 FreeBSD (built on FreeBSD 13)
49
+ borg-freebsd-14-x86_64 FreeBSD (built on FreeBSD 14)
50
+
51
+ Note: if you don't find a specific binary here, check release 1.4.1 or 1.2.9.
52
+
53
+
54
+ Verifying your download
55
+ -----------------------
56
+
57
+ I provide GPG signatures for files which I have built locally on my machines.
58
+
59
+ To check the GPG signature, download both the file and the corresponding
60
+ signature (*.asc file) and then (on the shell) type, for example:
61
+
62
+ gpg --recv-keys 9F88FB52FAF7B393
63
+ gpg --verify borgbackup.tar.gz.asc borgbackup.tar.gz
64
+
65
+ The files are signed by:
66
+
67
+ Thomas Waldmann <tw@waldmann-edv.de>
68
+ GPG key fingerprint: 6D5B EF9A DD20 7580 5747 B70F 9F88 FB52 FAF7 B393
69
+
70
+ My fingerprint is also in the footer of all my BorgBackup mailing list posts.
71
+
72
+
73
+ Provenance attestations for GitHub-built binaries
74
+ -------------------------------------------------
75
+
76
+ For binaries built on GitHub (files with a "-gh" suffix in the name), we publish
77
+ an artifact provenance attestation that proves the binary was built by our
78
+ GitHub Actions workflow from a specific commit or tag. You can verify this using
79
+ the GitHub CLI (gh). Install it from https://cli.github.com/ and make sure you
80
+ use a recent version that supports "gh attestation".
81
+
82
+ Practical example (Linux, 1.4.3 tag):
83
+
84
+ curl -LO https://github.com/borgbackup/borg/releases/download/1.4.3/borg-linux-glibc235-x86_64-gh
85
+ gh attestation verify --repo borgbackup/borg --source-ref refs/tags/1.4.3 borg-linux-glibc235-x86_64-gh
86
+
87
+ If verification succeeds, gh prints a summary stating the subject (your file),
88
+ that it was attested by GitHub Actions, and the job/workflow reference.
89
+
90
+
91
+ Installing
92
+ ----------
93
+
94
+ It is suggested that you rename or symlink the binary to just "borg".
95
+ If you need "borgfs", just also symlink it to the same binary, it will
96
+ detect internally under which name it was invoked.
97
+
98
+ On UNIX-like platforms, /usr/local/bin/ or ~/bin/ is a nice place for it,
99
+ but you can invoke it from anywhere by providing the full path to it.
100
+
101
+ Make sure the file is readable and executable (chmod +rx borg on UNIX-like
102
+ platforms).
103
+
104
+
105
+ Reporting issues
106
+ ----------------
107
+
108
+ Please first check the FAQ and whether a GitHub issue already exists.
109
+
110
+ If you find a NEW issue, please open a ticket on our issue tracker:
111
+
112
+ https://github.com/borgbackup/borg/issues/
113
+
114
+ There, please give:
115
+ - the version number (it is displayed if you invoke borg -V)
116
+ - the sha256sum of the binary
117
+ - a good description of what the issue is
118
+ - a good description of how to reproduce your issue
119
+ - a traceback with system info (if you have one)
120
+ - your precise platform (CPU, 32/64-bit?), OS, distribution, release
121
+ - your Python and (g)libc versions
@@ -5,7 +5,7 @@
5
5
  Borg documentation
6
6
  ==================
7
7
 
8
- .. when you add an element here, do not forget to add it to index.rst
8
+ .. When you add an element here, do not forget to add it to index.rst.
9
9
  .. Note: Some things are in appendices (see latex_appendices in conf.py)
10
10
 
11
11
  .. toctree::