##// END OF EJS Templates
merge: disable path conflict checking by default (issue5716)...
merge: disable path conflict checking by default (issue5716) We shouldn't ship a severe perf regression in hg update for 4.4. Differential Revision: https://phab.mercurial-scm.org/D1223

File last commit:

r34943:2a774cae stable
r34943:2a774cae stable
Show More
configitems.py
1146 lines | 25.1 KiB | text/x-python | PythonLexer
configitems: add a basic class to hold config item information...
r32983 # configitems.py - centralized declaration of configuration option
#
# Copyright 2017 Pierre-Yves David <pierre-yves.david@octobus.net>
#
# This software may be used and distributed according to the terms of the
# GNU General Public License version 2 or any later version.
from __future__ import absolute_import
configitems: extract the logic to build a registrar on any configtable...
r33126 import functools
Boris Feld
configitems: allow for the registration of "generic" config item...
r34663 import re
configitems: extract the logic to build a registrar on any configtable...
r33126
configitems: introduce a central registry for config option...
r32984 from . import (
Boris Feld
configitems: register the 'web.encoding' config
r34236 encoding,
configitems: introduce a central registry for config option...
r32984 error,
)
configitems: add an official API for extensions to register config item...
r33127 def loadconfigtable(ui, extname, configtable):
"""update config item known to the ui with the extension ones"""
for section, items in configtable.items():
Boris Feld
configitems: fix registration of extensions config...
r34769 knownitems = ui._knownconfig.setdefault(section, itemregister())
configitems: add a devel warning for extensions items overiding core one...
r33128 knownkeys = set(knownitems)
newkeys = set(items)
for key in sorted(knownkeys & newkeys):
msg = "extension '%s' overwrite config item '%s.%s'"
msg %= (extname, section, key)
ui.develwarn(msg, config='warn-config')
knownitems.update(items)
configitems: add an official API for extensions to register config item...
r33127
configitems: add a basic class to hold config item information...
r32983 class configitem(object):
"""represent a known config item
:section: the official config section where to find this item,
:name: the official name within the section,
:default: default value for this item,
Boris Feld
configitems: allow for the registration of "generic" config item...
r34663 :alias: optional list of tuples as alternatives,
:generic: this is a generic definition, match name using regular expression.
configitems: add a basic class to hold config item information...
r32983 """
Boris Feld
configitems: allow for the registration of "generic" config item...
r34663 def __init__(self, section, name, default=None, alias=(),
generic=False, priority=0):
configitems: add a basic class to hold config item information...
r32983 self.section = section
self.name = name
self.default = default
David Demelier
configitems: add alias support in config...
r33329 self.alias = list(alias)
Boris Feld
configitems: allow for the registration of "generic" config item...
r34663 self.generic = generic
self.priority = priority
self._re = None
if generic:
self._re = re.compile(self.name)
class itemregister(dict):
"""A specialized dictionary that can handle wild-card selection"""
def __init__(self):
super(itemregister, self).__init__()
self._generics = set()
def update(self, other):
super(itemregister, self).update(other)
self._generics.update(other._generics)
def __setitem__(self, key, item):
super(itemregister, self).__setitem__(key, item)
if item.generic:
self._generics.add(item)
def get(self, key):
Boris Feld
configitems: do not directly match generic items...
r34875 baseitem = super(itemregister, self).get(key)
if baseitem is not None and not baseitem.generic:
return baseitem
Boris Feld
configitems: allow for the registration of "generic" config item...
r34663
# search for a matching generic item
generics = sorted(self._generics, key=(lambda x: (x.priority, x.name)))
for item in generics:
Boris Feld
configitems: document the choice of using 'match' instead of 'search'
r34876 # we use 'match' instead of 'search' to make the matching simpler
# for people unfamiliar with regular expression. Having the match
# rooted to the start of the string will produce less surprising
# result for user writing simple regex for sub-attribute.
#
# For example using "color\..*" match produces an unsurprising
# result, while using search could suddenly match apparently
# unrelated configuration that happens to contains "color."
# anywhere. This is a tradeoff where we favor requiring ".*" on
# some match to avoid the need to prefix most pattern with "^".
# The "^" seems more error prone.
Boris Feld
configitems: allow for the registration of "generic" config item...
r34663 if item._re.match(key):
return item
Boris Feld
configitems: do not directly match generic items...
r34875 return None
configitems: introduce a central registry for config option...
r32984
coreitems = {}
configitems: extract the logic to build a registrar on any configtable...
r33126 def _register(configtable, *args, **kwargs):
configitems: introduce a central registry for config option...
r32984 item = configitem(*args, **kwargs)
Boris Feld
configitems: allow for the registration of "generic" config item...
r34663 section = configtable.setdefault(item.section, itemregister())
configitems: introduce a central registry for config option...
r32984 if item.name in section:
msg = "duplicated config item registration for '%s.%s'"
raise error.ProgrammingError(msg % (item.section, item.name))
section[item.name] = item
configitems: register 'ui.quiet' as first example...
r32986
Boris Feld
configitems: handle case were the default value is not static...
r33471 # special value for case where the default is derived from other values
dynamicdefault = object()
configitems: register 'ui.quiet' as first example...
r32986 # Registering actual config items
configitems: extract the logic to build a registrar on any configtable...
r33126 def getitemregister(configtable):
Yuya Nishihara
registrar: host "dynamicdefault" constant by configitem object...
r34918 f = functools.partial(_register, configtable)
# export pseudo enum as configitem.*
f.dynamicdefault = dynamicdefault
return f
configitems: extract the logic to build a registrar on any configtable...
r33126
coreconfigitem = getitemregister(coreitems)
Boris Feld
configitems: register the 'alias' section
r34664 coreconfigitem('alias', '.*',
default=None,
generic=True,
)
Boris Feld
configitems: register the annotate diff options
r34619 coreconfigitem('annotate', 'nodates',
Boris Feld
configitems: fixup default value of annotate config option...
r34739 default=False,
Boris Feld
configitems: register the annotate diff options
r34619 )
coreconfigitem('annotate', 'showfunc',
Boris Feld
configitems: fixup default value of annotate config option...
r34739 default=False,
Boris Feld
configitems: register the annotate diff options
r34619 )
coreconfigitem('annotate', 'unified',
default=None,
)
coreconfigitem('annotate', 'git',
Boris Feld
configitems: fixup default value of annotate config option...
r34739 default=False,
Boris Feld
configitems: register the annotate diff options
r34619 )
coreconfigitem('annotate', 'ignorews',
Boris Feld
configitems: fixup default value of annotate config option...
r34739 default=False,
Boris Feld
configitems: register the annotate diff options
r34619 )
coreconfigitem('annotate', 'ignorewsamount',
Boris Feld
configitems: fixup default value of annotate config option...
r34739 default=False,
Boris Feld
configitems: register the annotate diff options
r34619 )
coreconfigitem('annotate', 'ignoreblanklines',
Boris Feld
configitems: fixup default value of annotate config option...
r34739 default=False,
Boris Feld
configitems: register the annotate diff options
r34619 )
coreconfigitem('annotate', 'ignorewseol',
Boris Feld
configitems: fixup default value of annotate config option...
r34739 default=False,
Boris Feld
configitems: register the annotate diff options
r34619 )
coreconfigitem('annotate', 'nobinary',
Boris Feld
configitems: fixup default value of annotate config option...
r34739 default=False,
Boris Feld
configitems: register the annotate diff options
r34619 )
coreconfigitem('annotate', 'noprefix',
Boris Feld
configitems: fixup default value of annotate config option...
r34739 default=False,
Boris Feld
configitems: register the annotate diff options
r34619 )
configitems: register the 'auth.cookiefile' config
r33177 coreconfigitem('auth', 'cookiefile',
default=None,
)
configitems: register the 'bookmarks.pushing' config
r33178 # bookmarks.pushing: internal hack for discovery
coreconfigitem('bookmarks', 'pushing',
default=list,
)
configitems: register the 'bundle.mainreporoot' config
r33179 # bundle.mainreporoot: internal hack for bundlerepo
coreconfigitem('bundle', 'mainreporoot',
default='',
)
configitems: register the 'bundle.reorder' config
r33180 # bundle.reorder: experimental config
coreconfigitem('bundle', 'reorder',
default='auto',
)
Jun Wu
codemod: register core configitems using a script...
r33499 coreconfigitem('censor', 'policy',
default='abort',
)
coreconfigitem('chgserver', 'idletimeout',
default=3600,
)
coreconfigitem('chgserver', 'skiphash',
default=False,
)
coreconfigitem('cmdserver', 'log',
default=None,
)
Boris Feld
configitems: register the 'color' section
r34665 coreconfigitem('color', '.*',
default=None,
generic=True,
)
configitems: register the 'color.mode' config
r33176 coreconfigitem('color', 'mode',
default='auto',
)
Boris Feld
configitems: register the 'color.pagermode' config
r33472 coreconfigitem('color', 'pagermode',
default=dynamicdefault,
)
Jun Wu
show: move configitems to core...
r34889 coreconfigitem('commands', 'show.aliasprefix',
default=list,
)
Jun Wu
codemod: register core configitems using a script...
r33499 coreconfigitem('commands', 'status.relative',
default=False,
)
Pulkit Goyal
morestatus: move fb extension to core by plugging to `hg status --verbose`...
r33766 coreconfigitem('commands', 'status.skipstates',
default=[],
)
coreconfigitem('commands', 'status.verbose',
default=False,
)
Augie Fackler
config: graduate experimental.updatecheck to commands.update.check...
r34706 coreconfigitem('commands', 'update.check',
default=None,
Boris Feld
config: simplify aliasing commands.update.check...
r34806 # Deprecated, remove after 4.4 release
alias=[('experimental', 'updatecheck')]
Augie Fackler
config: graduate experimental.updatecheck to commands.update.check...
r34706 )
Jun Wu
codemod: register core configitems using a script...
r33499 coreconfigitem('commands', 'update.requiredest',
default=False,
)
Boris Feld
configitems: register the 'committemplate' section
r34666 coreconfigitem('committemplate', '.*',
default=None,
generic=True,
)
Boris Feld
configitems: register the 'debug.dirstate.delaywrite' config
r34482 coreconfigitem('debug', 'dirstate.delaywrite',
default=0,
)
Boris Feld
configitems: register the 'defaults' section
r34667 coreconfigitem('defaults', '.*',
default=None,
generic=True,
)
config: register the 'devel.all-warnings' config...
r33159 coreconfigitem('devel', 'all-warnings',
default=False,
)
config: register the 'devel.bundle2.debug' config...
r33160 coreconfigitem('devel', 'bundle2.debug',
default=False,
)
Boris Feld
configitems: register the 'devel.cache-vfs' config
r34526 coreconfigitem('devel', 'cache-vfs',
default=None,
)
config: register the devel.check-locks config
r33161 coreconfigitem('devel', 'check-locks',
default=False,
)
config: register the 'devel.check-relroot' config
r33162 coreconfigitem('devel', 'check-relroot',
default=False,
)
Jun Wu
codemod: register core configitems using a script...
r33499 coreconfigitem('devel', 'default-date',
default=None,
)
coreconfigitem('devel', 'deprec-warn',
default=False,
)
config: register the 'devel.disableloaddefaultcerts' config
r33163 coreconfigitem('devel', 'disableloaddefaultcerts',
default=False,
)
Boris Feld
devel-warn: add 'warn-' to 'devel.empty-changegroup' config...
r34735 coreconfigitem('devel', 'warn-empty-changegroup',
Boris Feld
configitems: register the 'devel.empty-changegroup' config
r34527 default=False,
)
config: register the 'devel.legacy.exchange' config
r33181 coreconfigitem('devel', 'legacy.exchange',
default=list,
)
config: register the 'devel.servercafile' config
r33164 coreconfigitem('devel', 'servercafile',
default='',
)
config: register the 'devel.serverexactprotocol' config
r33165 coreconfigitem('devel', 'serverexactprotocol',
default='',
)
config: register the 'devel.serverrequirecert' config
r33166 coreconfigitem('devel', 'serverrequirecert',
configitem: fix default value for 'serverrequirecert'
r33174 default=False,
config: register the 'devel.serverrequirecert' config
r33166 )
config: register the 'devel.strip-obsmarkers' config...
r33167 coreconfigitem('devel', 'strip-obsmarkers',
default=True,
)
Boris Feld
configitems: register the 'devel.warn-config' config
r34524 coreconfigitem('devel', 'warn-config',
default=None,
)
Boris Feld
configitems: register the 'devel.warn-config-default' config
r34525 coreconfigitem('devel', 'warn-config-default',
default=None,
)
Boris Feld
obsolete: add a devel.user.obsmarker...
r34576 coreconfigitem('devel', 'user.obsmarker',
default=None,
)
Boris Feld
configitems: adds a developer warning when accessing undeclared configuration...
r34859 coreconfigitem('devel', 'warn-config-unknown',
default=None,
)
Boris Feld
configitems: register the 'diff.*' config...
r34522 coreconfigitem('diff', 'nodates',
Boris Feld
configitems: fixup default value of diff config option...
r34736 default=False,
Boris Feld
configitems: register the 'diff.*' config...
r34522 )
coreconfigitem('diff', 'showfunc',
Boris Feld
configitems: fixup default value of diff config option...
r34736 default=False,
Boris Feld
configitems: register the 'diff.*' config...
r34522 )
coreconfigitem('diff', 'unified',
default=None,
)
coreconfigitem('diff', 'git',
Boris Feld
configitems: fixup default value of diff config option...
r34736 default=False,
Boris Feld
configitems: register the 'diff.*' config...
r34522 )
coreconfigitem('diff', 'ignorews',
Boris Feld
configitems: fixup default value of diff config option...
r34736 default=False,
Boris Feld
configitems: register the 'diff.*' config...
r34522 )
coreconfigitem('diff', 'ignorewsamount',
Boris Feld
configitems: fixup default value of diff config option...
r34736 default=False,
Boris Feld
configitems: register the 'diff.*' config...
r34522 )
coreconfigitem('diff', 'ignoreblanklines',
Boris Feld
configitems: fixup default value of diff config option...
r34736 default=False,
Boris Feld
configitems: register the 'diff.*' config...
r34522 )
coreconfigitem('diff', 'ignorewseol',
Boris Feld
configitems: fixup default value of diff config option...
r34736 default=False,
Boris Feld
configitems: register the 'diff.*' config...
r34522 )
coreconfigitem('diff', 'nobinary',
Boris Feld
configitems: fixup default value of diff config option...
r34736 default=False,
Boris Feld
configitems: register the 'diff.*' config...
r34522 )
coreconfigitem('diff', 'noprefix',
Boris Feld
configitems: fixup default value of diff config option...
r34736 default=False,
Boris Feld
configitems: register the 'diff.*' config...
r34522 )
Boris Feld
configitems: register the 'email.bcc' config
r34598 coreconfigitem('email', 'bcc',
default=None,
)
Boris Feld
configitems: register the 'email.cc' config
r34599 coreconfigitem('email', 'cc',
default=None,
)
Jun Wu
codemod: register core configitems using a script...
r33499 coreconfigitem('email', 'charsets',
default=list,
)
Boris Feld
configitems: register the 'email.from' config
r34480 coreconfigitem('email', 'from',
default=None,
)
Jun Wu
codemod: register core configitems using a script...
r33499 coreconfigitem('email', 'method',
default='smtp',
)
Boris Feld
configitems: register the 'email.reply-to' config
r34600 coreconfigitem('email', 'reply-to',
default=None,
)
Yuya Nishihara
configitems: register 'email.to' and 'patchbomb.to'
r34912 coreconfigitem('email', 'to',
default=None,
)
Boris Feld
configitems: register the 'experimental.archivemetatemplate' config
r34616 coreconfigitem('experimental', 'archivemetatemplate',
default=dynamicdefault,
)
Jun Wu
codemod: register core configitems using a script...
r33499 coreconfigitem('experimental', 'bundle-phases',
default=False,
)
coreconfigitem('experimental', 'bundle2-advertise',
default=True,
)
coreconfigitem('experimental', 'bundle2-output-capture',
default=False,
)
coreconfigitem('experimental', 'bundle2.pushback',
default=False,
)
coreconfigitem('experimental', 'bundle2lazylocking',
default=False,
)
coreconfigitem('experimental', 'bundlecomplevel',
default=None,
)
coreconfigitem('experimental', 'changegroup3',
default=False,
)
coreconfigitem('experimental', 'clientcompressionengines',
default=list,
)
Pulkit Goyal
copytrace: replace experimental.disablecopytrace config with copytrace (BC)...
r34079 coreconfigitem('experimental', 'copytrace',
default='on',
)
Pulkit Goyal
copies: add a config to limit the number of candidates to check in heuristics...
r34847 coreconfigitem('experimental', 'copytrace.movecandidateslimit',
default=100,
)
Pulkit Goyal
copytrace: add a a new config to limit the number of drafts in heuristics...
r34312 coreconfigitem('experimental', 'copytrace.sourcecommitlimit',
default=100,
)
Jun Wu
codemod: register core configitems using a script...
r33499 coreconfigitem('experimental', 'crecordtest',
default=None,
)
coreconfigitem('experimental', 'editortmpinhg',
default=False,
)
Boris Feld
config: invert evolution-related configuration aliases...
r34864 coreconfigitem('experimental', 'evolution',
default=list,
)
Boris Feld
config: gather allowdivergence under the evolution namespace...
r34873 coreconfigitem('experimental', 'evolution.allowdivergence',
default=False,
alias=[('experimental', 'allowdivergence')]
)
Boris Feld
config: update evolution-related config...
r34865 coreconfigitem('experimental', 'evolution.allowunstable',
default=None,
)
coreconfigitem('experimental', 'evolution.createmarkers',
default=None,
)
Boris Feld
config: also gather effect-flags on experimental.evolution...
r34903 coreconfigitem('experimental', 'evolution.effect-flags',
default=False,
alias=[('experimental', 'effect-flags')]
)
Boris Feld
config: update evolution-related config...
r34865 coreconfigitem('experimental', 'evolution.exchange',
default=None,
)
Boris Feld
config: invert evolution-related configuration aliases...
r34864 coreconfigitem('experimental', 'evolution.bundle-obsmarker',
default=False,
)
coreconfigitem('experimental', 'evolution.track-operation',
default=True,
)
Boris Feld
configitems: register the 'experimental.maxdeltachainspan' config
r34520 coreconfigitem('experimental', 'maxdeltachainspan',
default=-1,
)
Boris Feld
configitems: register the 'experimental.mmapindexthreshold' config
r34521 coreconfigitem('experimental', 'mmapindexthreshold',
default=None,
)
Boris Feld
configitems: register the 'experimental.nonnormalparanoidcheck' config
r34492 coreconfigitem('experimental', 'nonnormalparanoidcheck',
default=False,
)
Jun Wu
codemod: register core configitems using a script...
r33499 coreconfigitem('experimental', 'exportableenviron',
default=list,
)
coreconfigitem('experimental', 'extendedheader.index',
default=None,
)
coreconfigitem('experimental', 'extendedheader.similarity',
default=False,
)
coreconfigitem('experimental', 'format.compression',
default='zlib',
)
coreconfigitem('experimental', 'graphshorten',
default=False,
)
Boris Feld
configitems: register the 'experimental.graphstyle.parent' config
r34528 coreconfigitem('experimental', 'graphstyle.parent',
default=dynamicdefault,
)
Boris Feld
configitems: register the 'experimental.graphstyle.missing' config
r34529 coreconfigitem('experimental', 'graphstyle.missing',
default=dynamicdefault,
)
Boris Feld
configitems: register the 'experimental.graphstyle.grandparent' config
r34530 coreconfigitem('experimental', 'graphstyle.grandparent',
default=dynamicdefault,
)
Jun Wu
codemod: register core configitems using a script...
r33499 coreconfigitem('experimental', 'hook-track-tags',
default=False,
)
coreconfigitem('experimental', 'httppostargs',
default=False,
)
coreconfigitem('experimental', 'manifestv2',
default=False,
)
coreconfigitem('experimental', 'mergedriver',
default=None,
)
coreconfigitem('experimental', 'obsmarkers-exchange-debug',
default=False,
)
Jun Wu
rebase: initial support for multiple destinations...
r34007 coreconfigitem('experimental', 'rebase.multidest',
default=False,
)
Jun Wu
codemod: register core configitems using a script...
r33499 coreconfigitem('experimental', 'revertalternateinteractivemode',
default=True,
)
coreconfigitem('experimental', 'revlogv2',
default=None,
)
coreconfigitem('experimental', 'spacemovesdown',
default=False,
)
Paul Morelle
revlog: introduce an experimental flag to slice chunks reads when too sparse...
r34825 coreconfigitem('experimental', 'sparse-read',
default=False,
)
coreconfigitem('experimental', 'sparse-read.density-threshold',
default=0.25,
)
Paul Morelle
sparse-read: skip gaps too small to be worth splitting...
r34882 coreconfigitem('experimental', 'sparse-read.min-gap-size',
Paul Morelle
revlog-sparse-read: add a lower-threshold for read block size...
r34826 default='256K',
)
Jun Wu
codemod: register core configitems using a script...
r33499 coreconfigitem('experimental', 'treemanifest',
default=False,
)
Boris Feld
configitems: register the 'extensions' section
r34668 coreconfigitem('extensions', '.*',
default=None,
generic=True,
)
Boris Feld
configitems: register the 'extdata' section
r34770 coreconfigitem('extdata', '.*',
default=None,
generic=True,
)
configitems: register the 'format.aggressivemergedeltas' config
r33232 coreconfigitem('format', 'aggressivemergedeltas',
default=False,
)
configitems: register the 'format.chunkcachesize' config
r33233 coreconfigitem('format', 'chunkcachesize',
default=None,
)
configitems: register the 'format.dotencode' config
r33234 coreconfigitem('format', 'dotencode',
default=True,
)
configitems: register the 'format.generaldelta' config
r33235 coreconfigitem('format', 'generaldelta',
default=False,
)
configitems: register the 'format.manifestcachesize' config
r33236 coreconfigitem('format', 'manifestcachesize',
default=None,
)
configitems: register the 'format.maxchainlen' config
r33237 coreconfigitem('format', 'maxchainlen',
default=None,
)
configitems: register the 'format.obsstore-version' config
r33241 coreconfigitem('format', 'obsstore-version',
default=None,
)
configitems: register the 'format.usefncache' config
r33242 coreconfigitem('format', 'usefncache',
default=True,
)
configitems: register the 'format.usegeneraldelta' config
r33243 coreconfigitem('format', 'usegeneraldelta',
default=True,
)
configitems: register the 'format.usestore' config
r33244 coreconfigitem('format', 'usestore',
default=True,
)
Gregory Szorc
fsmonitor: warn when fsmonitor could be used...
r34886 coreconfigitem('fsmonitor', 'warn_when_unused',
default=True,
)
coreconfigitem('fsmonitor', 'warn_update_file_count',
default=50000,
)
Boris Feld
configitems: register the 'hooks' config section
r34669 coreconfigitem('hooks', '.*',
default=dynamicdefault,
generic=True,
)
Boris Feld
configitems: register the 'hgweb-paths' section
r34752 coreconfigitem('hgweb-paths', '.*',
default=list,
generic=True,
)
Boris Feld
configitems: register the 'hostfingerprints' section
r34749 coreconfigitem('hostfingerprints', '.*',
default=list,
generic=True,
)
configitems: register the 'hostsecurity.ciphers' config
r33214 coreconfigitem('hostsecurity', 'ciphers',
default=None,
)
configitems: register the 'hostsecurity.disabletls10warning' config
r33215 coreconfigitem('hostsecurity', 'disabletls10warning',
default=False,
)
Boris Feld
configitems: register the 'hostsecurity.minimumprotocol' config
r34748 coreconfigitem('hostsecurity', 'minimumprotocol',
default=dynamicdefault,
)
Boris Feld
configitems: register the 'hostsecurity.*:minimumprotocol' config
r34774 coreconfigitem('hostsecurity', '.*:minimumprotocol$',
default=dynamicdefault,
generic=True,
)
Boris Feld
configitems: register the 'hostsecurity.*:ciphers' config
r34775 coreconfigitem('hostsecurity', '.*:ciphers$',
default=dynamicdefault,
generic=True,
)
Boris Feld
configitems: register the 'hostsecurity.*:fingerprints' config
r34776 coreconfigitem('hostsecurity', '.*:fingerprints$',
default=list,
generic=True,
)
Boris Feld
configitems: register the 'hostsecurity.*:verifycertsfile' config
r34777 coreconfigitem('hostsecurity', '.*:verifycertsfile$',
default=None,
generic=True,
)
Jun Wu
codemod: register core configitems using a script...
r33499 coreconfigitem('http_proxy', 'always',
default=False,
)
coreconfigitem('http_proxy', 'host',
default=None,
)
coreconfigitem('http_proxy', 'no',
default=list,
)
coreconfigitem('http_proxy', 'passwd',
default=None,
)
coreconfigitem('http_proxy', 'user',
default=None,
)
Boris Feld
configitems: register the 'logtoprocess.commandexception' config
r34593 coreconfigitem('logtoprocess', 'commandexception',
default=None,
)
Boris Feld
configitems: register the 'logtoprocess.commandfinish' config
r34594 coreconfigitem('logtoprocess', 'commandfinish',
default=None,
)
Boris Feld
configitems: register the 'logtoprocess.command' config
r34595 coreconfigitem('logtoprocess', 'command',
default=None,
)
Boris Feld
configitems: register the 'logtoprocess.develwarn' config
r34596 coreconfigitem('logtoprocess', 'develwarn',
default=None,
)
Boris Feld
configitems: register the 'logtoprocess.uiblocked' config
r34597 coreconfigitem('logtoprocess', 'uiblocked',
default=None,
)
Boris Feld
configitems: register 'merge.checkunknown' and 'merge.checkignored'...
r34523 coreconfigitem('merge', 'checkunknown',
default='abort',
)
coreconfigitem('merge', 'checkignored',
default='abort',
)
Siddharth Agarwal
merge: add a config option to disable path conflict checking...
r34942 coreconfigitem('experimental', 'merge.checkpathconflicts',
Siddharth Agarwal
merge: disable path conflict checking by default (issue5716)...
r34943 default=False,
Siddharth Agarwal
merge: add a config option to disable path conflict checking...
r34942 )
Jun Wu
codemod: register core configitems using a script...
r33499 coreconfigitem('merge', 'followcopies',
default=True,
)
Ryan McElroy
filemerge: introduce functions to halt merge flow...
r34797 coreconfigitem('merge', 'on-failure',
default='continue',
)
Boris Feld
configitems: register the 'merge.preferancestor' config
r34481 coreconfigitem('merge', 'preferancestor',
default=lambda: ['*'],
)
Boris Feld
configitems: register the full 'merge-tools' config and sub-options...
r34827 coreconfigitem('merge-tools', '.*',
default=None,
generic=True,
)
Augie Fackler
configitems: make all regular expressions bytes and not native str...
r34892 coreconfigitem('merge-tools', br'.*\.args$',
Boris Feld
configitems: register the full 'merge-tools' config and sub-options...
r34827 default="$local $base $other",
generic=True,
priority=-1,
)
Augie Fackler
configitems: make all regular expressions bytes and not native str...
r34892 coreconfigitem('merge-tools', br'.*\.binary$',
Boris Feld
configitems: register the full 'merge-tools' config and sub-options...
r34827 default=False,
generic=True,
priority=-1,
)
Augie Fackler
configitems: make all regular expressions bytes and not native str...
r34892 coreconfigitem('merge-tools', br'.*\.check$',
Boris Feld
configitems: register the full 'merge-tools' config and sub-options...
r34827 default=list,
generic=True,
priority=-1,
)
Augie Fackler
configitems: make all regular expressions bytes and not native str...
r34892 coreconfigitem('merge-tools', br'.*\.checkchanged$',
Boris Feld
configitems: register the full 'merge-tools' config and sub-options...
r34827 default=False,
generic=True,
priority=-1,
)
Augie Fackler
configitems: make all regular expressions bytes and not native str...
r34892 coreconfigitem('merge-tools', br'.*\.executable$',
Boris Feld
configitems: register the full 'merge-tools' config and sub-options...
r34827 default=dynamicdefault,
generic=True,
priority=-1,
)
Augie Fackler
configitems: make all regular expressions bytes and not native str...
r34892 coreconfigitem('merge-tools', br'.*\.fixeol$',
Boris Feld
configitems: register the full 'merge-tools' config and sub-options...
r34827 default=False,
generic=True,
priority=-1,
)
Augie Fackler
configitems: make all regular expressions bytes and not native str...
r34892 coreconfigitem('merge-tools', br'.*\.gui$',
Boris Feld
configitems: register the full 'merge-tools' config and sub-options...
r34827 default=False,
generic=True,
priority=-1,
)
Augie Fackler
configitems: make all regular expressions bytes and not native str...
r34892 coreconfigitem('merge-tools', br'.*\.priority$',
Boris Feld
configitems: register the full 'merge-tools' config and sub-options...
r34827 default=0,
generic=True,
priority=-1,
)
Augie Fackler
configitems: make all regular expressions bytes and not native str...
r34892 coreconfigitem('merge-tools', br'.*\.premerge$',
Boris Feld
configitems: register the full 'merge-tools' config and sub-options...
r34827 default=dynamicdefault,
generic=True,
priority=-1,
)
Augie Fackler
configitems: make all regular expressions bytes and not native str...
r34892 coreconfigitem('merge-tools', br'.*\.symlink$',
Boris Feld
configitems: register the full 'merge-tools' config and sub-options...
r34827 default=False,
generic=True,
priority=-1,
)
Boris Feld
configitems: register the 'pager.attend-.*' options
r34670 coreconfigitem('pager', 'attend-.*',
default=dynamicdefault,
generic=True,
)
Jun Wu
codemod: register core configitems using a script...
r33499 coreconfigitem('pager', 'ignore',
default=list,
)
Boris Feld
configitems: register the 'pager.pager' config
r34592 coreconfigitem('pager', 'pager',
default=dynamicdefault,
)
configitems: register the 'patch.eol' config
r33226 coreconfigitem('patch', 'eol',
default='strict',
)
configitems: register 'patch.fuzz' as first example for 'configint'...
r32988 coreconfigitem('patch', 'fuzz',
default=2,
)
Jun Wu
codemod: register core configitems using a script...
r33499 coreconfigitem('paths', 'default',
default=None,
)
coreconfigitem('paths', 'default-push',
default=None,
)
Boris Feld
configitems: register the 'paths' config section
r34671 coreconfigitem('paths', '.*',
default=None,
generic=True,
)
Jun Wu
codemod: register core configitems using a script...
r33499 coreconfigitem('phases', 'checksubrepos',
default='follow',
)
Boris Feld
configitems: register the 'phases.new-commit' config
r34478 coreconfigitem('phases', 'new-commit',
Boris Feld
configitems: update default value of 'phases.new-commit'...
r34564 default='draft',
Boris Feld
configitems: register the 'phases.new-commit' config
r34478 )
Jun Wu
codemod: register core configitems using a script...
r33499 coreconfigitem('phases', 'publish',
default=True,
)
coreconfigitem('profiling', 'enabled',
default=False,
)
coreconfigitem('profiling', 'format',
default='text',
)
coreconfigitem('profiling', 'freq',
default=1000,
)
coreconfigitem('profiling', 'limit',
default=30,
)
coreconfigitem('profiling', 'nested',
default=0,
)
Boris Feld
configitems: register the 'profiling.output' config
r34410 coreconfigitem('profiling', 'output',
default=None,
)
Boris Feld
configitems: register the 'profiling.showmax' config
r34411 coreconfigitem('profiling', 'showmax',
default=0.999,
)
Boris Feld
configitems: register the 'profiling.showmin' config
r34412 coreconfigitem('profiling', 'showmin',
default=dynamicdefault,
)
Jun Wu
codemod: register core configitems using a script...
r33499 coreconfigitem('profiling', 'sort',
default='inlinetime',
)
coreconfigitem('profiling', 'statformat',
default='hotpath',
)
Boris Feld
configitems: register the 'profiling.type' config
r34413 coreconfigitem('profiling', 'type',
default='stat',
)
configitems: register the 'progress.assume-tty' config
r33245 coreconfigitem('progress', 'assume-tty',
default=False,
)
Jun Wu
codemod: register core configitems using a script...
r33499 coreconfigitem('progress', 'changedelay',
default=1,
)
configitems: register the 'progress.clear-complete' config
r33246 coreconfigitem('progress', 'clear-complete',
default=True,
)
Jun Wu
codemod: register core configitems using a script...
r33499 coreconfigitem('progress', 'debug',
default=False,
)
coreconfigitem('progress', 'delay',
default=3,
)
coreconfigitem('progress', 'disable',
default=False,
)
Jun Wu
progress: make ETA only consider progress made in the last minute...
r34315 coreconfigitem('progress', 'estimateinterval',
default=60.0,
)
Boris Feld
configitems: register the 'progress.format' config
r34747 coreconfigitem('progress', 'format',
default=lambda: ['topic', 'bar', 'number', 'estimate'],
)
Jun Wu
codemod: register core configitems using a script...
r33499 coreconfigitem('progress', 'refresh',
default=0.1,
)
Boris Feld
configitems: register the 'progress.width' config
r33473 coreconfigitem('progress', 'width',
default=dynamicdefault,
)
Pulkit Goyal
pushvars: add a coreconfigitem for push.pushvars.server...
r33834 coreconfigitem('push', 'pushvars.server',
default=False,
)
configitems: register the 'server.bundle1' config
r33216 coreconfigitem('server', 'bundle1',
default=True,
)
configitems: register the 'server.bundle1gd' config
r33217 coreconfigitem('server', 'bundle1gd',
default=None,
)
Boris Feld
configitems: register the 'server.bundle*' family of config...
r34614 coreconfigitem('server', 'bundle1.pull',
default=None,
)
coreconfigitem('server', 'bundle1gd.pull',
default=None,
)
coreconfigitem('server', 'bundle1.push',
default=None,
)
coreconfigitem('server', 'bundle1gd.push',
default=None,
)
configitems: register the 'server.compressionengines' config
r33218 coreconfigitem('server', 'compressionengines',
default=list,
)
configitems: register the 'server.concurrent-push-mode' config
r33219 coreconfigitem('server', 'concurrent-push-mode',
default='strict',
)
configitems: register the 'server.disablefullbundle' config
r33220 coreconfigitem('server', 'disablefullbundle',
default=False,
)
configitems: register the 'server.maxhttpheaderlen' config
r33221 coreconfigitem('server', 'maxhttpheaderlen',
default=1024,
)
configitems: register the 'server.preferuncompressed' config
r33222 coreconfigitem('server', 'preferuncompressed',
default=False,
)
Jun Wu
codemod: register core configitems using a script...
r33499 coreconfigitem('server', 'uncompressed',
default=True,
)
configitems: register the 'server.uncompressedallowsecret' config
r33223 coreconfigitem('server', 'uncompressedallowsecret',
default=False,
)
configitems: register the 'server.validate' config
r33224 coreconfigitem('server', 'validate',
default=False,
)
configitems: register the 'server.zliblevel' config
r33225 coreconfigitem('server', 'zliblevel',
default=-1,
)
Jun Wu
codemod: register core configitems using a script...
r33499 coreconfigitem('smtp', 'host',
default=None,
)
coreconfigitem('smtp', 'local_hostname',
default=None,
)
coreconfigitem('smtp', 'password',
default=None,
)
Boris Feld
configitems: register the 'smtp.port' config
r34479 coreconfigitem('smtp', 'port',
default=dynamicdefault,
)
Jun Wu
codemod: register core configitems using a script...
r33499 coreconfigitem('smtp', 'tls',
default='none',
)
coreconfigitem('smtp', 'username',
default=None,
)
coreconfigitem('sparse', 'missingwarning',
default=True,
)
Boris Feld
configitems: register the 'templates' section
r34672 coreconfigitem('templates', '.*',
default=None,
generic=True,
)
Jun Wu
codemod: register core configitems using a script...
r33499 coreconfigitem('trusted', 'groups',
default=list,
)
coreconfigitem('trusted', 'users',
default=list,
)
coreconfigitem('ui', '_usedassubrepo',
default=False,
)
coreconfigitem('ui', 'allowemptycommit',
default=False,
)
coreconfigitem('ui', 'archivemeta',
default=True,
)
coreconfigitem('ui', 'askusername',
default=False,
)
coreconfigitem('ui', 'clonebundlefallback',
default=False,
)
configitems: register 'ui.clonebundleprefers' as example for 'configlist'...
r32989 coreconfigitem('ui', 'clonebundleprefers',
configitems: support callable as a default value...
r33151 default=list,
configitems: register 'ui.clonebundleprefers' as example for 'configlist'...
r32989 )
Jun Wu
codemod: register core configitems using a script...
r33499 coreconfigitem('ui', 'clonebundles',
default=True,
)
Boris Feld
configitems: register the 'ui.color' config
r33522 coreconfigitem('ui', 'color',
default='auto',
)
Jun Wu
codemod: register core configitems using a script...
r33499 coreconfigitem('ui', 'commitsubrepos',
default=False,
)
coreconfigitem('ui', 'debug',
default=False,
)
coreconfigitem('ui', 'debugger',
default=None,
)
Yuya Nishihara
configitems: register 'ui.editor'
r34917 coreconfigitem('ui', 'editor',
default=dynamicdefault,
)
Boris Feld
configitems: register the 'ui.fallbackencoding' config
r33519 coreconfigitem('ui', 'fallbackencoding',
default=None,
)
Boris Feld
configitems: register the 'ui.forcecwd' config
r33520 coreconfigitem('ui', 'forcecwd',
default=None,
)
Jun Wu
codemod: register core configitems using a script...
r33499 coreconfigitem('ui', 'forcemerge',
default=None,
)
coreconfigitem('ui', 'formatdebug',
default=False,
)
coreconfigitem('ui', 'formatjson',
default=False,
)
coreconfigitem('ui', 'formatted',
default=None,
)
coreconfigitem('ui', 'graphnodetemplate',
default=None,
)
coreconfigitem('ui', 'http2debuglevel',
default=None,
)
configitems: register 'ui.interactive'...
r33061 coreconfigitem('ui', 'interactive',
default=None,
)
Jun Wu
codemod: register core configitems using a script...
r33499 coreconfigitem('ui', 'interface',
default=None,
)
Boris Feld
configitems: register the 'ui.interface.chunkselector' config
r34617 coreconfigitem('ui', 'interface.chunkselector',
default=None,
)
Jun Wu
codemod: register core configitems using a script...
r33499 coreconfigitem('ui', 'logblockedtimes',
default=False,
)
coreconfigitem('ui', 'logtemplate',
default=None,
)
coreconfigitem('ui', 'merge',
default=None,
)
coreconfigitem('ui', 'mergemarkers',
default='basic',
)
Boris Feld
configitems: register the 'ui.mergemarkertemplate' config
r33523 coreconfigitem('ui', 'mergemarkertemplate',
default=('{node|short} '
'{ifeq(tags, "tip", "", '
'ifeq(tags, "", "", "{tags} "))}'
'{if(bookmarks, "{bookmarks} ")}'
'{ifeq(branch, "default", "", "{branch} ")}'
'- {author|user}: {desc|firstline}')
)
Jun Wu
codemod: register core configitems using a script...
r33499 coreconfigitem('ui', 'nontty',
default=False,
)
coreconfigitem('ui', 'origbackuppath',
default=None,
)
coreconfigitem('ui', 'paginate',
default=True,
)
coreconfigitem('ui', 'patch',
default=None,
)
coreconfigitem('ui', 'portablefilenames',
default='warn',
)
coreconfigitem('ui', 'promptecho',
default=False,
)
configitems: register 'ui.quiet' as first example...
r32986 coreconfigitem('ui', 'quiet',
default=False,
)
Jun Wu
codemod: register core configitems using a script...
r33499 coreconfigitem('ui', 'quietbookmarkmove',
default=False,
)
coreconfigitem('ui', 'remotecmd',
default='hg',
)
coreconfigitem('ui', 'report_untrusted',
default=True,
)
coreconfigitem('ui', 'rollback',
default=True,
)
coreconfigitem('ui', 'slash',
default=False,
)
coreconfigitem('ui', 'ssh',
default='ssh',
)
coreconfigitem('ui', 'statuscopies',
default=False,
)
coreconfigitem('ui', 'strict',
default=False,
)
coreconfigitem('ui', 'style',
default='',
)
coreconfigitem('ui', 'supportcontact',
default=None,
)
coreconfigitem('ui', 'textwidth',
default=78,
)
coreconfigitem('ui', 'timeout',
default='600',
)
coreconfigitem('ui', 'traceback',
default=False,
)
coreconfigitem('ui', 'tweakdefaults',
default=False,
)
coreconfigitem('ui', 'usehttp2',
default=False,
)
David Demelier
configitems: add alias support in config...
r33329 coreconfigitem('ui', 'username',
alias=[('ui', 'user')]
)
Jun Wu
codemod: register core configitems using a script...
r33499 coreconfigitem('ui', 'verbose',
default=False,
)
coreconfigitem('verify', 'skipflags',
default=None,
)
Boris Feld
configitems: register the 'web.allowbz2' config
r34601 coreconfigitem('web', 'allowbz2',
Yuya Nishihara
configitems: correct default values of web.allow<archtype> and web.hidden...
r34654 default=False,
Boris Feld
configitems: register the 'web.allowbz2' config
r34601 )
Boris Feld
configitems: register the 'web.allowgz' config
r34602 coreconfigitem('web', 'allowgz',
Yuya Nishihara
configitems: correct default values of web.allow<archtype> and web.hidden...
r34654 default=False,
Boris Feld
configitems: register the 'web.allowgz' config
r34602 )
Boris Feld
configitems: register the 'web.allowpull' config
r34603 coreconfigitem('web', 'allowpull',
default=True,
)
Boris Feld
configitems: register the 'web.allow_push' config
r34604 coreconfigitem('web', 'allow_push',
default=list,
)
Boris Feld
configitems: register the 'web.allowzip' config
r34605 coreconfigitem('web', 'allowzip',
Yuya Nishihara
configitems: correct default values of web.allow<archtype> and web.hidden...
r34654 default=False,
Boris Feld
configitems: register the 'web.allowzip' config
r34605 )
Boris Feld
configitems: register the 'web.archivesubrepos' config
r34829 coreconfigitem('web', 'archivesubrepos',
default=False,
)
Boris Feld
configitems: register the 'web.cache' config
r34606 coreconfigitem('web', 'cache',
default=True,
)
Boris Feld
configitems: register the 'web.contact' config
r34607 coreconfigitem('web', 'contact',
default=None,
)
Boris Feld
configitems: register the 'web.deny_push' config
r34608 coreconfigitem('web', 'deny_push',
default=list,
)
Boris Feld
configitems: register the 'web.guessmime' config
r34609 coreconfigitem('web', 'guessmime',
default=False,
)
Boris Feld
configitems: register the 'web.hidden' config
r34610 coreconfigitem('web', 'hidden',
Yuya Nishihara
configitems: correct default values of web.allow<archtype> and web.hidden...
r34654 default=False,
Boris Feld
configitems: register the 'web.hidden' config
r34610 )
Boris Feld
configitems: register the 'web.labels' config
r34611 coreconfigitem('web', 'labels',
default=list,
)
Boris Feld
configitems: register the 'web.logoimg' config
r34612 coreconfigitem('web', 'logoimg',
default='hglogo.png',
)
Boris Feld
configitems: register the 'web.logourl' config
r34613 coreconfigitem('web', 'logourl',
default='https://mercurial-scm.org/',
)
Boris Feld
configitems: register the 'web.accesslog' config
r34224 coreconfigitem('web', 'accesslog',
default='-',
)
Boris Feld
configitems: register the 'web.address' config
r34225 coreconfigitem('web', 'address',
default='',
)
Boris Feld
configitems: register the 'web.allow_archive' config
r34226 coreconfigitem('web', 'allow_archive',
default=list,
)
Boris Feld
configitems: register the 'web.allow_read' config
r34227 coreconfigitem('web', 'allow_read',
default=list,
)
Boris Feld
configitems: register the 'web.baseurl' config
r34228 coreconfigitem('web', 'baseurl',
default=None,
)
Boris Feld
configitems: register the 'web.cacerts' config
r34229 coreconfigitem('web', 'cacerts',
default=None,
)
Boris Feld
configitems: register the 'web.certificate' config
r34230 coreconfigitem('web', 'certificate',
default=None,
)
Boris Feld
configitems: register the 'web.collapse' config
r34231 coreconfigitem('web', 'collapse',
default=False,
)
Boris Feld
configitems: register the 'web.csp' config
r34232 coreconfigitem('web', 'csp',
default=None,
)
Boris Feld
configitems: register the 'web.deny_read' config
r34233 coreconfigitem('web', 'deny_read',
default=list,
)
Boris Feld
configitems: register the 'web.descend' config
r34234 coreconfigitem('web', 'descend',
default=True,
)
Boris Feld
configitems: register the 'web.description' config
r34235 coreconfigitem('web', 'description',
default="",
)
Boris Feld
configitems: register the 'web.encoding' config
r34236 coreconfigitem('web', 'encoding',
default=lambda: encoding.encoding,
)
Boris Feld
configitems: register the 'web.errorlog' config
r34237 coreconfigitem('web', 'errorlog',
default='-',
)
Boris Feld
configitems: register the 'web.ipv6' config
r34238 coreconfigitem('web', 'ipv6',
default=False,
)
Boris Feld
configitems: register the 'web.maxchanges' config
r34591 coreconfigitem('web', 'maxchanges',
default=10,
)
Boris Feld
configitems: register the 'web.maxfiles' config
r34590 coreconfigitem('web', 'maxfiles',
default=10,
)
Boris Feld
configitems: register the 'web.maxshortchanges' config
r34589 coreconfigitem('web', 'maxshortchanges',
default=60,
)
Boris Feld
configitems: register the 'web.motd' config
r34588 coreconfigitem('web', 'motd',
default='',
)
Boris Feld
configitems: register the 'web.name' config
r34587 coreconfigitem('web', 'name',
default=dynamicdefault,
)
Boris Feld
configitems: register the 'web.port' config
r34239 coreconfigitem('web', 'port',
default=8000,
)
Boris Feld
configitems: register the 'web.prefix' config
r34240 coreconfigitem('web', 'prefix',
default='',
)
Boris Feld
configitems: register the 'web.push_ssl' config
r34586 coreconfigitem('web', 'push_ssl',
default=True,
)
Boris Feld
configitems: register the 'web.refreshinterval' config
r34241 coreconfigitem('web', 'refreshinterval',
default=20,
)
Boris Feld
configitems: register the 'web.staticurl' config
r34760 coreconfigitem('web', 'staticurl',
default=None,
)
Boris Feld
configitems: register the 'web.stripes' config
r34242 coreconfigitem('web', 'stripes',
default=1,
)
Boris Feld
configitems: register the 'web.style' config
r34243 coreconfigitem('web', 'style',
default='paper',
)
Boris Feld
configitems: register the 'web.templates' config
r34244 coreconfigitem('web', 'templates',
default=None,
)
Boris Feld
configitems: register the 'web.view' config
r34585 coreconfigitem('web', 'view',
default='served',
)
Boris Feld
configitems: register the 'worker.backgroundclose' config
r33474 coreconfigitem('worker', 'backgroundclose',
default=dynamicdefault,
)
configitems: gather comment related to 'worker.backgroundclosemaxqueue'...
r33231 # Windows defaults to a limit of 512 open files. A buffer of 128
# should give us enough headway.
configitems: register the 'worker.backgroundclosemaxqueue' config
r33227 coreconfigitem('worker', 'backgroundclosemaxqueue',
default=384,
)
configitems: register the 'worker.backgroundcloseminfilecount' config
r33228 coreconfigitem('worker', 'backgroundcloseminfilecount',
default=2048,
)
configitems: register the 'worker.backgroundclosethreadcount' config
r33229 coreconfigitem('worker', 'backgroundclosethreadcount',
default=4,
)
configitems: register the 'worker.numcpus' config
r33230 coreconfigitem('worker', 'numcpus',
default=None,
)
Boris Feld
configitems: move rebase config into core...
r34832
# Rebase related configuration moved to core because other extension are doing
# strange things. For example, shelve import the extensions to reuse some bit
# without formally loading it.
coreconfigitem('commands', 'rebase.requiredest',
default=False,
)
coreconfigitem('experimental', 'rebaseskipobsolete',
default=True,
)
coreconfigitem('rebase', 'singletransaction',
default=False,
)