subrepo: use repo.pathto instead of util.pathto to simplify invocation
This centralization into 'repo.pathto()' should reduce the cost of vfs
migration around 'getcwd()' and so on in the future.
--- a/mercurial/subrepo.py Fri Jul 10 00:59:51 2015 +0900
+++ b/mercurial/subrepo.py Fri Jul 10 00:59:51 2015 +0900
@@ -72,13 +72,12 @@
raise
# handle missing subrepo spec files as removed
ui.warn(_("warning: subrepo spec file \'%s\' not found\n") %
- util.pathto(repo.root, repo.getcwd(), f))
+ repo.pathto(f))
return
p.parse(f, data, sections, remap, read)
else:
raise util.Abort(_("subrepo spec file \'%s\' not found") %
- util.pathto(repo.root, repo.getcwd(), f))
-
+ repo.pathto(f))
if '.hgsub' in ctx:
read('.hgsub')
@@ -97,8 +96,7 @@
except ValueError:
raise util.Abort(_("invalid subrepository revision "
"specifier in \'%s\' line %d")
- % (util.pathto(repo.root, repo.getcwd(),
- '.hgsubstate'), (i + 1)))
+ % (repo.pathto('.hgsubstate'), (i + 1)))
rev[path] = revision
except IOError as err:
if err.errno != errno.ENOENT:
--- a/tests/test-subrepo-missing.t Fri Jul 10 00:59:51 2015 +0900
+++ b/tests/test-subrepo-missing.t Fri Jul 10 00:59:51 2015 +0900
@@ -23,8 +23,8 @@
$ cp .hgsubstate .hgsubstate.old
>>> file('.hgsubstate', 'wb').write('\ninvalid')
- $ hg st --subrepos
- abort: invalid subrepository revision specifier in '.hgsubstate' line 2
+ $ hg st --subrepos --cwd $TESTTMP -R $TESTTMP/repo
+ abort: invalid subrepository revision specifier in 'repo/.hgsubstate' line 2 (glob)
[255]
$ mv .hgsubstate.old .hgsubstate
@@ -44,9 +44,9 @@
delete .hgsub and update
$ rm .hgsub
- $ hg up 0
- warning: subrepo spec file '.hgsub' not found
- warning: subrepo spec file '.hgsub' not found
+ $ hg up 0 --cwd $TESTTMP -R $TESTTMP/repo
+ warning: subrepo spec file 'repo/.hgsub' not found (glob)
+ warning: subrepo spec file 'repo/.hgsub' not found (glob)
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
$ hg st
warning: subrepo spec file '.hgsub' not found