Ver código fonte

update CHANGES

Thomas Waldmann 8 meses atrás
pai
commit
328cd22a13
1 arquivos alterados com 80 adições e 26 exclusões
  1. 80 26
      docs/changes.rst

+ 80 - 26
docs/changes.rst

@@ -42,17 +42,23 @@ Compatibility notes:
   - ssh:// URLs: removed support for /~otheruser/, #6855.
     If you used this, just replace it by: ssh://user@host:port/home/otheruser/
   - -P / --prefix option was removed, please use the similar -a / --match-archives.
-  - the archive name is always given separately from the repository
+  - archive names don't need to be unique anymore. to the contrary:
+    it is now strongly recommended to use the identical name for borg create
+    within the same series of archives to make borg work more efficiently.
+    the name now identifies a series of archive, to identify a single archive
+    please use aid:<archive-hash-prefix>, e.g.: borg delete aid:d34db33f
+  - the archive id is always given separately from the repository
     (differently than with borg 1.x you must not give repo::archive).
-  - the archive name is either given as a positional parameter, like:
+  - the series name or archive id is either given as a positional parameter,
+    like:
 
-    - borg create myarchive2 /some/path
-    - borg diff myarchive1 myarchive2
+    - borg create documents ~/Documents
+    - borg diff aid:deadbeef aid:d34db33f
   - or, if the command makes sense for an arbitrary amount of archives, archives
     can be selected using a glob pattern, like:
 
-    - borg delete -a 'sh:myarchive*'
-    - borg recreate -a 'sh:myarchive*'
+    - borg delete -a 'sh:myarchive-2024-*'
+    - borg recreate -a 'sh:myarchive-2024-*'
   - some borg 1.x commands that supported working on a repo AND on an archive
     were split into 2 commands, some others were renamed:
 
@@ -66,15 +72,15 @@ Compatibility notes:
       - borg repo-space
     - borg 2 archive commands:
 
-      - borg create ARCHIVE ...
-      - borg list ARCHIVE
-      - borg extract ARCHIVE ...
-      - borg diff ARCH1 ARCH2
-      - borg rename OLDNAME NEWNAME
-      - borg info -a ARCH_GLOB
-      - borg delete -a ARCH_GLOB
-      - borg recreate -a ARCH_GLOB ...
-      - borg mount -a ARCH_GLOB mountpoint ...
+      - borg create NAME ...
+      - borg list ID
+      - borg extract ID ...
+      - borg diff ID1 ID2
+      - borg rename ID NEWNAME
+      - borg info ID
+      - borg delete ID
+      - borg recreate ID ...
+      - borg mount -a ID mountpoint ...
 
     For more details, please consult the docs or --help option output.
   - create/recreate/import-tar --timestamp: defaults to local timezone
@@ -98,8 +104,8 @@ Compatibility notes:
 
   So you might need to edit your scripts like e.g.::
 
-      borg 1.x: --glob-archives 'myserver-*'
-      borg 2.0: --match-archives 'sh:myserver-*'
+      borg 1.x: --glob-archives 'myserver-2024-*'
+      borg 2.0: --match-archives 'sh:myserver-2024-*'
 
 - use platformdirs 3.x.x instead of home-grown code. Due to that:
 
@@ -123,24 +129,72 @@ Compatibility notes:
 Change Log 2.x
 ==============
 
-Version 2.0.0b10 (2024-09-09)
+Version 2.0.0b11 (2024-xx-xx)
 -----------------------------
 
 Please note:
 
-This is a beta release, only for testing - do not use for production repos.
+Beta releases are only for testing on NEW repos - do not use for production.
 
 For upgrade and compatibility hints, please also read the section "Upgrade Notes"
 above.
 
-TL;DR: this is a huge change and the first very fundamental change in how borg
-works since ever:
+New features:
+
+- rclone:// borg repositories, this enables 100+ cloud storage providers!
+- parallel operations in same repo from same client (same user/machine)
+- archive series feature, #7930
+
+  TL;DR: a NAME now identifies a series of identically named archives,
+  to identify a specific single archive, use aid:<archive hash>.
+
+  in borg 1.x, we used to put a timestamp into the archive name, because borg1
+  required unique archive names.
 
-- you will need to create new repos.
-- likely more exciting than previous betas, definitely not for production.
-- remove "borg check --repair --archives-only" from your script in case you
-  added that for b9. "borg compact -v" now finds and deletes orphan chunks
-  and also outputs some new stats.
+  borg2 does not require unique archive names, but it encourages you to even
+  use a identical archive names within the same SERIES of archives, e.g. you
+  could backup user files to archives named "user-files" and system files to
+  archives named "system-files".
+  that makes matching (e.g. for prune, for the files cache, ...) much simpler
+  and borg now KNOWS which archives belong to the same series (because they all
+  have the same name).
+- info/delete/prune: allow positional NAME argument, e.g.:
+
+  - borg prune --keep-daily 30 <seriesname>
+  - borg delete aid:<archive hash>
+- create: also archive inode number, #8362
+
+  borg can use this when using archive series to rebuild the local files cache
+  from the previous archive (of the same series) in the repository.
+
+Fixes:
+
+- bugfix: remove superfluous repository.list() call. for high latency repos
+  (like sftp, cloud), this improves performance of borg check and compact.
+- repository.list: refresh lock more frequently
+- misc. commands fixed for non-unique archive names
+- remote: allow get_manifest method
+- files cache: fix rare race condition with data loss potential, #3536
+- storelocking: misc. fixes / cleanups
+
+Other changes:
+
+- cache the chunks index in the repository, #8397.
+  improves high latency repo performance for most commands compared to b10.
+- repo-compress: faster by using chunks index rather than repository.list().
+- files cache entries now have ctime AND mtime.
+  borg updates the ctime and mtime of known and "unchanged" files, #4915.
+- rebuild files cache from previous archive in same series, #8385.
+- reduce RAM usage by splitting the files cache by archive series, #5658.
+- remove AdHocCache, remove BORG_CACHE_IMPL (we only have one implementation).
+- docs: user@ and :port are optional in sftp and ssh URLs.
+- CI: re-enable windows build after fixing it.
+- upgrade pyinstaller to 6.10.0
+- increase IDS_PER_CHUNK, #6945q
+
+
+Version 2.0.0b10 (2024-09-09)
+-----------------------------
 
 New features: