changeset 3612:d1b16a746db6

Add allowed bundle types as argument to hgweb unbundle capability. Arguments to capabilities were added before the 0.9.1 release, so there are no compatibility issues. Mercurial 0.9 didn't support http push. Using HG10GZ, HG10BZ and HG10UN has the advantage that new bundle types can be added later and the client doesn't have to try sending them first and reacting on errors sent by the server.
author Thomas Arendsen Hein <thomas@intevation.de>
date Thu, 02 Nov 2006 14:39:08 +0100
parents 967f1d00f521
children cbf352b9a3cd
files mercurial/hgweb/hgweb_mod.py
diffstat 1 files changed, 5 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/mercurial/hgweb/hgweb_mod.py	Wed Nov 01 19:59:26 2006 -0300
+++ b/mercurial/hgweb/hgweb_mod.py	Thu Nov 02 14:39:08 2006 +0100
@@ -1021,9 +1021,13 @@
                   or self.t("error", error="%r not found" % fname))
 
     def do_capabilities(self, req):
-        caps = ['unbundle', 'lookup', 'changegroupsubset', 'standardbundle']
+        caps = ['lookup', 'changegroupsubset']
         if self.configbool('server', 'uncompressed'):
             caps.append('stream=%d' % self.repo.revlogversion)
+        # XXX: make configurable and/or share code with do_unbundle:
+        unbundleversions = ['HG10GZ', 'HG10BZ', 'HG10UN']
+        if unbundleversions:
+            caps.append('unbundle=%s' % ','.join(unbundleversions))
         resp = ' '.join(caps)
         req.httphdr("application/mercurial-0.1", length=len(resp))
         req.write(resp)