merge with stable
authorAugie Fackler <augie@google.com>
Fri, 14 Sep 2018 18:18:46 -0400
changeset 39622 20dbca581727
parent 39621 23b749b84b8a (current diff)
parent 39547 41ac8ea1bdd7 (diff)
child 39623 34ecc0a09c76
merge with stable
--- a/mercurial/subrepo.py	Sat Sep 15 00:37:20 2018 +0300
+++ b/mercurial/subrepo.py	Fri Sep 14 18:18:46 2018 -0400
@@ -655,7 +655,7 @@
                     shareopts = {}
 
                 self.ui.status(_('cloning subrepo %s from %s\n')
-                               % (subrelpath(self), srcurl))
+                               % (subrelpath(self), util.hidepassword(srcurl)))
                 other, cloned = hg.clone(self._repo._subparent.baseui, {},
                                          other, self._repo.root,
                                          update=False, shareopts=shareopts)
@@ -664,7 +664,7 @@
             self._cachestorehash(srcurl)
         else:
             self.ui.status(_('pulling subrepo %s from %s\n')
-                           % (subrelpath(self), srcurl))
+                           % (subrelpath(self), util.hidepassword(srcurl)))
             cleansub = self.storeclean(srcurl)
             exchange.pull(self._repo, other)
             if cleansub:
@@ -735,10 +735,10 @@
             if self.storeclean(dsturl):
                 self.ui.status(
                     _('no changes made to subrepo %s since last push to %s\n')
-                    % (subrelpath(self), dsturl))
+                    % (subrelpath(self), util.hidepassword(dsturl)))
                 return None
         self.ui.status(_('pushing subrepo %s to %s\n') %
-            (subrelpath(self), dsturl))
+            (subrelpath(self), util.hidepassword(dsturl)))
         other = hg.peer(self._repo, {'ssh': ssh}, dsturl)
         res = exchange.push(self._repo, other, force, newbranch=newbranch)
 
--- a/tests/test-subrepo-relative-path.t	Sat Sep 15 00:37:20 2018 +0300
+++ b/tests/test-subrepo-relative-path.t	Fri Sep 14 18:18:46 2018 -0400
@@ -39,7 +39,7 @@
 
 Clone main from hgweb
 
-  $ hg clone "http://localhost:$HGPORT/main" cloned
+  $ hg clone "http://user:pass@localhost:$HGPORT/main" cloned
   requesting all changes
   adding changesets
   adding manifests
@@ -47,7 +47,7 @@
   added 1 changesets with 3 changes to 3 files
   new changesets fdfeeb3e979e
   updating to branch default
-  cloning subrepo sub from http://localhost:$HGPORT/sub
+  cloning subrepo sub from http://user@localhost:$HGPORT/sub
   requesting all changes
   adding changesets
   adding manifests
@@ -60,21 +60,28 @@
 
   $ cat > cloned/.hg/hgrc << EOF
   > [paths]
-  > default:pushurl = http://localhost:$HGPORT/main
+  > default:pushurl = http://user:pass@localhost:$HGPORT/main
   > EOF
 
   $ hg -R cloned out -S --config paths.default=bogus://invalid
-  comparing with http://localhost:$HGPORT/main
+  comparing with http://user:***@localhost:$HGPORT/main
   searching for changes
   no changes found
-  comparing with http://localhost:$HGPORT/sub
+  comparing with http://user:***@localhost:$HGPORT/sub
   searching for changes
   no changes found
   [1]
 
+TODO: Figure out why, if the password is left out of the default:pushurl URL,
+this says "no changes made to subrepo sub since last push".  It looks like from
+the original clone command above, the password is getting stripped off, not
+just masked out, and that would make the hashed URL different.
+
   $ hg -R cloned push --config paths.default=bogus://invalid
-  pushing to http://localhost:$HGPORT/main
-  no changes made to subrepo sub since last push to http://localhost:$HGPORT/sub
+  pushing to http://user:***@localhost:$HGPORT/main
+  pushing subrepo sub to http://user:***@localhost:$HGPORT/sub
+  searching for changes
+  no changes found
   searching for changes
   no changes found
   abort: HTTP Error 403: ssl required