sapling/mercurial
Matt Harbison 7624013ead subrepo: drop the 'ui' parameter to archive()
The current state of subrepo methods is to pass a 'ui' object to some methods,
which has the effect of overriding the subrepo configuration since it is the
root repo's 'ui' that is passed along as deep as there are subrepos.  Other
subrepo method are *not* passed the root 'ui', and instead delegate to their
repo object's 'ui'.  Even in the former case where the root 'ui' is available,
some methods are inconsistent in their use of both the root 'ui' and the local
repo's 'ui'.  (Consider hg._incoming() uses the root 'ui' for path expansion
and some status messages, but also calls bundlerepo.getremotechanges(), which
eventually calls discovery.findcommonincoming(), which calls
setdiscovery.findcommonheads(), which calls status() on the local repo 'ui'.)

This inconsistency with respect to the configured output level is probably
always hidden, because --verbose, --debug and --quiet, along with their 'ui.xxx'
equivalents in the global and user level hgrc files are propagated from the
parent repo to the subrepo via 'baseui'.  The 'ui.xxx' settings in the parent
repo hgrc file are not propagated, but that seems like an unusual thing to set
on a per repo config file.  Any 'ui.xxx' options changed by --config are also
not propagated, because they are set on repo.ui by dispatch.py, not repo.baseui.

The goal here is to cleanup the subrepo methods by dropping the 'ui' parameter,
which in turn prevents mixing subtly different 'ui' instances on a given subrepo
level.  Some methods use more than just the output level settings in 'ui' (add
for example ends up calling scmutil.checkportabilityalert() with both the root
and local repo's 'ui' at different points).  This series just goes for the low
hanging fruit and switches methods that only use the output level.

If we really care about not letting a subrepo config override the root repo's
output level, we can propagate the verbose, debug and quiet settings to the
subrepo in the same way 'ui.commitsubrepos' is in hgsubrepo.__init__.

Archive only uses the 'ui' object to call its progress() method, and gitsubrepo
calls status().
2014-12-13 14:53:46 -05:00
..
default.d config: move mergetools configuration from contrib to default configuration 2014-10-19 03:22:23 +02:00
help addremove: add support for the -S flag 2014-11-24 23:51:26 -05:00
hgweb hgweb: send proper HTTP response after uncaught exception 2014-11-28 10:59:02 -08:00
httpclient httpclient: apply upstream revision da7579b034a4 to fix SSL problems (issue4038) 2013-09-18 14:45:28 -04:00
pure parsers: inline fields of dirstate values in C version 2014-05-27 14:27:41 -07:00
templates templates: fix broken "less" & "more" links in paper style (issue4460) 2014-11-21 13:58:49 +08:00
__init__.py
ancestor.py ancestor: add a way to remove ancestors of bases from a given set 2014-11-14 19:40:30 -08:00
archival.py subrepo: drop the 'ui' parameter to archive() 2014-12-13 14:53:46 -05:00
base85.c base85: cast Py_ssize_t values to int (issue3481) 2012-06-04 16:59:34 +02:00
bdiff.c bdiff: avoid a memory error on malloc failure 2013-10-30 16:03:42 -05:00
bookmarks.py bookmarks: factor out repository lookup from writing bookmarks file 2014-12-02 20:31:19 -08:00
branchmap.py branchmap: pre-filter topological heads before ancestors based filtering 2014-08-30 12:33:12 +02:00
bundle2.py bundle2.processbundle: let callers request default behavior 2014-11-24 16:04:44 -08:00
bundlerepo.py incoming: don't request heads that already are common 2014-08-15 03:24:40 +02:00
byterange.py byterange: remove now-unused sys import 2013-02-09 07:44:22 -06:00
changegroup.py changegroup: fix file linkrevs during reorders (issue4462) 2014-11-20 16:30:57 -08:00
changelog.py changelog: use headrevsfiltered 2014-10-26 12:14:12 +01:00
cmdutil.py commit: abort if --addremove is specified, but fails 2014-11-26 15:16:22 -05:00
commands.py debugindex: respect --debug flag to show full nodeids 2014-12-13 13:56:05 -08:00
commandserver.py cmdserver: protect pipe server streams against corruption caused by direct io 2014-11-15 13:50:43 +09:00
config.py config: use util.re.compile instead of util.compilere 2014-07-15 14:50:58 -07:00
context.py namespaces: add branches 2014-10-17 15:27:12 -07:00
copies.py amend: fix amending rename commit with diverged topologies (issue4405) 2014-10-16 06:35:06 -07:00
dagparser.py en-us: labeled 2012-08-17 13:58:18 -07:00
dagutil.py dagutil: fix id/ix typos in docstrings 2014-10-24 16:26:44 -04:00
demandimport.py demandimport: make it possible to disable by setting HGDEMANDIMPORT=disable 2014-04-08 01:35:13 +02:00
diffhelpers.c diffhelpers: use Py_ssize_t in testhunk() 2012-05-12 14:00:51 +02:00
dirs.c parsers: inline fields of dirstate values in C version 2014-05-27 14:27:41 -07:00
dirstate.py dirstate: use the 'nogc' decorator 2014-12-04 05:43:15 -08:00
discovery.py discovery: prevent crash on unknown remote heads with old repo (issue4337) 2014-08-14 16:26:41 -07:00
dispatch.py util.system: use ui.system() in place of optional ui.fout parameter 2014-11-08 13:06:22 +09:00
dummycert.pem ssl: on OS X, use a dummy cert to trick Python/OpenSSL to use system CA certs 2014-09-26 02:19:48 +02:00
encoding.py encoding: avoid cyclic dependency around "parsers" in pure Python build 2014-10-17 02:07:04 +09:00
error.py hook: raise a more specialized HookAbort exception when a hook fails 2014-11-29 19:13:35 -08:00
exchange.py bundle2-push: provide transaction to reply unbundler 2014-11-21 15:50:38 -08:00
exewrapper.c exewrapper: adapt for legacy HackableMercurial 2012-08-07 11:04:41 +02:00
extensions.py version: show enabled extensions (issue4209) 2014-06-10 13:44:37 +03:00
fancyopts.py fancyopts: restore use of callable() since it was readded in Python 3.2 2014-06-23 09:24:16 -04:00
filelog.py filelog: censored files compare against empty data, have 0 size 2014-09-14 20:32:34 -04:00
filemerge.py util.system: use ui.system() in place of optional ui.fout parameter 2014-11-08 13:06:22 +09:00
fileset.py i18n: add i18n comment to error messages of filesets predicates 2014-11-01 02:43:08 +09:00
formatter.py formatter: add general way to switch hex/short functions 2014-10-03 22:20:02 +09:00
graphmod.py graphmod: attempt to clarify documentation of groupbranchiter() 2014-12-09 09:35:04 -05:00
hbisect.py bisect: report "both good and bad" as such, not as "not directly related" 2013-11-10 18:51:21 +01:00
help.py help: don't search randomly for help data - trust util.datapath 2014-09-28 16:57:47 +02:00
hg.py hg.clone: set 'stream' depending on whether --pull was requested or not 2014-12-12 14:02:56 -08:00
hook.py hook: raise a more specialized HookAbort exception when a hook fails 2014-11-29 19:13:35 -08:00
httpconnection.py httpconnection: properly inject ssl_wrap_socket into httpclient (issue4038) 2013-09-20 09:16:07 -04:00
httppeer.py httppeer: close the temporary bundle file after two-way streaming it 2014-10-25 21:34:49 -04:00
i18n.py i18n: cache the result of every gettext call 2014-10-17 13:52:10 -04:00
ignore.py ignore: process hgignore files in deterministic order 2012-12-17 15:57:02 -08:00
keepalive.py util: move md5 back next to sha1 and allow to call it without an argument 2014-09-24 16:00:47 +09:00
localrepo.py namespaces: remove weakref; always pass in repo 2014-12-14 19:11:44 -08:00
lock.py lock: while releasing, unlink lockfile even if the release function throws 2014-10-16 19:15:51 -07:00
lsprof.py profiling: replace '+' markup of nested lines with indentation 2013-02-08 22:54:48 +01:00
lsprofcalltree.py
mail.py mail: actually use the verifycert config value 2014-11-05 18:31:39 +00:00
manifest.py manifest: add matches() method 2014-10-22 21:38:30 -07:00
match.py match: introduce uipath() to properly style a file path 2014-12-04 23:04:55 -05:00
mdiff.py mdiff.unidiff: add support for noprefix 2014-11-12 23:29:14 -08:00
merge.py merge: perform case-collision checking on final set of actions 2014-11-14 05:53:04 -08:00
minirst.py help: show all nested subsections of a section with hg help foo.section 2014-10-06 07:35:53 -04:00
mpatch.c mpatch: rewrite pointer overflow checks 2013-12-11 18:33:42 -06:00
namespaces.py namespaces: add branches 2014-10-17 15:27:12 -07:00
node.py
obsolete.py obsstore: cache size computation for fm1 node 2014-11-26 23:23:33 -08:00
osutil.c osutil: tab damage, how i hate thee 2012-12-03 13:17:01 -08:00
parser.py parser: allow passing a lookup function to a tokenizer 2014-03-18 17:17:23 -05:00
parsers.c parsers: ensure revlog index node tree is initialized before insertion 2014-12-04 12:02:02 -05:00
patch.py patch.difffeatureopts: add a feature for format-changing diffopts 2014-11-18 17:22:03 -08:00
pathencode.c pathencode: eliminate signed integer warnings 2014-02-19 13:11:24 -08:00
pathutil.py subrepo: normalize path in the specific way for problematic encodings 2014-05-08 19:03:00 +09:00
peer.py peer: delete double definition of method peer 2012-07-28 22:36:22 +02:00
phases.py phases: read pending data when appropriate 2014-10-17 22:23:06 -07:00
posix.py checklink: always close the NamedTemporaryFile 2014-10-15 15:13:43 -04:00
pushkey.py obsolete: add exchange option 2014-10-14 13:26:01 -07:00
pvec.py pvec: use the correct name for an identifier 2013-04-12 17:20:09 -07:00
py3kcompat.py py3kcompat: drop unused export 2014-05-13 15:22:36 -05:00
repair.py repair: use first instead of direct indexing 2014-10-07 00:09:50 -07:00
repoview.py repoview: allow methods on the proxy class to be replaced 2014-12-07 10:52:56 -05:00
revlog.py revlog: add a method to get missing revs incrementally 2014-11-16 00:39:48 -08:00
revset.py revset: fix first and last for generatorset (issue4465) 2014-12-01 05:18:12 -08:00
scmposix.py config: don't read the same config file twice 2014-09-04 21:36:35 +02:00
scmutil.py addremove: warn when addremove fails to operate on a named path 2014-11-26 14:27:36 -05:00
scmwindows.py config: don't read the same config file twice 2014-09-04 21:36:35 +02:00
setdiscovery.py discovery: indices between sample and yesno must match (issue4438) 2014-11-05 13:05:32 +01:00
similar.py cleanup: eradicate long lines 2012-05-12 15:54:54 +02:00
simplemerge.py simplemerge: remove dead code 2014-08-07 12:51:45 -04:00
sshpeer.py util.system: use ui.system() in place of optional ui.fout parameter 2014-11-08 13:06:22 +09:00
sshserver.py changegroup: rename bundle-related functions and classes 2014-09-02 12:11:36 +02:00
sslutil.py sslutil: only support TLS (BC) 2014-10-21 17:01:23 -04:00
statichttprepo.py namespaces: remove weakref; always pass in repo 2014-12-14 19:11:44 -08:00
store.py store: drop unused existing list 2014-04-03 12:59:12 -05:00
strutil.py
subrepo.py subrepo: drop the 'ui' parameter to archive() 2014-12-13 14:53:46 -05:00
tagmerge.py filemerge: add internal:tagmerge merge tool 2014-06-26 01:20:25 +02:00
tags.py tags: introduce _readtaghist function 2014-06-28 01:42:39 +02:00
templatefilters.py templater: add count template filter, plus tests 2014-09-09 22:14:13 +09:00
templatekw.py templatekw: add 'subrepos' keyword to show updated subrepositories 2014-07-15 23:34:13 +09:00
templater.py templater: don't overwrite the keyword mapping in runsymbol() (issue4362) 2014-11-03 12:08:03 -05:00
transaction.py transaction: remove the 'onabort' mechanism 2014-12-04 13:52:46 -08:00
treediscovery.py discovery: stop using nodemap for membership testing 2013-11-15 23:28:43 -05:00
ui.py ui: introduce util.system() wrapper to make sure ui.fout is used 2014-11-08 12:57:42 +09:00
unionrepo.py config: set a 'source' in most cases where config don't come from file but code 2014-03-19 02:45:14 +01:00
url.py proxy: remove unneeded _set_hostport for compatibility with Python 2.7.7rc1 2014-05-22 22:05:26 +09:00
util.h util.h: declare dirstateTupleType variable instead of defining it 2014-07-03 19:05:04 +02:00
util.py util: add a 'nogc' decorator to disable the garbage collection 2014-12-04 05:43:40 -08:00
verify.py verify: report censored nodes if configured policy is abort 2014-10-14 16:16:04 -04:00
win32.py win32: backout 6891e5c66508 2014-05-03 10:33:54 +02:00
windows.py platform: implement readpipe() 2014-08-15 20:02:18 -07:00
wireproto.py bundle2: change header size and make them signed (new format) 2014-10-01 23:40:23 -05:00
worker.py cleanup: avoid _ for local unused tmp variables - that is reserved for i18n 2014-08-15 16:20:47 +02:00