From patchwork Thu Feb 4 15:21:08 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: [1, of, 2, v5] schemes: extract scheme expansion as its own method on ShortRepository From: "Jason R. Coombs" X-Patchwork-Id: 12978 Message-Id: To: mercurial-devel@mercurial-scm.org Date: Thu, 04 Feb 2016 09:21:08 -0600 # HG changeset patch # User Jason R. Coombs # Date 1454096441 18000 # Fri Jan 29 14:40:41 2016 -0500 # Node ID b494927d0e972f03b7b9e7d4c203cc35516ebd8f # Parent 01a5143cd25f285f8c745a92986cd7186bb32c90 schemes: extract scheme expansion as its own method on ShortRepository diff --git a/hgext/schemes.py b/hgext/schemes.py --- a/hgext/schemes.py +++ b/hgext/schemes.py @@ -65,6 +65,10 @@ return '' % self.scheme def instance(self, ui, url, create): + url = self.resolve(url) + return hg._peerlookup(url).instance(ui, url, create) + + def resolve(self, url): # Should this use the util.url class, or is manual parsing better? try: url = url.split('://', 1)[1] @@ -77,8 +81,7 @@ else: tail = '' context = dict((str(i + 1), v) for i, v in enumerate(parts)) - url = ''.join(self.templater.process(self.url, context)) + tail - return hg._peerlookup(url).instance(ui, url, create) + return ''.join(self.templater.process(self.url, context)) + tail def hasdriveletter(orig, path): if path: