bundle: use bundle2 if repository uses general delta
authorPierre-Yves David <pierre-yves.david@fb.com>
Thu, 01 Oct 2015 20:31:43 -0700
changeset 26533 3e61b325e79a
parent 26532 1d1d0914cb76
child 26534 e4f27fb65da7
bundle: use bundle2 if repository uses general delta As bundle1 does not support generaldelta, this would mean recomputing delta at bundle time. This is similar to what we do for strip and shelve and was tracked as issue4865.
mercurial/cmdutil.py
mercurial/commands.py
--- a/mercurial/cmdutil.py	Thu Oct 01 20:21:16 2015 -0700
+++ b/mercurial/cmdutil.py	Thu Oct 01 20:31:43 2015 -0700
@@ -3374,6 +3374,8 @@
 
     if version is None:
         version = '01'
+        if 'generaldelta' in repo.requirements:
+            version = '02'
     else:
         try:
             version = _bundleversionspecs[version]
--- a/mercurial/commands.py	Thu Oct 01 20:21:16 2015 -0700
+++ b/mercurial/commands.py	Thu Oct 01 20:31:43 2015 -0700
@@ -1223,7 +1223,7 @@
     specify a compression, a bundle version or both using a dash
     (comp-version). The available compression methods are: none, bzip2,
     and gzip (by default, bundles are compressed using bzip2). The
-    available format are: v1, v2 (default to v1).
+    available format are: v1, v2 (default to most suitable).
 
     The bundle file can then be transferred using conventional means
     and applied to another repository with the unbundle or pull