CHANGES 8.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230
  1. Borg Changelog
  2. ==============
  3. Version 0.23.0
  4. --------------
  5. Incompatible changes (compared to attic, fork related):
  6. - changed sw name and cli command to "borg", updated docs
  7. - package name (and name in urls) uses "borgbackup" to have less collisions
  8. - changed repo / cache internal magic strings from ATTIC* to BORG*,
  9. changed cache location to .cache/borg/ - this means that it currently won't
  10. accept attic repos (see issue #21 about improving that)
  11. Bug fixes:
  12. - avoid defect python-msgpack releases, fixes attic #171, fixes attic #185
  13. - fix traceback when trying to do unsupported passphrase change, fixes attic #189
  14. - datetime does not like the year 10.000, fixes attic #139
  15. - fix "info" all archives stats, fixes attic #183
  16. - fix parsing with missing microseconds, fixes attic #282
  17. - fix misleading hint the fuse ImportError handler gave, fixes attic #237
  18. - check unpacked data from RPC for tuple type and correct length, fixes attic #127
  19. - fix Repository._active_txn state when lock upgrade fails
  20. - give specific path to xattr.is_enabled(), disable symlink setattr call that
  21. always fails
  22. - fix test setup for 32bit platforms, partial fix for attic #196
  23. - upgraded versioneer, PEP440 compliance, fixes attic #257
  24. New features:
  25. - less memory usage: add global option --no-cache-files
  26. - check --last N (only check the last N archives)
  27. - check: sort archives in reverse time order
  28. - rename repo::oldname newname (rename repository)
  29. - create -v output more informative
  30. - create --progress (backup progress indicator)
  31. - create --timestamp (utc string or reference file/dir)
  32. - create: if "-" is given as path, read binary from stdin
  33. - extract: if --stdout is given, write all extracted binary data to stdout
  34. - extract --sparse (simple sparse file support)
  35. - extra debug information for 'fread failed'
  36. - delete <repo> (deletes whole repo + local cache)
  37. - FUSE: reflect deduplication in allocated blocks
  38. - only allow whitelisted RPC calls in server mode
  39. - normalize source/exclude paths before matching
  40. - use posix_fadvise to not spoil the OS cache, fixes attic #252
  41. - toplevel error handler: show tracebacks for better error analysis
  42. - sigusr1 / sigint handler to print current file infos - attic PR #286
  43. - RPCError: include the exception args we get from remote
  44. Other changes:
  45. - source: misc. cleanups, pep8, style
  46. - docs and faq improvements, fixes, updates
  47. - cleanup crypto.pyx, make it easier to adapt to other AES modes
  48. - do os.fsync like recommended in the python docs
  49. - source: Let chunker optionally work with os-level file descriptor.
  50. - source: Linux: remove duplicate os.fsencode calls
  51. - source: refactor _open_rb code a bit, so it is more consistent / regular
  52. - source: refactor indicator (status) and item processing
  53. - source: use py.test for better testing, flake8 for code style checks
  54. - source: fix tox >=2.0 compatibility (test runner)
  55. - pypi package: add python version classifiers, add FreeBSD to platforms
  56. Attic Changelog
  57. ===============
  58. Here you can see the full list of changes between each Attic release until Borg
  59. forked from Attic:
  60. Version 0.17
  61. ------------
  62. (bugfix release, released on X)
  63. - Fix hashindex ARM memory alignment issue (#309)
  64. - Improve hashindex error messages (#298)
  65. Version 0.16
  66. ------------
  67. (bugfix release, released on May 16, 2015)
  68. - Fix typo preventing the security confirmation prompt from working (#303)
  69. - Improve handling of systems with improperly configured file system encoding (#289)
  70. - Fix "All archives" output for attic info. (#183)
  71. - More user friendly error message when repository key file is not found (#236)
  72. - Fix parsing of iso 8601 timestamps with zero microseconds (#282)
  73. Version 0.15
  74. ------------
  75. (bugfix release, released on Apr 15, 2015)
  76. - xattr: Be less strict about unknown/unsupported platforms (#239)
  77. - Reduce repository listing memory usage (#163).
  78. - Fix BrokenPipeError for remote repositories (#233)
  79. - Fix incorrect behavior with two character directory names (#265, #268)
  80. - Require approval before accessing relocated/moved repository (#271)
  81. - Require approval before accessing previously unknown unencrypted repositories (#271)
  82. - Fix issue with hash index files larger than 2GB.
  83. - Fix Python 3.2 compatibility issue with noatime open() (#164)
  84. - Include missing pyx files in dist files (#168)
  85. Version 0.14
  86. ------------
  87. (feature release, released on Dec 17, 2014)
  88. - Added support for stripping leading path segments (#95)
  89. "attic extract --strip-segments X"
  90. - Add workaround for old Linux systems without acl_extended_file_no_follow (#96)
  91. - Add MacPorts' path to the default openssl search path (#101)
  92. - HashIndex improvements, eliminates unnecessary IO on low memory systems.
  93. - Fix "Number of files" output for attic info. (#124)
  94. - limit create file permissions so files aren't read while restoring
  95. - Fix issue with empty xattr values (#106)
  96. Version 0.13
  97. ------------
  98. (feature release, released on Jun 29, 2014)
  99. - Fix sporadic "Resource temporarily unavailable" when using remote repositories
  100. - Reduce file cache memory usage (#90)
  101. - Faster AES encryption (utilizing AES-NI when available)
  102. - Experimental Linux, OS X and FreeBSD ACL support (#66)
  103. - Added support for backup and restore of BSDFlags (OSX, FreeBSD) (#56)
  104. - Fix bug where xattrs on symlinks were not correctly restored
  105. - Added cachedir support. CACHEDIR.TAG compatible cache directories
  106. can now be excluded using ``--exclude-caches`` (#74)
  107. - Fix crash on extreme mtime timestamps (year 2400+) (#81)
  108. - Fix Python 3.2 specific lockf issue (EDEADLK)
  109. Version 0.12
  110. ------------
  111. (feature release, released on April 7, 2014)
  112. - Python 3.4 support (#62)
  113. - Various documentation improvements a new style
  114. - ``attic mount`` now supports mounting an entire repository not only
  115. individual archives (#59)
  116. - Added option to restrict remote repository access to specific path(s):
  117. ``attic serve --restrict-to-path X`` (#51)
  118. - Include "all archives" size information in "--stats" output. (#54)
  119. - Added ``--stats`` option to ``attic delete`` and ``attic prune``
  120. - Fixed bug where ``attic prune`` used UTC instead of the local time zone
  121. when determining which archives to keep.
  122. - Switch to SI units (Power of 1000 instead 1024) when printing file sizes
  123. Version 0.11
  124. ------------
  125. (feature release, released on March 7, 2014)
  126. - New "check" command for repository consistency checking (#24)
  127. - Documentation improvements
  128. - Fix exception during "attic create" with repeated files (#39)
  129. - New "--exclude-from" option for attic create/extract/verify.
  130. - Improved archive metadata deduplication.
  131. - "attic verify" has been deprecated. Use "attic extract --dry-run" instead.
  132. - "attic prune --hourly|daily|..." has been deprecated.
  133. Use "attic prune --keep-hourly|daily|..." instead.
  134. - Ignore xattr errors during "extract" if not supported by the filesystem. (#46)
  135. Version 0.10
  136. ------------
  137. (bugfix release, released on Jan 30, 2014)
  138. - Fix deadlock when extracting 0 sized files from remote repositories
  139. - "--exclude" wildcard patterns are now properly applied to the full path
  140. not just the file name part (#5).
  141. - Make source code endianness agnostic (#1)
  142. Version 0.9
  143. -----------
  144. (feature release, released on Jan 23, 2014)
  145. - Remote repository speed and reliability improvements.
  146. - Fix sorting of segment names to ignore NFS left over files. (#17)
  147. - Fix incorrect display of time (#13)
  148. - Improved error handling / reporting. (#12)
  149. - Use fcntl() instead of flock() when locking repository/cache. (#15)
  150. - Let ssh figure out port/user if not specified so we don't override .ssh/config (#9)
  151. - Improved libcrypto path detection (#23).
  152. Version 0.8.1
  153. -------------
  154. (bugfix release, released on Oct 4, 2013)
  155. - Fix segmentation fault issue.
  156. Version 0.8
  157. -----------
  158. (feature release, released on Oct 3, 2013)
  159. - Fix xattr issue when backing up sshfs filesystems (#4)
  160. - Fix issue with excessive index file size (#6)
  161. - Support access of read only repositories.
  162. - New syntax to enable repository encryption:
  163. attic init --encryption="none|passphrase|keyfile".
  164. - Detect and abort if repository is older than the cache.
  165. Version 0.7
  166. -----------
  167. (feature release, released on Aug 5, 2013)
  168. - Ported to FreeBSD
  169. - Improved documentation
  170. - Experimental: Archives mountable as fuse filesystems.
  171. - The "user." prefix is no longer stripped from xattrs on Linux
  172. Version 0.6.1
  173. -------------
  174. (bugfix release, released on July 19, 2013)
  175. - Fixed an issue where mtime was not always correctly restored.
  176. Version 0.6
  177. -----------
  178. First public release on July 9, 2013