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