Mercurial > hg
changeset 14882:bb2cffe81a94 stable
cmdserver: take repo.baseui as our ui
The ui passed to server() is really repo.ui, that is it contains its local
configuration as well.
When running commands that use a different repo than the servers cached repo,
we don't want to use that ui as the baseui for the new repo.
author | Idan Kamara <idankk86@gmail.com> |
---|---|
date | Thu, 14 Jul 2011 11:46:15 +0300 |
parents | 2e54387976d4 |
children | 9b9424540a9f c0ccd70df52c |
files | mercurial/commandserver.py tests/test-commandserver.py tests/test-commandserver.py.out |
diffstat | 3 files changed, 33 insertions(+), 2 deletions(-) [+] |
line wrap: on
line diff
--- a/mercurial/commandserver.py Fri Jul 15 10:18:24 2011 +0200 +++ b/mercurial/commandserver.py Thu Jul 14 11:46:15 2011 +0300 @@ -132,7 +132,6 @@ """ def __init__(self, ui, repo, mode): self.cwd = os.getcwd() - self.ui = ui logpath = ui.config("cmdserver", "log", None) if logpath: @@ -143,6 +142,9 @@ else: logfile = open(logpath, 'a') + # the ui here is really the repo ui so take its baseui so we don't end up + # with its local configuration + self.ui = repo.baseui self.repo = repo self.repoui = repo.ui
--- a/tests/test-commandserver.py Fri Jul 15 10:18:24 2011 +0200 +++ b/tests/test-commandserver.py Thu Jul 14 11:46:15 2011 +0300 @@ -1,4 +1,4 @@ -import sys, os, struct, subprocess, cStringIO, re +import sys, os, struct, subprocess, cStringIO, re, shutil def connect(path=None): cmdline = ['hg', 'serve', '--cmdserver', 'pipe'] @@ -131,6 +131,19 @@ runcommand(server, ['st', 'foo/bar']) os.remove('foo/bar') +def localhgrc(server): + """ check that local configs for the cached repo aren't inherited when -R + is used """ + readchannel(server) + + # the cached repo local hgrc contains ui.foo=bar, so showconfig should show it + runcommand(server, ['showconfig']) + + # but not for this repo + runcommand(server, ['init', 'foo']) + runcommand(server, ['-R', 'foo', 'showconfig']) + shutil.rmtree('foo') + if __name__ == '__main__': os.system('hg init') @@ -140,3 +153,8 @@ check(inputeof) check(serverinput) check(cwd) + + hgrc = open('.hg/hgrc', 'a') + hgrc.write('[ui]\nfoo=bar\n') + hgrc.close() + check(localhgrc)
--- a/tests/test-commandserver.py.out Fri Jul 15 10:18:24 2011 +0200 +++ b/tests/test-commandserver.py.out Thu Jul 14 11:46:15 2011 +0300 @@ -38,3 +38,14 @@ ? bar ? foo/bar +bundle.mainreporoot=$TESTTMP +defaults.backout=-d "0 0" +defaults.commit=-d "0 0" +defaults.tag=-d "0 0" +ui.slash=True +ui.foo=bar +bundle.mainreporoot=$TESTTMP/foo +defaults.backout=-d "0 0" +defaults.commit=-d "0 0" +defaults.tag=-d "0 0" +ui.slash=True