##// END OF EJS Templates
persistent-nodemap: remove the "experimental" tag to the feature...
marmoute -
r47031:4cde46f6 default
parent child Browse files
Show More
@@ -1,2591 +1,2576 b''
1 # configitems.py - centralized declaration of configuration option
1 # configitems.py - centralized declaration of configuration option
2 #
2 #
3 # Copyright 2017 Pierre-Yves David <pierre-yves.david@octobus.net>
3 # Copyright 2017 Pierre-Yves David <pierre-yves.david@octobus.net>
4 #
4 #
5 # This software may be used and distributed according to the terms of the
5 # This software may be used and distributed according to the terms of the
6 # GNU General Public License version 2 or any later version.
6 # GNU General Public License version 2 or any later version.
7
7
8 from __future__ import absolute_import
8 from __future__ import absolute_import
9
9
10 import functools
10 import functools
11 import re
11 import re
12
12
13 from . import (
13 from . import (
14 encoding,
14 encoding,
15 error,
15 error,
16 )
16 )
17
17
18
18
19 def loadconfigtable(ui, extname, configtable):
19 def loadconfigtable(ui, extname, configtable):
20 """update config item known to the ui with the extension ones"""
20 """update config item known to the ui with the extension ones"""
21 for section, items in sorted(configtable.items()):
21 for section, items in sorted(configtable.items()):
22 knownitems = ui._knownconfig.setdefault(section, itemregister())
22 knownitems = ui._knownconfig.setdefault(section, itemregister())
23 knownkeys = set(knownitems)
23 knownkeys = set(knownitems)
24 newkeys = set(items)
24 newkeys = set(items)
25 for key in sorted(knownkeys & newkeys):
25 for key in sorted(knownkeys & newkeys):
26 msg = b"extension '%s' overwrite config item '%s.%s'"
26 msg = b"extension '%s' overwrite config item '%s.%s'"
27 msg %= (extname, section, key)
27 msg %= (extname, section, key)
28 ui.develwarn(msg, config=b'warn-config')
28 ui.develwarn(msg, config=b'warn-config')
29
29
30 knownitems.update(items)
30 knownitems.update(items)
31
31
32
32
33 class configitem(object):
33 class configitem(object):
34 """represent a known config item
34 """represent a known config item
35
35
36 :section: the official config section where to find this item,
36 :section: the official config section where to find this item,
37 :name: the official name within the section,
37 :name: the official name within the section,
38 :default: default value for this item,
38 :default: default value for this item,
39 :alias: optional list of tuples as alternatives,
39 :alias: optional list of tuples as alternatives,
40 :generic: this is a generic definition, match name using regular expression.
40 :generic: this is a generic definition, match name using regular expression.
41 """
41 """
42
42
43 def __init__(
43 def __init__(
44 self,
44 self,
45 section,
45 section,
46 name,
46 name,
47 default=None,
47 default=None,
48 alias=(),
48 alias=(),
49 generic=False,
49 generic=False,
50 priority=0,
50 priority=0,
51 experimental=False,
51 experimental=False,
52 ):
52 ):
53 self.section = section
53 self.section = section
54 self.name = name
54 self.name = name
55 self.default = default
55 self.default = default
56 self.alias = list(alias)
56 self.alias = list(alias)
57 self.generic = generic
57 self.generic = generic
58 self.priority = priority
58 self.priority = priority
59 self.experimental = experimental
59 self.experimental = experimental
60 self._re = None
60 self._re = None
61 if generic:
61 if generic:
62 self._re = re.compile(self.name)
62 self._re = re.compile(self.name)
63
63
64
64
65 class itemregister(dict):
65 class itemregister(dict):
66 """A specialized dictionary that can handle wild-card selection"""
66 """A specialized dictionary that can handle wild-card selection"""
67
67
68 def __init__(self):
68 def __init__(self):
69 super(itemregister, self).__init__()
69 super(itemregister, self).__init__()
70 self._generics = set()
70 self._generics = set()
71
71
72 def update(self, other):
72 def update(self, other):
73 super(itemregister, self).update(other)
73 super(itemregister, self).update(other)
74 self._generics.update(other._generics)
74 self._generics.update(other._generics)
75
75
76 def __setitem__(self, key, item):
76 def __setitem__(self, key, item):
77 super(itemregister, self).__setitem__(key, item)
77 super(itemregister, self).__setitem__(key, item)
78 if item.generic:
78 if item.generic:
79 self._generics.add(item)
79 self._generics.add(item)
80
80
81 def get(self, key):
81 def get(self, key):
82 baseitem = super(itemregister, self).get(key)
82 baseitem = super(itemregister, self).get(key)
83 if baseitem is not None and not baseitem.generic:
83 if baseitem is not None and not baseitem.generic:
84 return baseitem
84 return baseitem
85
85
86 # search for a matching generic item
86 # search for a matching generic item
87 generics = sorted(self._generics, key=(lambda x: (x.priority, x.name)))
87 generics = sorted(self._generics, key=(lambda x: (x.priority, x.name)))
88 for item in generics:
88 for item in generics:
89 # we use 'match' instead of 'search' to make the matching simpler
89 # we use 'match' instead of 'search' to make the matching simpler
90 # for people unfamiliar with regular expression. Having the match
90 # for people unfamiliar with regular expression. Having the match
91 # rooted to the start of the string will produce less surprising
91 # rooted to the start of the string will produce less surprising
92 # result for user writing simple regex for sub-attribute.
92 # result for user writing simple regex for sub-attribute.
93 #
93 #
94 # For example using "color\..*" match produces an unsurprising
94 # For example using "color\..*" match produces an unsurprising
95 # result, while using search could suddenly match apparently
95 # result, while using search could suddenly match apparently
96 # unrelated configuration that happens to contains "color."
96 # unrelated configuration that happens to contains "color."
97 # anywhere. This is a tradeoff where we favor requiring ".*" on
97 # anywhere. This is a tradeoff where we favor requiring ".*" on
98 # some match to avoid the need to prefix most pattern with "^".
98 # some match to avoid the need to prefix most pattern with "^".
99 # The "^" seems more error prone.
99 # The "^" seems more error prone.
100 if item._re.match(key):
100 if item._re.match(key):
101 return item
101 return item
102
102
103 return None
103 return None
104
104
105
105
106 coreitems = {}
106 coreitems = {}
107
107
108
108
109 def _register(configtable, *args, **kwargs):
109 def _register(configtable, *args, **kwargs):
110 item = configitem(*args, **kwargs)
110 item = configitem(*args, **kwargs)
111 section = configtable.setdefault(item.section, itemregister())
111 section = configtable.setdefault(item.section, itemregister())
112 if item.name in section:
112 if item.name in section:
113 msg = b"duplicated config item registration for '%s.%s'"
113 msg = b"duplicated config item registration for '%s.%s'"
114 raise error.ProgrammingError(msg % (item.section, item.name))
114 raise error.ProgrammingError(msg % (item.section, item.name))
115 section[item.name] = item
115 section[item.name] = item
116
116
117
117
118 # special value for case where the default is derived from other values
118 # special value for case where the default is derived from other values
119 dynamicdefault = object()
119 dynamicdefault = object()
120
120
121 # Registering actual config items
121 # Registering actual config items
122
122
123
123
124 def getitemregister(configtable):
124 def getitemregister(configtable):
125 f = functools.partial(_register, configtable)
125 f = functools.partial(_register, configtable)
126 # export pseudo enum as configitem.*
126 # export pseudo enum as configitem.*
127 f.dynamicdefault = dynamicdefault
127 f.dynamicdefault = dynamicdefault
128 return f
128 return f
129
129
130
130
131 coreconfigitem = getitemregister(coreitems)
131 coreconfigitem = getitemregister(coreitems)
132
132
133
133
134 def _registerdiffopts(section, configprefix=b''):
134 def _registerdiffopts(section, configprefix=b''):
135 coreconfigitem(
135 coreconfigitem(
136 section,
136 section,
137 configprefix + b'nodates',
137 configprefix + b'nodates',
138 default=False,
138 default=False,
139 )
139 )
140 coreconfigitem(
140 coreconfigitem(
141 section,
141 section,
142 configprefix + b'showfunc',
142 configprefix + b'showfunc',
143 default=False,
143 default=False,
144 )
144 )
145 coreconfigitem(
145 coreconfigitem(
146 section,
146 section,
147 configprefix + b'unified',
147 configprefix + b'unified',
148 default=None,
148 default=None,
149 )
149 )
150 coreconfigitem(
150 coreconfigitem(
151 section,
151 section,
152 configprefix + b'git',
152 configprefix + b'git',
153 default=False,
153 default=False,
154 )
154 )
155 coreconfigitem(
155 coreconfigitem(
156 section,
156 section,
157 configprefix + b'ignorews',
157 configprefix + b'ignorews',
158 default=False,
158 default=False,
159 )
159 )
160 coreconfigitem(
160 coreconfigitem(
161 section,
161 section,
162 configprefix + b'ignorewsamount',
162 configprefix + b'ignorewsamount',
163 default=False,
163 default=False,
164 )
164 )
165 coreconfigitem(
165 coreconfigitem(
166 section,
166 section,
167 configprefix + b'ignoreblanklines',
167 configprefix + b'ignoreblanklines',
168 default=False,
168 default=False,
169 )
169 )
170 coreconfigitem(
170 coreconfigitem(
171 section,
171 section,
172 configprefix + b'ignorewseol',
172 configprefix + b'ignorewseol',
173 default=False,
173 default=False,
174 )
174 )
175 coreconfigitem(
175 coreconfigitem(
176 section,
176 section,
177 configprefix + b'nobinary',
177 configprefix + b'nobinary',
178 default=False,
178 default=False,
179 )
179 )
180 coreconfigitem(
180 coreconfigitem(
181 section,
181 section,
182 configprefix + b'noprefix',
182 configprefix + b'noprefix',
183 default=False,
183 default=False,
184 )
184 )
185 coreconfigitem(
185 coreconfigitem(
186 section,
186 section,
187 configprefix + b'word-diff',
187 configprefix + b'word-diff',
188 default=False,
188 default=False,
189 )
189 )
190
190
191
191
192 coreconfigitem(
192 coreconfigitem(
193 b'alias',
193 b'alias',
194 b'.*',
194 b'.*',
195 default=dynamicdefault,
195 default=dynamicdefault,
196 generic=True,
196 generic=True,
197 )
197 )
198 coreconfigitem(
198 coreconfigitem(
199 b'auth',
199 b'auth',
200 b'cookiefile',
200 b'cookiefile',
201 default=None,
201 default=None,
202 )
202 )
203 _registerdiffopts(section=b'annotate')
203 _registerdiffopts(section=b'annotate')
204 # bookmarks.pushing: internal hack for discovery
204 # bookmarks.pushing: internal hack for discovery
205 coreconfigitem(
205 coreconfigitem(
206 b'bookmarks',
206 b'bookmarks',
207 b'pushing',
207 b'pushing',
208 default=list,
208 default=list,
209 )
209 )
210 # bundle.mainreporoot: internal hack for bundlerepo
210 # bundle.mainreporoot: internal hack for bundlerepo
211 coreconfigitem(
211 coreconfigitem(
212 b'bundle',
212 b'bundle',
213 b'mainreporoot',
213 b'mainreporoot',
214 default=b'',
214 default=b'',
215 )
215 )
216 coreconfigitem(
216 coreconfigitem(
217 b'censor',
217 b'censor',
218 b'policy',
218 b'policy',
219 default=b'abort',
219 default=b'abort',
220 experimental=True,
220 experimental=True,
221 )
221 )
222 coreconfigitem(
222 coreconfigitem(
223 b'chgserver',
223 b'chgserver',
224 b'idletimeout',
224 b'idletimeout',
225 default=3600,
225 default=3600,
226 )
226 )
227 coreconfigitem(
227 coreconfigitem(
228 b'chgserver',
228 b'chgserver',
229 b'skiphash',
229 b'skiphash',
230 default=False,
230 default=False,
231 )
231 )
232 coreconfigitem(
232 coreconfigitem(
233 b'cmdserver',
233 b'cmdserver',
234 b'log',
234 b'log',
235 default=None,
235 default=None,
236 )
236 )
237 coreconfigitem(
237 coreconfigitem(
238 b'cmdserver',
238 b'cmdserver',
239 b'max-log-files',
239 b'max-log-files',
240 default=7,
240 default=7,
241 )
241 )
242 coreconfigitem(
242 coreconfigitem(
243 b'cmdserver',
243 b'cmdserver',
244 b'max-log-size',
244 b'max-log-size',
245 default=b'1 MB',
245 default=b'1 MB',
246 )
246 )
247 coreconfigitem(
247 coreconfigitem(
248 b'cmdserver',
248 b'cmdserver',
249 b'max-repo-cache',
249 b'max-repo-cache',
250 default=0,
250 default=0,
251 experimental=True,
251 experimental=True,
252 )
252 )
253 coreconfigitem(
253 coreconfigitem(
254 b'cmdserver',
254 b'cmdserver',
255 b'message-encodings',
255 b'message-encodings',
256 default=list,
256 default=list,
257 )
257 )
258 coreconfigitem(
258 coreconfigitem(
259 b'cmdserver',
259 b'cmdserver',
260 b'track-log',
260 b'track-log',
261 default=lambda: [b'chgserver', b'cmdserver', b'repocache'],
261 default=lambda: [b'chgserver', b'cmdserver', b'repocache'],
262 )
262 )
263 coreconfigitem(
263 coreconfigitem(
264 b'cmdserver',
264 b'cmdserver',
265 b'shutdown-on-interrupt',
265 b'shutdown-on-interrupt',
266 default=True,
266 default=True,
267 )
267 )
268 coreconfigitem(
268 coreconfigitem(
269 b'color',
269 b'color',
270 b'.*',
270 b'.*',
271 default=None,
271 default=None,
272 generic=True,
272 generic=True,
273 )
273 )
274 coreconfigitem(
274 coreconfigitem(
275 b'color',
275 b'color',
276 b'mode',
276 b'mode',
277 default=b'auto',
277 default=b'auto',
278 )
278 )
279 coreconfigitem(
279 coreconfigitem(
280 b'color',
280 b'color',
281 b'pagermode',
281 b'pagermode',
282 default=dynamicdefault,
282 default=dynamicdefault,
283 )
283 )
284 coreconfigitem(
284 coreconfigitem(
285 b'command-templates',
285 b'command-templates',
286 b'graphnode',
286 b'graphnode',
287 default=None,
287 default=None,
288 alias=[(b'ui', b'graphnodetemplate')],
288 alias=[(b'ui', b'graphnodetemplate')],
289 )
289 )
290 coreconfigitem(
290 coreconfigitem(
291 b'command-templates',
291 b'command-templates',
292 b'log',
292 b'log',
293 default=None,
293 default=None,
294 alias=[(b'ui', b'logtemplate')],
294 alias=[(b'ui', b'logtemplate')],
295 )
295 )
296 coreconfigitem(
296 coreconfigitem(
297 b'command-templates',
297 b'command-templates',
298 b'mergemarker',
298 b'mergemarker',
299 default=(
299 default=(
300 b'{node|short} '
300 b'{node|short} '
301 b'{ifeq(tags, "tip", "", '
301 b'{ifeq(tags, "tip", "", '
302 b'ifeq(tags, "", "", "{tags} "))}'
302 b'ifeq(tags, "", "", "{tags} "))}'
303 b'{if(bookmarks, "{bookmarks} ")}'
303 b'{if(bookmarks, "{bookmarks} ")}'
304 b'{ifeq(branch, "default", "", "{branch} ")}'
304 b'{ifeq(branch, "default", "", "{branch} ")}'
305 b'- {author|user}: {desc|firstline}'
305 b'- {author|user}: {desc|firstline}'
306 ),
306 ),
307 alias=[(b'ui', b'mergemarkertemplate')],
307 alias=[(b'ui', b'mergemarkertemplate')],
308 )
308 )
309 coreconfigitem(
309 coreconfigitem(
310 b'command-templates',
310 b'command-templates',
311 b'pre-merge-tool-output',
311 b'pre-merge-tool-output',
312 default=None,
312 default=None,
313 alias=[(b'ui', b'pre-merge-tool-output-template')],
313 alias=[(b'ui', b'pre-merge-tool-output-template')],
314 )
314 )
315 coreconfigitem(
315 coreconfigitem(
316 b'command-templates',
316 b'command-templates',
317 b'oneline-summary',
317 b'oneline-summary',
318 default=None,
318 default=None,
319 )
319 )
320 coreconfigitem(
320 coreconfigitem(
321 b'command-templates',
321 b'command-templates',
322 b'oneline-summary.*',
322 b'oneline-summary.*',
323 default=dynamicdefault,
323 default=dynamicdefault,
324 generic=True,
324 generic=True,
325 )
325 )
326 _registerdiffopts(section=b'commands', configprefix=b'commit.interactive.')
326 _registerdiffopts(section=b'commands', configprefix=b'commit.interactive.')
327 coreconfigitem(
327 coreconfigitem(
328 b'commands',
328 b'commands',
329 b'commit.post-status',
329 b'commit.post-status',
330 default=False,
330 default=False,
331 )
331 )
332 coreconfigitem(
332 coreconfigitem(
333 b'commands',
333 b'commands',
334 b'grep.all-files',
334 b'grep.all-files',
335 default=False,
335 default=False,
336 experimental=True,
336 experimental=True,
337 )
337 )
338 coreconfigitem(
338 coreconfigitem(
339 b'commands',
339 b'commands',
340 b'merge.require-rev',
340 b'merge.require-rev',
341 default=False,
341 default=False,
342 )
342 )
343 coreconfigitem(
343 coreconfigitem(
344 b'commands',
344 b'commands',
345 b'push.require-revs',
345 b'push.require-revs',
346 default=False,
346 default=False,
347 )
347 )
348 coreconfigitem(
348 coreconfigitem(
349 b'commands',
349 b'commands',
350 b'resolve.confirm',
350 b'resolve.confirm',
351 default=False,
351 default=False,
352 )
352 )
353 coreconfigitem(
353 coreconfigitem(
354 b'commands',
354 b'commands',
355 b'resolve.explicit-re-merge',
355 b'resolve.explicit-re-merge',
356 default=False,
356 default=False,
357 )
357 )
358 coreconfigitem(
358 coreconfigitem(
359 b'commands',
359 b'commands',
360 b'resolve.mark-check',
360 b'resolve.mark-check',
361 default=b'none',
361 default=b'none',
362 )
362 )
363 _registerdiffopts(section=b'commands', configprefix=b'revert.interactive.')
363 _registerdiffopts(section=b'commands', configprefix=b'revert.interactive.')
364 coreconfigitem(
364 coreconfigitem(
365 b'commands',
365 b'commands',
366 b'show.aliasprefix',
366 b'show.aliasprefix',
367 default=list,
367 default=list,
368 )
368 )
369 coreconfigitem(
369 coreconfigitem(
370 b'commands',
370 b'commands',
371 b'status.relative',
371 b'status.relative',
372 default=False,
372 default=False,
373 )
373 )
374 coreconfigitem(
374 coreconfigitem(
375 b'commands',
375 b'commands',
376 b'status.skipstates',
376 b'status.skipstates',
377 default=[],
377 default=[],
378 experimental=True,
378 experimental=True,
379 )
379 )
380 coreconfigitem(
380 coreconfigitem(
381 b'commands',
381 b'commands',
382 b'status.terse',
382 b'status.terse',
383 default=b'',
383 default=b'',
384 )
384 )
385 coreconfigitem(
385 coreconfigitem(
386 b'commands',
386 b'commands',
387 b'status.verbose',
387 b'status.verbose',
388 default=False,
388 default=False,
389 )
389 )
390 coreconfigitem(
390 coreconfigitem(
391 b'commands',
391 b'commands',
392 b'update.check',
392 b'update.check',
393 default=None,
393 default=None,
394 )
394 )
395 coreconfigitem(
395 coreconfigitem(
396 b'commands',
396 b'commands',
397 b'update.requiredest',
397 b'update.requiredest',
398 default=False,
398 default=False,
399 )
399 )
400 coreconfigitem(
400 coreconfigitem(
401 b'committemplate',
401 b'committemplate',
402 b'.*',
402 b'.*',
403 default=None,
403 default=None,
404 generic=True,
404 generic=True,
405 )
405 )
406 coreconfigitem(
406 coreconfigitem(
407 b'convert',
407 b'convert',
408 b'bzr.saverev',
408 b'bzr.saverev',
409 default=True,
409 default=True,
410 )
410 )
411 coreconfigitem(
411 coreconfigitem(
412 b'convert',
412 b'convert',
413 b'cvsps.cache',
413 b'cvsps.cache',
414 default=True,
414 default=True,
415 )
415 )
416 coreconfigitem(
416 coreconfigitem(
417 b'convert',
417 b'convert',
418 b'cvsps.fuzz',
418 b'cvsps.fuzz',
419 default=60,
419 default=60,
420 )
420 )
421 coreconfigitem(
421 coreconfigitem(
422 b'convert',
422 b'convert',
423 b'cvsps.logencoding',
423 b'cvsps.logencoding',
424 default=None,
424 default=None,
425 )
425 )
426 coreconfigitem(
426 coreconfigitem(
427 b'convert',
427 b'convert',
428 b'cvsps.mergefrom',
428 b'cvsps.mergefrom',
429 default=None,
429 default=None,
430 )
430 )
431 coreconfigitem(
431 coreconfigitem(
432 b'convert',
432 b'convert',
433 b'cvsps.mergeto',
433 b'cvsps.mergeto',
434 default=None,
434 default=None,
435 )
435 )
436 coreconfigitem(
436 coreconfigitem(
437 b'convert',
437 b'convert',
438 b'git.committeractions',
438 b'git.committeractions',
439 default=lambda: [b'messagedifferent'],
439 default=lambda: [b'messagedifferent'],
440 )
440 )
441 coreconfigitem(
441 coreconfigitem(
442 b'convert',
442 b'convert',
443 b'git.extrakeys',
443 b'git.extrakeys',
444 default=list,
444 default=list,
445 )
445 )
446 coreconfigitem(
446 coreconfigitem(
447 b'convert',
447 b'convert',
448 b'git.findcopiesharder',
448 b'git.findcopiesharder',
449 default=False,
449 default=False,
450 )
450 )
451 coreconfigitem(
451 coreconfigitem(
452 b'convert',
452 b'convert',
453 b'git.remoteprefix',
453 b'git.remoteprefix',
454 default=b'remote',
454 default=b'remote',
455 )
455 )
456 coreconfigitem(
456 coreconfigitem(
457 b'convert',
457 b'convert',
458 b'git.renamelimit',
458 b'git.renamelimit',
459 default=400,
459 default=400,
460 )
460 )
461 coreconfigitem(
461 coreconfigitem(
462 b'convert',
462 b'convert',
463 b'git.saverev',
463 b'git.saverev',
464 default=True,
464 default=True,
465 )
465 )
466 coreconfigitem(
466 coreconfigitem(
467 b'convert',
467 b'convert',
468 b'git.similarity',
468 b'git.similarity',
469 default=50,
469 default=50,
470 )
470 )
471 coreconfigitem(
471 coreconfigitem(
472 b'convert',
472 b'convert',
473 b'git.skipsubmodules',
473 b'git.skipsubmodules',
474 default=False,
474 default=False,
475 )
475 )
476 coreconfigitem(
476 coreconfigitem(
477 b'convert',
477 b'convert',
478 b'hg.clonebranches',
478 b'hg.clonebranches',
479 default=False,
479 default=False,
480 )
480 )
481 coreconfigitem(
481 coreconfigitem(
482 b'convert',
482 b'convert',
483 b'hg.ignoreerrors',
483 b'hg.ignoreerrors',
484 default=False,
484 default=False,
485 )
485 )
486 coreconfigitem(
486 coreconfigitem(
487 b'convert',
487 b'convert',
488 b'hg.preserve-hash',
488 b'hg.preserve-hash',
489 default=False,
489 default=False,
490 )
490 )
491 coreconfigitem(
491 coreconfigitem(
492 b'convert',
492 b'convert',
493 b'hg.revs',
493 b'hg.revs',
494 default=None,
494 default=None,
495 )
495 )
496 coreconfigitem(
496 coreconfigitem(
497 b'convert',
497 b'convert',
498 b'hg.saverev',
498 b'hg.saverev',
499 default=False,
499 default=False,
500 )
500 )
501 coreconfigitem(
501 coreconfigitem(
502 b'convert',
502 b'convert',
503 b'hg.sourcename',
503 b'hg.sourcename',
504 default=None,
504 default=None,
505 )
505 )
506 coreconfigitem(
506 coreconfigitem(
507 b'convert',
507 b'convert',
508 b'hg.startrev',
508 b'hg.startrev',
509 default=None,
509 default=None,
510 )
510 )
511 coreconfigitem(
511 coreconfigitem(
512 b'convert',
512 b'convert',
513 b'hg.tagsbranch',
513 b'hg.tagsbranch',
514 default=b'default',
514 default=b'default',
515 )
515 )
516 coreconfigitem(
516 coreconfigitem(
517 b'convert',
517 b'convert',
518 b'hg.usebranchnames',
518 b'hg.usebranchnames',
519 default=True,
519 default=True,
520 )
520 )
521 coreconfigitem(
521 coreconfigitem(
522 b'convert',
522 b'convert',
523 b'ignoreancestorcheck',
523 b'ignoreancestorcheck',
524 default=False,
524 default=False,
525 experimental=True,
525 experimental=True,
526 )
526 )
527 coreconfigitem(
527 coreconfigitem(
528 b'convert',
528 b'convert',
529 b'localtimezone',
529 b'localtimezone',
530 default=False,
530 default=False,
531 )
531 )
532 coreconfigitem(
532 coreconfigitem(
533 b'convert',
533 b'convert',
534 b'p4.encoding',
534 b'p4.encoding',
535 default=dynamicdefault,
535 default=dynamicdefault,
536 )
536 )
537 coreconfigitem(
537 coreconfigitem(
538 b'convert',
538 b'convert',
539 b'p4.startrev',
539 b'p4.startrev',
540 default=0,
540 default=0,
541 )
541 )
542 coreconfigitem(
542 coreconfigitem(
543 b'convert',
543 b'convert',
544 b'skiptags',
544 b'skiptags',
545 default=False,
545 default=False,
546 )
546 )
547 coreconfigitem(
547 coreconfigitem(
548 b'convert',
548 b'convert',
549 b'svn.debugsvnlog',
549 b'svn.debugsvnlog',
550 default=True,
550 default=True,
551 )
551 )
552 coreconfigitem(
552 coreconfigitem(
553 b'convert',
553 b'convert',
554 b'svn.trunk',
554 b'svn.trunk',
555 default=None,
555 default=None,
556 )
556 )
557 coreconfigitem(
557 coreconfigitem(
558 b'convert',
558 b'convert',
559 b'svn.tags',
559 b'svn.tags',
560 default=None,
560 default=None,
561 )
561 )
562 coreconfigitem(
562 coreconfigitem(
563 b'convert',
563 b'convert',
564 b'svn.branches',
564 b'svn.branches',
565 default=None,
565 default=None,
566 )
566 )
567 coreconfigitem(
567 coreconfigitem(
568 b'convert',
568 b'convert',
569 b'svn.startrev',
569 b'svn.startrev',
570 default=0,
570 default=0,
571 )
571 )
572 coreconfigitem(
572 coreconfigitem(
573 b'debug',
573 b'debug',
574 b'dirstate.delaywrite',
574 b'dirstate.delaywrite',
575 default=0,
575 default=0,
576 )
576 )
577 coreconfigitem(
577 coreconfigitem(
578 b'defaults',
578 b'defaults',
579 b'.*',
579 b'.*',
580 default=None,
580 default=None,
581 generic=True,
581 generic=True,
582 )
582 )
583 coreconfigitem(
583 coreconfigitem(
584 b'devel',
584 b'devel',
585 b'all-warnings',
585 b'all-warnings',
586 default=False,
586 default=False,
587 )
587 )
588 coreconfigitem(
588 coreconfigitem(
589 b'devel',
589 b'devel',
590 b'bundle2.debug',
590 b'bundle2.debug',
591 default=False,
591 default=False,
592 )
592 )
593 coreconfigitem(
593 coreconfigitem(
594 b'devel',
594 b'devel',
595 b'bundle.delta',
595 b'bundle.delta',
596 default=b'',
596 default=b'',
597 )
597 )
598 coreconfigitem(
598 coreconfigitem(
599 b'devel',
599 b'devel',
600 b'cache-vfs',
600 b'cache-vfs',
601 default=None,
601 default=None,
602 )
602 )
603 coreconfigitem(
603 coreconfigitem(
604 b'devel',
604 b'devel',
605 b'check-locks',
605 b'check-locks',
606 default=False,
606 default=False,
607 )
607 )
608 coreconfigitem(
608 coreconfigitem(
609 b'devel',
609 b'devel',
610 b'check-relroot',
610 b'check-relroot',
611 default=False,
611 default=False,
612 )
612 )
613 coreconfigitem(
613 coreconfigitem(
614 b'devel',
614 b'devel',
615 b'default-date',
615 b'default-date',
616 default=None,
616 default=None,
617 )
617 )
618 coreconfigitem(
618 coreconfigitem(
619 b'devel',
619 b'devel',
620 b'deprec-warn',
620 b'deprec-warn',
621 default=False,
621 default=False,
622 )
622 )
623 coreconfigitem(
623 coreconfigitem(
624 b'devel',
624 b'devel',
625 b'disableloaddefaultcerts',
625 b'disableloaddefaultcerts',
626 default=False,
626 default=False,
627 )
627 )
628 coreconfigitem(
628 coreconfigitem(
629 b'devel',
629 b'devel',
630 b'warn-empty-changegroup',
630 b'warn-empty-changegroup',
631 default=False,
631 default=False,
632 )
632 )
633 coreconfigitem(
633 coreconfigitem(
634 b'devel',
634 b'devel',
635 b'legacy.exchange',
635 b'legacy.exchange',
636 default=list,
636 default=list,
637 )
637 )
638 # When True, revlogs use a special reference version of the nodemap, that is not
638 # When True, revlogs use a special reference version of the nodemap, that is not
639 # performant but is "known" to behave properly.
639 # performant but is "known" to behave properly.
640 coreconfigitem(
640 coreconfigitem(
641 b'devel',
641 b'devel',
642 b'persistent-nodemap',
642 b'persistent-nodemap',
643 default=False,
643 default=False,
644 )
644 )
645 coreconfigitem(
645 coreconfigitem(
646 b'devel',
646 b'devel',
647 b'servercafile',
647 b'servercafile',
648 default=b'',
648 default=b'',
649 )
649 )
650 coreconfigitem(
650 coreconfigitem(
651 b'devel',
651 b'devel',
652 b'serverexactprotocol',
652 b'serverexactprotocol',
653 default=b'',
653 default=b'',
654 )
654 )
655 coreconfigitem(
655 coreconfigitem(
656 b'devel',
656 b'devel',
657 b'serverrequirecert',
657 b'serverrequirecert',
658 default=False,
658 default=False,
659 )
659 )
660 coreconfigitem(
660 coreconfigitem(
661 b'devel',
661 b'devel',
662 b'strip-obsmarkers',
662 b'strip-obsmarkers',
663 default=True,
663 default=True,
664 )
664 )
665 coreconfigitem(
665 coreconfigitem(
666 b'devel',
666 b'devel',
667 b'warn-config',
667 b'warn-config',
668 default=None,
668 default=None,
669 )
669 )
670 coreconfigitem(
670 coreconfigitem(
671 b'devel',
671 b'devel',
672 b'warn-config-default',
672 b'warn-config-default',
673 default=None,
673 default=None,
674 )
674 )
675 coreconfigitem(
675 coreconfigitem(
676 b'devel',
676 b'devel',
677 b'user.obsmarker',
677 b'user.obsmarker',
678 default=None,
678 default=None,
679 )
679 )
680 coreconfigitem(
680 coreconfigitem(
681 b'devel',
681 b'devel',
682 b'warn-config-unknown',
682 b'warn-config-unknown',
683 default=None,
683 default=None,
684 )
684 )
685 coreconfigitem(
685 coreconfigitem(
686 b'devel',
686 b'devel',
687 b'debug.copies',
687 b'debug.copies',
688 default=False,
688 default=False,
689 )
689 )
690 coreconfigitem(
690 coreconfigitem(
691 b'devel',
691 b'devel',
692 b'debug.extensions',
692 b'debug.extensions',
693 default=False,
693 default=False,
694 )
694 )
695 coreconfigitem(
695 coreconfigitem(
696 b'devel',
696 b'devel',
697 b'debug.repo-filters',
697 b'debug.repo-filters',
698 default=False,
698 default=False,
699 )
699 )
700 coreconfigitem(
700 coreconfigitem(
701 b'devel',
701 b'devel',
702 b'debug.peer-request',
702 b'debug.peer-request',
703 default=False,
703 default=False,
704 )
704 )
705 # If discovery.grow-sample is False, the sample size used in set discovery will
705 # If discovery.grow-sample is False, the sample size used in set discovery will
706 # not be increased through the process
706 # not be increased through the process
707 coreconfigitem(
707 coreconfigitem(
708 b'devel',
708 b'devel',
709 b'discovery.grow-sample',
709 b'discovery.grow-sample',
710 default=True,
710 default=True,
711 )
711 )
712 # discovery.grow-sample.rate control the rate at which the sample grow
712 # discovery.grow-sample.rate control the rate at which the sample grow
713 coreconfigitem(
713 coreconfigitem(
714 b'devel',
714 b'devel',
715 b'discovery.grow-sample.rate',
715 b'discovery.grow-sample.rate',
716 default=1.05,
716 default=1.05,
717 )
717 )
718 # If discovery.randomize is False, random sampling during discovery are
718 # If discovery.randomize is False, random sampling during discovery are
719 # deterministic. It is meant for integration tests.
719 # deterministic. It is meant for integration tests.
720 coreconfigitem(
720 coreconfigitem(
721 b'devel',
721 b'devel',
722 b'discovery.randomize',
722 b'discovery.randomize',
723 default=True,
723 default=True,
724 )
724 )
725 _registerdiffopts(section=b'diff')
725 _registerdiffopts(section=b'diff')
726 coreconfigitem(
726 coreconfigitem(
727 b'email',
727 b'email',
728 b'bcc',
728 b'bcc',
729 default=None,
729 default=None,
730 )
730 )
731 coreconfigitem(
731 coreconfigitem(
732 b'email',
732 b'email',
733 b'cc',
733 b'cc',
734 default=None,
734 default=None,
735 )
735 )
736 coreconfigitem(
736 coreconfigitem(
737 b'email',
737 b'email',
738 b'charsets',
738 b'charsets',
739 default=list,
739 default=list,
740 )
740 )
741 coreconfigitem(
741 coreconfigitem(
742 b'email',
742 b'email',
743 b'from',
743 b'from',
744 default=None,
744 default=None,
745 )
745 )
746 coreconfigitem(
746 coreconfigitem(
747 b'email',
747 b'email',
748 b'method',
748 b'method',
749 default=b'smtp',
749 default=b'smtp',
750 )
750 )
751 coreconfigitem(
751 coreconfigitem(
752 b'email',
752 b'email',
753 b'reply-to',
753 b'reply-to',
754 default=None,
754 default=None,
755 )
755 )
756 coreconfigitem(
756 coreconfigitem(
757 b'email',
757 b'email',
758 b'to',
758 b'to',
759 default=None,
759 default=None,
760 )
760 )
761 coreconfigitem(
761 coreconfigitem(
762 b'experimental',
762 b'experimental',
763 b'archivemetatemplate',
763 b'archivemetatemplate',
764 default=dynamicdefault,
764 default=dynamicdefault,
765 )
765 )
766 coreconfigitem(
766 coreconfigitem(
767 b'experimental',
767 b'experimental',
768 b'auto-publish',
768 b'auto-publish',
769 default=b'publish',
769 default=b'publish',
770 )
770 )
771 coreconfigitem(
771 coreconfigitem(
772 b'experimental',
772 b'experimental',
773 b'bundle-phases',
773 b'bundle-phases',
774 default=False,
774 default=False,
775 )
775 )
776 coreconfigitem(
776 coreconfigitem(
777 b'experimental',
777 b'experimental',
778 b'bundle2-advertise',
778 b'bundle2-advertise',
779 default=True,
779 default=True,
780 )
780 )
781 coreconfigitem(
781 coreconfigitem(
782 b'experimental',
782 b'experimental',
783 b'bundle2-output-capture',
783 b'bundle2-output-capture',
784 default=False,
784 default=False,
785 )
785 )
786 coreconfigitem(
786 coreconfigitem(
787 b'experimental',
787 b'experimental',
788 b'bundle2.pushback',
788 b'bundle2.pushback',
789 default=False,
789 default=False,
790 )
790 )
791 coreconfigitem(
791 coreconfigitem(
792 b'experimental',
792 b'experimental',
793 b'bundle2lazylocking',
793 b'bundle2lazylocking',
794 default=False,
794 default=False,
795 )
795 )
796 coreconfigitem(
796 coreconfigitem(
797 b'experimental',
797 b'experimental',
798 b'bundlecomplevel',
798 b'bundlecomplevel',
799 default=None,
799 default=None,
800 )
800 )
801 coreconfigitem(
801 coreconfigitem(
802 b'experimental',
802 b'experimental',
803 b'bundlecomplevel.bzip2',
803 b'bundlecomplevel.bzip2',
804 default=None,
804 default=None,
805 )
805 )
806 coreconfigitem(
806 coreconfigitem(
807 b'experimental',
807 b'experimental',
808 b'bundlecomplevel.gzip',
808 b'bundlecomplevel.gzip',
809 default=None,
809 default=None,
810 )
810 )
811 coreconfigitem(
811 coreconfigitem(
812 b'experimental',
812 b'experimental',
813 b'bundlecomplevel.none',
813 b'bundlecomplevel.none',
814 default=None,
814 default=None,
815 )
815 )
816 coreconfigitem(
816 coreconfigitem(
817 b'experimental',
817 b'experimental',
818 b'bundlecomplevel.zstd',
818 b'bundlecomplevel.zstd',
819 default=None,
819 default=None,
820 )
820 )
821 coreconfigitem(
821 coreconfigitem(
822 b'experimental',
822 b'experimental',
823 b'changegroup3',
823 b'changegroup3',
824 default=False,
824 default=False,
825 )
825 )
826 coreconfigitem(
826 coreconfigitem(
827 b'experimental',
827 b'experimental',
828 b'cleanup-as-archived',
828 b'cleanup-as-archived',
829 default=False,
829 default=False,
830 )
830 )
831 coreconfigitem(
831 coreconfigitem(
832 b'experimental',
832 b'experimental',
833 b'clientcompressionengines',
833 b'clientcompressionengines',
834 default=list,
834 default=list,
835 )
835 )
836 coreconfigitem(
836 coreconfigitem(
837 b'experimental',
837 b'experimental',
838 b'copytrace',
838 b'copytrace',
839 default=b'on',
839 default=b'on',
840 )
840 )
841 coreconfigitem(
841 coreconfigitem(
842 b'experimental',
842 b'experimental',
843 b'copytrace.movecandidateslimit',
843 b'copytrace.movecandidateslimit',
844 default=100,
844 default=100,
845 )
845 )
846 coreconfigitem(
846 coreconfigitem(
847 b'experimental',
847 b'experimental',
848 b'copytrace.sourcecommitlimit',
848 b'copytrace.sourcecommitlimit',
849 default=100,
849 default=100,
850 )
850 )
851 coreconfigitem(
851 coreconfigitem(
852 b'experimental',
852 b'experimental',
853 b'copies.read-from',
853 b'copies.read-from',
854 default=b"filelog-only",
854 default=b"filelog-only",
855 )
855 )
856 coreconfigitem(
856 coreconfigitem(
857 b'experimental',
857 b'experimental',
858 b'copies.write-to',
858 b'copies.write-to',
859 default=b'filelog-only',
859 default=b'filelog-only',
860 )
860 )
861 coreconfigitem(
861 coreconfigitem(
862 b'experimental',
862 b'experimental',
863 b'crecordtest',
863 b'crecordtest',
864 default=None,
864 default=None,
865 )
865 )
866 coreconfigitem(
866 coreconfigitem(
867 b'experimental',
867 b'experimental',
868 b'directaccess',
868 b'directaccess',
869 default=False,
869 default=False,
870 )
870 )
871 coreconfigitem(
871 coreconfigitem(
872 b'experimental',
872 b'experimental',
873 b'directaccess.revnums',
873 b'directaccess.revnums',
874 default=False,
874 default=False,
875 )
875 )
876 coreconfigitem(
876 coreconfigitem(
877 b'experimental',
877 b'experimental',
878 b'editortmpinhg',
878 b'editortmpinhg',
879 default=False,
879 default=False,
880 )
880 )
881 coreconfigitem(
881 coreconfigitem(
882 b'experimental',
882 b'experimental',
883 b'evolution',
883 b'evolution',
884 default=list,
884 default=list,
885 )
885 )
886 coreconfigitem(
886 coreconfigitem(
887 b'experimental',
887 b'experimental',
888 b'evolution.allowdivergence',
888 b'evolution.allowdivergence',
889 default=False,
889 default=False,
890 alias=[(b'experimental', b'allowdivergence')],
890 alias=[(b'experimental', b'allowdivergence')],
891 )
891 )
892 coreconfigitem(
892 coreconfigitem(
893 b'experimental',
893 b'experimental',
894 b'evolution.allowunstable',
894 b'evolution.allowunstable',
895 default=None,
895 default=None,
896 )
896 )
897 coreconfigitem(
897 coreconfigitem(
898 b'experimental',
898 b'experimental',
899 b'evolution.createmarkers',
899 b'evolution.createmarkers',
900 default=None,
900 default=None,
901 )
901 )
902 coreconfigitem(
902 coreconfigitem(
903 b'experimental',
903 b'experimental',
904 b'evolution.effect-flags',
904 b'evolution.effect-flags',
905 default=True,
905 default=True,
906 alias=[(b'experimental', b'effect-flags')],
906 alias=[(b'experimental', b'effect-flags')],
907 )
907 )
908 coreconfigitem(
908 coreconfigitem(
909 b'experimental',
909 b'experimental',
910 b'evolution.exchange',
910 b'evolution.exchange',
911 default=None,
911 default=None,
912 )
912 )
913 coreconfigitem(
913 coreconfigitem(
914 b'experimental',
914 b'experimental',
915 b'evolution.bundle-obsmarker',
915 b'evolution.bundle-obsmarker',
916 default=False,
916 default=False,
917 )
917 )
918 coreconfigitem(
918 coreconfigitem(
919 b'experimental',
919 b'experimental',
920 b'evolution.bundle-obsmarker:mandatory',
920 b'evolution.bundle-obsmarker:mandatory',
921 default=True,
921 default=True,
922 )
922 )
923 coreconfigitem(
923 coreconfigitem(
924 b'experimental',
924 b'experimental',
925 b'log.topo',
925 b'log.topo',
926 default=False,
926 default=False,
927 )
927 )
928 coreconfigitem(
928 coreconfigitem(
929 b'experimental',
929 b'experimental',
930 b'evolution.report-instabilities',
930 b'evolution.report-instabilities',
931 default=True,
931 default=True,
932 )
932 )
933 coreconfigitem(
933 coreconfigitem(
934 b'experimental',
934 b'experimental',
935 b'evolution.track-operation',
935 b'evolution.track-operation',
936 default=True,
936 default=True,
937 )
937 )
938 # repo-level config to exclude a revset visibility
938 # repo-level config to exclude a revset visibility
939 #
939 #
940 # The target use case is to use `share` to expose different subset of the same
940 # The target use case is to use `share` to expose different subset of the same
941 # repository, especially server side. See also `server.view`.
941 # repository, especially server side. See also `server.view`.
942 coreconfigitem(
942 coreconfigitem(
943 b'experimental',
943 b'experimental',
944 b'extra-filter-revs',
944 b'extra-filter-revs',
945 default=None,
945 default=None,
946 )
946 )
947 coreconfigitem(
947 coreconfigitem(
948 b'experimental',
948 b'experimental',
949 b'maxdeltachainspan',
949 b'maxdeltachainspan',
950 default=-1,
950 default=-1,
951 )
951 )
952 # tracks files which were undeleted (merge might delete them but we explicitly
952 # tracks files which were undeleted (merge might delete them but we explicitly
953 # kept/undeleted them) and creates new filenodes for them
953 # kept/undeleted them) and creates new filenodes for them
954 coreconfigitem(
954 coreconfigitem(
955 b'experimental',
955 b'experimental',
956 b'merge-track-salvaged',
956 b'merge-track-salvaged',
957 default=False,
957 default=False,
958 )
958 )
959 coreconfigitem(
959 coreconfigitem(
960 b'experimental',
960 b'experimental',
961 b'mergetempdirprefix',
961 b'mergetempdirprefix',
962 default=None,
962 default=None,
963 )
963 )
964 coreconfigitem(
964 coreconfigitem(
965 b'experimental',
965 b'experimental',
966 b'mmapindexthreshold',
966 b'mmapindexthreshold',
967 default=None,
967 default=None,
968 )
968 )
969 coreconfigitem(
969 coreconfigitem(
970 b'experimental',
970 b'experimental',
971 b'narrow',
971 b'narrow',
972 default=False,
972 default=False,
973 )
973 )
974 coreconfigitem(
974 coreconfigitem(
975 b'experimental',
975 b'experimental',
976 b'nonnormalparanoidcheck',
976 b'nonnormalparanoidcheck',
977 default=False,
977 default=False,
978 )
978 )
979 coreconfigitem(
979 coreconfigitem(
980 b'experimental',
980 b'experimental',
981 b'exportableenviron',
981 b'exportableenviron',
982 default=list,
982 default=list,
983 )
983 )
984 coreconfigitem(
984 coreconfigitem(
985 b'experimental',
985 b'experimental',
986 b'extendedheader.index',
986 b'extendedheader.index',
987 default=None,
987 default=None,
988 )
988 )
989 coreconfigitem(
989 coreconfigitem(
990 b'experimental',
990 b'experimental',
991 b'extendedheader.similarity',
991 b'extendedheader.similarity',
992 default=False,
992 default=False,
993 )
993 )
994 coreconfigitem(
994 coreconfigitem(
995 b'experimental',
995 b'experimental',
996 b'graphshorten',
996 b'graphshorten',
997 default=False,
997 default=False,
998 )
998 )
999 coreconfigitem(
999 coreconfigitem(
1000 b'experimental',
1000 b'experimental',
1001 b'graphstyle.parent',
1001 b'graphstyle.parent',
1002 default=dynamicdefault,
1002 default=dynamicdefault,
1003 )
1003 )
1004 coreconfigitem(
1004 coreconfigitem(
1005 b'experimental',
1005 b'experimental',
1006 b'graphstyle.missing',
1006 b'graphstyle.missing',
1007 default=dynamicdefault,
1007 default=dynamicdefault,
1008 )
1008 )
1009 coreconfigitem(
1009 coreconfigitem(
1010 b'experimental',
1010 b'experimental',
1011 b'graphstyle.grandparent',
1011 b'graphstyle.grandparent',
1012 default=dynamicdefault,
1012 default=dynamicdefault,
1013 )
1013 )
1014 coreconfigitem(
1014 coreconfigitem(
1015 b'experimental',
1015 b'experimental',
1016 b'hook-track-tags',
1016 b'hook-track-tags',
1017 default=False,
1017 default=False,
1018 )
1018 )
1019 coreconfigitem(
1019 coreconfigitem(
1020 b'experimental',
1020 b'experimental',
1021 b'httppeer.advertise-v2',
1021 b'httppeer.advertise-v2',
1022 default=False,
1022 default=False,
1023 )
1023 )
1024 coreconfigitem(
1024 coreconfigitem(
1025 b'experimental',
1025 b'experimental',
1026 b'httppeer.v2-encoder-order',
1026 b'httppeer.v2-encoder-order',
1027 default=None,
1027 default=None,
1028 )
1028 )
1029 coreconfigitem(
1029 coreconfigitem(
1030 b'experimental',
1030 b'experimental',
1031 b'httppostargs',
1031 b'httppostargs',
1032 default=False,
1032 default=False,
1033 )
1033 )
1034 coreconfigitem(b'experimental', b'nointerrupt', default=False)
1034 coreconfigitem(b'experimental', b'nointerrupt', default=False)
1035 coreconfigitem(b'experimental', b'nointerrupt-interactiveonly', default=True)
1035 coreconfigitem(b'experimental', b'nointerrupt-interactiveonly', default=True)
1036
1036
1037 coreconfigitem(
1037 coreconfigitem(
1038 b'experimental',
1038 b'experimental',
1039 b'obsmarkers-exchange-debug',
1039 b'obsmarkers-exchange-debug',
1040 default=False,
1040 default=False,
1041 )
1041 )
1042 coreconfigitem(
1042 coreconfigitem(
1043 b'experimental',
1043 b'experimental',
1044 b'remotenames',
1044 b'remotenames',
1045 default=False,
1045 default=False,
1046 )
1046 )
1047 coreconfigitem(
1047 coreconfigitem(
1048 b'experimental',
1048 b'experimental',
1049 b'removeemptydirs',
1049 b'removeemptydirs',
1050 default=True,
1050 default=True,
1051 )
1051 )
1052 coreconfigitem(
1052 coreconfigitem(
1053 b'experimental',
1053 b'experimental',
1054 b'revert.interactive.select-to-keep',
1054 b'revert.interactive.select-to-keep',
1055 default=False,
1055 default=False,
1056 )
1056 )
1057 coreconfigitem(
1057 coreconfigitem(
1058 b'experimental',
1058 b'experimental',
1059 b'revisions.prefixhexnode',
1059 b'revisions.prefixhexnode',
1060 default=False,
1060 default=False,
1061 )
1061 )
1062 coreconfigitem(
1062 coreconfigitem(
1063 b'experimental',
1063 b'experimental',
1064 b'revlogv2',
1064 b'revlogv2',
1065 default=None,
1065 default=None,
1066 )
1066 )
1067 coreconfigitem(
1067 coreconfigitem(
1068 b'experimental',
1068 b'experimental',
1069 b'revisions.disambiguatewithin',
1069 b'revisions.disambiguatewithin',
1070 default=None,
1070 default=None,
1071 )
1071 )
1072 coreconfigitem(
1072 coreconfigitem(
1073 b'experimental',
1073 b'experimental',
1074 b'rust.index',
1074 b'rust.index',
1075 default=False,
1075 default=False,
1076 )
1076 )
1077 coreconfigitem(
1077 coreconfigitem(
1078 b'experimental',
1078 b'experimental',
1079 b'server.filesdata.recommended-batch-size',
1079 b'server.filesdata.recommended-batch-size',
1080 default=50000,
1080 default=50000,
1081 )
1081 )
1082 coreconfigitem(
1082 coreconfigitem(
1083 b'experimental',
1083 b'experimental',
1084 b'server.manifestdata.recommended-batch-size',
1084 b'server.manifestdata.recommended-batch-size',
1085 default=100000,
1085 default=100000,
1086 )
1086 )
1087 coreconfigitem(
1087 coreconfigitem(
1088 b'experimental',
1088 b'experimental',
1089 b'server.stream-narrow-clones',
1089 b'server.stream-narrow-clones',
1090 default=False,
1090 default=False,
1091 )
1091 )
1092 coreconfigitem(
1092 coreconfigitem(
1093 b'experimental',
1093 b'experimental',
1094 b'sharesafe-auto-downgrade-shares',
1094 b'sharesafe-auto-downgrade-shares',
1095 default=False,
1095 default=False,
1096 )
1096 )
1097 coreconfigitem(
1097 coreconfigitem(
1098 b'experimental',
1098 b'experimental',
1099 b'sharesafe-auto-upgrade-shares',
1099 b'sharesafe-auto-upgrade-shares',
1100 default=False,
1100 default=False,
1101 )
1101 )
1102 coreconfigitem(
1102 coreconfigitem(
1103 b'experimental',
1103 b'experimental',
1104 b'sharesafe-auto-upgrade-fail-error',
1104 b'sharesafe-auto-upgrade-fail-error',
1105 default=False,
1105 default=False,
1106 )
1106 )
1107 coreconfigitem(
1107 coreconfigitem(
1108 b'experimental',
1108 b'experimental',
1109 b'sharesafe-warn-outdated-shares',
1109 b'sharesafe-warn-outdated-shares',
1110 default=True,
1110 default=True,
1111 )
1111 )
1112 coreconfigitem(
1112 coreconfigitem(
1113 b'experimental',
1113 b'experimental',
1114 b'single-head-per-branch',
1114 b'single-head-per-branch',
1115 default=False,
1115 default=False,
1116 )
1116 )
1117 coreconfigitem(
1117 coreconfigitem(
1118 b'experimental',
1118 b'experimental',
1119 b'single-head-per-branch:account-closed-heads',
1119 b'single-head-per-branch:account-closed-heads',
1120 default=False,
1120 default=False,
1121 )
1121 )
1122 coreconfigitem(
1122 coreconfigitem(
1123 b'experimental',
1123 b'experimental',
1124 b'single-head-per-branch:public-changes-only',
1124 b'single-head-per-branch:public-changes-only',
1125 default=False,
1125 default=False,
1126 )
1126 )
1127 coreconfigitem(
1127 coreconfigitem(
1128 b'experimental',
1128 b'experimental',
1129 b'sshserver.support-v2',
1129 b'sshserver.support-v2',
1130 default=False,
1130 default=False,
1131 )
1131 )
1132 coreconfigitem(
1132 coreconfigitem(
1133 b'experimental',
1133 b'experimental',
1134 b'sparse-read',
1134 b'sparse-read',
1135 default=False,
1135 default=False,
1136 )
1136 )
1137 coreconfigitem(
1137 coreconfigitem(
1138 b'experimental',
1138 b'experimental',
1139 b'sparse-read.density-threshold',
1139 b'sparse-read.density-threshold',
1140 default=0.50,
1140 default=0.50,
1141 )
1141 )
1142 coreconfigitem(
1142 coreconfigitem(
1143 b'experimental',
1143 b'experimental',
1144 b'sparse-read.min-gap-size',
1144 b'sparse-read.min-gap-size',
1145 default=b'65K',
1145 default=b'65K',
1146 )
1146 )
1147 coreconfigitem(
1147 coreconfigitem(
1148 b'experimental',
1148 b'experimental',
1149 b'treemanifest',
1149 b'treemanifest',
1150 default=False,
1150 default=False,
1151 )
1151 )
1152 coreconfigitem(
1152 coreconfigitem(
1153 b'experimental',
1153 b'experimental',
1154 b'update.atomic-file',
1154 b'update.atomic-file',
1155 default=False,
1155 default=False,
1156 )
1156 )
1157 coreconfigitem(
1157 coreconfigitem(
1158 b'experimental',
1158 b'experimental',
1159 b'sshpeer.advertise-v2',
1159 b'sshpeer.advertise-v2',
1160 default=False,
1160 default=False,
1161 )
1161 )
1162 coreconfigitem(
1162 coreconfigitem(
1163 b'experimental',
1163 b'experimental',
1164 b'web.apiserver',
1164 b'web.apiserver',
1165 default=False,
1165 default=False,
1166 )
1166 )
1167 coreconfigitem(
1167 coreconfigitem(
1168 b'experimental',
1168 b'experimental',
1169 b'web.api.http-v2',
1169 b'web.api.http-v2',
1170 default=False,
1170 default=False,
1171 )
1171 )
1172 coreconfigitem(
1172 coreconfigitem(
1173 b'experimental',
1173 b'experimental',
1174 b'web.api.debugreflect',
1174 b'web.api.debugreflect',
1175 default=False,
1175 default=False,
1176 )
1176 )
1177 coreconfigitem(
1177 coreconfigitem(
1178 b'experimental',
1178 b'experimental',
1179 b'worker.wdir-get-thread-safe',
1179 b'worker.wdir-get-thread-safe',
1180 default=False,
1180 default=False,
1181 )
1181 )
1182 coreconfigitem(
1182 coreconfigitem(
1183 b'experimental',
1183 b'experimental',
1184 b'worker.repository-upgrade',
1184 b'worker.repository-upgrade',
1185 default=False,
1185 default=False,
1186 )
1186 )
1187 coreconfigitem(
1187 coreconfigitem(
1188 b'experimental',
1188 b'experimental',
1189 b'xdiff',
1189 b'xdiff',
1190 default=False,
1190 default=False,
1191 )
1191 )
1192 coreconfigitem(
1192 coreconfigitem(
1193 b'extensions',
1193 b'extensions',
1194 b'.*',
1194 b'.*',
1195 default=None,
1195 default=None,
1196 generic=True,
1196 generic=True,
1197 )
1197 )
1198 coreconfigitem(
1198 coreconfigitem(
1199 b'extdata',
1199 b'extdata',
1200 b'.*',
1200 b'.*',
1201 default=None,
1201 default=None,
1202 generic=True,
1202 generic=True,
1203 )
1203 )
1204 coreconfigitem(
1204 coreconfigitem(
1205 b'format',
1205 b'format',
1206 b'bookmarks-in-store',
1206 b'bookmarks-in-store',
1207 default=False,
1207 default=False,
1208 )
1208 )
1209 coreconfigitem(
1209 coreconfigitem(
1210 b'format',
1210 b'format',
1211 b'chunkcachesize',
1211 b'chunkcachesize',
1212 default=None,
1212 default=None,
1213 experimental=True,
1213 experimental=True,
1214 )
1214 )
1215 coreconfigitem(
1215 coreconfigitem(
1216 b'format',
1216 b'format',
1217 b'dotencode',
1217 b'dotencode',
1218 default=True,
1218 default=True,
1219 )
1219 )
1220 coreconfigitem(
1220 coreconfigitem(
1221 b'format',
1221 b'format',
1222 b'generaldelta',
1222 b'generaldelta',
1223 default=False,
1223 default=False,
1224 experimental=True,
1224 experimental=True,
1225 )
1225 )
1226 coreconfigitem(
1226 coreconfigitem(
1227 b'format',
1227 b'format',
1228 b'manifestcachesize',
1228 b'manifestcachesize',
1229 default=None,
1229 default=None,
1230 experimental=True,
1230 experimental=True,
1231 )
1231 )
1232 coreconfigitem(
1232 coreconfigitem(
1233 b'format',
1233 b'format',
1234 b'maxchainlen',
1234 b'maxchainlen',
1235 default=dynamicdefault,
1235 default=dynamicdefault,
1236 experimental=True,
1236 experimental=True,
1237 )
1237 )
1238 coreconfigitem(
1238 coreconfigitem(
1239 b'format',
1239 b'format',
1240 b'obsstore-version',
1240 b'obsstore-version',
1241 default=None,
1241 default=None,
1242 )
1242 )
1243 coreconfigitem(
1243 coreconfigitem(
1244 b'format',
1244 b'format',
1245 b'sparse-revlog',
1245 b'sparse-revlog',
1246 default=True,
1246 default=True,
1247 )
1247 )
1248 coreconfigitem(
1248 coreconfigitem(
1249 b'format',
1249 b'format',
1250 b'revlog-compression',
1250 b'revlog-compression',
1251 default=lambda: [b'zlib'],
1251 default=lambda: [b'zlib'],
1252 alias=[(b'experimental', b'format.compression')],
1252 alias=[(b'experimental', b'format.compression')],
1253 )
1253 )
1254 coreconfigitem(
1254 coreconfigitem(
1255 b'format',
1255 b'format',
1256 b'usefncache',
1256 b'usefncache',
1257 default=True,
1257 default=True,
1258 )
1258 )
1259 coreconfigitem(
1259 coreconfigitem(
1260 b'format',
1260 b'format',
1261 b'usegeneraldelta',
1261 b'usegeneraldelta',
1262 default=True,
1262 default=True,
1263 )
1263 )
1264 coreconfigitem(
1264 coreconfigitem(
1265 b'format',
1265 b'format',
1266 b'usestore',
1266 b'usestore',
1267 default=True,
1267 default=True,
1268 )
1268 )
1269 # Right now, the only efficient implement of the nodemap logic is in Rust,
1269 coreconfigitem(
1270 #
1270 b'format',
1271 # The case was discussed that the 5.6 sprint and the following was decided for
1271 b'use-persistent-nodemap',
1272 # feature that have an optional fast implementation (and are a performance
1272 default=False,
1273 # regression in the others)
1274 #
1275 # * If the fast implementation is not available, Mercurial will refuse to
1276 # access repository that requires it. Pointing to proper documentation
1277 #
1278 # * An option exist to lift that limitation and allow repository access.
1279 #
1280 # Such access will emit a warning unless configured not to.
1281 #
1282 # * When sufficiently mature, the feature can be enabled by default only for
1283 # installation that supports it.
1284 coreconfigitem(
1285 b'format', b'use-persistent-nodemap', default=False, experimental=True
1286 )
1273 )
1287 coreconfigitem(
1274 coreconfigitem(
1288 b'format',
1275 b'format',
1289 b'exp-use-copies-side-data-changeset',
1276 b'exp-use-copies-side-data-changeset',
1290 default=False,
1277 default=False,
1291 experimental=True,
1278 experimental=True,
1292 )
1279 )
1293 coreconfigitem(
1280 coreconfigitem(
1294 b'format',
1281 b'format',
1295 b'exp-use-side-data',
1282 b'exp-use-side-data',
1296 default=False,
1283 default=False,
1297 experimental=True,
1284 experimental=True,
1298 )
1285 )
1299 coreconfigitem(
1286 coreconfigitem(
1300 b'format',
1287 b'format',
1301 b'exp-share-safe',
1288 b'exp-share-safe',
1302 default=False,
1289 default=False,
1303 experimental=True,
1290 experimental=True,
1304 )
1291 )
1305 coreconfigitem(
1292 coreconfigitem(
1306 b'format',
1293 b'format',
1307 b'internal-phase',
1294 b'internal-phase',
1308 default=False,
1295 default=False,
1309 experimental=True,
1296 experimental=True,
1310 )
1297 )
1311 coreconfigitem(
1298 coreconfigitem(
1312 b'fsmonitor',
1299 b'fsmonitor',
1313 b'warn_when_unused',
1300 b'warn_when_unused',
1314 default=True,
1301 default=True,
1315 )
1302 )
1316 coreconfigitem(
1303 coreconfigitem(
1317 b'fsmonitor',
1304 b'fsmonitor',
1318 b'warn_update_file_count',
1305 b'warn_update_file_count',
1319 default=50000,
1306 default=50000,
1320 )
1307 )
1321 coreconfigitem(
1308 coreconfigitem(
1322 b'fsmonitor',
1309 b'fsmonitor',
1323 b'warn_update_file_count_rust',
1310 b'warn_update_file_count_rust',
1324 default=400000,
1311 default=400000,
1325 )
1312 )
1326 coreconfigitem(
1313 coreconfigitem(
1327 b'help',
1314 b'help',
1328 br'hidden-command\..*',
1315 br'hidden-command\..*',
1329 default=False,
1316 default=False,
1330 generic=True,
1317 generic=True,
1331 )
1318 )
1332 coreconfigitem(
1319 coreconfigitem(
1333 b'help',
1320 b'help',
1334 br'hidden-topic\..*',
1321 br'hidden-topic\..*',
1335 default=False,
1322 default=False,
1336 generic=True,
1323 generic=True,
1337 )
1324 )
1338 coreconfigitem(
1325 coreconfigitem(
1339 b'hooks',
1326 b'hooks',
1340 b'.*',
1327 b'.*',
1341 default=dynamicdefault,
1328 default=dynamicdefault,
1342 generic=True,
1329 generic=True,
1343 )
1330 )
1344 coreconfigitem(
1331 coreconfigitem(
1345 b'hgweb-paths',
1332 b'hgweb-paths',
1346 b'.*',
1333 b'.*',
1347 default=list,
1334 default=list,
1348 generic=True,
1335 generic=True,
1349 )
1336 )
1350 coreconfigitem(
1337 coreconfigitem(
1351 b'hostfingerprints',
1338 b'hostfingerprints',
1352 b'.*',
1339 b'.*',
1353 default=list,
1340 default=list,
1354 generic=True,
1341 generic=True,
1355 )
1342 )
1356 coreconfigitem(
1343 coreconfigitem(
1357 b'hostsecurity',
1344 b'hostsecurity',
1358 b'ciphers',
1345 b'ciphers',
1359 default=None,
1346 default=None,
1360 )
1347 )
1361 coreconfigitem(
1348 coreconfigitem(
1362 b'hostsecurity',
1349 b'hostsecurity',
1363 b'minimumprotocol',
1350 b'minimumprotocol',
1364 default=dynamicdefault,
1351 default=dynamicdefault,
1365 )
1352 )
1366 coreconfigitem(
1353 coreconfigitem(
1367 b'hostsecurity',
1354 b'hostsecurity',
1368 b'.*:minimumprotocol$',
1355 b'.*:minimumprotocol$',
1369 default=dynamicdefault,
1356 default=dynamicdefault,
1370 generic=True,
1357 generic=True,
1371 )
1358 )
1372 coreconfigitem(
1359 coreconfigitem(
1373 b'hostsecurity',
1360 b'hostsecurity',
1374 b'.*:ciphers$',
1361 b'.*:ciphers$',
1375 default=dynamicdefault,
1362 default=dynamicdefault,
1376 generic=True,
1363 generic=True,
1377 )
1364 )
1378 coreconfigitem(
1365 coreconfigitem(
1379 b'hostsecurity',
1366 b'hostsecurity',
1380 b'.*:fingerprints$',
1367 b'.*:fingerprints$',
1381 default=list,
1368 default=list,
1382 generic=True,
1369 generic=True,
1383 )
1370 )
1384 coreconfigitem(
1371 coreconfigitem(
1385 b'hostsecurity',
1372 b'hostsecurity',
1386 b'.*:verifycertsfile$',
1373 b'.*:verifycertsfile$',
1387 default=None,
1374 default=None,
1388 generic=True,
1375 generic=True,
1389 )
1376 )
1390
1377
1391 coreconfigitem(
1378 coreconfigitem(
1392 b'http_proxy',
1379 b'http_proxy',
1393 b'always',
1380 b'always',
1394 default=False,
1381 default=False,
1395 )
1382 )
1396 coreconfigitem(
1383 coreconfigitem(
1397 b'http_proxy',
1384 b'http_proxy',
1398 b'host',
1385 b'host',
1399 default=None,
1386 default=None,
1400 )
1387 )
1401 coreconfigitem(
1388 coreconfigitem(
1402 b'http_proxy',
1389 b'http_proxy',
1403 b'no',
1390 b'no',
1404 default=list,
1391 default=list,
1405 )
1392 )
1406 coreconfigitem(
1393 coreconfigitem(
1407 b'http_proxy',
1394 b'http_proxy',
1408 b'passwd',
1395 b'passwd',
1409 default=None,
1396 default=None,
1410 )
1397 )
1411 coreconfigitem(
1398 coreconfigitem(
1412 b'http_proxy',
1399 b'http_proxy',
1413 b'user',
1400 b'user',
1414 default=None,
1401 default=None,
1415 )
1402 )
1416
1403
1417 coreconfigitem(
1404 coreconfigitem(
1418 b'http',
1405 b'http',
1419 b'timeout',
1406 b'timeout',
1420 default=None,
1407 default=None,
1421 )
1408 )
1422
1409
1423 coreconfigitem(
1410 coreconfigitem(
1424 b'logtoprocess',
1411 b'logtoprocess',
1425 b'commandexception',
1412 b'commandexception',
1426 default=None,
1413 default=None,
1427 )
1414 )
1428 coreconfigitem(
1415 coreconfigitem(
1429 b'logtoprocess',
1416 b'logtoprocess',
1430 b'commandfinish',
1417 b'commandfinish',
1431 default=None,
1418 default=None,
1432 )
1419 )
1433 coreconfigitem(
1420 coreconfigitem(
1434 b'logtoprocess',
1421 b'logtoprocess',
1435 b'command',
1422 b'command',
1436 default=None,
1423 default=None,
1437 )
1424 )
1438 coreconfigitem(
1425 coreconfigitem(
1439 b'logtoprocess',
1426 b'logtoprocess',
1440 b'develwarn',
1427 b'develwarn',
1441 default=None,
1428 default=None,
1442 )
1429 )
1443 coreconfigitem(
1430 coreconfigitem(
1444 b'logtoprocess',
1431 b'logtoprocess',
1445 b'uiblocked',
1432 b'uiblocked',
1446 default=None,
1433 default=None,
1447 )
1434 )
1448 coreconfigitem(
1435 coreconfigitem(
1449 b'merge',
1436 b'merge',
1450 b'checkunknown',
1437 b'checkunknown',
1451 default=b'abort',
1438 default=b'abort',
1452 )
1439 )
1453 coreconfigitem(
1440 coreconfigitem(
1454 b'merge',
1441 b'merge',
1455 b'checkignored',
1442 b'checkignored',
1456 default=b'abort',
1443 default=b'abort',
1457 )
1444 )
1458 coreconfigitem(
1445 coreconfigitem(
1459 b'experimental',
1446 b'experimental',
1460 b'merge.checkpathconflicts',
1447 b'merge.checkpathconflicts',
1461 default=False,
1448 default=False,
1462 )
1449 )
1463 coreconfigitem(
1450 coreconfigitem(
1464 b'merge',
1451 b'merge',
1465 b'followcopies',
1452 b'followcopies',
1466 default=True,
1453 default=True,
1467 )
1454 )
1468 coreconfigitem(
1455 coreconfigitem(
1469 b'merge',
1456 b'merge',
1470 b'on-failure',
1457 b'on-failure',
1471 default=b'continue',
1458 default=b'continue',
1472 )
1459 )
1473 coreconfigitem(
1460 coreconfigitem(
1474 b'merge',
1461 b'merge',
1475 b'preferancestor',
1462 b'preferancestor',
1476 default=lambda: [b'*'],
1463 default=lambda: [b'*'],
1477 experimental=True,
1464 experimental=True,
1478 )
1465 )
1479 coreconfigitem(
1466 coreconfigitem(
1480 b'merge',
1467 b'merge',
1481 b'strict-capability-check',
1468 b'strict-capability-check',
1482 default=False,
1469 default=False,
1483 )
1470 )
1484 coreconfigitem(
1471 coreconfigitem(
1485 b'merge-tools',
1472 b'merge-tools',
1486 b'.*',
1473 b'.*',
1487 default=None,
1474 default=None,
1488 generic=True,
1475 generic=True,
1489 )
1476 )
1490 coreconfigitem(
1477 coreconfigitem(
1491 b'merge-tools',
1478 b'merge-tools',
1492 br'.*\.args$',
1479 br'.*\.args$',
1493 default=b"$local $base $other",
1480 default=b"$local $base $other",
1494 generic=True,
1481 generic=True,
1495 priority=-1,
1482 priority=-1,
1496 )
1483 )
1497 coreconfigitem(
1484 coreconfigitem(
1498 b'merge-tools',
1485 b'merge-tools',
1499 br'.*\.binary$',
1486 br'.*\.binary$',
1500 default=False,
1487 default=False,
1501 generic=True,
1488 generic=True,
1502 priority=-1,
1489 priority=-1,
1503 )
1490 )
1504 coreconfigitem(
1491 coreconfigitem(
1505 b'merge-tools',
1492 b'merge-tools',
1506 br'.*\.check$',
1493 br'.*\.check$',
1507 default=list,
1494 default=list,
1508 generic=True,
1495 generic=True,
1509 priority=-1,
1496 priority=-1,
1510 )
1497 )
1511 coreconfigitem(
1498 coreconfigitem(
1512 b'merge-tools',
1499 b'merge-tools',
1513 br'.*\.checkchanged$',
1500 br'.*\.checkchanged$',
1514 default=False,
1501 default=False,
1515 generic=True,
1502 generic=True,
1516 priority=-1,
1503 priority=-1,
1517 )
1504 )
1518 coreconfigitem(
1505 coreconfigitem(
1519 b'merge-tools',
1506 b'merge-tools',
1520 br'.*\.executable$',
1507 br'.*\.executable$',
1521 default=dynamicdefault,
1508 default=dynamicdefault,
1522 generic=True,
1509 generic=True,
1523 priority=-1,
1510 priority=-1,
1524 )
1511 )
1525 coreconfigitem(
1512 coreconfigitem(
1526 b'merge-tools',
1513 b'merge-tools',
1527 br'.*\.fixeol$',
1514 br'.*\.fixeol$',
1528 default=False,
1515 default=False,
1529 generic=True,
1516 generic=True,
1530 priority=-1,
1517 priority=-1,
1531 )
1518 )
1532 coreconfigitem(
1519 coreconfigitem(
1533 b'merge-tools',
1520 b'merge-tools',
1534 br'.*\.gui$',
1521 br'.*\.gui$',
1535 default=False,
1522 default=False,
1536 generic=True,
1523 generic=True,
1537 priority=-1,
1524 priority=-1,
1538 )
1525 )
1539 coreconfigitem(
1526 coreconfigitem(
1540 b'merge-tools',
1527 b'merge-tools',
1541 br'.*\.mergemarkers$',
1528 br'.*\.mergemarkers$',
1542 default=b'basic',
1529 default=b'basic',
1543 generic=True,
1530 generic=True,
1544 priority=-1,
1531 priority=-1,
1545 )
1532 )
1546 coreconfigitem(
1533 coreconfigitem(
1547 b'merge-tools',
1534 b'merge-tools',
1548 br'.*\.mergemarkertemplate$',
1535 br'.*\.mergemarkertemplate$',
1549 default=dynamicdefault, # take from command-templates.mergemarker
1536 default=dynamicdefault, # take from command-templates.mergemarker
1550 generic=True,
1537 generic=True,
1551 priority=-1,
1538 priority=-1,
1552 )
1539 )
1553 coreconfigitem(
1540 coreconfigitem(
1554 b'merge-tools',
1541 b'merge-tools',
1555 br'.*\.priority$',
1542 br'.*\.priority$',
1556 default=0,
1543 default=0,
1557 generic=True,
1544 generic=True,
1558 priority=-1,
1545 priority=-1,
1559 )
1546 )
1560 coreconfigitem(
1547 coreconfigitem(
1561 b'merge-tools',
1548 b'merge-tools',
1562 br'.*\.premerge$',
1549 br'.*\.premerge$',
1563 default=dynamicdefault,
1550 default=dynamicdefault,
1564 generic=True,
1551 generic=True,
1565 priority=-1,
1552 priority=-1,
1566 )
1553 )
1567 coreconfigitem(
1554 coreconfigitem(
1568 b'merge-tools',
1555 b'merge-tools',
1569 br'.*\.symlink$',
1556 br'.*\.symlink$',
1570 default=False,
1557 default=False,
1571 generic=True,
1558 generic=True,
1572 priority=-1,
1559 priority=-1,
1573 )
1560 )
1574 coreconfigitem(
1561 coreconfigitem(
1575 b'pager',
1562 b'pager',
1576 b'attend-.*',
1563 b'attend-.*',
1577 default=dynamicdefault,
1564 default=dynamicdefault,
1578 generic=True,
1565 generic=True,
1579 )
1566 )
1580 coreconfigitem(
1567 coreconfigitem(
1581 b'pager',
1568 b'pager',
1582 b'ignore',
1569 b'ignore',
1583 default=list,
1570 default=list,
1584 )
1571 )
1585 coreconfigitem(
1572 coreconfigitem(
1586 b'pager',
1573 b'pager',
1587 b'pager',
1574 b'pager',
1588 default=dynamicdefault,
1575 default=dynamicdefault,
1589 )
1576 )
1590 coreconfigitem(
1577 coreconfigitem(
1591 b'patch',
1578 b'patch',
1592 b'eol',
1579 b'eol',
1593 default=b'strict',
1580 default=b'strict',
1594 )
1581 )
1595 coreconfigitem(
1582 coreconfigitem(
1596 b'patch',
1583 b'patch',
1597 b'fuzz',
1584 b'fuzz',
1598 default=2,
1585 default=2,
1599 )
1586 )
1600 coreconfigitem(
1587 coreconfigitem(
1601 b'paths',
1588 b'paths',
1602 b'default',
1589 b'default',
1603 default=None,
1590 default=None,
1604 )
1591 )
1605 coreconfigitem(
1592 coreconfigitem(
1606 b'paths',
1593 b'paths',
1607 b'default-push',
1594 b'default-push',
1608 default=None,
1595 default=None,
1609 )
1596 )
1610 coreconfigitem(
1597 coreconfigitem(
1611 b'paths',
1598 b'paths',
1612 b'.*',
1599 b'.*',
1613 default=None,
1600 default=None,
1614 generic=True,
1601 generic=True,
1615 )
1602 )
1616 coreconfigitem(
1603 coreconfigitem(
1617 b'phases',
1604 b'phases',
1618 b'checksubrepos',
1605 b'checksubrepos',
1619 default=b'follow',
1606 default=b'follow',
1620 )
1607 )
1621 coreconfigitem(
1608 coreconfigitem(
1622 b'phases',
1609 b'phases',
1623 b'new-commit',
1610 b'new-commit',
1624 default=b'draft',
1611 default=b'draft',
1625 )
1612 )
1626 coreconfigitem(
1613 coreconfigitem(
1627 b'phases',
1614 b'phases',
1628 b'publish',
1615 b'publish',
1629 default=True,
1616 default=True,
1630 )
1617 )
1631 coreconfigitem(
1618 coreconfigitem(
1632 b'profiling',
1619 b'profiling',
1633 b'enabled',
1620 b'enabled',
1634 default=False,
1621 default=False,
1635 )
1622 )
1636 coreconfigitem(
1623 coreconfigitem(
1637 b'profiling',
1624 b'profiling',
1638 b'format',
1625 b'format',
1639 default=b'text',
1626 default=b'text',
1640 )
1627 )
1641 coreconfigitem(
1628 coreconfigitem(
1642 b'profiling',
1629 b'profiling',
1643 b'freq',
1630 b'freq',
1644 default=1000,
1631 default=1000,
1645 )
1632 )
1646 coreconfigitem(
1633 coreconfigitem(
1647 b'profiling',
1634 b'profiling',
1648 b'limit',
1635 b'limit',
1649 default=30,
1636 default=30,
1650 )
1637 )
1651 coreconfigitem(
1638 coreconfigitem(
1652 b'profiling',
1639 b'profiling',
1653 b'nested',
1640 b'nested',
1654 default=0,
1641 default=0,
1655 )
1642 )
1656 coreconfigitem(
1643 coreconfigitem(
1657 b'profiling',
1644 b'profiling',
1658 b'output',
1645 b'output',
1659 default=None,
1646 default=None,
1660 )
1647 )
1661 coreconfigitem(
1648 coreconfigitem(
1662 b'profiling',
1649 b'profiling',
1663 b'showmax',
1650 b'showmax',
1664 default=0.999,
1651 default=0.999,
1665 )
1652 )
1666 coreconfigitem(
1653 coreconfigitem(
1667 b'profiling',
1654 b'profiling',
1668 b'showmin',
1655 b'showmin',
1669 default=dynamicdefault,
1656 default=dynamicdefault,
1670 )
1657 )
1671 coreconfigitem(
1658 coreconfigitem(
1672 b'profiling',
1659 b'profiling',
1673 b'showtime',
1660 b'showtime',
1674 default=True,
1661 default=True,
1675 )
1662 )
1676 coreconfigitem(
1663 coreconfigitem(
1677 b'profiling',
1664 b'profiling',
1678 b'sort',
1665 b'sort',
1679 default=b'inlinetime',
1666 default=b'inlinetime',
1680 )
1667 )
1681 coreconfigitem(
1668 coreconfigitem(
1682 b'profiling',
1669 b'profiling',
1683 b'statformat',
1670 b'statformat',
1684 default=b'hotpath',
1671 default=b'hotpath',
1685 )
1672 )
1686 coreconfigitem(
1673 coreconfigitem(
1687 b'profiling',
1674 b'profiling',
1688 b'time-track',
1675 b'time-track',
1689 default=dynamicdefault,
1676 default=dynamicdefault,
1690 )
1677 )
1691 coreconfigitem(
1678 coreconfigitem(
1692 b'profiling',
1679 b'profiling',
1693 b'type',
1680 b'type',
1694 default=b'stat',
1681 default=b'stat',
1695 )
1682 )
1696 coreconfigitem(
1683 coreconfigitem(
1697 b'progress',
1684 b'progress',
1698 b'assume-tty',
1685 b'assume-tty',
1699 default=False,
1686 default=False,
1700 )
1687 )
1701 coreconfigitem(
1688 coreconfigitem(
1702 b'progress',
1689 b'progress',
1703 b'changedelay',
1690 b'changedelay',
1704 default=1,
1691 default=1,
1705 )
1692 )
1706 coreconfigitem(
1693 coreconfigitem(
1707 b'progress',
1694 b'progress',
1708 b'clear-complete',
1695 b'clear-complete',
1709 default=True,
1696 default=True,
1710 )
1697 )
1711 coreconfigitem(
1698 coreconfigitem(
1712 b'progress',
1699 b'progress',
1713 b'debug',
1700 b'debug',
1714 default=False,
1701 default=False,
1715 )
1702 )
1716 coreconfigitem(
1703 coreconfigitem(
1717 b'progress',
1704 b'progress',
1718 b'delay',
1705 b'delay',
1719 default=3,
1706 default=3,
1720 )
1707 )
1721 coreconfigitem(
1708 coreconfigitem(
1722 b'progress',
1709 b'progress',
1723 b'disable',
1710 b'disable',
1724 default=False,
1711 default=False,
1725 )
1712 )
1726 coreconfigitem(
1713 coreconfigitem(
1727 b'progress',
1714 b'progress',
1728 b'estimateinterval',
1715 b'estimateinterval',
1729 default=60.0,
1716 default=60.0,
1730 )
1717 )
1731 coreconfigitem(
1718 coreconfigitem(
1732 b'progress',
1719 b'progress',
1733 b'format',
1720 b'format',
1734 default=lambda: [b'topic', b'bar', b'number', b'estimate'],
1721 default=lambda: [b'topic', b'bar', b'number', b'estimate'],
1735 )
1722 )
1736 coreconfigitem(
1723 coreconfigitem(
1737 b'progress',
1724 b'progress',
1738 b'refresh',
1725 b'refresh',
1739 default=0.1,
1726 default=0.1,
1740 )
1727 )
1741 coreconfigitem(
1728 coreconfigitem(
1742 b'progress',
1729 b'progress',
1743 b'width',
1730 b'width',
1744 default=dynamicdefault,
1731 default=dynamicdefault,
1745 )
1732 )
1746 coreconfigitem(
1733 coreconfigitem(
1747 b'pull',
1734 b'pull',
1748 b'confirm',
1735 b'confirm',
1749 default=False,
1736 default=False,
1750 )
1737 )
1751 coreconfigitem(
1738 coreconfigitem(
1752 b'push',
1739 b'push',
1753 b'pushvars.server',
1740 b'pushvars.server',
1754 default=False,
1741 default=False,
1755 )
1742 )
1756 coreconfigitem(
1743 coreconfigitem(
1757 b'rewrite',
1744 b'rewrite',
1758 b'backup-bundle',
1745 b'backup-bundle',
1759 default=True,
1746 default=True,
1760 alias=[(b'ui', b'history-editing-backup')],
1747 alias=[(b'ui', b'history-editing-backup')],
1761 )
1748 )
1762 coreconfigitem(
1749 coreconfigitem(
1763 b'rewrite',
1750 b'rewrite',
1764 b'update-timestamp',
1751 b'update-timestamp',
1765 default=False,
1752 default=False,
1766 )
1753 )
1767 coreconfigitem(
1754 coreconfigitem(
1768 b'rewrite',
1755 b'rewrite',
1769 b'empty-successor',
1756 b'empty-successor',
1770 default=b'skip',
1757 default=b'skip',
1771 experimental=True,
1758 experimental=True,
1772 )
1759 )
1773 coreconfigitem(
1760 coreconfigitem(
1774 b'storage',
1761 b'storage',
1775 b'new-repo-backend',
1762 b'new-repo-backend',
1776 default=b'revlogv1',
1763 default=b'revlogv1',
1777 experimental=True,
1764 experimental=True,
1778 )
1765 )
1779 coreconfigitem(
1766 coreconfigitem(
1780 b'storage',
1767 b'storage',
1781 b'revlog.optimize-delta-parent-choice',
1768 b'revlog.optimize-delta-parent-choice',
1782 default=True,
1769 default=True,
1783 alias=[(b'format', b'aggressivemergedeltas')],
1770 alias=[(b'format', b'aggressivemergedeltas')],
1784 )
1771 )
1785 # experimental as long as rust is experimental (or a C version is implemented)
1772 # experimental as long as rust is experimental (or a C version is implemented)
1786 coreconfigitem(
1773 coreconfigitem(
1787 b'storage',
1774 b'storage',
1788 b'revlog.persistent-nodemap.mmap',
1775 b'revlog.persistent-nodemap.mmap',
1789 default=True,
1776 default=True,
1790 experimental=True,
1791 )
1777 )
1792 # experimental as long as format.use-persistent-nodemap is.
1778 # experimental as long as format.use-persistent-nodemap is.
1793 coreconfigitem(
1779 coreconfigitem(
1794 b'storage',
1780 b'storage',
1795 b'revlog.persistent-nodemap.slow-path',
1781 b'revlog.persistent-nodemap.slow-path',
1796 default=b"abort",
1782 default=b"abort",
1797 experimental=True,
1798 )
1783 )
1799
1784
1800 coreconfigitem(
1785 coreconfigitem(
1801 b'storage',
1786 b'storage',
1802 b'revlog.reuse-external-delta',
1787 b'revlog.reuse-external-delta',
1803 default=True,
1788 default=True,
1804 )
1789 )
1805 coreconfigitem(
1790 coreconfigitem(
1806 b'storage',
1791 b'storage',
1807 b'revlog.reuse-external-delta-parent',
1792 b'revlog.reuse-external-delta-parent',
1808 default=None,
1793 default=None,
1809 )
1794 )
1810 coreconfigitem(
1795 coreconfigitem(
1811 b'storage',
1796 b'storage',
1812 b'revlog.zlib.level',
1797 b'revlog.zlib.level',
1813 default=None,
1798 default=None,
1814 )
1799 )
1815 coreconfigitem(
1800 coreconfigitem(
1816 b'storage',
1801 b'storage',
1817 b'revlog.zstd.level',
1802 b'revlog.zstd.level',
1818 default=None,
1803 default=None,
1819 )
1804 )
1820 coreconfigitem(
1805 coreconfigitem(
1821 b'server',
1806 b'server',
1822 b'bookmarks-pushkey-compat',
1807 b'bookmarks-pushkey-compat',
1823 default=True,
1808 default=True,
1824 )
1809 )
1825 coreconfigitem(
1810 coreconfigitem(
1826 b'server',
1811 b'server',
1827 b'bundle1',
1812 b'bundle1',
1828 default=True,
1813 default=True,
1829 )
1814 )
1830 coreconfigitem(
1815 coreconfigitem(
1831 b'server',
1816 b'server',
1832 b'bundle1gd',
1817 b'bundle1gd',
1833 default=None,
1818 default=None,
1834 )
1819 )
1835 coreconfigitem(
1820 coreconfigitem(
1836 b'server',
1821 b'server',
1837 b'bundle1.pull',
1822 b'bundle1.pull',
1838 default=None,
1823 default=None,
1839 )
1824 )
1840 coreconfigitem(
1825 coreconfigitem(
1841 b'server',
1826 b'server',
1842 b'bundle1gd.pull',
1827 b'bundle1gd.pull',
1843 default=None,
1828 default=None,
1844 )
1829 )
1845 coreconfigitem(
1830 coreconfigitem(
1846 b'server',
1831 b'server',
1847 b'bundle1.push',
1832 b'bundle1.push',
1848 default=None,
1833 default=None,
1849 )
1834 )
1850 coreconfigitem(
1835 coreconfigitem(
1851 b'server',
1836 b'server',
1852 b'bundle1gd.push',
1837 b'bundle1gd.push',
1853 default=None,
1838 default=None,
1854 )
1839 )
1855 coreconfigitem(
1840 coreconfigitem(
1856 b'server',
1841 b'server',
1857 b'bundle2.stream',
1842 b'bundle2.stream',
1858 default=True,
1843 default=True,
1859 alias=[(b'experimental', b'bundle2.stream')],
1844 alias=[(b'experimental', b'bundle2.stream')],
1860 )
1845 )
1861 coreconfigitem(
1846 coreconfigitem(
1862 b'server',
1847 b'server',
1863 b'compressionengines',
1848 b'compressionengines',
1864 default=list,
1849 default=list,
1865 )
1850 )
1866 coreconfigitem(
1851 coreconfigitem(
1867 b'server',
1852 b'server',
1868 b'concurrent-push-mode',
1853 b'concurrent-push-mode',
1869 default=b'check-related',
1854 default=b'check-related',
1870 )
1855 )
1871 coreconfigitem(
1856 coreconfigitem(
1872 b'server',
1857 b'server',
1873 b'disablefullbundle',
1858 b'disablefullbundle',
1874 default=False,
1859 default=False,
1875 )
1860 )
1876 coreconfigitem(
1861 coreconfigitem(
1877 b'server',
1862 b'server',
1878 b'maxhttpheaderlen',
1863 b'maxhttpheaderlen',
1879 default=1024,
1864 default=1024,
1880 )
1865 )
1881 coreconfigitem(
1866 coreconfigitem(
1882 b'server',
1867 b'server',
1883 b'pullbundle',
1868 b'pullbundle',
1884 default=False,
1869 default=False,
1885 )
1870 )
1886 coreconfigitem(
1871 coreconfigitem(
1887 b'server',
1872 b'server',
1888 b'preferuncompressed',
1873 b'preferuncompressed',
1889 default=False,
1874 default=False,
1890 )
1875 )
1891 coreconfigitem(
1876 coreconfigitem(
1892 b'server',
1877 b'server',
1893 b'streamunbundle',
1878 b'streamunbundle',
1894 default=False,
1879 default=False,
1895 )
1880 )
1896 coreconfigitem(
1881 coreconfigitem(
1897 b'server',
1882 b'server',
1898 b'uncompressed',
1883 b'uncompressed',
1899 default=True,
1884 default=True,
1900 )
1885 )
1901 coreconfigitem(
1886 coreconfigitem(
1902 b'server',
1887 b'server',
1903 b'uncompressedallowsecret',
1888 b'uncompressedallowsecret',
1904 default=False,
1889 default=False,
1905 )
1890 )
1906 coreconfigitem(
1891 coreconfigitem(
1907 b'server',
1892 b'server',
1908 b'view',
1893 b'view',
1909 default=b'served',
1894 default=b'served',
1910 )
1895 )
1911 coreconfigitem(
1896 coreconfigitem(
1912 b'server',
1897 b'server',
1913 b'validate',
1898 b'validate',
1914 default=False,
1899 default=False,
1915 )
1900 )
1916 coreconfigitem(
1901 coreconfigitem(
1917 b'server',
1902 b'server',
1918 b'zliblevel',
1903 b'zliblevel',
1919 default=-1,
1904 default=-1,
1920 )
1905 )
1921 coreconfigitem(
1906 coreconfigitem(
1922 b'server',
1907 b'server',
1923 b'zstdlevel',
1908 b'zstdlevel',
1924 default=3,
1909 default=3,
1925 )
1910 )
1926 coreconfigitem(
1911 coreconfigitem(
1927 b'share',
1912 b'share',
1928 b'pool',
1913 b'pool',
1929 default=None,
1914 default=None,
1930 )
1915 )
1931 coreconfigitem(
1916 coreconfigitem(
1932 b'share',
1917 b'share',
1933 b'poolnaming',
1918 b'poolnaming',
1934 default=b'identity',
1919 default=b'identity',
1935 )
1920 )
1936 coreconfigitem(
1921 coreconfigitem(
1937 b'shelve',
1922 b'shelve',
1938 b'maxbackups',
1923 b'maxbackups',
1939 default=10,
1924 default=10,
1940 )
1925 )
1941 coreconfigitem(
1926 coreconfigitem(
1942 b'smtp',
1927 b'smtp',
1943 b'host',
1928 b'host',
1944 default=None,
1929 default=None,
1945 )
1930 )
1946 coreconfigitem(
1931 coreconfigitem(
1947 b'smtp',
1932 b'smtp',
1948 b'local_hostname',
1933 b'local_hostname',
1949 default=None,
1934 default=None,
1950 )
1935 )
1951 coreconfigitem(
1936 coreconfigitem(
1952 b'smtp',
1937 b'smtp',
1953 b'password',
1938 b'password',
1954 default=None,
1939 default=None,
1955 )
1940 )
1956 coreconfigitem(
1941 coreconfigitem(
1957 b'smtp',
1942 b'smtp',
1958 b'port',
1943 b'port',
1959 default=dynamicdefault,
1944 default=dynamicdefault,
1960 )
1945 )
1961 coreconfigitem(
1946 coreconfigitem(
1962 b'smtp',
1947 b'smtp',
1963 b'tls',
1948 b'tls',
1964 default=b'none',
1949 default=b'none',
1965 )
1950 )
1966 coreconfigitem(
1951 coreconfigitem(
1967 b'smtp',
1952 b'smtp',
1968 b'username',
1953 b'username',
1969 default=None,
1954 default=None,
1970 )
1955 )
1971 coreconfigitem(
1956 coreconfigitem(
1972 b'sparse',
1957 b'sparse',
1973 b'missingwarning',
1958 b'missingwarning',
1974 default=True,
1959 default=True,
1975 experimental=True,
1960 experimental=True,
1976 )
1961 )
1977 coreconfigitem(
1962 coreconfigitem(
1978 b'subrepos',
1963 b'subrepos',
1979 b'allowed',
1964 b'allowed',
1980 default=dynamicdefault, # to make backporting simpler
1965 default=dynamicdefault, # to make backporting simpler
1981 )
1966 )
1982 coreconfigitem(
1967 coreconfigitem(
1983 b'subrepos',
1968 b'subrepos',
1984 b'hg:allowed',
1969 b'hg:allowed',
1985 default=dynamicdefault,
1970 default=dynamicdefault,
1986 )
1971 )
1987 coreconfigitem(
1972 coreconfigitem(
1988 b'subrepos',
1973 b'subrepos',
1989 b'git:allowed',
1974 b'git:allowed',
1990 default=dynamicdefault,
1975 default=dynamicdefault,
1991 )
1976 )
1992 coreconfigitem(
1977 coreconfigitem(
1993 b'subrepos',
1978 b'subrepos',
1994 b'svn:allowed',
1979 b'svn:allowed',
1995 default=dynamicdefault,
1980 default=dynamicdefault,
1996 )
1981 )
1997 coreconfigitem(
1982 coreconfigitem(
1998 b'templates',
1983 b'templates',
1999 b'.*',
1984 b'.*',
2000 default=None,
1985 default=None,
2001 generic=True,
1986 generic=True,
2002 )
1987 )
2003 coreconfigitem(
1988 coreconfigitem(
2004 b'templateconfig',
1989 b'templateconfig',
2005 b'.*',
1990 b'.*',
2006 default=dynamicdefault,
1991 default=dynamicdefault,
2007 generic=True,
1992 generic=True,
2008 )
1993 )
2009 coreconfigitem(
1994 coreconfigitem(
2010 b'trusted',
1995 b'trusted',
2011 b'groups',
1996 b'groups',
2012 default=list,
1997 default=list,
2013 )
1998 )
2014 coreconfigitem(
1999 coreconfigitem(
2015 b'trusted',
2000 b'trusted',
2016 b'users',
2001 b'users',
2017 default=list,
2002 default=list,
2018 )
2003 )
2019 coreconfigitem(
2004 coreconfigitem(
2020 b'ui',
2005 b'ui',
2021 b'_usedassubrepo',
2006 b'_usedassubrepo',
2022 default=False,
2007 default=False,
2023 )
2008 )
2024 coreconfigitem(
2009 coreconfigitem(
2025 b'ui',
2010 b'ui',
2026 b'allowemptycommit',
2011 b'allowemptycommit',
2027 default=False,
2012 default=False,
2028 )
2013 )
2029 coreconfigitem(
2014 coreconfigitem(
2030 b'ui',
2015 b'ui',
2031 b'archivemeta',
2016 b'archivemeta',
2032 default=True,
2017 default=True,
2033 )
2018 )
2034 coreconfigitem(
2019 coreconfigitem(
2035 b'ui',
2020 b'ui',
2036 b'askusername',
2021 b'askusername',
2037 default=False,
2022 default=False,
2038 )
2023 )
2039 coreconfigitem(
2024 coreconfigitem(
2040 b'ui',
2025 b'ui',
2041 b'available-memory',
2026 b'available-memory',
2042 default=None,
2027 default=None,
2043 )
2028 )
2044
2029
2045 coreconfigitem(
2030 coreconfigitem(
2046 b'ui',
2031 b'ui',
2047 b'clonebundlefallback',
2032 b'clonebundlefallback',
2048 default=False,
2033 default=False,
2049 )
2034 )
2050 coreconfigitem(
2035 coreconfigitem(
2051 b'ui',
2036 b'ui',
2052 b'clonebundleprefers',
2037 b'clonebundleprefers',
2053 default=list,
2038 default=list,
2054 )
2039 )
2055 coreconfigitem(
2040 coreconfigitem(
2056 b'ui',
2041 b'ui',
2057 b'clonebundles',
2042 b'clonebundles',
2058 default=True,
2043 default=True,
2059 )
2044 )
2060 coreconfigitem(
2045 coreconfigitem(
2061 b'ui',
2046 b'ui',
2062 b'color',
2047 b'color',
2063 default=b'auto',
2048 default=b'auto',
2064 )
2049 )
2065 coreconfigitem(
2050 coreconfigitem(
2066 b'ui',
2051 b'ui',
2067 b'commitsubrepos',
2052 b'commitsubrepos',
2068 default=False,
2053 default=False,
2069 )
2054 )
2070 coreconfigitem(
2055 coreconfigitem(
2071 b'ui',
2056 b'ui',
2072 b'debug',
2057 b'debug',
2073 default=False,
2058 default=False,
2074 )
2059 )
2075 coreconfigitem(
2060 coreconfigitem(
2076 b'ui',
2061 b'ui',
2077 b'debugger',
2062 b'debugger',
2078 default=None,
2063 default=None,
2079 )
2064 )
2080 coreconfigitem(
2065 coreconfigitem(
2081 b'ui',
2066 b'ui',
2082 b'editor',
2067 b'editor',
2083 default=dynamicdefault,
2068 default=dynamicdefault,
2084 )
2069 )
2085 coreconfigitem(
2070 coreconfigitem(
2086 b'ui',
2071 b'ui',
2087 b'detailed-exit-code',
2072 b'detailed-exit-code',
2088 default=False,
2073 default=False,
2089 experimental=True,
2074 experimental=True,
2090 )
2075 )
2091 coreconfigitem(
2076 coreconfigitem(
2092 b'ui',
2077 b'ui',
2093 b'fallbackencoding',
2078 b'fallbackencoding',
2094 default=None,
2079 default=None,
2095 )
2080 )
2096 coreconfigitem(
2081 coreconfigitem(
2097 b'ui',
2082 b'ui',
2098 b'forcecwd',
2083 b'forcecwd',
2099 default=None,
2084 default=None,
2100 )
2085 )
2101 coreconfigitem(
2086 coreconfigitem(
2102 b'ui',
2087 b'ui',
2103 b'forcemerge',
2088 b'forcemerge',
2104 default=None,
2089 default=None,
2105 )
2090 )
2106 coreconfigitem(
2091 coreconfigitem(
2107 b'ui',
2092 b'ui',
2108 b'formatdebug',
2093 b'formatdebug',
2109 default=False,
2094 default=False,
2110 )
2095 )
2111 coreconfigitem(
2096 coreconfigitem(
2112 b'ui',
2097 b'ui',
2113 b'formatjson',
2098 b'formatjson',
2114 default=False,
2099 default=False,
2115 )
2100 )
2116 coreconfigitem(
2101 coreconfigitem(
2117 b'ui',
2102 b'ui',
2118 b'formatted',
2103 b'formatted',
2119 default=None,
2104 default=None,
2120 )
2105 )
2121 coreconfigitem(
2106 coreconfigitem(
2122 b'ui',
2107 b'ui',
2123 b'interactive',
2108 b'interactive',
2124 default=None,
2109 default=None,
2125 )
2110 )
2126 coreconfigitem(
2111 coreconfigitem(
2127 b'ui',
2112 b'ui',
2128 b'interface',
2113 b'interface',
2129 default=None,
2114 default=None,
2130 )
2115 )
2131 coreconfigitem(
2116 coreconfigitem(
2132 b'ui',
2117 b'ui',
2133 b'interface.chunkselector',
2118 b'interface.chunkselector',
2134 default=None,
2119 default=None,
2135 )
2120 )
2136 coreconfigitem(
2121 coreconfigitem(
2137 b'ui',
2122 b'ui',
2138 b'large-file-limit',
2123 b'large-file-limit',
2139 default=10000000,
2124 default=10000000,
2140 )
2125 )
2141 coreconfigitem(
2126 coreconfigitem(
2142 b'ui',
2127 b'ui',
2143 b'logblockedtimes',
2128 b'logblockedtimes',
2144 default=False,
2129 default=False,
2145 )
2130 )
2146 coreconfigitem(
2131 coreconfigitem(
2147 b'ui',
2132 b'ui',
2148 b'merge',
2133 b'merge',
2149 default=None,
2134 default=None,
2150 )
2135 )
2151 coreconfigitem(
2136 coreconfigitem(
2152 b'ui',
2137 b'ui',
2153 b'mergemarkers',
2138 b'mergemarkers',
2154 default=b'basic',
2139 default=b'basic',
2155 )
2140 )
2156 coreconfigitem(
2141 coreconfigitem(
2157 b'ui',
2142 b'ui',
2158 b'message-output',
2143 b'message-output',
2159 default=b'stdio',
2144 default=b'stdio',
2160 )
2145 )
2161 coreconfigitem(
2146 coreconfigitem(
2162 b'ui',
2147 b'ui',
2163 b'nontty',
2148 b'nontty',
2164 default=False,
2149 default=False,
2165 )
2150 )
2166 coreconfigitem(
2151 coreconfigitem(
2167 b'ui',
2152 b'ui',
2168 b'origbackuppath',
2153 b'origbackuppath',
2169 default=None,
2154 default=None,
2170 )
2155 )
2171 coreconfigitem(
2156 coreconfigitem(
2172 b'ui',
2157 b'ui',
2173 b'paginate',
2158 b'paginate',
2174 default=True,
2159 default=True,
2175 )
2160 )
2176 coreconfigitem(
2161 coreconfigitem(
2177 b'ui',
2162 b'ui',
2178 b'patch',
2163 b'patch',
2179 default=None,
2164 default=None,
2180 )
2165 )
2181 coreconfigitem(
2166 coreconfigitem(
2182 b'ui',
2167 b'ui',
2183 b'portablefilenames',
2168 b'portablefilenames',
2184 default=b'warn',
2169 default=b'warn',
2185 )
2170 )
2186 coreconfigitem(
2171 coreconfigitem(
2187 b'ui',
2172 b'ui',
2188 b'promptecho',
2173 b'promptecho',
2189 default=False,
2174 default=False,
2190 )
2175 )
2191 coreconfigitem(
2176 coreconfigitem(
2192 b'ui',
2177 b'ui',
2193 b'quiet',
2178 b'quiet',
2194 default=False,
2179 default=False,
2195 )
2180 )
2196 coreconfigitem(
2181 coreconfigitem(
2197 b'ui',
2182 b'ui',
2198 b'quietbookmarkmove',
2183 b'quietbookmarkmove',
2199 default=False,
2184 default=False,
2200 )
2185 )
2201 coreconfigitem(
2186 coreconfigitem(
2202 b'ui',
2187 b'ui',
2203 b'relative-paths',
2188 b'relative-paths',
2204 default=b'legacy',
2189 default=b'legacy',
2205 )
2190 )
2206 coreconfigitem(
2191 coreconfigitem(
2207 b'ui',
2192 b'ui',
2208 b'remotecmd',
2193 b'remotecmd',
2209 default=b'hg',
2194 default=b'hg',
2210 )
2195 )
2211 coreconfigitem(
2196 coreconfigitem(
2212 b'ui',
2197 b'ui',
2213 b'report_untrusted',
2198 b'report_untrusted',
2214 default=True,
2199 default=True,
2215 )
2200 )
2216 coreconfigitem(
2201 coreconfigitem(
2217 b'ui',
2202 b'ui',
2218 b'rollback',
2203 b'rollback',
2219 default=True,
2204 default=True,
2220 )
2205 )
2221 coreconfigitem(
2206 coreconfigitem(
2222 b'ui',
2207 b'ui',
2223 b'signal-safe-lock',
2208 b'signal-safe-lock',
2224 default=True,
2209 default=True,
2225 )
2210 )
2226 coreconfigitem(
2211 coreconfigitem(
2227 b'ui',
2212 b'ui',
2228 b'slash',
2213 b'slash',
2229 default=False,
2214 default=False,
2230 )
2215 )
2231 coreconfigitem(
2216 coreconfigitem(
2232 b'ui',
2217 b'ui',
2233 b'ssh',
2218 b'ssh',
2234 default=b'ssh',
2219 default=b'ssh',
2235 )
2220 )
2236 coreconfigitem(
2221 coreconfigitem(
2237 b'ui',
2222 b'ui',
2238 b'ssherrorhint',
2223 b'ssherrorhint',
2239 default=None,
2224 default=None,
2240 )
2225 )
2241 coreconfigitem(
2226 coreconfigitem(
2242 b'ui',
2227 b'ui',
2243 b'statuscopies',
2228 b'statuscopies',
2244 default=False,
2229 default=False,
2245 )
2230 )
2246 coreconfigitem(
2231 coreconfigitem(
2247 b'ui',
2232 b'ui',
2248 b'strict',
2233 b'strict',
2249 default=False,
2234 default=False,
2250 )
2235 )
2251 coreconfigitem(
2236 coreconfigitem(
2252 b'ui',
2237 b'ui',
2253 b'style',
2238 b'style',
2254 default=b'',
2239 default=b'',
2255 )
2240 )
2256 coreconfigitem(
2241 coreconfigitem(
2257 b'ui',
2242 b'ui',
2258 b'supportcontact',
2243 b'supportcontact',
2259 default=None,
2244 default=None,
2260 )
2245 )
2261 coreconfigitem(
2246 coreconfigitem(
2262 b'ui',
2247 b'ui',
2263 b'textwidth',
2248 b'textwidth',
2264 default=78,
2249 default=78,
2265 )
2250 )
2266 coreconfigitem(
2251 coreconfigitem(
2267 b'ui',
2252 b'ui',
2268 b'timeout',
2253 b'timeout',
2269 default=b'600',
2254 default=b'600',
2270 )
2255 )
2271 coreconfigitem(
2256 coreconfigitem(
2272 b'ui',
2257 b'ui',
2273 b'timeout.warn',
2258 b'timeout.warn',
2274 default=0,
2259 default=0,
2275 )
2260 )
2276 coreconfigitem(
2261 coreconfigitem(
2277 b'ui',
2262 b'ui',
2278 b'timestamp-output',
2263 b'timestamp-output',
2279 default=False,
2264 default=False,
2280 )
2265 )
2281 coreconfigitem(
2266 coreconfigitem(
2282 b'ui',
2267 b'ui',
2283 b'traceback',
2268 b'traceback',
2284 default=False,
2269 default=False,
2285 )
2270 )
2286 coreconfigitem(
2271 coreconfigitem(
2287 b'ui',
2272 b'ui',
2288 b'tweakdefaults',
2273 b'tweakdefaults',
2289 default=False,
2274 default=False,
2290 )
2275 )
2291 coreconfigitem(b'ui', b'username', alias=[(b'ui', b'user')])
2276 coreconfigitem(b'ui', b'username', alias=[(b'ui', b'user')])
2292 coreconfigitem(
2277 coreconfigitem(
2293 b'ui',
2278 b'ui',
2294 b'verbose',
2279 b'verbose',
2295 default=False,
2280 default=False,
2296 )
2281 )
2297 coreconfigitem(
2282 coreconfigitem(
2298 b'verify',
2283 b'verify',
2299 b'skipflags',
2284 b'skipflags',
2300 default=None,
2285 default=None,
2301 )
2286 )
2302 coreconfigitem(
2287 coreconfigitem(
2303 b'web',
2288 b'web',
2304 b'allowbz2',
2289 b'allowbz2',
2305 default=False,
2290 default=False,
2306 )
2291 )
2307 coreconfigitem(
2292 coreconfigitem(
2308 b'web',
2293 b'web',
2309 b'allowgz',
2294 b'allowgz',
2310 default=False,
2295 default=False,
2311 )
2296 )
2312 coreconfigitem(
2297 coreconfigitem(
2313 b'web',
2298 b'web',
2314 b'allow-pull',
2299 b'allow-pull',
2315 alias=[(b'web', b'allowpull')],
2300 alias=[(b'web', b'allowpull')],
2316 default=True,
2301 default=True,
2317 )
2302 )
2318 coreconfigitem(
2303 coreconfigitem(
2319 b'web',
2304 b'web',
2320 b'allow-push',
2305 b'allow-push',
2321 alias=[(b'web', b'allow_push')],
2306 alias=[(b'web', b'allow_push')],
2322 default=list,
2307 default=list,
2323 )
2308 )
2324 coreconfigitem(
2309 coreconfigitem(
2325 b'web',
2310 b'web',
2326 b'allowzip',
2311 b'allowzip',
2327 default=False,
2312 default=False,
2328 )
2313 )
2329 coreconfigitem(
2314 coreconfigitem(
2330 b'web',
2315 b'web',
2331 b'archivesubrepos',
2316 b'archivesubrepos',
2332 default=False,
2317 default=False,
2333 )
2318 )
2334 coreconfigitem(
2319 coreconfigitem(
2335 b'web',
2320 b'web',
2336 b'cache',
2321 b'cache',
2337 default=True,
2322 default=True,
2338 )
2323 )
2339 coreconfigitem(
2324 coreconfigitem(
2340 b'web',
2325 b'web',
2341 b'comparisoncontext',
2326 b'comparisoncontext',
2342 default=5,
2327 default=5,
2343 )
2328 )
2344 coreconfigitem(
2329 coreconfigitem(
2345 b'web',
2330 b'web',
2346 b'contact',
2331 b'contact',
2347 default=None,
2332 default=None,
2348 )
2333 )
2349 coreconfigitem(
2334 coreconfigitem(
2350 b'web',
2335 b'web',
2351 b'deny_push',
2336 b'deny_push',
2352 default=list,
2337 default=list,
2353 )
2338 )
2354 coreconfigitem(
2339 coreconfigitem(
2355 b'web',
2340 b'web',
2356 b'guessmime',
2341 b'guessmime',
2357 default=False,
2342 default=False,
2358 )
2343 )
2359 coreconfigitem(
2344 coreconfigitem(
2360 b'web',
2345 b'web',
2361 b'hidden',
2346 b'hidden',
2362 default=False,
2347 default=False,
2363 )
2348 )
2364 coreconfigitem(
2349 coreconfigitem(
2365 b'web',
2350 b'web',
2366 b'labels',
2351 b'labels',
2367 default=list,
2352 default=list,
2368 )
2353 )
2369 coreconfigitem(
2354 coreconfigitem(
2370 b'web',
2355 b'web',
2371 b'logoimg',
2356 b'logoimg',
2372 default=b'hglogo.png',
2357 default=b'hglogo.png',
2373 )
2358 )
2374 coreconfigitem(
2359 coreconfigitem(
2375 b'web',
2360 b'web',
2376 b'logourl',
2361 b'logourl',
2377 default=b'https://mercurial-scm.org/',
2362 default=b'https://mercurial-scm.org/',
2378 )
2363 )
2379 coreconfigitem(
2364 coreconfigitem(
2380 b'web',
2365 b'web',
2381 b'accesslog',
2366 b'accesslog',
2382 default=b'-',
2367 default=b'-',
2383 )
2368 )
2384 coreconfigitem(
2369 coreconfigitem(
2385 b'web',
2370 b'web',
2386 b'address',
2371 b'address',
2387 default=b'',
2372 default=b'',
2388 )
2373 )
2389 coreconfigitem(
2374 coreconfigitem(
2390 b'web',
2375 b'web',
2391 b'allow-archive',
2376 b'allow-archive',
2392 alias=[(b'web', b'allow_archive')],
2377 alias=[(b'web', b'allow_archive')],
2393 default=list,
2378 default=list,
2394 )
2379 )
2395 coreconfigitem(
2380 coreconfigitem(
2396 b'web',
2381 b'web',
2397 b'allow_read',
2382 b'allow_read',
2398 default=list,
2383 default=list,
2399 )
2384 )
2400 coreconfigitem(
2385 coreconfigitem(
2401 b'web',
2386 b'web',
2402 b'baseurl',
2387 b'baseurl',
2403 default=None,
2388 default=None,
2404 )
2389 )
2405 coreconfigitem(
2390 coreconfigitem(
2406 b'web',
2391 b'web',
2407 b'cacerts',
2392 b'cacerts',
2408 default=None,
2393 default=None,
2409 )
2394 )
2410 coreconfigitem(
2395 coreconfigitem(
2411 b'web',
2396 b'web',
2412 b'certificate',
2397 b'certificate',
2413 default=None,
2398 default=None,
2414 )
2399 )
2415 coreconfigitem(
2400 coreconfigitem(
2416 b'web',
2401 b'web',
2417 b'collapse',
2402 b'collapse',
2418 default=False,
2403 default=False,
2419 )
2404 )
2420 coreconfigitem(
2405 coreconfigitem(
2421 b'web',
2406 b'web',
2422 b'csp',
2407 b'csp',
2423 default=None,
2408 default=None,
2424 )
2409 )
2425 coreconfigitem(
2410 coreconfigitem(
2426 b'web',
2411 b'web',
2427 b'deny_read',
2412 b'deny_read',
2428 default=list,
2413 default=list,
2429 )
2414 )
2430 coreconfigitem(
2415 coreconfigitem(
2431 b'web',
2416 b'web',
2432 b'descend',
2417 b'descend',
2433 default=True,
2418 default=True,
2434 )
2419 )
2435 coreconfigitem(
2420 coreconfigitem(
2436 b'web',
2421 b'web',
2437 b'description',
2422 b'description',
2438 default=b"",
2423 default=b"",
2439 )
2424 )
2440 coreconfigitem(
2425 coreconfigitem(
2441 b'web',
2426 b'web',
2442 b'encoding',
2427 b'encoding',
2443 default=lambda: encoding.encoding,
2428 default=lambda: encoding.encoding,
2444 )
2429 )
2445 coreconfigitem(
2430 coreconfigitem(
2446 b'web',
2431 b'web',
2447 b'errorlog',
2432 b'errorlog',
2448 default=b'-',
2433 default=b'-',
2449 )
2434 )
2450 coreconfigitem(
2435 coreconfigitem(
2451 b'web',
2436 b'web',
2452 b'ipv6',
2437 b'ipv6',
2453 default=False,
2438 default=False,
2454 )
2439 )
2455 coreconfigitem(
2440 coreconfigitem(
2456 b'web',
2441 b'web',
2457 b'maxchanges',
2442 b'maxchanges',
2458 default=10,
2443 default=10,
2459 )
2444 )
2460 coreconfigitem(
2445 coreconfigitem(
2461 b'web',
2446 b'web',
2462 b'maxfiles',
2447 b'maxfiles',
2463 default=10,
2448 default=10,
2464 )
2449 )
2465 coreconfigitem(
2450 coreconfigitem(
2466 b'web',
2451 b'web',
2467 b'maxshortchanges',
2452 b'maxshortchanges',
2468 default=60,
2453 default=60,
2469 )
2454 )
2470 coreconfigitem(
2455 coreconfigitem(
2471 b'web',
2456 b'web',
2472 b'motd',
2457 b'motd',
2473 default=b'',
2458 default=b'',
2474 )
2459 )
2475 coreconfigitem(
2460 coreconfigitem(
2476 b'web',
2461 b'web',
2477 b'name',
2462 b'name',
2478 default=dynamicdefault,
2463 default=dynamicdefault,
2479 )
2464 )
2480 coreconfigitem(
2465 coreconfigitem(
2481 b'web',
2466 b'web',
2482 b'port',
2467 b'port',
2483 default=8000,
2468 default=8000,
2484 )
2469 )
2485 coreconfigitem(
2470 coreconfigitem(
2486 b'web',
2471 b'web',
2487 b'prefix',
2472 b'prefix',
2488 default=b'',
2473 default=b'',
2489 )
2474 )
2490 coreconfigitem(
2475 coreconfigitem(
2491 b'web',
2476 b'web',
2492 b'push_ssl',
2477 b'push_ssl',
2493 default=True,
2478 default=True,
2494 )
2479 )
2495 coreconfigitem(
2480 coreconfigitem(
2496 b'web',
2481 b'web',
2497 b'refreshinterval',
2482 b'refreshinterval',
2498 default=20,
2483 default=20,
2499 )
2484 )
2500 coreconfigitem(
2485 coreconfigitem(
2501 b'web',
2486 b'web',
2502 b'server-header',
2487 b'server-header',
2503 default=None,
2488 default=None,
2504 )
2489 )
2505 coreconfigitem(
2490 coreconfigitem(
2506 b'web',
2491 b'web',
2507 b'static',
2492 b'static',
2508 default=None,
2493 default=None,
2509 )
2494 )
2510 coreconfigitem(
2495 coreconfigitem(
2511 b'web',
2496 b'web',
2512 b'staticurl',
2497 b'staticurl',
2513 default=None,
2498 default=None,
2514 )
2499 )
2515 coreconfigitem(
2500 coreconfigitem(
2516 b'web',
2501 b'web',
2517 b'stripes',
2502 b'stripes',
2518 default=1,
2503 default=1,
2519 )
2504 )
2520 coreconfigitem(
2505 coreconfigitem(
2521 b'web',
2506 b'web',
2522 b'style',
2507 b'style',
2523 default=b'paper',
2508 default=b'paper',
2524 )
2509 )
2525 coreconfigitem(
2510 coreconfigitem(
2526 b'web',
2511 b'web',
2527 b'templates',
2512 b'templates',
2528 default=None,
2513 default=None,
2529 )
2514 )
2530 coreconfigitem(
2515 coreconfigitem(
2531 b'web',
2516 b'web',
2532 b'view',
2517 b'view',
2533 default=b'served',
2518 default=b'served',
2534 experimental=True,
2519 experimental=True,
2535 )
2520 )
2536 coreconfigitem(
2521 coreconfigitem(
2537 b'worker',
2522 b'worker',
2538 b'backgroundclose',
2523 b'backgroundclose',
2539 default=dynamicdefault,
2524 default=dynamicdefault,
2540 )
2525 )
2541 # Windows defaults to a limit of 512 open files. A buffer of 128
2526 # Windows defaults to a limit of 512 open files. A buffer of 128
2542 # should give us enough headway.
2527 # should give us enough headway.
2543 coreconfigitem(
2528 coreconfigitem(
2544 b'worker',
2529 b'worker',
2545 b'backgroundclosemaxqueue',
2530 b'backgroundclosemaxqueue',
2546 default=384,
2531 default=384,
2547 )
2532 )
2548 coreconfigitem(
2533 coreconfigitem(
2549 b'worker',
2534 b'worker',
2550 b'backgroundcloseminfilecount',
2535 b'backgroundcloseminfilecount',
2551 default=2048,
2536 default=2048,
2552 )
2537 )
2553 coreconfigitem(
2538 coreconfigitem(
2554 b'worker',
2539 b'worker',
2555 b'backgroundclosethreadcount',
2540 b'backgroundclosethreadcount',
2556 default=4,
2541 default=4,
2557 )
2542 )
2558 coreconfigitem(
2543 coreconfigitem(
2559 b'worker',
2544 b'worker',
2560 b'enabled',
2545 b'enabled',
2561 default=True,
2546 default=True,
2562 )
2547 )
2563 coreconfigitem(
2548 coreconfigitem(
2564 b'worker',
2549 b'worker',
2565 b'numcpus',
2550 b'numcpus',
2566 default=None,
2551 default=None,
2567 )
2552 )
2568
2553
2569 # Rebase related configuration moved to core because other extension are doing
2554 # Rebase related configuration moved to core because other extension are doing
2570 # strange things. For example, shelve import the extensions to reuse some bit
2555 # strange things. For example, shelve import the extensions to reuse some bit
2571 # without formally loading it.
2556 # without formally loading it.
2572 coreconfigitem(
2557 coreconfigitem(
2573 b'commands',
2558 b'commands',
2574 b'rebase.requiredest',
2559 b'rebase.requiredest',
2575 default=False,
2560 default=False,
2576 )
2561 )
2577 coreconfigitem(
2562 coreconfigitem(
2578 b'experimental',
2563 b'experimental',
2579 b'rebaseskipobsolete',
2564 b'rebaseskipobsolete',
2580 default=True,
2565 default=True,
2581 )
2566 )
2582 coreconfigitem(
2567 coreconfigitem(
2583 b'rebase',
2568 b'rebase',
2584 b'singletransaction',
2569 b'singletransaction',
2585 default=False,
2570 default=False,
2586 )
2571 )
2587 coreconfigitem(
2572 coreconfigitem(
2588 b'rebase',
2573 b'rebase',
2589 b'experimental.inmemory',
2574 b'experimental.inmemory',
2590 default=False,
2575 default=False,
2591 )
2576 )
General Comments 0
You need to be logged in to leave comments. Login now