Thu, 31 Mar 2011 15:24:06 -0500 changegroup: introduce bundler objects
Matt Mackall <mpm@selenic.com> [Thu, 31 Mar 2011 15:24:06 -0500] rev 13831
changegroup: introduce bundler objects This makes the bundler pluggable at lower levels.
Thu, 31 Mar 2011 14:25:26 -0500 changegroup: combine lookup functions
Matt Mackall <mpm@selenic.com> [Thu, 31 Mar 2011 14:25:26 -0500] rev 13830
changegroup: combine lookup functions
Thu, 31 Mar 2011 13:56:05 -0500 changegroup: unnest flookup
Matt Mackall <mpm@selenic.com> [Thu, 31 Mar 2011 13:56:05 -0500] rev 13829
changegroup: unnest flookup
Thu, 31 Mar 2011 12:04:54 -0500 changegroup: unnest clookup and mlookup like changegroupsubset
Matt Mackall <mpm@selenic.com> [Thu, 31 Mar 2011 12:04:54 -0500] rev 13828
changegroup: unnest clookup and mlookup like changegroupsubset
Thu, 31 Mar 2011 10:43:53 -0500 url: nuke some newly-introduced underbars in identifiers
Matt Mackall <mpm@selenic.com> [Thu, 31 Mar 2011 10:43:53 -0500] rev 13827
url: nuke some newly-introduced underbars in identifiers
Wed, 30 Mar 2011 20:03:05 -0700 url: refactor util.drop_scheme() and hg.localpath() into url.localpath()
Brodie Rao <brodie@bitheap.org> [Wed, 30 Mar 2011 20:03:05 -0700] rev 13826
url: refactor util.drop_scheme() and hg.localpath() into url.localpath() This replaces util.drop_scheme() with url.localpath(), using url.url for parsing instead of doing it on its own. The function is moved from util to url to avoid an import cycle. hg.localpath() is removed in favor of using url.localpath(). This provides more consistent behavior between "hg clone" and other commands. To preserve backwards compatibility, URLs like bundle://../foo still refer to ../foo, not /foo. If a URL contains a scheme, percent-encoded entities are decoded. When there's no scheme, all characters are left untouched. Comparison of old and new behaviors: URL drop_scheme() hg.localpath() url.localpath() === ============= ============== =============== file://foo/foo /foo foo/foo /foo file://localhost:80/foo /foo localhost:80/foo /foo file://localhost:/foo /foo localhost:/foo /foo file://localhost/foo /foo /foo /foo file:///foo /foo /foo /foo file://foo (empty string) foo / file:/foo /foo /foo /foo file:foo foo foo foo file:foo%23bar foo%23bar foo%23bar foo#bar foo%23bar foo%23bar foo%23bar foo%23bar /foo /foo /foo /foo Windows-related paths on Windows: URL drop_scheme() hg.localpath() url.localpath() === ============= ============== =============== file:///C:/foo C:/C:/foo /C:/foo C:/foo file:///D:/foo C:/D:/foo /D:/foo D:/foo file://C:/foo C:/foo C:/foo C:/foo file://D:/foo C:/foo D:/foo D:/foo file:////foo/bar //foo/bar //foo/bar //foo/bar //foo/bar //foo/bar //foo/bar //foo/bar \\foo\bar //foo/bar //foo/bar \\foo\bar Windows-related paths on other platforms: file:///C:/foo C:/C:/foo /C:/foo C:/foo file:///D:/foo C:/D:/foo /D:/foo D:/foo file://C:/foo C:/foo C:/foo C:/foo file://D:/foo C:/foo D:/foo D:/foo file:////foo/bar //foo/bar //foo/bar //foo/bar //foo/bar //foo/bar //foo/bar //foo/bar \\foo\bar //foo/bar //foo/bar \\foo\bar For more information about file:// URL handling, see: http://www-archive.mozilla.org/quality/networking/testing/filetests.html Related issues: - issue1153: File URIs aren't handled correctly in windows This patch should preserve the fix implemented in 2770d03ae49f. However, it goes a step further and "promotes" Windows-style drive letters from being interpreted as host names to being part of the path. - issue2154: Cannot escape '#' in Mercurial URLs (#1172 in THG) The fragment is still interpreted as a revision or a branch, even in paths to bundles. However, when file: is used, percent-encoded entities are decoded, so file:test%23bundle.hg can refer to test#bundle.hg ond isk.
Wed, 30 Mar 2011 20:02:17 -0700 url: use url.url in ui.expandpath()
Brodie Rao <brodie@bitheap.org> [Wed, 30 Mar 2011 20:02:17 -0700] rev 13825
url: use url.url in ui.expandpath()
Wed, 30 Mar 2011 20:02:09 -0700 hg: use url.url to parse branch names in parseurl()
Brodie Rao <brodie@bitheap.org> [Wed, 30 Mar 2011 20:02:09 -0700] rev 13824
hg: use url.url to parse branch names in parseurl()
Wed, 30 Mar 2011 20:02:07 -0700 hg: look up schemes using url.url
Brodie Rao <brodie@bitheap.org> [Wed, 30 Mar 2011 20:02:07 -0700] rev 13823
hg: look up schemes using url.url
Wed, 30 Mar 2011 20:01:47 -0700 schemes: prevent one letter schemes from being interpreted as drive letters
Brodie Rao <brodie@bitheap.org> [Wed, 30 Mar 2011 20:01:47 -0700] rev 13822
schemes: prevent one letter schemes from being interpreted as drive letters To allow one letter schemes, this makes the extension override url.has_drive_letter() to return False for any schemes defined. On Windows, the extension will raise util.Abort for any schemes that conflict with existing drive letters.
Wed, 30 Mar 2011 20:01:46 -0700 hgweb: use url.url when setting CGI environment variables
Brodie Rao <brodie@bitheap.org> [Wed, 30 Mar 2011 20:01:46 -0700] rev 13821
hgweb: use url.url when setting CGI environment variables
Wed, 30 Mar 2011 20:01:44 -0700 url: use url.url in proxyhandler
Brodie Rao <brodie@bitheap.org> [Wed, 30 Mar 2011 20:01:44 -0700] rev 13820
url: use url.url in proxyhandler
Wed, 30 Mar 2011 20:01:35 -0700 httprepo/sshrepo: use url.url
Brodie Rao <brodie@bitheap.org> [Wed, 30 Mar 2011 20:01:35 -0700] rev 13819
httprepo/sshrepo: use url.url Like the previous patch to getauthinfo(), this also makes username/password parsing more forgiving for SSH URLs. This also opens up the possibility of allowing non-numeric ports, since the URL parser has no problem handling them. Related issues: - issue851: @ in password in http url - issue2055: nonnumeric port bug with https protocol
Wed, 30 Mar 2011 20:01:34 -0700 url: use url.url in url.open()
Brodie Rao <brodie@bitheap.org> [Wed, 30 Mar 2011 20:01:34 -0700] rev 13818
url: use url.url in url.open()
Wed, 30 Mar 2011 20:01:31 -0700 url: abort on file:// URLs with non-localhost hosts
Brodie Rao <brodie@bitheap.org> [Wed, 30 Mar 2011 20:01:31 -0700] rev 13817
url: abort on file:// URLs with non-localhost hosts
(0) -10000 -3000 -1000 -300 -100 -15 +15 +100 +300 +1000 +3000 +10000 +30000 tip