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
Wed, 30 Mar 2011 20:00:24 -0700 url: special case bundle URL parsing to preserve backwards compatibility
Brodie Rao <brodie@bitheap.org> [Wed, 30 Mar 2011 20:00:24 -0700] rev 13816
url: special case bundle URL parsing to preserve backwards compatibility This allows bundle://../foo to continue to refer to the relative path ../foo (bundle URLs do not take host names).
Wed, 30 Mar 2011 20:00:23 -0700 url: add trailing slashes to URLs with hostnames that don't have one
Brodie Rao <brodie@bitheap.org> [Wed, 30 Mar 2011 20:00:23 -0700] rev 13815
url: add trailing slashes to URLs with hostnames that don't have one This works around a potential issue in Python 2.4 where cloning a repo with a URL like http://foo:8080 would cause urllib2 to query on http://foo:8080?cmd=capabilities instead of http://foo:8080/?cmd=capabilities. In the past, this issue has been masked by the fact that url.getauthinfo() added a trailing slash when it was missing.
Wed, 30 Mar 2011 19:50:56 -0700 url: move drive letter checking into has_drive_letter() for extensions
Brodie Rao <brodie@bitheap.org> [Wed, 30 Mar 2011 19:50:56 -0700] rev 13814
url: move drive letter checking into has_drive_letter() for extensions This will let the schemes extension override drive letter detection to allow single letter schemes.
Thu, 31 Mar 2011 10:03:24 -0500 changegroup: unnest some lookup functions
Matt Mackall <mpm@selenic.com> [Thu, 31 Mar 2011 10:03:24 -0500] rev 13813
changegroup: unnest some lookup functions
Thu, 31 Mar 2011 09:59:56 -0500 changegroup: minor ordering and renaming changes for similarity
Matt Mackall <mpm@selenic.com> [Thu, 31 Mar 2011 09:59:56 -0500] rev 13812
changegroup: minor ordering and renaming changes for similarity This eliminates some needless differences between the two changegroup variants
Thu, 31 Mar 2011 09:56:27 -0500 changegroup: remove nodeiter temporary
Matt Mackall <mpm@selenic.com> [Thu, 31 Mar 2011 09:56:27 -0500] rev 13811
changegroup: remove nodeiter temporary
Wed, 30 Mar 2011 17:50:34 -0500 changegroup: refactor prune as a filter
Matt Mackall <mpm@selenic.com> [Wed, 30 Mar 2011 17:50:34 -0500] rev 13810
changegroup: refactor prune as a filter
Wed, 30 Mar 2011 17:50:27 -0500 changegroup: add first logic to send file header
Matt Mackall <mpm@selenic.com> [Wed, 30 Mar 2011 17:50:27 -0500] rev 13809
changegroup: add first logic to send file header This will allow us to later change how we filter needed file nodes
Wed, 30 Mar 2011 14:42:41 -0500 url: fix tests
Matt Mackall <mpm@selenic.com> [Wed, 30 Mar 2011 14:42:41 -0500] rev 13808
url: fix tests
Wed, 30 Mar 2011 13:34:39 -0500 url: deal with drive letters
Matt Mackall <mpm@selenic.com> [Wed, 30 Mar 2011 13:34:39 -0500] rev 13807
url: deal with drive letters
Mon, 14 Mar 2011 23:50:28 +0100 bookmarks: do not forward merged bookmark (issue1877)
David Soria Parra <dsp@php.net> [Mon, 14 Mar 2011 23:50:28 +0100] rev 13806
bookmarks: do not forward merged bookmark (issue1877)
Wed, 30 Mar 2011 13:23:24 -0500 merge with stable
Matt Mackall <mpm@selenic.com> [Wed, 30 Mar 2011 13:23:24 -0500] rev 13805
merge with stable
Mon, 28 Mar 2011 20:56:56 -0400 pull: new output message when there are multiple branches
Kevin Berridge <kevin.w.berridge@gmail.com> [Mon, 28 Mar 2011 20:56:56 -0400] rev 13804
pull: new output message when there are multiple branches Pull outputs a slightly new message when there are multiple branches and the current branch has many heads: (run 'hg heads .' to see heads, 'hg merge' to merge) This message adds the "." in hg heads to encourage you to consider only the current branch's heads.
Fri, 11 Mar 2011 20:43:12 -0500 pull: don't suggest running hg merge when new heads are on different branches
Kevin Berridge <kevin.w.berridge@gmail.com> [Fri, 11 Mar 2011 20:43:12 -0500] rev 13803
pull: don't suggest running hg merge when new heads are on different branches After a pull when new heads are added but no head is added on the current branch, the "run 'hg merge'" message can be misleading. This patch doesn't output the merge message in that scenario.
Wed, 30 Mar 2011 09:49:45 +0100 bugzilla: add modified XMLRPC mode that uses email to send bug comments.
Jim Hague <jim.hague@acm.org> [Wed, 30 Mar 2011 09:49:45 +0100] rev 13802
bugzilla: add modified XMLRPC mode that uses email to send bug comments. If Bugzilla has its email interface configured, an email can be used to update bugs. If the From: address in the email matches a valid user email, Bugzillas make the update as that user. So comments attached to a bug appear under the name of the user making the change, and the user does not receive email about the change, exactly as if they had made the change via the web interface. So add a modified XMLRPC mode that uses email to modify bugs. The format of the mails is documented in the Bugzilla email_in.pl specification. Briefly, initial non-blank lines in the message body starting '@<field> = <value> modify bug fields. A blank line signals the end of the command lines, and the rest of the message is used as bug comment. Invoke the same Mercurial user to Bugzilla user email mapping currently used in the MySQL mode. All other processing - checking the bug numbers, checking user ids, etc. continues to be done via XMLRPC.
Wed, 30 Mar 2011 09:49:45 +0100 bugzilla: add XMLRPC interface.
Jim Hague <jim.hague@acm.org> [Wed, 30 Mar 2011 09:49:45 +0100] rev 13801
bugzilla: add XMLRPC interface. Add support for access to Bugzilla via the XMLRPC interface. This requires a single username and password used to log in to Bugzilla, plus the URL of the Bugzilla installation. Commit messages are added to bugs as before, but security only permits them to be added as the username used to log in.
Wed, 30 Mar 2011 09:49:45 +0100 bugzilla: localise all MySQL direct access inside access class.
Jim Hague <jim.hague@acm.org> [Wed, 30 Mar 2011 09:49:45 +0100] rev 13800
bugzilla: localise all MySQL direct access inside access class. Prepare for the addition of other Bugzilla access methods by localising direct MySQL database access inside an access class. Provide a base access class largely to document the methods required for a class implementing a particular access method. Rename the 'bugzilla_<version>' classes to 'bzmysql_<version>' to emphasise that they are doing access via direct manipulation of a MySQL database.
Wed, 30 Mar 2011 09:49:45 +0100 bugzilla: keep bug IDs in set.
Jim Hague <jim.hague@acm.org> [Wed, 30 Mar 2011 09:49:45 +0100] rev 13799
bugzilla: keep bug IDs in set. Bug IDs are collected into a set, and then silently converted in filter_real_bug_ids() into a list. For consistency, keep them in a set throughout and update the docstrings to say that.
Wed, 30 Mar 2011 09:49:45 +0100 bugzilla: rename filter_unknown_bug_ids to reflect its actual purpose.
Jim Hague <jim.hague@acm.org> [Wed, 30 Mar 2011 09:49:45 +0100] rev 13798
bugzilla: rename filter_unknown_bug_ids to reflect its actual purpose. The method really removes from the list of bugs any that already have comment text referencing the changeset in question. Rename it to filter_cset_known_bug_ids().
Tue, 29 Mar 2011 19:20:28 +0200 test-paths.t: 'file:' disables [paths] entries for clone dest
Adrian Buehlmann <adrian@cadifra.com> [Tue, 29 Mar 2011 19:20:28 +0200] rev 13797
test-paths.t: 'file:' disables [paths] entries for clone dest
(0) -10000 -3000 -1000 -300 -100 -50 -30 +30 +50 +100 +300 +1000 +3000 +10000 +30000 tip