D1965: wireprotoserver: rename hgweb.protocol to wireprotoserver (API)

indygreg (Gregory Szorc) phabricator at mercurial-scm.org
Thu Feb 1 20:19:18 UTC 2018


indygreg created this revision.
Herald added a subscriber: mercurial-devel.
Herald added a reviewer: hg-reviewers.

REVISION SUMMARY
  The HTTP wire protocol server / response handler is currently defined
  in the hgweb sub-package. That only kind of makes sense. hgweb does
  contain most of the HTTP server code. However, hgweb is more tailored
  for providing HTTP server and WSGI scaffolding and serving hgweb
  requests. The wire protocol is kind of its own beast.
  
  In addition, the code for HTTP and SSH wire protocol handling is
  actually pretty small and it needs to stay in sync to ensure parity
  between the transport implementations.
  
  We rename mercurial/hgweb/protocol.py to mercurial/wireprotoserver.py.
  The new module will eventually become the home of the SSH handler
  as well.
  
  .. api::
  
    Content from mercurial.hgweb.protocol has been moved to
    mercurial.wireprotoserver.

REPOSITORY
  rHG Mercurial

REVISION DETAIL
  https://phab.mercurial-scm.org/D1965

AFFECTED FILES
  mercurial/hgweb/hgweb_mod.py
  mercurial/hgweb/protocol.py
  mercurial/wireprotoserver.py

CHANGE DETAILS

diff --git a/mercurial/hgweb/protocol.py b/mercurial/wireprotoserver.py
rename from mercurial/hgweb/protocol.py
rename to mercurial/wireprotoserver.py
--- a/mercurial/hgweb/protocol.py
+++ b/mercurial/wireprotoserver.py
@@ -1,4 +1,3 @@
-#
 # Copyright 21 May 2005 - (c) 2005 Jake Edge <jake at edge2.net>
 # Copyright 2005-2007 Matt Mackall <mpm at selenic.com>
 #
@@ -10,16 +9,16 @@
 import cgi
 import struct
 
-from .common import (
+from .hgweb.common import (
     HTTP_OK,
 )
-
-from .. import (
+from . import (
     error,
     pycompat,
     util,
     wireproto,
 )
+
 stringio = util.stringio
 
 urlerr = util.urlerr
diff --git a/mercurial/hgweb/hgweb_mod.py b/mercurial/hgweb/hgweb_mod.py
--- a/mercurial/hgweb/hgweb_mod.py
+++ b/mercurial/hgweb/hgweb_mod.py
@@ -36,10 +36,10 @@
     templater,
     ui as uimod,
     util,
+    wireprotoserver,
 )
 
 from . import (
-    protocol,
     webcommands,
     webutil,
     wsgicgi,
@@ -362,13 +362,13 @@
         # and the clients always use the old URL structure
 
         cmd = pycompat.sysbytes(req.form.get(r'cmd', [r''])[0])
-        if protocol.iscmd(cmd):
+        if wireprotoserver.iscmd(cmd):
             try:
                 if query:
                     raise ErrorResponse(HTTP_NOT_FOUND)
                 if cmd in perms:
                     self.check_perm(rctx, req, perms[cmd])
-                return protocol.call(rctx.repo, req, cmd)
+                return wireprotoserver.call(rctx.repo, req, cmd)
             except ErrorResponse as inst:
                 # A client that sends unbundle without 100-continue will
                 # break if we respond early.
@@ -379,7 +379,7 @@
                     req.drain()
                 else:
                     req.headers.append((r'Connection', r'Close'))
-                req.respond(inst, protocol.HGTYPE,
+                req.respond(inst, wireprotoserver.HGTYPE,
                             body='0\n%s\n' % inst)
                 return ''
 



To: indygreg, #hg-reviewers
Cc: mercurial-devel


More information about the Mercurial-devel mailing list