##// END OF EJS Templates
persistent-nodemap: write down the sprint conclusion...
marmoute -
r47022:04da2ef8 default
parent child Browse files
Show More
@@ -1,2572 +1,2584 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, so
1269 # Right now, the only efficient implement of the nodemap logic is in Rust,
1270 # the persistent nodemap feature needs to stay experimental as long as the Rust
1270 #
1271 # extensions are an experimental feature.
1271 # The case was discussed that the 5.6 sprint and the following was decided for
1272 # feature that have an optional fast implementation (and are a performance
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.
1272 coreconfigitem(
1284 coreconfigitem(
1273 b'format', b'use-persistent-nodemap', default=False, experimental=True
1285 b'format', b'use-persistent-nodemap', default=False, experimental=True
1274 )
1286 )
1275 coreconfigitem(
1287 coreconfigitem(
1276 b'format',
1288 b'format',
1277 b'exp-use-copies-side-data-changeset',
1289 b'exp-use-copies-side-data-changeset',
1278 default=False,
1290 default=False,
1279 experimental=True,
1291 experimental=True,
1280 )
1292 )
1281 coreconfigitem(
1293 coreconfigitem(
1282 b'format',
1294 b'format',
1283 b'exp-use-side-data',
1295 b'exp-use-side-data',
1284 default=False,
1296 default=False,
1285 experimental=True,
1297 experimental=True,
1286 )
1298 )
1287 coreconfigitem(
1299 coreconfigitem(
1288 b'format',
1300 b'format',
1289 b'exp-share-safe',
1301 b'exp-share-safe',
1290 default=False,
1302 default=False,
1291 experimental=True,
1303 experimental=True,
1292 )
1304 )
1293 coreconfigitem(
1305 coreconfigitem(
1294 b'format',
1306 b'format',
1295 b'internal-phase',
1307 b'internal-phase',
1296 default=False,
1308 default=False,
1297 experimental=True,
1309 experimental=True,
1298 )
1310 )
1299 coreconfigitem(
1311 coreconfigitem(
1300 b'fsmonitor',
1312 b'fsmonitor',
1301 b'warn_when_unused',
1313 b'warn_when_unused',
1302 default=True,
1314 default=True,
1303 )
1315 )
1304 coreconfigitem(
1316 coreconfigitem(
1305 b'fsmonitor',
1317 b'fsmonitor',
1306 b'warn_update_file_count',
1318 b'warn_update_file_count',
1307 default=50000,
1319 default=50000,
1308 )
1320 )
1309 coreconfigitem(
1321 coreconfigitem(
1310 b'fsmonitor',
1322 b'fsmonitor',
1311 b'warn_update_file_count_rust',
1323 b'warn_update_file_count_rust',
1312 default=400000,
1324 default=400000,
1313 )
1325 )
1314 coreconfigitem(
1326 coreconfigitem(
1315 b'help',
1327 b'help',
1316 br'hidden-command\..*',
1328 br'hidden-command\..*',
1317 default=False,
1329 default=False,
1318 generic=True,
1330 generic=True,
1319 )
1331 )
1320 coreconfigitem(
1332 coreconfigitem(
1321 b'help',
1333 b'help',
1322 br'hidden-topic\..*',
1334 br'hidden-topic\..*',
1323 default=False,
1335 default=False,
1324 generic=True,
1336 generic=True,
1325 )
1337 )
1326 coreconfigitem(
1338 coreconfigitem(
1327 b'hooks',
1339 b'hooks',
1328 b'.*',
1340 b'.*',
1329 default=dynamicdefault,
1341 default=dynamicdefault,
1330 generic=True,
1342 generic=True,
1331 )
1343 )
1332 coreconfigitem(
1344 coreconfigitem(
1333 b'hgweb-paths',
1345 b'hgweb-paths',
1334 b'.*',
1346 b'.*',
1335 default=list,
1347 default=list,
1336 generic=True,
1348 generic=True,
1337 )
1349 )
1338 coreconfigitem(
1350 coreconfigitem(
1339 b'hostfingerprints',
1351 b'hostfingerprints',
1340 b'.*',
1352 b'.*',
1341 default=list,
1353 default=list,
1342 generic=True,
1354 generic=True,
1343 )
1355 )
1344 coreconfigitem(
1356 coreconfigitem(
1345 b'hostsecurity',
1357 b'hostsecurity',
1346 b'ciphers',
1358 b'ciphers',
1347 default=None,
1359 default=None,
1348 )
1360 )
1349 coreconfigitem(
1361 coreconfigitem(
1350 b'hostsecurity',
1362 b'hostsecurity',
1351 b'minimumprotocol',
1363 b'minimumprotocol',
1352 default=dynamicdefault,
1364 default=dynamicdefault,
1353 )
1365 )
1354 coreconfigitem(
1366 coreconfigitem(
1355 b'hostsecurity',
1367 b'hostsecurity',
1356 b'.*:minimumprotocol$',
1368 b'.*:minimumprotocol$',
1357 default=dynamicdefault,
1369 default=dynamicdefault,
1358 generic=True,
1370 generic=True,
1359 )
1371 )
1360 coreconfigitem(
1372 coreconfigitem(
1361 b'hostsecurity',
1373 b'hostsecurity',
1362 b'.*:ciphers$',
1374 b'.*:ciphers$',
1363 default=dynamicdefault,
1375 default=dynamicdefault,
1364 generic=True,
1376 generic=True,
1365 )
1377 )
1366 coreconfigitem(
1378 coreconfigitem(
1367 b'hostsecurity',
1379 b'hostsecurity',
1368 b'.*:fingerprints$',
1380 b'.*:fingerprints$',
1369 default=list,
1381 default=list,
1370 generic=True,
1382 generic=True,
1371 )
1383 )
1372 coreconfigitem(
1384 coreconfigitem(
1373 b'hostsecurity',
1385 b'hostsecurity',
1374 b'.*:verifycertsfile$',
1386 b'.*:verifycertsfile$',
1375 default=None,
1387 default=None,
1376 generic=True,
1388 generic=True,
1377 )
1389 )
1378
1390
1379 coreconfigitem(
1391 coreconfigitem(
1380 b'http_proxy',
1392 b'http_proxy',
1381 b'always',
1393 b'always',
1382 default=False,
1394 default=False,
1383 )
1395 )
1384 coreconfigitem(
1396 coreconfigitem(
1385 b'http_proxy',
1397 b'http_proxy',
1386 b'host',
1398 b'host',
1387 default=None,
1399 default=None,
1388 )
1400 )
1389 coreconfigitem(
1401 coreconfigitem(
1390 b'http_proxy',
1402 b'http_proxy',
1391 b'no',
1403 b'no',
1392 default=list,
1404 default=list,
1393 )
1405 )
1394 coreconfigitem(
1406 coreconfigitem(
1395 b'http_proxy',
1407 b'http_proxy',
1396 b'passwd',
1408 b'passwd',
1397 default=None,
1409 default=None,
1398 )
1410 )
1399 coreconfigitem(
1411 coreconfigitem(
1400 b'http_proxy',
1412 b'http_proxy',
1401 b'user',
1413 b'user',
1402 default=None,
1414 default=None,
1403 )
1415 )
1404
1416
1405 coreconfigitem(
1417 coreconfigitem(
1406 b'http',
1418 b'http',
1407 b'timeout',
1419 b'timeout',
1408 default=None,
1420 default=None,
1409 )
1421 )
1410
1422
1411 coreconfigitem(
1423 coreconfigitem(
1412 b'logtoprocess',
1424 b'logtoprocess',
1413 b'commandexception',
1425 b'commandexception',
1414 default=None,
1426 default=None,
1415 )
1427 )
1416 coreconfigitem(
1428 coreconfigitem(
1417 b'logtoprocess',
1429 b'logtoprocess',
1418 b'commandfinish',
1430 b'commandfinish',
1419 default=None,
1431 default=None,
1420 )
1432 )
1421 coreconfigitem(
1433 coreconfigitem(
1422 b'logtoprocess',
1434 b'logtoprocess',
1423 b'command',
1435 b'command',
1424 default=None,
1436 default=None,
1425 )
1437 )
1426 coreconfigitem(
1438 coreconfigitem(
1427 b'logtoprocess',
1439 b'logtoprocess',
1428 b'develwarn',
1440 b'develwarn',
1429 default=None,
1441 default=None,
1430 )
1442 )
1431 coreconfigitem(
1443 coreconfigitem(
1432 b'logtoprocess',
1444 b'logtoprocess',
1433 b'uiblocked',
1445 b'uiblocked',
1434 default=None,
1446 default=None,
1435 )
1447 )
1436 coreconfigitem(
1448 coreconfigitem(
1437 b'merge',
1449 b'merge',
1438 b'checkunknown',
1450 b'checkunknown',
1439 default=b'abort',
1451 default=b'abort',
1440 )
1452 )
1441 coreconfigitem(
1453 coreconfigitem(
1442 b'merge',
1454 b'merge',
1443 b'checkignored',
1455 b'checkignored',
1444 default=b'abort',
1456 default=b'abort',
1445 )
1457 )
1446 coreconfigitem(
1458 coreconfigitem(
1447 b'experimental',
1459 b'experimental',
1448 b'merge.checkpathconflicts',
1460 b'merge.checkpathconflicts',
1449 default=False,
1461 default=False,
1450 )
1462 )
1451 coreconfigitem(
1463 coreconfigitem(
1452 b'merge',
1464 b'merge',
1453 b'followcopies',
1465 b'followcopies',
1454 default=True,
1466 default=True,
1455 )
1467 )
1456 coreconfigitem(
1468 coreconfigitem(
1457 b'merge',
1469 b'merge',
1458 b'on-failure',
1470 b'on-failure',
1459 default=b'continue',
1471 default=b'continue',
1460 )
1472 )
1461 coreconfigitem(
1473 coreconfigitem(
1462 b'merge',
1474 b'merge',
1463 b'preferancestor',
1475 b'preferancestor',
1464 default=lambda: [b'*'],
1476 default=lambda: [b'*'],
1465 experimental=True,
1477 experimental=True,
1466 )
1478 )
1467 coreconfigitem(
1479 coreconfigitem(
1468 b'merge',
1480 b'merge',
1469 b'strict-capability-check',
1481 b'strict-capability-check',
1470 default=False,
1482 default=False,
1471 )
1483 )
1472 coreconfigitem(
1484 coreconfigitem(
1473 b'merge-tools',
1485 b'merge-tools',
1474 b'.*',
1486 b'.*',
1475 default=None,
1487 default=None,
1476 generic=True,
1488 generic=True,
1477 )
1489 )
1478 coreconfigitem(
1490 coreconfigitem(
1479 b'merge-tools',
1491 b'merge-tools',
1480 br'.*\.args$',
1492 br'.*\.args$',
1481 default=b"$local $base $other",
1493 default=b"$local $base $other",
1482 generic=True,
1494 generic=True,
1483 priority=-1,
1495 priority=-1,
1484 )
1496 )
1485 coreconfigitem(
1497 coreconfigitem(
1486 b'merge-tools',
1498 b'merge-tools',
1487 br'.*\.binary$',
1499 br'.*\.binary$',
1488 default=False,
1500 default=False,
1489 generic=True,
1501 generic=True,
1490 priority=-1,
1502 priority=-1,
1491 )
1503 )
1492 coreconfigitem(
1504 coreconfigitem(
1493 b'merge-tools',
1505 b'merge-tools',
1494 br'.*\.check$',
1506 br'.*\.check$',
1495 default=list,
1507 default=list,
1496 generic=True,
1508 generic=True,
1497 priority=-1,
1509 priority=-1,
1498 )
1510 )
1499 coreconfigitem(
1511 coreconfigitem(
1500 b'merge-tools',
1512 b'merge-tools',
1501 br'.*\.checkchanged$',
1513 br'.*\.checkchanged$',
1502 default=False,
1514 default=False,
1503 generic=True,
1515 generic=True,
1504 priority=-1,
1516 priority=-1,
1505 )
1517 )
1506 coreconfigitem(
1518 coreconfigitem(
1507 b'merge-tools',
1519 b'merge-tools',
1508 br'.*\.executable$',
1520 br'.*\.executable$',
1509 default=dynamicdefault,
1521 default=dynamicdefault,
1510 generic=True,
1522 generic=True,
1511 priority=-1,
1523 priority=-1,
1512 )
1524 )
1513 coreconfigitem(
1525 coreconfigitem(
1514 b'merge-tools',
1526 b'merge-tools',
1515 br'.*\.fixeol$',
1527 br'.*\.fixeol$',
1516 default=False,
1528 default=False,
1517 generic=True,
1529 generic=True,
1518 priority=-1,
1530 priority=-1,
1519 )
1531 )
1520 coreconfigitem(
1532 coreconfigitem(
1521 b'merge-tools',
1533 b'merge-tools',
1522 br'.*\.gui$',
1534 br'.*\.gui$',
1523 default=False,
1535 default=False,
1524 generic=True,
1536 generic=True,
1525 priority=-1,
1537 priority=-1,
1526 )
1538 )
1527 coreconfigitem(
1539 coreconfigitem(
1528 b'merge-tools',
1540 b'merge-tools',
1529 br'.*\.mergemarkers$',
1541 br'.*\.mergemarkers$',
1530 default=b'basic',
1542 default=b'basic',
1531 generic=True,
1543 generic=True,
1532 priority=-1,
1544 priority=-1,
1533 )
1545 )
1534 coreconfigitem(
1546 coreconfigitem(
1535 b'merge-tools',
1547 b'merge-tools',
1536 br'.*\.mergemarkertemplate$',
1548 br'.*\.mergemarkertemplate$',
1537 default=dynamicdefault, # take from command-templates.mergemarker
1549 default=dynamicdefault, # take from command-templates.mergemarker
1538 generic=True,
1550 generic=True,
1539 priority=-1,
1551 priority=-1,
1540 )
1552 )
1541 coreconfigitem(
1553 coreconfigitem(
1542 b'merge-tools',
1554 b'merge-tools',
1543 br'.*\.priority$',
1555 br'.*\.priority$',
1544 default=0,
1556 default=0,
1545 generic=True,
1557 generic=True,
1546 priority=-1,
1558 priority=-1,
1547 )
1559 )
1548 coreconfigitem(
1560 coreconfigitem(
1549 b'merge-tools',
1561 b'merge-tools',
1550 br'.*\.premerge$',
1562 br'.*\.premerge$',
1551 default=dynamicdefault,
1563 default=dynamicdefault,
1552 generic=True,
1564 generic=True,
1553 priority=-1,
1565 priority=-1,
1554 )
1566 )
1555 coreconfigitem(
1567 coreconfigitem(
1556 b'merge-tools',
1568 b'merge-tools',
1557 br'.*\.symlink$',
1569 br'.*\.symlink$',
1558 default=False,
1570 default=False,
1559 generic=True,
1571 generic=True,
1560 priority=-1,
1572 priority=-1,
1561 )
1573 )
1562 coreconfigitem(
1574 coreconfigitem(
1563 b'pager',
1575 b'pager',
1564 b'attend-.*',
1576 b'attend-.*',
1565 default=dynamicdefault,
1577 default=dynamicdefault,
1566 generic=True,
1578 generic=True,
1567 )
1579 )
1568 coreconfigitem(
1580 coreconfigitem(
1569 b'pager',
1581 b'pager',
1570 b'ignore',
1582 b'ignore',
1571 default=list,
1583 default=list,
1572 )
1584 )
1573 coreconfigitem(
1585 coreconfigitem(
1574 b'pager',
1586 b'pager',
1575 b'pager',
1587 b'pager',
1576 default=dynamicdefault,
1588 default=dynamicdefault,
1577 )
1589 )
1578 coreconfigitem(
1590 coreconfigitem(
1579 b'patch',
1591 b'patch',
1580 b'eol',
1592 b'eol',
1581 default=b'strict',
1593 default=b'strict',
1582 )
1594 )
1583 coreconfigitem(
1595 coreconfigitem(
1584 b'patch',
1596 b'patch',
1585 b'fuzz',
1597 b'fuzz',
1586 default=2,
1598 default=2,
1587 )
1599 )
1588 coreconfigitem(
1600 coreconfigitem(
1589 b'paths',
1601 b'paths',
1590 b'default',
1602 b'default',
1591 default=None,
1603 default=None,
1592 )
1604 )
1593 coreconfigitem(
1605 coreconfigitem(
1594 b'paths',
1606 b'paths',
1595 b'default-push',
1607 b'default-push',
1596 default=None,
1608 default=None,
1597 )
1609 )
1598 coreconfigitem(
1610 coreconfigitem(
1599 b'paths',
1611 b'paths',
1600 b'.*',
1612 b'.*',
1601 default=None,
1613 default=None,
1602 generic=True,
1614 generic=True,
1603 )
1615 )
1604 coreconfigitem(
1616 coreconfigitem(
1605 b'phases',
1617 b'phases',
1606 b'checksubrepos',
1618 b'checksubrepos',
1607 default=b'follow',
1619 default=b'follow',
1608 )
1620 )
1609 coreconfigitem(
1621 coreconfigitem(
1610 b'phases',
1622 b'phases',
1611 b'new-commit',
1623 b'new-commit',
1612 default=b'draft',
1624 default=b'draft',
1613 )
1625 )
1614 coreconfigitem(
1626 coreconfigitem(
1615 b'phases',
1627 b'phases',
1616 b'publish',
1628 b'publish',
1617 default=True,
1629 default=True,
1618 )
1630 )
1619 coreconfigitem(
1631 coreconfigitem(
1620 b'profiling',
1632 b'profiling',
1621 b'enabled',
1633 b'enabled',
1622 default=False,
1634 default=False,
1623 )
1635 )
1624 coreconfigitem(
1636 coreconfigitem(
1625 b'profiling',
1637 b'profiling',
1626 b'format',
1638 b'format',
1627 default=b'text',
1639 default=b'text',
1628 )
1640 )
1629 coreconfigitem(
1641 coreconfigitem(
1630 b'profiling',
1642 b'profiling',
1631 b'freq',
1643 b'freq',
1632 default=1000,
1644 default=1000,
1633 )
1645 )
1634 coreconfigitem(
1646 coreconfigitem(
1635 b'profiling',
1647 b'profiling',
1636 b'limit',
1648 b'limit',
1637 default=30,
1649 default=30,
1638 )
1650 )
1639 coreconfigitem(
1651 coreconfigitem(
1640 b'profiling',
1652 b'profiling',
1641 b'nested',
1653 b'nested',
1642 default=0,
1654 default=0,
1643 )
1655 )
1644 coreconfigitem(
1656 coreconfigitem(
1645 b'profiling',
1657 b'profiling',
1646 b'output',
1658 b'output',
1647 default=None,
1659 default=None,
1648 )
1660 )
1649 coreconfigitem(
1661 coreconfigitem(
1650 b'profiling',
1662 b'profiling',
1651 b'showmax',
1663 b'showmax',
1652 default=0.999,
1664 default=0.999,
1653 )
1665 )
1654 coreconfigitem(
1666 coreconfigitem(
1655 b'profiling',
1667 b'profiling',
1656 b'showmin',
1668 b'showmin',
1657 default=dynamicdefault,
1669 default=dynamicdefault,
1658 )
1670 )
1659 coreconfigitem(
1671 coreconfigitem(
1660 b'profiling',
1672 b'profiling',
1661 b'showtime',
1673 b'showtime',
1662 default=True,
1674 default=True,
1663 )
1675 )
1664 coreconfigitem(
1676 coreconfigitem(
1665 b'profiling',
1677 b'profiling',
1666 b'sort',
1678 b'sort',
1667 default=b'inlinetime',
1679 default=b'inlinetime',
1668 )
1680 )
1669 coreconfigitem(
1681 coreconfigitem(
1670 b'profiling',
1682 b'profiling',
1671 b'statformat',
1683 b'statformat',
1672 default=b'hotpath',
1684 default=b'hotpath',
1673 )
1685 )
1674 coreconfigitem(
1686 coreconfigitem(
1675 b'profiling',
1687 b'profiling',
1676 b'time-track',
1688 b'time-track',
1677 default=dynamicdefault,
1689 default=dynamicdefault,
1678 )
1690 )
1679 coreconfigitem(
1691 coreconfigitem(
1680 b'profiling',
1692 b'profiling',
1681 b'type',
1693 b'type',
1682 default=b'stat',
1694 default=b'stat',
1683 )
1695 )
1684 coreconfigitem(
1696 coreconfigitem(
1685 b'progress',
1697 b'progress',
1686 b'assume-tty',
1698 b'assume-tty',
1687 default=False,
1699 default=False,
1688 )
1700 )
1689 coreconfigitem(
1701 coreconfigitem(
1690 b'progress',
1702 b'progress',
1691 b'changedelay',
1703 b'changedelay',
1692 default=1,
1704 default=1,
1693 )
1705 )
1694 coreconfigitem(
1706 coreconfigitem(
1695 b'progress',
1707 b'progress',
1696 b'clear-complete',
1708 b'clear-complete',
1697 default=True,
1709 default=True,
1698 )
1710 )
1699 coreconfigitem(
1711 coreconfigitem(
1700 b'progress',
1712 b'progress',
1701 b'debug',
1713 b'debug',
1702 default=False,
1714 default=False,
1703 )
1715 )
1704 coreconfigitem(
1716 coreconfigitem(
1705 b'progress',
1717 b'progress',
1706 b'delay',
1718 b'delay',
1707 default=3,
1719 default=3,
1708 )
1720 )
1709 coreconfigitem(
1721 coreconfigitem(
1710 b'progress',
1722 b'progress',
1711 b'disable',
1723 b'disable',
1712 default=False,
1724 default=False,
1713 )
1725 )
1714 coreconfigitem(
1726 coreconfigitem(
1715 b'progress',
1727 b'progress',
1716 b'estimateinterval',
1728 b'estimateinterval',
1717 default=60.0,
1729 default=60.0,
1718 )
1730 )
1719 coreconfigitem(
1731 coreconfigitem(
1720 b'progress',
1732 b'progress',
1721 b'format',
1733 b'format',
1722 default=lambda: [b'topic', b'bar', b'number', b'estimate'],
1734 default=lambda: [b'topic', b'bar', b'number', b'estimate'],
1723 )
1735 )
1724 coreconfigitem(
1736 coreconfigitem(
1725 b'progress',
1737 b'progress',
1726 b'refresh',
1738 b'refresh',
1727 default=0.1,
1739 default=0.1,
1728 )
1740 )
1729 coreconfigitem(
1741 coreconfigitem(
1730 b'progress',
1742 b'progress',
1731 b'width',
1743 b'width',
1732 default=dynamicdefault,
1744 default=dynamicdefault,
1733 )
1745 )
1734 coreconfigitem(
1746 coreconfigitem(
1735 b'pull',
1747 b'pull',
1736 b'confirm',
1748 b'confirm',
1737 default=False,
1749 default=False,
1738 )
1750 )
1739 coreconfigitem(
1751 coreconfigitem(
1740 b'push',
1752 b'push',
1741 b'pushvars.server',
1753 b'pushvars.server',
1742 default=False,
1754 default=False,
1743 )
1755 )
1744 coreconfigitem(
1756 coreconfigitem(
1745 b'rewrite',
1757 b'rewrite',
1746 b'backup-bundle',
1758 b'backup-bundle',
1747 default=True,
1759 default=True,
1748 alias=[(b'ui', b'history-editing-backup')],
1760 alias=[(b'ui', b'history-editing-backup')],
1749 )
1761 )
1750 coreconfigitem(
1762 coreconfigitem(
1751 b'rewrite',
1763 b'rewrite',
1752 b'update-timestamp',
1764 b'update-timestamp',
1753 default=False,
1765 default=False,
1754 )
1766 )
1755 coreconfigitem(
1767 coreconfigitem(
1756 b'rewrite',
1768 b'rewrite',
1757 b'empty-successor',
1769 b'empty-successor',
1758 default=b'skip',
1770 default=b'skip',
1759 experimental=True,
1771 experimental=True,
1760 )
1772 )
1761 coreconfigitem(
1773 coreconfigitem(
1762 b'storage',
1774 b'storage',
1763 b'new-repo-backend',
1775 b'new-repo-backend',
1764 default=b'revlogv1',
1776 default=b'revlogv1',
1765 experimental=True,
1777 experimental=True,
1766 )
1778 )
1767 coreconfigitem(
1779 coreconfigitem(
1768 b'storage',
1780 b'storage',
1769 b'revlog.optimize-delta-parent-choice',
1781 b'revlog.optimize-delta-parent-choice',
1770 default=True,
1782 default=True,
1771 alias=[(b'format', b'aggressivemergedeltas')],
1783 alias=[(b'format', b'aggressivemergedeltas')],
1772 )
1784 )
1773 # experimental as long as rust is experimental (or a C version is implemented)
1785 # experimental as long as rust is experimental (or a C version is implemented)
1774 coreconfigitem(
1786 coreconfigitem(
1775 b'storage', b'revlog.nodemap.mmap', default=True, experimental=True
1787 b'storage', b'revlog.nodemap.mmap', default=True, experimental=True
1776 )
1788 )
1777 # experimental as long as format.use-persistent-nodemap is.
1789 # experimental as long as format.use-persistent-nodemap is.
1778 coreconfigitem(
1790 coreconfigitem(
1779 b'storage', b'revlog.nodemap.mode', default=b'compat', experimental=True
1791 b'storage', b'revlog.nodemap.mode', default=b'compat', experimental=True
1780 )
1792 )
1781 coreconfigitem(
1793 coreconfigitem(
1782 b'storage',
1794 b'storage',
1783 b'revlog.reuse-external-delta',
1795 b'revlog.reuse-external-delta',
1784 default=True,
1796 default=True,
1785 )
1797 )
1786 coreconfigitem(
1798 coreconfigitem(
1787 b'storage',
1799 b'storage',
1788 b'revlog.reuse-external-delta-parent',
1800 b'revlog.reuse-external-delta-parent',
1789 default=None,
1801 default=None,
1790 )
1802 )
1791 coreconfigitem(
1803 coreconfigitem(
1792 b'storage',
1804 b'storage',
1793 b'revlog.zlib.level',
1805 b'revlog.zlib.level',
1794 default=None,
1806 default=None,
1795 )
1807 )
1796 coreconfigitem(
1808 coreconfigitem(
1797 b'storage',
1809 b'storage',
1798 b'revlog.zstd.level',
1810 b'revlog.zstd.level',
1799 default=None,
1811 default=None,
1800 )
1812 )
1801 coreconfigitem(
1813 coreconfigitem(
1802 b'server',
1814 b'server',
1803 b'bookmarks-pushkey-compat',
1815 b'bookmarks-pushkey-compat',
1804 default=True,
1816 default=True,
1805 )
1817 )
1806 coreconfigitem(
1818 coreconfigitem(
1807 b'server',
1819 b'server',
1808 b'bundle1',
1820 b'bundle1',
1809 default=True,
1821 default=True,
1810 )
1822 )
1811 coreconfigitem(
1823 coreconfigitem(
1812 b'server',
1824 b'server',
1813 b'bundle1gd',
1825 b'bundle1gd',
1814 default=None,
1826 default=None,
1815 )
1827 )
1816 coreconfigitem(
1828 coreconfigitem(
1817 b'server',
1829 b'server',
1818 b'bundle1.pull',
1830 b'bundle1.pull',
1819 default=None,
1831 default=None,
1820 )
1832 )
1821 coreconfigitem(
1833 coreconfigitem(
1822 b'server',
1834 b'server',
1823 b'bundle1gd.pull',
1835 b'bundle1gd.pull',
1824 default=None,
1836 default=None,
1825 )
1837 )
1826 coreconfigitem(
1838 coreconfigitem(
1827 b'server',
1839 b'server',
1828 b'bundle1.push',
1840 b'bundle1.push',
1829 default=None,
1841 default=None,
1830 )
1842 )
1831 coreconfigitem(
1843 coreconfigitem(
1832 b'server',
1844 b'server',
1833 b'bundle1gd.push',
1845 b'bundle1gd.push',
1834 default=None,
1846 default=None,
1835 )
1847 )
1836 coreconfigitem(
1848 coreconfigitem(
1837 b'server',
1849 b'server',
1838 b'bundle2.stream',
1850 b'bundle2.stream',
1839 default=True,
1851 default=True,
1840 alias=[(b'experimental', b'bundle2.stream')],
1852 alias=[(b'experimental', b'bundle2.stream')],
1841 )
1853 )
1842 coreconfigitem(
1854 coreconfigitem(
1843 b'server',
1855 b'server',
1844 b'compressionengines',
1856 b'compressionengines',
1845 default=list,
1857 default=list,
1846 )
1858 )
1847 coreconfigitem(
1859 coreconfigitem(
1848 b'server',
1860 b'server',
1849 b'concurrent-push-mode',
1861 b'concurrent-push-mode',
1850 default=b'check-related',
1862 default=b'check-related',
1851 )
1863 )
1852 coreconfigitem(
1864 coreconfigitem(
1853 b'server',
1865 b'server',
1854 b'disablefullbundle',
1866 b'disablefullbundle',
1855 default=False,
1867 default=False,
1856 )
1868 )
1857 coreconfigitem(
1869 coreconfigitem(
1858 b'server',
1870 b'server',
1859 b'maxhttpheaderlen',
1871 b'maxhttpheaderlen',
1860 default=1024,
1872 default=1024,
1861 )
1873 )
1862 coreconfigitem(
1874 coreconfigitem(
1863 b'server',
1875 b'server',
1864 b'pullbundle',
1876 b'pullbundle',
1865 default=False,
1877 default=False,
1866 )
1878 )
1867 coreconfigitem(
1879 coreconfigitem(
1868 b'server',
1880 b'server',
1869 b'preferuncompressed',
1881 b'preferuncompressed',
1870 default=False,
1882 default=False,
1871 )
1883 )
1872 coreconfigitem(
1884 coreconfigitem(
1873 b'server',
1885 b'server',
1874 b'streamunbundle',
1886 b'streamunbundle',
1875 default=False,
1887 default=False,
1876 )
1888 )
1877 coreconfigitem(
1889 coreconfigitem(
1878 b'server',
1890 b'server',
1879 b'uncompressed',
1891 b'uncompressed',
1880 default=True,
1892 default=True,
1881 )
1893 )
1882 coreconfigitem(
1894 coreconfigitem(
1883 b'server',
1895 b'server',
1884 b'uncompressedallowsecret',
1896 b'uncompressedallowsecret',
1885 default=False,
1897 default=False,
1886 )
1898 )
1887 coreconfigitem(
1899 coreconfigitem(
1888 b'server',
1900 b'server',
1889 b'view',
1901 b'view',
1890 default=b'served',
1902 default=b'served',
1891 )
1903 )
1892 coreconfigitem(
1904 coreconfigitem(
1893 b'server',
1905 b'server',
1894 b'validate',
1906 b'validate',
1895 default=False,
1907 default=False,
1896 )
1908 )
1897 coreconfigitem(
1909 coreconfigitem(
1898 b'server',
1910 b'server',
1899 b'zliblevel',
1911 b'zliblevel',
1900 default=-1,
1912 default=-1,
1901 )
1913 )
1902 coreconfigitem(
1914 coreconfigitem(
1903 b'server',
1915 b'server',
1904 b'zstdlevel',
1916 b'zstdlevel',
1905 default=3,
1917 default=3,
1906 )
1918 )
1907 coreconfigitem(
1919 coreconfigitem(
1908 b'share',
1920 b'share',
1909 b'pool',
1921 b'pool',
1910 default=None,
1922 default=None,
1911 )
1923 )
1912 coreconfigitem(
1924 coreconfigitem(
1913 b'share',
1925 b'share',
1914 b'poolnaming',
1926 b'poolnaming',
1915 default=b'identity',
1927 default=b'identity',
1916 )
1928 )
1917 coreconfigitem(
1929 coreconfigitem(
1918 b'shelve',
1930 b'shelve',
1919 b'maxbackups',
1931 b'maxbackups',
1920 default=10,
1932 default=10,
1921 )
1933 )
1922 coreconfigitem(
1934 coreconfigitem(
1923 b'smtp',
1935 b'smtp',
1924 b'host',
1936 b'host',
1925 default=None,
1937 default=None,
1926 )
1938 )
1927 coreconfigitem(
1939 coreconfigitem(
1928 b'smtp',
1940 b'smtp',
1929 b'local_hostname',
1941 b'local_hostname',
1930 default=None,
1942 default=None,
1931 )
1943 )
1932 coreconfigitem(
1944 coreconfigitem(
1933 b'smtp',
1945 b'smtp',
1934 b'password',
1946 b'password',
1935 default=None,
1947 default=None,
1936 )
1948 )
1937 coreconfigitem(
1949 coreconfigitem(
1938 b'smtp',
1950 b'smtp',
1939 b'port',
1951 b'port',
1940 default=dynamicdefault,
1952 default=dynamicdefault,
1941 )
1953 )
1942 coreconfigitem(
1954 coreconfigitem(
1943 b'smtp',
1955 b'smtp',
1944 b'tls',
1956 b'tls',
1945 default=b'none',
1957 default=b'none',
1946 )
1958 )
1947 coreconfigitem(
1959 coreconfigitem(
1948 b'smtp',
1960 b'smtp',
1949 b'username',
1961 b'username',
1950 default=None,
1962 default=None,
1951 )
1963 )
1952 coreconfigitem(
1964 coreconfigitem(
1953 b'sparse',
1965 b'sparse',
1954 b'missingwarning',
1966 b'missingwarning',
1955 default=True,
1967 default=True,
1956 experimental=True,
1968 experimental=True,
1957 )
1969 )
1958 coreconfigitem(
1970 coreconfigitem(
1959 b'subrepos',
1971 b'subrepos',
1960 b'allowed',
1972 b'allowed',
1961 default=dynamicdefault, # to make backporting simpler
1973 default=dynamicdefault, # to make backporting simpler
1962 )
1974 )
1963 coreconfigitem(
1975 coreconfigitem(
1964 b'subrepos',
1976 b'subrepos',
1965 b'hg:allowed',
1977 b'hg:allowed',
1966 default=dynamicdefault,
1978 default=dynamicdefault,
1967 )
1979 )
1968 coreconfigitem(
1980 coreconfigitem(
1969 b'subrepos',
1981 b'subrepos',
1970 b'git:allowed',
1982 b'git:allowed',
1971 default=dynamicdefault,
1983 default=dynamicdefault,
1972 )
1984 )
1973 coreconfigitem(
1985 coreconfigitem(
1974 b'subrepos',
1986 b'subrepos',
1975 b'svn:allowed',
1987 b'svn:allowed',
1976 default=dynamicdefault,
1988 default=dynamicdefault,
1977 )
1989 )
1978 coreconfigitem(
1990 coreconfigitem(
1979 b'templates',
1991 b'templates',
1980 b'.*',
1992 b'.*',
1981 default=None,
1993 default=None,
1982 generic=True,
1994 generic=True,
1983 )
1995 )
1984 coreconfigitem(
1996 coreconfigitem(
1985 b'templateconfig',
1997 b'templateconfig',
1986 b'.*',
1998 b'.*',
1987 default=dynamicdefault,
1999 default=dynamicdefault,
1988 generic=True,
2000 generic=True,
1989 )
2001 )
1990 coreconfigitem(
2002 coreconfigitem(
1991 b'trusted',
2003 b'trusted',
1992 b'groups',
2004 b'groups',
1993 default=list,
2005 default=list,
1994 )
2006 )
1995 coreconfigitem(
2007 coreconfigitem(
1996 b'trusted',
2008 b'trusted',
1997 b'users',
2009 b'users',
1998 default=list,
2010 default=list,
1999 )
2011 )
2000 coreconfigitem(
2012 coreconfigitem(
2001 b'ui',
2013 b'ui',
2002 b'_usedassubrepo',
2014 b'_usedassubrepo',
2003 default=False,
2015 default=False,
2004 )
2016 )
2005 coreconfigitem(
2017 coreconfigitem(
2006 b'ui',
2018 b'ui',
2007 b'allowemptycommit',
2019 b'allowemptycommit',
2008 default=False,
2020 default=False,
2009 )
2021 )
2010 coreconfigitem(
2022 coreconfigitem(
2011 b'ui',
2023 b'ui',
2012 b'archivemeta',
2024 b'archivemeta',
2013 default=True,
2025 default=True,
2014 )
2026 )
2015 coreconfigitem(
2027 coreconfigitem(
2016 b'ui',
2028 b'ui',
2017 b'askusername',
2029 b'askusername',
2018 default=False,
2030 default=False,
2019 )
2031 )
2020 coreconfigitem(
2032 coreconfigitem(
2021 b'ui',
2033 b'ui',
2022 b'available-memory',
2034 b'available-memory',
2023 default=None,
2035 default=None,
2024 )
2036 )
2025
2037
2026 coreconfigitem(
2038 coreconfigitem(
2027 b'ui',
2039 b'ui',
2028 b'clonebundlefallback',
2040 b'clonebundlefallback',
2029 default=False,
2041 default=False,
2030 )
2042 )
2031 coreconfigitem(
2043 coreconfigitem(
2032 b'ui',
2044 b'ui',
2033 b'clonebundleprefers',
2045 b'clonebundleprefers',
2034 default=list,
2046 default=list,
2035 )
2047 )
2036 coreconfigitem(
2048 coreconfigitem(
2037 b'ui',
2049 b'ui',
2038 b'clonebundles',
2050 b'clonebundles',
2039 default=True,
2051 default=True,
2040 )
2052 )
2041 coreconfigitem(
2053 coreconfigitem(
2042 b'ui',
2054 b'ui',
2043 b'color',
2055 b'color',
2044 default=b'auto',
2056 default=b'auto',
2045 )
2057 )
2046 coreconfigitem(
2058 coreconfigitem(
2047 b'ui',
2059 b'ui',
2048 b'commitsubrepos',
2060 b'commitsubrepos',
2049 default=False,
2061 default=False,
2050 )
2062 )
2051 coreconfigitem(
2063 coreconfigitem(
2052 b'ui',
2064 b'ui',
2053 b'debug',
2065 b'debug',
2054 default=False,
2066 default=False,
2055 )
2067 )
2056 coreconfigitem(
2068 coreconfigitem(
2057 b'ui',
2069 b'ui',
2058 b'debugger',
2070 b'debugger',
2059 default=None,
2071 default=None,
2060 )
2072 )
2061 coreconfigitem(
2073 coreconfigitem(
2062 b'ui',
2074 b'ui',
2063 b'editor',
2075 b'editor',
2064 default=dynamicdefault,
2076 default=dynamicdefault,
2065 )
2077 )
2066 coreconfigitem(
2078 coreconfigitem(
2067 b'ui',
2079 b'ui',
2068 b'detailed-exit-code',
2080 b'detailed-exit-code',
2069 default=False,
2081 default=False,
2070 experimental=True,
2082 experimental=True,
2071 )
2083 )
2072 coreconfigitem(
2084 coreconfigitem(
2073 b'ui',
2085 b'ui',
2074 b'fallbackencoding',
2086 b'fallbackencoding',
2075 default=None,
2087 default=None,
2076 )
2088 )
2077 coreconfigitem(
2089 coreconfigitem(
2078 b'ui',
2090 b'ui',
2079 b'forcecwd',
2091 b'forcecwd',
2080 default=None,
2092 default=None,
2081 )
2093 )
2082 coreconfigitem(
2094 coreconfigitem(
2083 b'ui',
2095 b'ui',
2084 b'forcemerge',
2096 b'forcemerge',
2085 default=None,
2097 default=None,
2086 )
2098 )
2087 coreconfigitem(
2099 coreconfigitem(
2088 b'ui',
2100 b'ui',
2089 b'formatdebug',
2101 b'formatdebug',
2090 default=False,
2102 default=False,
2091 )
2103 )
2092 coreconfigitem(
2104 coreconfigitem(
2093 b'ui',
2105 b'ui',
2094 b'formatjson',
2106 b'formatjson',
2095 default=False,
2107 default=False,
2096 )
2108 )
2097 coreconfigitem(
2109 coreconfigitem(
2098 b'ui',
2110 b'ui',
2099 b'formatted',
2111 b'formatted',
2100 default=None,
2112 default=None,
2101 )
2113 )
2102 coreconfigitem(
2114 coreconfigitem(
2103 b'ui',
2115 b'ui',
2104 b'interactive',
2116 b'interactive',
2105 default=None,
2117 default=None,
2106 )
2118 )
2107 coreconfigitem(
2119 coreconfigitem(
2108 b'ui',
2120 b'ui',
2109 b'interface',
2121 b'interface',
2110 default=None,
2122 default=None,
2111 )
2123 )
2112 coreconfigitem(
2124 coreconfigitem(
2113 b'ui',
2125 b'ui',
2114 b'interface.chunkselector',
2126 b'interface.chunkselector',
2115 default=None,
2127 default=None,
2116 )
2128 )
2117 coreconfigitem(
2129 coreconfigitem(
2118 b'ui',
2130 b'ui',
2119 b'large-file-limit',
2131 b'large-file-limit',
2120 default=10000000,
2132 default=10000000,
2121 )
2133 )
2122 coreconfigitem(
2134 coreconfigitem(
2123 b'ui',
2135 b'ui',
2124 b'logblockedtimes',
2136 b'logblockedtimes',
2125 default=False,
2137 default=False,
2126 )
2138 )
2127 coreconfigitem(
2139 coreconfigitem(
2128 b'ui',
2140 b'ui',
2129 b'merge',
2141 b'merge',
2130 default=None,
2142 default=None,
2131 )
2143 )
2132 coreconfigitem(
2144 coreconfigitem(
2133 b'ui',
2145 b'ui',
2134 b'mergemarkers',
2146 b'mergemarkers',
2135 default=b'basic',
2147 default=b'basic',
2136 )
2148 )
2137 coreconfigitem(
2149 coreconfigitem(
2138 b'ui',
2150 b'ui',
2139 b'message-output',
2151 b'message-output',
2140 default=b'stdio',
2152 default=b'stdio',
2141 )
2153 )
2142 coreconfigitem(
2154 coreconfigitem(
2143 b'ui',
2155 b'ui',
2144 b'nontty',
2156 b'nontty',
2145 default=False,
2157 default=False,
2146 )
2158 )
2147 coreconfigitem(
2159 coreconfigitem(
2148 b'ui',
2160 b'ui',
2149 b'origbackuppath',
2161 b'origbackuppath',
2150 default=None,
2162 default=None,
2151 )
2163 )
2152 coreconfigitem(
2164 coreconfigitem(
2153 b'ui',
2165 b'ui',
2154 b'paginate',
2166 b'paginate',
2155 default=True,
2167 default=True,
2156 )
2168 )
2157 coreconfigitem(
2169 coreconfigitem(
2158 b'ui',
2170 b'ui',
2159 b'patch',
2171 b'patch',
2160 default=None,
2172 default=None,
2161 )
2173 )
2162 coreconfigitem(
2174 coreconfigitem(
2163 b'ui',
2175 b'ui',
2164 b'portablefilenames',
2176 b'portablefilenames',
2165 default=b'warn',
2177 default=b'warn',
2166 )
2178 )
2167 coreconfigitem(
2179 coreconfigitem(
2168 b'ui',
2180 b'ui',
2169 b'promptecho',
2181 b'promptecho',
2170 default=False,
2182 default=False,
2171 )
2183 )
2172 coreconfigitem(
2184 coreconfigitem(
2173 b'ui',
2185 b'ui',
2174 b'quiet',
2186 b'quiet',
2175 default=False,
2187 default=False,
2176 )
2188 )
2177 coreconfigitem(
2189 coreconfigitem(
2178 b'ui',
2190 b'ui',
2179 b'quietbookmarkmove',
2191 b'quietbookmarkmove',
2180 default=False,
2192 default=False,
2181 )
2193 )
2182 coreconfigitem(
2194 coreconfigitem(
2183 b'ui',
2195 b'ui',
2184 b'relative-paths',
2196 b'relative-paths',
2185 default=b'legacy',
2197 default=b'legacy',
2186 )
2198 )
2187 coreconfigitem(
2199 coreconfigitem(
2188 b'ui',
2200 b'ui',
2189 b'remotecmd',
2201 b'remotecmd',
2190 default=b'hg',
2202 default=b'hg',
2191 )
2203 )
2192 coreconfigitem(
2204 coreconfigitem(
2193 b'ui',
2205 b'ui',
2194 b'report_untrusted',
2206 b'report_untrusted',
2195 default=True,
2207 default=True,
2196 )
2208 )
2197 coreconfigitem(
2209 coreconfigitem(
2198 b'ui',
2210 b'ui',
2199 b'rollback',
2211 b'rollback',
2200 default=True,
2212 default=True,
2201 )
2213 )
2202 coreconfigitem(
2214 coreconfigitem(
2203 b'ui',
2215 b'ui',
2204 b'signal-safe-lock',
2216 b'signal-safe-lock',
2205 default=True,
2217 default=True,
2206 )
2218 )
2207 coreconfigitem(
2219 coreconfigitem(
2208 b'ui',
2220 b'ui',
2209 b'slash',
2221 b'slash',
2210 default=False,
2222 default=False,
2211 )
2223 )
2212 coreconfigitem(
2224 coreconfigitem(
2213 b'ui',
2225 b'ui',
2214 b'ssh',
2226 b'ssh',
2215 default=b'ssh',
2227 default=b'ssh',
2216 )
2228 )
2217 coreconfigitem(
2229 coreconfigitem(
2218 b'ui',
2230 b'ui',
2219 b'ssherrorhint',
2231 b'ssherrorhint',
2220 default=None,
2232 default=None,
2221 )
2233 )
2222 coreconfigitem(
2234 coreconfigitem(
2223 b'ui',
2235 b'ui',
2224 b'statuscopies',
2236 b'statuscopies',
2225 default=False,
2237 default=False,
2226 )
2238 )
2227 coreconfigitem(
2239 coreconfigitem(
2228 b'ui',
2240 b'ui',
2229 b'strict',
2241 b'strict',
2230 default=False,
2242 default=False,
2231 )
2243 )
2232 coreconfigitem(
2244 coreconfigitem(
2233 b'ui',
2245 b'ui',
2234 b'style',
2246 b'style',
2235 default=b'',
2247 default=b'',
2236 )
2248 )
2237 coreconfigitem(
2249 coreconfigitem(
2238 b'ui',
2250 b'ui',
2239 b'supportcontact',
2251 b'supportcontact',
2240 default=None,
2252 default=None,
2241 )
2253 )
2242 coreconfigitem(
2254 coreconfigitem(
2243 b'ui',
2255 b'ui',
2244 b'textwidth',
2256 b'textwidth',
2245 default=78,
2257 default=78,
2246 )
2258 )
2247 coreconfigitem(
2259 coreconfigitem(
2248 b'ui',
2260 b'ui',
2249 b'timeout',
2261 b'timeout',
2250 default=b'600',
2262 default=b'600',
2251 )
2263 )
2252 coreconfigitem(
2264 coreconfigitem(
2253 b'ui',
2265 b'ui',
2254 b'timeout.warn',
2266 b'timeout.warn',
2255 default=0,
2267 default=0,
2256 )
2268 )
2257 coreconfigitem(
2269 coreconfigitem(
2258 b'ui',
2270 b'ui',
2259 b'timestamp-output',
2271 b'timestamp-output',
2260 default=False,
2272 default=False,
2261 )
2273 )
2262 coreconfigitem(
2274 coreconfigitem(
2263 b'ui',
2275 b'ui',
2264 b'traceback',
2276 b'traceback',
2265 default=False,
2277 default=False,
2266 )
2278 )
2267 coreconfigitem(
2279 coreconfigitem(
2268 b'ui',
2280 b'ui',
2269 b'tweakdefaults',
2281 b'tweakdefaults',
2270 default=False,
2282 default=False,
2271 )
2283 )
2272 coreconfigitem(b'ui', b'username', alias=[(b'ui', b'user')])
2284 coreconfigitem(b'ui', b'username', alias=[(b'ui', b'user')])
2273 coreconfigitem(
2285 coreconfigitem(
2274 b'ui',
2286 b'ui',
2275 b'verbose',
2287 b'verbose',
2276 default=False,
2288 default=False,
2277 )
2289 )
2278 coreconfigitem(
2290 coreconfigitem(
2279 b'verify',
2291 b'verify',
2280 b'skipflags',
2292 b'skipflags',
2281 default=None,
2293 default=None,
2282 )
2294 )
2283 coreconfigitem(
2295 coreconfigitem(
2284 b'web',
2296 b'web',
2285 b'allowbz2',
2297 b'allowbz2',
2286 default=False,
2298 default=False,
2287 )
2299 )
2288 coreconfigitem(
2300 coreconfigitem(
2289 b'web',
2301 b'web',
2290 b'allowgz',
2302 b'allowgz',
2291 default=False,
2303 default=False,
2292 )
2304 )
2293 coreconfigitem(
2305 coreconfigitem(
2294 b'web',
2306 b'web',
2295 b'allow-pull',
2307 b'allow-pull',
2296 alias=[(b'web', b'allowpull')],
2308 alias=[(b'web', b'allowpull')],
2297 default=True,
2309 default=True,
2298 )
2310 )
2299 coreconfigitem(
2311 coreconfigitem(
2300 b'web',
2312 b'web',
2301 b'allow-push',
2313 b'allow-push',
2302 alias=[(b'web', b'allow_push')],
2314 alias=[(b'web', b'allow_push')],
2303 default=list,
2315 default=list,
2304 )
2316 )
2305 coreconfigitem(
2317 coreconfigitem(
2306 b'web',
2318 b'web',
2307 b'allowzip',
2319 b'allowzip',
2308 default=False,
2320 default=False,
2309 )
2321 )
2310 coreconfigitem(
2322 coreconfigitem(
2311 b'web',
2323 b'web',
2312 b'archivesubrepos',
2324 b'archivesubrepos',
2313 default=False,
2325 default=False,
2314 )
2326 )
2315 coreconfigitem(
2327 coreconfigitem(
2316 b'web',
2328 b'web',
2317 b'cache',
2329 b'cache',
2318 default=True,
2330 default=True,
2319 )
2331 )
2320 coreconfigitem(
2332 coreconfigitem(
2321 b'web',
2333 b'web',
2322 b'comparisoncontext',
2334 b'comparisoncontext',
2323 default=5,
2335 default=5,
2324 )
2336 )
2325 coreconfigitem(
2337 coreconfigitem(
2326 b'web',
2338 b'web',
2327 b'contact',
2339 b'contact',
2328 default=None,
2340 default=None,
2329 )
2341 )
2330 coreconfigitem(
2342 coreconfigitem(
2331 b'web',
2343 b'web',
2332 b'deny_push',
2344 b'deny_push',
2333 default=list,
2345 default=list,
2334 )
2346 )
2335 coreconfigitem(
2347 coreconfigitem(
2336 b'web',
2348 b'web',
2337 b'guessmime',
2349 b'guessmime',
2338 default=False,
2350 default=False,
2339 )
2351 )
2340 coreconfigitem(
2352 coreconfigitem(
2341 b'web',
2353 b'web',
2342 b'hidden',
2354 b'hidden',
2343 default=False,
2355 default=False,
2344 )
2356 )
2345 coreconfigitem(
2357 coreconfigitem(
2346 b'web',
2358 b'web',
2347 b'labels',
2359 b'labels',
2348 default=list,
2360 default=list,
2349 )
2361 )
2350 coreconfigitem(
2362 coreconfigitem(
2351 b'web',
2363 b'web',
2352 b'logoimg',
2364 b'logoimg',
2353 default=b'hglogo.png',
2365 default=b'hglogo.png',
2354 )
2366 )
2355 coreconfigitem(
2367 coreconfigitem(
2356 b'web',
2368 b'web',
2357 b'logourl',
2369 b'logourl',
2358 default=b'https://mercurial-scm.org/',
2370 default=b'https://mercurial-scm.org/',
2359 )
2371 )
2360 coreconfigitem(
2372 coreconfigitem(
2361 b'web',
2373 b'web',
2362 b'accesslog',
2374 b'accesslog',
2363 default=b'-',
2375 default=b'-',
2364 )
2376 )
2365 coreconfigitem(
2377 coreconfigitem(
2366 b'web',
2378 b'web',
2367 b'address',
2379 b'address',
2368 default=b'',
2380 default=b'',
2369 )
2381 )
2370 coreconfigitem(
2382 coreconfigitem(
2371 b'web',
2383 b'web',
2372 b'allow-archive',
2384 b'allow-archive',
2373 alias=[(b'web', b'allow_archive')],
2385 alias=[(b'web', b'allow_archive')],
2374 default=list,
2386 default=list,
2375 )
2387 )
2376 coreconfigitem(
2388 coreconfigitem(
2377 b'web',
2389 b'web',
2378 b'allow_read',
2390 b'allow_read',
2379 default=list,
2391 default=list,
2380 )
2392 )
2381 coreconfigitem(
2393 coreconfigitem(
2382 b'web',
2394 b'web',
2383 b'baseurl',
2395 b'baseurl',
2384 default=None,
2396 default=None,
2385 )
2397 )
2386 coreconfigitem(
2398 coreconfigitem(
2387 b'web',
2399 b'web',
2388 b'cacerts',
2400 b'cacerts',
2389 default=None,
2401 default=None,
2390 )
2402 )
2391 coreconfigitem(
2403 coreconfigitem(
2392 b'web',
2404 b'web',
2393 b'certificate',
2405 b'certificate',
2394 default=None,
2406 default=None,
2395 )
2407 )
2396 coreconfigitem(
2408 coreconfigitem(
2397 b'web',
2409 b'web',
2398 b'collapse',
2410 b'collapse',
2399 default=False,
2411 default=False,
2400 )
2412 )
2401 coreconfigitem(
2413 coreconfigitem(
2402 b'web',
2414 b'web',
2403 b'csp',
2415 b'csp',
2404 default=None,
2416 default=None,
2405 )
2417 )
2406 coreconfigitem(
2418 coreconfigitem(
2407 b'web',
2419 b'web',
2408 b'deny_read',
2420 b'deny_read',
2409 default=list,
2421 default=list,
2410 )
2422 )
2411 coreconfigitem(
2423 coreconfigitem(
2412 b'web',
2424 b'web',
2413 b'descend',
2425 b'descend',
2414 default=True,
2426 default=True,
2415 )
2427 )
2416 coreconfigitem(
2428 coreconfigitem(
2417 b'web',
2429 b'web',
2418 b'description',
2430 b'description',
2419 default=b"",
2431 default=b"",
2420 )
2432 )
2421 coreconfigitem(
2433 coreconfigitem(
2422 b'web',
2434 b'web',
2423 b'encoding',
2435 b'encoding',
2424 default=lambda: encoding.encoding,
2436 default=lambda: encoding.encoding,
2425 )
2437 )
2426 coreconfigitem(
2438 coreconfigitem(
2427 b'web',
2439 b'web',
2428 b'errorlog',
2440 b'errorlog',
2429 default=b'-',
2441 default=b'-',
2430 )
2442 )
2431 coreconfigitem(
2443 coreconfigitem(
2432 b'web',
2444 b'web',
2433 b'ipv6',
2445 b'ipv6',
2434 default=False,
2446 default=False,
2435 )
2447 )
2436 coreconfigitem(
2448 coreconfigitem(
2437 b'web',
2449 b'web',
2438 b'maxchanges',
2450 b'maxchanges',
2439 default=10,
2451 default=10,
2440 )
2452 )
2441 coreconfigitem(
2453 coreconfigitem(
2442 b'web',
2454 b'web',
2443 b'maxfiles',
2455 b'maxfiles',
2444 default=10,
2456 default=10,
2445 )
2457 )
2446 coreconfigitem(
2458 coreconfigitem(
2447 b'web',
2459 b'web',
2448 b'maxshortchanges',
2460 b'maxshortchanges',
2449 default=60,
2461 default=60,
2450 )
2462 )
2451 coreconfigitem(
2463 coreconfigitem(
2452 b'web',
2464 b'web',
2453 b'motd',
2465 b'motd',
2454 default=b'',
2466 default=b'',
2455 )
2467 )
2456 coreconfigitem(
2468 coreconfigitem(
2457 b'web',
2469 b'web',
2458 b'name',
2470 b'name',
2459 default=dynamicdefault,
2471 default=dynamicdefault,
2460 )
2472 )
2461 coreconfigitem(
2473 coreconfigitem(
2462 b'web',
2474 b'web',
2463 b'port',
2475 b'port',
2464 default=8000,
2476 default=8000,
2465 )
2477 )
2466 coreconfigitem(
2478 coreconfigitem(
2467 b'web',
2479 b'web',
2468 b'prefix',
2480 b'prefix',
2469 default=b'',
2481 default=b'',
2470 )
2482 )
2471 coreconfigitem(
2483 coreconfigitem(
2472 b'web',
2484 b'web',
2473 b'push_ssl',
2485 b'push_ssl',
2474 default=True,
2486 default=True,
2475 )
2487 )
2476 coreconfigitem(
2488 coreconfigitem(
2477 b'web',
2489 b'web',
2478 b'refreshinterval',
2490 b'refreshinterval',
2479 default=20,
2491 default=20,
2480 )
2492 )
2481 coreconfigitem(
2493 coreconfigitem(
2482 b'web',
2494 b'web',
2483 b'server-header',
2495 b'server-header',
2484 default=None,
2496 default=None,
2485 )
2497 )
2486 coreconfigitem(
2498 coreconfigitem(
2487 b'web',
2499 b'web',
2488 b'static',
2500 b'static',
2489 default=None,
2501 default=None,
2490 )
2502 )
2491 coreconfigitem(
2503 coreconfigitem(
2492 b'web',
2504 b'web',
2493 b'staticurl',
2505 b'staticurl',
2494 default=None,
2506 default=None,
2495 )
2507 )
2496 coreconfigitem(
2508 coreconfigitem(
2497 b'web',
2509 b'web',
2498 b'stripes',
2510 b'stripes',
2499 default=1,
2511 default=1,
2500 )
2512 )
2501 coreconfigitem(
2513 coreconfigitem(
2502 b'web',
2514 b'web',
2503 b'style',
2515 b'style',
2504 default=b'paper',
2516 default=b'paper',
2505 )
2517 )
2506 coreconfigitem(
2518 coreconfigitem(
2507 b'web',
2519 b'web',
2508 b'templates',
2520 b'templates',
2509 default=None,
2521 default=None,
2510 )
2522 )
2511 coreconfigitem(
2523 coreconfigitem(
2512 b'web',
2524 b'web',
2513 b'view',
2525 b'view',
2514 default=b'served',
2526 default=b'served',
2515 experimental=True,
2527 experimental=True,
2516 )
2528 )
2517 coreconfigitem(
2529 coreconfigitem(
2518 b'worker',
2530 b'worker',
2519 b'backgroundclose',
2531 b'backgroundclose',
2520 default=dynamicdefault,
2532 default=dynamicdefault,
2521 )
2533 )
2522 # Windows defaults to a limit of 512 open files. A buffer of 128
2534 # Windows defaults to a limit of 512 open files. A buffer of 128
2523 # should give us enough headway.
2535 # should give us enough headway.
2524 coreconfigitem(
2536 coreconfigitem(
2525 b'worker',
2537 b'worker',
2526 b'backgroundclosemaxqueue',
2538 b'backgroundclosemaxqueue',
2527 default=384,
2539 default=384,
2528 )
2540 )
2529 coreconfigitem(
2541 coreconfigitem(
2530 b'worker',
2542 b'worker',
2531 b'backgroundcloseminfilecount',
2543 b'backgroundcloseminfilecount',
2532 default=2048,
2544 default=2048,
2533 )
2545 )
2534 coreconfigitem(
2546 coreconfigitem(
2535 b'worker',
2547 b'worker',
2536 b'backgroundclosethreadcount',
2548 b'backgroundclosethreadcount',
2537 default=4,
2549 default=4,
2538 )
2550 )
2539 coreconfigitem(
2551 coreconfigitem(
2540 b'worker',
2552 b'worker',
2541 b'enabled',
2553 b'enabled',
2542 default=True,
2554 default=True,
2543 )
2555 )
2544 coreconfigitem(
2556 coreconfigitem(
2545 b'worker',
2557 b'worker',
2546 b'numcpus',
2558 b'numcpus',
2547 default=None,
2559 default=None,
2548 )
2560 )
2549
2561
2550 # Rebase related configuration moved to core because other extension are doing
2562 # Rebase related configuration moved to core because other extension are doing
2551 # strange things. For example, shelve import the extensions to reuse some bit
2563 # strange things. For example, shelve import the extensions to reuse some bit
2552 # without formally loading it.
2564 # without formally loading it.
2553 coreconfigitem(
2565 coreconfigitem(
2554 b'commands',
2566 b'commands',
2555 b'rebase.requiredest',
2567 b'rebase.requiredest',
2556 default=False,
2568 default=False,
2557 )
2569 )
2558 coreconfigitem(
2570 coreconfigitem(
2559 b'experimental',
2571 b'experimental',
2560 b'rebaseskipobsolete',
2572 b'rebaseskipobsolete',
2561 default=True,
2573 default=True,
2562 )
2574 )
2563 coreconfigitem(
2575 coreconfigitem(
2564 b'rebase',
2576 b'rebase',
2565 b'singletransaction',
2577 b'singletransaction',
2566 default=False,
2578 default=False,
2567 )
2579 )
2568 coreconfigitem(
2580 coreconfigitem(
2569 b'rebase',
2581 b'rebase',
2570 b'experimental.inmemory',
2582 b'experimental.inmemory',
2571 default=False,
2583 default=False,
2572 )
2584 )
General Comments 0
You need to be logged in to leave comments. Login now