##// END OF EJS Templates
configitems: fix registration of extensions config...
Boris Feld -
r34769:2b954c9c default
parent child Browse files
Show More
@@ -1,996 +1,996 b''
1 # configitems.py - centralized declaration of configuration option
1 # configitems.py - centralized declaration of configuration option
2 #
2 #
3 # Copyright 2017 Pierre-Yves David <pierre-yves.david@octobus.net>
3 # Copyright 2017 Pierre-Yves David <pierre-yves.david@octobus.net>
4 #
4 #
5 # This software may be used and distributed according to the terms of the
5 # This software may be used and distributed according to the terms of the
6 # GNU General Public License version 2 or any later version.
6 # GNU General Public License version 2 or any later version.
7
7
8 from __future__ import absolute_import
8 from __future__ import absolute_import
9
9
10 import functools
10 import functools
11 import re
11 import re
12
12
13 from . import (
13 from . import (
14 encoding,
14 encoding,
15 error,
15 error,
16 )
16 )
17
17
18 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 configtable.items():
20 for section, items in configtable.items():
21 knownitems = ui._knownconfig.setdefault(section, {})
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 = "extension '%s' overwrite config item '%s.%s'"
25 msg = "extension '%s' overwrite config item '%s.%s'"
26 msg %= (extname, section, key)
26 msg %= (extname, section, key)
27 ui.develwarn(msg, config='warn-config')
27 ui.develwarn(msg, config='warn-config')
28
28
29 knownitems.update(items)
29 knownitems.update(items)
30
30
31 class configitem(object):
31 class configitem(object):
32 """represent a known config item
32 """represent a known config item
33
33
34 :section: the official config section where to find this item,
34 :section: the official config section where to find this item,
35 :name: the official name within the section,
35 :name: the official name within the section,
36 :default: default value for this item,
36 :default: default value for this item,
37 :alias: optional list of tuples as alternatives,
37 :alias: optional list of tuples as alternatives,
38 :generic: this is a generic definition, match name using regular expression.
38 :generic: this is a generic definition, match name using regular expression.
39 """
39 """
40
40
41 def __init__(self, section, name, default=None, alias=(),
41 def __init__(self, section, name, default=None, alias=(),
42 generic=False, priority=0):
42 generic=False, priority=0):
43 self.section = section
43 self.section = section
44 self.name = name
44 self.name = name
45 self.default = default
45 self.default = default
46 self.alias = list(alias)
46 self.alias = list(alias)
47 self.generic = generic
47 self.generic = generic
48 self.priority = priority
48 self.priority = priority
49 self._re = None
49 self._re = None
50 if generic:
50 if generic:
51 self._re = re.compile(self.name)
51 self._re = re.compile(self.name)
52
52
53 class itemregister(dict):
53 class itemregister(dict):
54 """A specialized dictionary that can handle wild-card selection"""
54 """A specialized dictionary that can handle wild-card selection"""
55
55
56 def __init__(self):
56 def __init__(self):
57 super(itemregister, self).__init__()
57 super(itemregister, self).__init__()
58 self._generics = set()
58 self._generics = set()
59
59
60 def update(self, other):
60 def update(self, other):
61 super(itemregister, self).update(other)
61 super(itemregister, self).update(other)
62 self._generics.update(other._generics)
62 self._generics.update(other._generics)
63
63
64 def __setitem__(self, key, item):
64 def __setitem__(self, key, item):
65 super(itemregister, self).__setitem__(key, item)
65 super(itemregister, self).__setitem__(key, item)
66 if item.generic:
66 if item.generic:
67 self._generics.add(item)
67 self._generics.add(item)
68
68
69 def get(self, key):
69 def get(self, key):
70 if key in self:
70 if key in self:
71 return self[key]
71 return self[key]
72
72
73 # search for a matching generic item
73 # search for a matching generic item
74 generics = sorted(self._generics, key=(lambda x: (x.priority, x.name)))
74 generics = sorted(self._generics, key=(lambda x: (x.priority, x.name)))
75 for item in generics:
75 for item in generics:
76 if item._re.match(key):
76 if item._re.match(key):
77 return item
77 return item
78
78
79 # fallback to dict get
79 # fallback to dict get
80 return super(itemregister, self).get(key)
80 return super(itemregister, self).get(key)
81
81
82 coreitems = {}
82 coreitems = {}
83
83
84 def _register(configtable, *args, **kwargs):
84 def _register(configtable, *args, **kwargs):
85 item = configitem(*args, **kwargs)
85 item = configitem(*args, **kwargs)
86 section = configtable.setdefault(item.section, itemregister())
86 section = configtable.setdefault(item.section, itemregister())
87 if item.name in section:
87 if item.name in section:
88 msg = "duplicated config item registration for '%s.%s'"
88 msg = "duplicated config item registration for '%s.%s'"
89 raise error.ProgrammingError(msg % (item.section, item.name))
89 raise error.ProgrammingError(msg % (item.section, item.name))
90 section[item.name] = item
90 section[item.name] = item
91
91
92 # special value for case where the default is derived from other values
92 # special value for case where the default is derived from other values
93 dynamicdefault = object()
93 dynamicdefault = object()
94
94
95 # Registering actual config items
95 # Registering actual config items
96
96
97 def getitemregister(configtable):
97 def getitemregister(configtable):
98 return functools.partial(_register, configtable)
98 return functools.partial(_register, configtable)
99
99
100 coreconfigitem = getitemregister(coreitems)
100 coreconfigitem = getitemregister(coreitems)
101
101
102 coreconfigitem('alias', '.*',
102 coreconfigitem('alias', '.*',
103 default=None,
103 default=None,
104 generic=True,
104 generic=True,
105 )
105 )
106 coreconfigitem('annotate', 'nodates',
106 coreconfigitem('annotate', 'nodates',
107 default=False,
107 default=False,
108 )
108 )
109 coreconfigitem('annotate', 'showfunc',
109 coreconfigitem('annotate', 'showfunc',
110 default=False,
110 default=False,
111 )
111 )
112 coreconfigitem('annotate', 'unified',
112 coreconfigitem('annotate', 'unified',
113 default=None,
113 default=None,
114 )
114 )
115 coreconfigitem('annotate', 'git',
115 coreconfigitem('annotate', 'git',
116 default=False,
116 default=False,
117 )
117 )
118 coreconfigitem('annotate', 'ignorews',
118 coreconfigitem('annotate', 'ignorews',
119 default=False,
119 default=False,
120 )
120 )
121 coreconfigitem('annotate', 'ignorewsamount',
121 coreconfigitem('annotate', 'ignorewsamount',
122 default=False,
122 default=False,
123 )
123 )
124 coreconfigitem('annotate', 'ignoreblanklines',
124 coreconfigitem('annotate', 'ignoreblanklines',
125 default=False,
125 default=False,
126 )
126 )
127 coreconfigitem('annotate', 'ignorewseol',
127 coreconfigitem('annotate', 'ignorewseol',
128 default=False,
128 default=False,
129 )
129 )
130 coreconfigitem('annotate', 'nobinary',
130 coreconfigitem('annotate', 'nobinary',
131 default=False,
131 default=False,
132 )
132 )
133 coreconfigitem('annotate', 'noprefix',
133 coreconfigitem('annotate', 'noprefix',
134 default=False,
134 default=False,
135 )
135 )
136 coreconfigitem('auth', 'cookiefile',
136 coreconfigitem('auth', 'cookiefile',
137 default=None,
137 default=None,
138 )
138 )
139 # bookmarks.pushing: internal hack for discovery
139 # bookmarks.pushing: internal hack for discovery
140 coreconfigitem('bookmarks', 'pushing',
140 coreconfigitem('bookmarks', 'pushing',
141 default=list,
141 default=list,
142 )
142 )
143 # bundle.mainreporoot: internal hack for bundlerepo
143 # bundle.mainreporoot: internal hack for bundlerepo
144 coreconfigitem('bundle', 'mainreporoot',
144 coreconfigitem('bundle', 'mainreporoot',
145 default='',
145 default='',
146 )
146 )
147 # bundle.reorder: experimental config
147 # bundle.reorder: experimental config
148 coreconfigitem('bundle', 'reorder',
148 coreconfigitem('bundle', 'reorder',
149 default='auto',
149 default='auto',
150 )
150 )
151 coreconfigitem('censor', 'policy',
151 coreconfigitem('censor', 'policy',
152 default='abort',
152 default='abort',
153 )
153 )
154 coreconfigitem('chgserver', 'idletimeout',
154 coreconfigitem('chgserver', 'idletimeout',
155 default=3600,
155 default=3600,
156 )
156 )
157 coreconfigitem('chgserver', 'skiphash',
157 coreconfigitem('chgserver', 'skiphash',
158 default=False,
158 default=False,
159 )
159 )
160 coreconfigitem('cmdserver', 'log',
160 coreconfigitem('cmdserver', 'log',
161 default=None,
161 default=None,
162 )
162 )
163 coreconfigitem('color', '.*',
163 coreconfigitem('color', '.*',
164 default=None,
164 default=None,
165 generic=True,
165 generic=True,
166 )
166 )
167 coreconfigitem('color', 'mode',
167 coreconfigitem('color', 'mode',
168 default='auto',
168 default='auto',
169 )
169 )
170 coreconfigitem('color', 'pagermode',
170 coreconfigitem('color', 'pagermode',
171 default=dynamicdefault,
171 default=dynamicdefault,
172 )
172 )
173 coreconfigitem('commands', 'status.relative',
173 coreconfigitem('commands', 'status.relative',
174 default=False,
174 default=False,
175 )
175 )
176 coreconfigitem('commands', 'status.skipstates',
176 coreconfigitem('commands', 'status.skipstates',
177 default=[],
177 default=[],
178 )
178 )
179 coreconfigitem('commands', 'status.verbose',
179 coreconfigitem('commands', 'status.verbose',
180 default=False,
180 default=False,
181 )
181 )
182 coreconfigitem('commands', 'update.check',
182 coreconfigitem('commands', 'update.check',
183 default=None,
183 default=None,
184 )
184 )
185 coreconfigitem('commands', 'update.requiredest',
185 coreconfigitem('commands', 'update.requiredest',
186 default=False,
186 default=False,
187 )
187 )
188 coreconfigitem('committemplate', '.*',
188 coreconfigitem('committemplate', '.*',
189 default=None,
189 default=None,
190 generic=True,
190 generic=True,
191 )
191 )
192 coreconfigitem('debug', 'dirstate.delaywrite',
192 coreconfigitem('debug', 'dirstate.delaywrite',
193 default=0,
193 default=0,
194 )
194 )
195 coreconfigitem('defaults', '.*',
195 coreconfigitem('defaults', '.*',
196 default=None,
196 default=None,
197 generic=True,
197 generic=True,
198 )
198 )
199 coreconfigitem('devel', 'all-warnings',
199 coreconfigitem('devel', 'all-warnings',
200 default=False,
200 default=False,
201 )
201 )
202 coreconfigitem('devel', 'bundle2.debug',
202 coreconfigitem('devel', 'bundle2.debug',
203 default=False,
203 default=False,
204 )
204 )
205 coreconfigitem('devel', 'cache-vfs',
205 coreconfigitem('devel', 'cache-vfs',
206 default=None,
206 default=None,
207 )
207 )
208 coreconfigitem('devel', 'check-locks',
208 coreconfigitem('devel', 'check-locks',
209 default=False,
209 default=False,
210 )
210 )
211 coreconfigitem('devel', 'check-relroot',
211 coreconfigitem('devel', 'check-relroot',
212 default=False,
212 default=False,
213 )
213 )
214 coreconfigitem('devel', 'default-date',
214 coreconfigitem('devel', 'default-date',
215 default=None,
215 default=None,
216 )
216 )
217 coreconfigitem('devel', 'deprec-warn',
217 coreconfigitem('devel', 'deprec-warn',
218 default=False,
218 default=False,
219 )
219 )
220 coreconfigitem('devel', 'disableloaddefaultcerts',
220 coreconfigitem('devel', 'disableloaddefaultcerts',
221 default=False,
221 default=False,
222 )
222 )
223 coreconfigitem('devel', 'warn-empty-changegroup',
223 coreconfigitem('devel', 'warn-empty-changegroup',
224 default=False,
224 default=False,
225 )
225 )
226 coreconfigitem('devel', 'legacy.exchange',
226 coreconfigitem('devel', 'legacy.exchange',
227 default=list,
227 default=list,
228 )
228 )
229 coreconfigitem('devel', 'servercafile',
229 coreconfigitem('devel', 'servercafile',
230 default='',
230 default='',
231 )
231 )
232 coreconfigitem('devel', 'serverexactprotocol',
232 coreconfigitem('devel', 'serverexactprotocol',
233 default='',
233 default='',
234 )
234 )
235 coreconfigitem('devel', 'serverrequirecert',
235 coreconfigitem('devel', 'serverrequirecert',
236 default=False,
236 default=False,
237 )
237 )
238 coreconfigitem('devel', 'strip-obsmarkers',
238 coreconfigitem('devel', 'strip-obsmarkers',
239 default=True,
239 default=True,
240 )
240 )
241 coreconfigitem('devel', 'warn-config',
241 coreconfigitem('devel', 'warn-config',
242 default=None,
242 default=None,
243 )
243 )
244 coreconfigitem('devel', 'warn-config-default',
244 coreconfigitem('devel', 'warn-config-default',
245 default=None,
245 default=None,
246 )
246 )
247 coreconfigitem('devel', 'user.obsmarker',
247 coreconfigitem('devel', 'user.obsmarker',
248 default=None,
248 default=None,
249 )
249 )
250 coreconfigitem('diff', 'nodates',
250 coreconfigitem('diff', 'nodates',
251 default=False,
251 default=False,
252 )
252 )
253 coreconfigitem('diff', 'showfunc',
253 coreconfigitem('diff', 'showfunc',
254 default=False,
254 default=False,
255 )
255 )
256 coreconfigitem('diff', 'unified',
256 coreconfigitem('diff', 'unified',
257 default=None,
257 default=None,
258 )
258 )
259 coreconfigitem('diff', 'git',
259 coreconfigitem('diff', 'git',
260 default=False,
260 default=False,
261 )
261 )
262 coreconfigitem('diff', 'ignorews',
262 coreconfigitem('diff', 'ignorews',
263 default=False,
263 default=False,
264 )
264 )
265 coreconfigitem('diff', 'ignorewsamount',
265 coreconfigitem('diff', 'ignorewsamount',
266 default=False,
266 default=False,
267 )
267 )
268 coreconfigitem('diff', 'ignoreblanklines',
268 coreconfigitem('diff', 'ignoreblanklines',
269 default=False,
269 default=False,
270 )
270 )
271 coreconfigitem('diff', 'ignorewseol',
271 coreconfigitem('diff', 'ignorewseol',
272 default=False,
272 default=False,
273 )
273 )
274 coreconfigitem('diff', 'nobinary',
274 coreconfigitem('diff', 'nobinary',
275 default=False,
275 default=False,
276 )
276 )
277 coreconfigitem('diff', 'noprefix',
277 coreconfigitem('diff', 'noprefix',
278 default=False,
278 default=False,
279 )
279 )
280 coreconfigitem('email', 'bcc',
280 coreconfigitem('email', 'bcc',
281 default=None,
281 default=None,
282 )
282 )
283 coreconfigitem('email', 'cc',
283 coreconfigitem('email', 'cc',
284 default=None,
284 default=None,
285 )
285 )
286 coreconfigitem('email', 'charsets',
286 coreconfigitem('email', 'charsets',
287 default=list,
287 default=list,
288 )
288 )
289 coreconfigitem('email', 'from',
289 coreconfigitem('email', 'from',
290 default=None,
290 default=None,
291 )
291 )
292 coreconfigitem('email', 'method',
292 coreconfigitem('email', 'method',
293 default='smtp',
293 default='smtp',
294 )
294 )
295 coreconfigitem('email', 'reply-to',
295 coreconfigitem('email', 'reply-to',
296 default=None,
296 default=None,
297 )
297 )
298 coreconfigitem('experimental', 'allowdivergence',
298 coreconfigitem('experimental', 'allowdivergence',
299 default=False,
299 default=False,
300 )
300 )
301 coreconfigitem('experimental', 'archivemetatemplate',
301 coreconfigitem('experimental', 'archivemetatemplate',
302 default=dynamicdefault,
302 default=dynamicdefault,
303 )
303 )
304 coreconfigitem('experimental', 'bundle-phases',
304 coreconfigitem('experimental', 'bundle-phases',
305 default=False,
305 default=False,
306 )
306 )
307 coreconfigitem('experimental', 'bundle2-advertise',
307 coreconfigitem('experimental', 'bundle2-advertise',
308 default=True,
308 default=True,
309 )
309 )
310 coreconfigitem('experimental', 'bundle2-output-capture',
310 coreconfigitem('experimental', 'bundle2-output-capture',
311 default=False,
311 default=False,
312 )
312 )
313 coreconfigitem('experimental', 'bundle2.pushback',
313 coreconfigitem('experimental', 'bundle2.pushback',
314 default=False,
314 default=False,
315 )
315 )
316 coreconfigitem('experimental', 'bundle2lazylocking',
316 coreconfigitem('experimental', 'bundle2lazylocking',
317 default=False,
317 default=False,
318 )
318 )
319 coreconfigitem('experimental', 'bundlecomplevel',
319 coreconfigitem('experimental', 'bundlecomplevel',
320 default=None,
320 default=None,
321 )
321 )
322 coreconfigitem('experimental', 'changegroup3',
322 coreconfigitem('experimental', 'changegroup3',
323 default=False,
323 default=False,
324 )
324 )
325 coreconfigitem('experimental', 'clientcompressionengines',
325 coreconfigitem('experimental', 'clientcompressionengines',
326 default=list,
326 default=list,
327 )
327 )
328 coreconfigitem('experimental', 'copytrace',
328 coreconfigitem('experimental', 'copytrace',
329 default='on',
329 default='on',
330 )
330 )
331 coreconfigitem('experimental', 'copytrace.sourcecommitlimit',
331 coreconfigitem('experimental', 'copytrace.sourcecommitlimit',
332 default=100,
332 default=100,
333 )
333 )
334 coreconfigitem('experimental', 'crecordtest',
334 coreconfigitem('experimental', 'crecordtest',
335 default=None,
335 default=None,
336 )
336 )
337 coreconfigitem('experimental', 'editortmpinhg',
337 coreconfigitem('experimental', 'editortmpinhg',
338 default=False,
338 default=False,
339 )
339 )
340 coreconfigitem('experimental', 'maxdeltachainspan',
340 coreconfigitem('experimental', 'maxdeltachainspan',
341 default=-1,
341 default=-1,
342 )
342 )
343 coreconfigitem('experimental', 'mmapindexthreshold',
343 coreconfigitem('experimental', 'mmapindexthreshold',
344 default=None,
344 default=None,
345 )
345 )
346 coreconfigitem('experimental', 'nonnormalparanoidcheck',
346 coreconfigitem('experimental', 'nonnormalparanoidcheck',
347 default=False,
347 default=False,
348 )
348 )
349 coreconfigitem('experimental', 'stabilization',
349 coreconfigitem('experimental', 'stabilization',
350 default=list,
350 default=list,
351 alias=[('experimental', 'evolution')],
351 alias=[('experimental', 'evolution')],
352 )
352 )
353 coreconfigitem('experimental', 'stabilization.bundle-obsmarker',
353 coreconfigitem('experimental', 'stabilization.bundle-obsmarker',
354 default=False,
354 default=False,
355 alias=[('experimental', 'evolution.bundle-obsmarker')],
355 alias=[('experimental', 'evolution.bundle-obsmarker')],
356 )
356 )
357 coreconfigitem('experimental', 'stabilization.track-operation',
357 coreconfigitem('experimental', 'stabilization.track-operation',
358 default=True,
358 default=True,
359 alias=[('experimental', 'evolution.track-operation')]
359 alias=[('experimental', 'evolution.track-operation')]
360 )
360 )
361 coreconfigitem('experimental', 'exportableenviron',
361 coreconfigitem('experimental', 'exportableenviron',
362 default=list,
362 default=list,
363 )
363 )
364 coreconfigitem('experimental', 'extendedheader.index',
364 coreconfigitem('experimental', 'extendedheader.index',
365 default=None,
365 default=None,
366 )
366 )
367 coreconfigitem('experimental', 'extendedheader.similarity',
367 coreconfigitem('experimental', 'extendedheader.similarity',
368 default=False,
368 default=False,
369 )
369 )
370 coreconfigitem('experimental', 'format.compression',
370 coreconfigitem('experimental', 'format.compression',
371 default='zlib',
371 default='zlib',
372 )
372 )
373 coreconfigitem('experimental', 'graphshorten',
373 coreconfigitem('experimental', 'graphshorten',
374 default=False,
374 default=False,
375 )
375 )
376 coreconfigitem('experimental', 'graphstyle.parent',
376 coreconfigitem('experimental', 'graphstyle.parent',
377 default=dynamicdefault,
377 default=dynamicdefault,
378 )
378 )
379 coreconfigitem('experimental', 'graphstyle.missing',
379 coreconfigitem('experimental', 'graphstyle.missing',
380 default=dynamicdefault,
380 default=dynamicdefault,
381 )
381 )
382 coreconfigitem('experimental', 'graphstyle.grandparent',
382 coreconfigitem('experimental', 'graphstyle.grandparent',
383 default=dynamicdefault,
383 default=dynamicdefault,
384 )
384 )
385 coreconfigitem('experimental', 'hook-track-tags',
385 coreconfigitem('experimental', 'hook-track-tags',
386 default=False,
386 default=False,
387 )
387 )
388 coreconfigitem('experimental', 'httppostargs',
388 coreconfigitem('experimental', 'httppostargs',
389 default=False,
389 default=False,
390 )
390 )
391 coreconfigitem('experimental', 'manifestv2',
391 coreconfigitem('experimental', 'manifestv2',
392 default=False,
392 default=False,
393 )
393 )
394 coreconfigitem('experimental', 'mergedriver',
394 coreconfigitem('experimental', 'mergedriver',
395 default=None,
395 default=None,
396 )
396 )
397 coreconfigitem('experimental', 'obsmarkers-exchange-debug',
397 coreconfigitem('experimental', 'obsmarkers-exchange-debug',
398 default=False,
398 default=False,
399 )
399 )
400 coreconfigitem('experimental', 'rebase.multidest',
400 coreconfigitem('experimental', 'rebase.multidest',
401 default=False,
401 default=False,
402 )
402 )
403 coreconfigitem('experimental', 'revertalternateinteractivemode',
403 coreconfigitem('experimental', 'revertalternateinteractivemode',
404 default=True,
404 default=True,
405 )
405 )
406 coreconfigitem('experimental', 'revlogv2',
406 coreconfigitem('experimental', 'revlogv2',
407 default=None,
407 default=None,
408 )
408 )
409 coreconfigitem('experimental', 'spacemovesdown',
409 coreconfigitem('experimental', 'spacemovesdown',
410 default=False,
410 default=False,
411 )
411 )
412 coreconfigitem('experimental', 'treemanifest',
412 coreconfigitem('experimental', 'treemanifest',
413 default=False,
413 default=False,
414 )
414 )
415 # Deprecated, remove after 4.4 release
415 # Deprecated, remove after 4.4 release
416 coreconfigitem('experimental', 'updatecheck',
416 coreconfigitem('experimental', 'updatecheck',
417 default=None,
417 default=None,
418 )
418 )
419 coreconfigitem('extensions', '.*',
419 coreconfigitem('extensions', '.*',
420 default=None,
420 default=None,
421 generic=True,
421 generic=True,
422 )
422 )
423 coreconfigitem('format', 'aggressivemergedeltas',
423 coreconfigitem('format', 'aggressivemergedeltas',
424 default=False,
424 default=False,
425 )
425 )
426 coreconfigitem('format', 'chunkcachesize',
426 coreconfigitem('format', 'chunkcachesize',
427 default=None,
427 default=None,
428 )
428 )
429 coreconfigitem('format', 'dotencode',
429 coreconfigitem('format', 'dotencode',
430 default=True,
430 default=True,
431 )
431 )
432 coreconfigitem('format', 'generaldelta',
432 coreconfigitem('format', 'generaldelta',
433 default=False,
433 default=False,
434 )
434 )
435 coreconfigitem('format', 'manifestcachesize',
435 coreconfigitem('format', 'manifestcachesize',
436 default=None,
436 default=None,
437 )
437 )
438 coreconfigitem('format', 'maxchainlen',
438 coreconfigitem('format', 'maxchainlen',
439 default=None,
439 default=None,
440 )
440 )
441 coreconfigitem('format', 'obsstore-version',
441 coreconfigitem('format', 'obsstore-version',
442 default=None,
442 default=None,
443 )
443 )
444 coreconfigitem('format', 'usefncache',
444 coreconfigitem('format', 'usefncache',
445 default=True,
445 default=True,
446 )
446 )
447 coreconfigitem('format', 'usegeneraldelta',
447 coreconfigitem('format', 'usegeneraldelta',
448 default=True,
448 default=True,
449 )
449 )
450 coreconfigitem('format', 'usestore',
450 coreconfigitem('format', 'usestore',
451 default=True,
451 default=True,
452 )
452 )
453 coreconfigitem('hooks', '.*',
453 coreconfigitem('hooks', '.*',
454 default=dynamicdefault,
454 default=dynamicdefault,
455 generic=True,
455 generic=True,
456 )
456 )
457 coreconfigitem('hgweb-paths', '.*',
457 coreconfigitem('hgweb-paths', '.*',
458 default=list,
458 default=list,
459 generic=True,
459 generic=True,
460 )
460 )
461 coreconfigitem('hostfingerprints', '.*',
461 coreconfigitem('hostfingerprints', '.*',
462 default=list,
462 default=list,
463 generic=True,
463 generic=True,
464 )
464 )
465 coreconfigitem('hostsecurity', 'ciphers',
465 coreconfigitem('hostsecurity', 'ciphers',
466 default=None,
466 default=None,
467 )
467 )
468 coreconfigitem('hostsecurity', 'disabletls10warning',
468 coreconfigitem('hostsecurity', 'disabletls10warning',
469 default=False,
469 default=False,
470 )
470 )
471 coreconfigitem('hostsecurity', 'minimumprotocol',
471 coreconfigitem('hostsecurity', 'minimumprotocol',
472 default=dynamicdefault,
472 default=dynamicdefault,
473 )
473 )
474 coreconfigitem('http_proxy', 'always',
474 coreconfigitem('http_proxy', 'always',
475 default=False,
475 default=False,
476 )
476 )
477 coreconfigitem('http_proxy', 'host',
477 coreconfigitem('http_proxy', 'host',
478 default=None,
478 default=None,
479 )
479 )
480 coreconfigitem('http_proxy', 'no',
480 coreconfigitem('http_proxy', 'no',
481 default=list,
481 default=list,
482 )
482 )
483 coreconfigitem('http_proxy', 'passwd',
483 coreconfigitem('http_proxy', 'passwd',
484 default=None,
484 default=None,
485 )
485 )
486 coreconfigitem('http_proxy', 'user',
486 coreconfigitem('http_proxy', 'user',
487 default=None,
487 default=None,
488 )
488 )
489 coreconfigitem('logtoprocess', 'commandexception',
489 coreconfigitem('logtoprocess', 'commandexception',
490 default=None,
490 default=None,
491 )
491 )
492 coreconfigitem('logtoprocess', 'commandfinish',
492 coreconfigitem('logtoprocess', 'commandfinish',
493 default=None,
493 default=None,
494 )
494 )
495 coreconfigitem('logtoprocess', 'command',
495 coreconfigitem('logtoprocess', 'command',
496 default=None,
496 default=None,
497 )
497 )
498 coreconfigitem('logtoprocess', 'develwarn',
498 coreconfigitem('logtoprocess', 'develwarn',
499 default=None,
499 default=None,
500 )
500 )
501 coreconfigitem('logtoprocess', 'uiblocked',
501 coreconfigitem('logtoprocess', 'uiblocked',
502 default=None,
502 default=None,
503 )
503 )
504 coreconfigitem('merge', 'checkunknown',
504 coreconfigitem('merge', 'checkunknown',
505 default='abort',
505 default='abort',
506 )
506 )
507 coreconfigitem('merge', 'checkignored',
507 coreconfigitem('merge', 'checkignored',
508 default='abort',
508 default='abort',
509 )
509 )
510 coreconfigitem('merge', 'followcopies',
510 coreconfigitem('merge', 'followcopies',
511 default=True,
511 default=True,
512 )
512 )
513 coreconfigitem('merge', 'preferancestor',
513 coreconfigitem('merge', 'preferancestor',
514 default=lambda: ['*'],
514 default=lambda: ['*'],
515 )
515 )
516 coreconfigitem('pager', 'attend-.*',
516 coreconfigitem('pager', 'attend-.*',
517 default=dynamicdefault,
517 default=dynamicdefault,
518 generic=True,
518 generic=True,
519 )
519 )
520 coreconfigitem('pager', 'ignore',
520 coreconfigitem('pager', 'ignore',
521 default=list,
521 default=list,
522 )
522 )
523 coreconfigitem('pager', 'pager',
523 coreconfigitem('pager', 'pager',
524 default=dynamicdefault,
524 default=dynamicdefault,
525 )
525 )
526 coreconfigitem('patch', 'eol',
526 coreconfigitem('patch', 'eol',
527 default='strict',
527 default='strict',
528 )
528 )
529 coreconfigitem('patch', 'fuzz',
529 coreconfigitem('patch', 'fuzz',
530 default=2,
530 default=2,
531 )
531 )
532 coreconfigitem('paths', 'default',
532 coreconfigitem('paths', 'default',
533 default=None,
533 default=None,
534 )
534 )
535 coreconfigitem('paths', 'default-push',
535 coreconfigitem('paths', 'default-push',
536 default=None,
536 default=None,
537 )
537 )
538 coreconfigitem('paths', '.*',
538 coreconfigitem('paths', '.*',
539 default=None,
539 default=None,
540 generic=True,
540 generic=True,
541 )
541 )
542 coreconfigitem('phases', 'checksubrepos',
542 coreconfigitem('phases', 'checksubrepos',
543 default='follow',
543 default='follow',
544 )
544 )
545 coreconfigitem('phases', 'new-commit',
545 coreconfigitem('phases', 'new-commit',
546 default='draft',
546 default='draft',
547 )
547 )
548 coreconfigitem('phases', 'publish',
548 coreconfigitem('phases', 'publish',
549 default=True,
549 default=True,
550 )
550 )
551 coreconfigitem('profiling', 'enabled',
551 coreconfigitem('profiling', 'enabled',
552 default=False,
552 default=False,
553 )
553 )
554 coreconfigitem('profiling', 'format',
554 coreconfigitem('profiling', 'format',
555 default='text',
555 default='text',
556 )
556 )
557 coreconfigitem('profiling', 'freq',
557 coreconfigitem('profiling', 'freq',
558 default=1000,
558 default=1000,
559 )
559 )
560 coreconfigitem('profiling', 'limit',
560 coreconfigitem('profiling', 'limit',
561 default=30,
561 default=30,
562 )
562 )
563 coreconfigitem('profiling', 'nested',
563 coreconfigitem('profiling', 'nested',
564 default=0,
564 default=0,
565 )
565 )
566 coreconfigitem('profiling', 'output',
566 coreconfigitem('profiling', 'output',
567 default=None,
567 default=None,
568 )
568 )
569 coreconfigitem('profiling', 'showmax',
569 coreconfigitem('profiling', 'showmax',
570 default=0.999,
570 default=0.999,
571 )
571 )
572 coreconfigitem('profiling', 'showmin',
572 coreconfigitem('profiling', 'showmin',
573 default=dynamicdefault,
573 default=dynamicdefault,
574 )
574 )
575 coreconfigitem('profiling', 'sort',
575 coreconfigitem('profiling', 'sort',
576 default='inlinetime',
576 default='inlinetime',
577 )
577 )
578 coreconfigitem('profiling', 'statformat',
578 coreconfigitem('profiling', 'statformat',
579 default='hotpath',
579 default='hotpath',
580 )
580 )
581 coreconfigitem('profiling', 'type',
581 coreconfigitem('profiling', 'type',
582 default='stat',
582 default='stat',
583 )
583 )
584 coreconfigitem('progress', 'assume-tty',
584 coreconfigitem('progress', 'assume-tty',
585 default=False,
585 default=False,
586 )
586 )
587 coreconfigitem('progress', 'changedelay',
587 coreconfigitem('progress', 'changedelay',
588 default=1,
588 default=1,
589 )
589 )
590 coreconfigitem('progress', 'clear-complete',
590 coreconfigitem('progress', 'clear-complete',
591 default=True,
591 default=True,
592 )
592 )
593 coreconfigitem('progress', 'debug',
593 coreconfigitem('progress', 'debug',
594 default=False,
594 default=False,
595 )
595 )
596 coreconfigitem('progress', 'delay',
596 coreconfigitem('progress', 'delay',
597 default=3,
597 default=3,
598 )
598 )
599 coreconfigitem('progress', 'disable',
599 coreconfigitem('progress', 'disable',
600 default=False,
600 default=False,
601 )
601 )
602 coreconfigitem('progress', 'estimateinterval',
602 coreconfigitem('progress', 'estimateinterval',
603 default=60.0,
603 default=60.0,
604 )
604 )
605 coreconfigitem('progress', 'format',
605 coreconfigitem('progress', 'format',
606 default=lambda: ['topic', 'bar', 'number', 'estimate'],
606 default=lambda: ['topic', 'bar', 'number', 'estimate'],
607 )
607 )
608 coreconfigitem('progress', 'refresh',
608 coreconfigitem('progress', 'refresh',
609 default=0.1,
609 default=0.1,
610 )
610 )
611 coreconfigitem('progress', 'width',
611 coreconfigitem('progress', 'width',
612 default=dynamicdefault,
612 default=dynamicdefault,
613 )
613 )
614 coreconfigitem('push', 'pushvars.server',
614 coreconfigitem('push', 'pushvars.server',
615 default=False,
615 default=False,
616 )
616 )
617 coreconfigitem('server', 'bundle1',
617 coreconfigitem('server', 'bundle1',
618 default=True,
618 default=True,
619 )
619 )
620 coreconfigitem('server', 'bundle1gd',
620 coreconfigitem('server', 'bundle1gd',
621 default=None,
621 default=None,
622 )
622 )
623 coreconfigitem('server', 'bundle1.pull',
623 coreconfigitem('server', 'bundle1.pull',
624 default=None,
624 default=None,
625 )
625 )
626 coreconfigitem('server', 'bundle1gd.pull',
626 coreconfigitem('server', 'bundle1gd.pull',
627 default=None,
627 default=None,
628 )
628 )
629 coreconfigitem('server', 'bundle1.push',
629 coreconfigitem('server', 'bundle1.push',
630 default=None,
630 default=None,
631 )
631 )
632 coreconfigitem('server', 'bundle1gd.push',
632 coreconfigitem('server', 'bundle1gd.push',
633 default=None,
633 default=None,
634 )
634 )
635 coreconfigitem('server', 'compressionengines',
635 coreconfigitem('server', 'compressionengines',
636 default=list,
636 default=list,
637 )
637 )
638 coreconfigitem('server', 'concurrent-push-mode',
638 coreconfigitem('server', 'concurrent-push-mode',
639 default='strict',
639 default='strict',
640 )
640 )
641 coreconfigitem('server', 'disablefullbundle',
641 coreconfigitem('server', 'disablefullbundle',
642 default=False,
642 default=False,
643 )
643 )
644 coreconfigitem('server', 'maxhttpheaderlen',
644 coreconfigitem('server', 'maxhttpheaderlen',
645 default=1024,
645 default=1024,
646 )
646 )
647 coreconfigitem('server', 'preferuncompressed',
647 coreconfigitem('server', 'preferuncompressed',
648 default=False,
648 default=False,
649 )
649 )
650 coreconfigitem('server', 'uncompressed',
650 coreconfigitem('server', 'uncompressed',
651 default=True,
651 default=True,
652 )
652 )
653 coreconfigitem('server', 'uncompressedallowsecret',
653 coreconfigitem('server', 'uncompressedallowsecret',
654 default=False,
654 default=False,
655 )
655 )
656 coreconfigitem('server', 'validate',
656 coreconfigitem('server', 'validate',
657 default=False,
657 default=False,
658 )
658 )
659 coreconfigitem('server', 'zliblevel',
659 coreconfigitem('server', 'zliblevel',
660 default=-1,
660 default=-1,
661 )
661 )
662 coreconfigitem('smtp', 'host',
662 coreconfigitem('smtp', 'host',
663 default=None,
663 default=None,
664 )
664 )
665 coreconfigitem('smtp', 'local_hostname',
665 coreconfigitem('smtp', 'local_hostname',
666 default=None,
666 default=None,
667 )
667 )
668 coreconfigitem('smtp', 'password',
668 coreconfigitem('smtp', 'password',
669 default=None,
669 default=None,
670 )
670 )
671 coreconfigitem('smtp', 'port',
671 coreconfigitem('smtp', 'port',
672 default=dynamicdefault,
672 default=dynamicdefault,
673 )
673 )
674 coreconfigitem('smtp', 'tls',
674 coreconfigitem('smtp', 'tls',
675 default='none',
675 default='none',
676 )
676 )
677 coreconfigitem('smtp', 'username',
677 coreconfigitem('smtp', 'username',
678 default=None,
678 default=None,
679 )
679 )
680 coreconfigitem('sparse', 'missingwarning',
680 coreconfigitem('sparse', 'missingwarning',
681 default=True,
681 default=True,
682 )
682 )
683 coreconfigitem('templates', '.*',
683 coreconfigitem('templates', '.*',
684 default=None,
684 default=None,
685 generic=True,
685 generic=True,
686 )
686 )
687 coreconfigitem('trusted', 'groups',
687 coreconfigitem('trusted', 'groups',
688 default=list,
688 default=list,
689 )
689 )
690 coreconfigitem('trusted', 'users',
690 coreconfigitem('trusted', 'users',
691 default=list,
691 default=list,
692 )
692 )
693 coreconfigitem('ui', '_usedassubrepo',
693 coreconfigitem('ui', '_usedassubrepo',
694 default=False,
694 default=False,
695 )
695 )
696 coreconfigitem('ui', 'allowemptycommit',
696 coreconfigitem('ui', 'allowemptycommit',
697 default=False,
697 default=False,
698 )
698 )
699 coreconfigitem('ui', 'archivemeta',
699 coreconfigitem('ui', 'archivemeta',
700 default=True,
700 default=True,
701 )
701 )
702 coreconfigitem('ui', 'askusername',
702 coreconfigitem('ui', 'askusername',
703 default=False,
703 default=False,
704 )
704 )
705 coreconfigitem('ui', 'clonebundlefallback',
705 coreconfigitem('ui', 'clonebundlefallback',
706 default=False,
706 default=False,
707 )
707 )
708 coreconfigitem('ui', 'clonebundleprefers',
708 coreconfigitem('ui', 'clonebundleprefers',
709 default=list,
709 default=list,
710 )
710 )
711 coreconfigitem('ui', 'clonebundles',
711 coreconfigitem('ui', 'clonebundles',
712 default=True,
712 default=True,
713 )
713 )
714 coreconfigitem('ui', 'color',
714 coreconfigitem('ui', 'color',
715 default='auto',
715 default='auto',
716 )
716 )
717 coreconfigitem('ui', 'commitsubrepos',
717 coreconfigitem('ui', 'commitsubrepos',
718 default=False,
718 default=False,
719 )
719 )
720 coreconfigitem('ui', 'debug',
720 coreconfigitem('ui', 'debug',
721 default=False,
721 default=False,
722 )
722 )
723 coreconfigitem('ui', 'debugger',
723 coreconfigitem('ui', 'debugger',
724 default=None,
724 default=None,
725 )
725 )
726 coreconfigitem('ui', 'fallbackencoding',
726 coreconfigitem('ui', 'fallbackencoding',
727 default=None,
727 default=None,
728 )
728 )
729 coreconfigitem('ui', 'forcecwd',
729 coreconfigitem('ui', 'forcecwd',
730 default=None,
730 default=None,
731 )
731 )
732 coreconfigitem('ui', 'forcemerge',
732 coreconfigitem('ui', 'forcemerge',
733 default=None,
733 default=None,
734 )
734 )
735 coreconfigitem('ui', 'formatdebug',
735 coreconfigitem('ui', 'formatdebug',
736 default=False,
736 default=False,
737 )
737 )
738 coreconfigitem('ui', 'formatjson',
738 coreconfigitem('ui', 'formatjson',
739 default=False,
739 default=False,
740 )
740 )
741 coreconfigitem('ui', 'formatted',
741 coreconfigitem('ui', 'formatted',
742 default=None,
742 default=None,
743 )
743 )
744 coreconfigitem('ui', 'graphnodetemplate',
744 coreconfigitem('ui', 'graphnodetemplate',
745 default=None,
745 default=None,
746 )
746 )
747 coreconfigitem('ui', 'http2debuglevel',
747 coreconfigitem('ui', 'http2debuglevel',
748 default=None,
748 default=None,
749 )
749 )
750 coreconfigitem('ui', 'interactive',
750 coreconfigitem('ui', 'interactive',
751 default=None,
751 default=None,
752 )
752 )
753 coreconfigitem('ui', 'interface',
753 coreconfigitem('ui', 'interface',
754 default=None,
754 default=None,
755 )
755 )
756 coreconfigitem('ui', 'interface.chunkselector',
756 coreconfigitem('ui', 'interface.chunkselector',
757 default=None,
757 default=None,
758 )
758 )
759 coreconfigitem('ui', 'logblockedtimes',
759 coreconfigitem('ui', 'logblockedtimes',
760 default=False,
760 default=False,
761 )
761 )
762 coreconfigitem('ui', 'logtemplate',
762 coreconfigitem('ui', 'logtemplate',
763 default=None,
763 default=None,
764 )
764 )
765 coreconfigitem('ui', 'merge',
765 coreconfigitem('ui', 'merge',
766 default=None,
766 default=None,
767 )
767 )
768 coreconfigitem('ui', 'mergemarkers',
768 coreconfigitem('ui', 'mergemarkers',
769 default='basic',
769 default='basic',
770 )
770 )
771 coreconfigitem('ui', 'mergemarkertemplate',
771 coreconfigitem('ui', 'mergemarkertemplate',
772 default=('{node|short} '
772 default=('{node|short} '
773 '{ifeq(tags, "tip", "", '
773 '{ifeq(tags, "tip", "", '
774 'ifeq(tags, "", "", "{tags} "))}'
774 'ifeq(tags, "", "", "{tags} "))}'
775 '{if(bookmarks, "{bookmarks} ")}'
775 '{if(bookmarks, "{bookmarks} ")}'
776 '{ifeq(branch, "default", "", "{branch} ")}'
776 '{ifeq(branch, "default", "", "{branch} ")}'
777 '- {author|user}: {desc|firstline}')
777 '- {author|user}: {desc|firstline}')
778 )
778 )
779 coreconfigitem('ui', 'nontty',
779 coreconfigitem('ui', 'nontty',
780 default=False,
780 default=False,
781 )
781 )
782 coreconfigitem('ui', 'origbackuppath',
782 coreconfigitem('ui', 'origbackuppath',
783 default=None,
783 default=None,
784 )
784 )
785 coreconfigitem('ui', 'paginate',
785 coreconfigitem('ui', 'paginate',
786 default=True,
786 default=True,
787 )
787 )
788 coreconfigitem('ui', 'patch',
788 coreconfigitem('ui', 'patch',
789 default=None,
789 default=None,
790 )
790 )
791 coreconfigitem('ui', 'portablefilenames',
791 coreconfigitem('ui', 'portablefilenames',
792 default='warn',
792 default='warn',
793 )
793 )
794 coreconfigitem('ui', 'promptecho',
794 coreconfigitem('ui', 'promptecho',
795 default=False,
795 default=False,
796 )
796 )
797 coreconfigitem('ui', 'quiet',
797 coreconfigitem('ui', 'quiet',
798 default=False,
798 default=False,
799 )
799 )
800 coreconfigitem('ui', 'quietbookmarkmove',
800 coreconfigitem('ui', 'quietbookmarkmove',
801 default=False,
801 default=False,
802 )
802 )
803 coreconfigitem('ui', 'remotecmd',
803 coreconfigitem('ui', 'remotecmd',
804 default='hg',
804 default='hg',
805 )
805 )
806 coreconfigitem('ui', 'report_untrusted',
806 coreconfigitem('ui', 'report_untrusted',
807 default=True,
807 default=True,
808 )
808 )
809 coreconfigitem('ui', 'rollback',
809 coreconfigitem('ui', 'rollback',
810 default=True,
810 default=True,
811 )
811 )
812 coreconfigitem('ui', 'slash',
812 coreconfigitem('ui', 'slash',
813 default=False,
813 default=False,
814 )
814 )
815 coreconfigitem('ui', 'ssh',
815 coreconfigitem('ui', 'ssh',
816 default='ssh',
816 default='ssh',
817 )
817 )
818 coreconfigitem('ui', 'statuscopies',
818 coreconfigitem('ui', 'statuscopies',
819 default=False,
819 default=False,
820 )
820 )
821 coreconfigitem('ui', 'strict',
821 coreconfigitem('ui', 'strict',
822 default=False,
822 default=False,
823 )
823 )
824 coreconfigitem('ui', 'style',
824 coreconfigitem('ui', 'style',
825 default='',
825 default='',
826 )
826 )
827 coreconfigitem('ui', 'supportcontact',
827 coreconfigitem('ui', 'supportcontact',
828 default=None,
828 default=None,
829 )
829 )
830 coreconfigitem('ui', 'textwidth',
830 coreconfigitem('ui', 'textwidth',
831 default=78,
831 default=78,
832 )
832 )
833 coreconfigitem('ui', 'timeout',
833 coreconfigitem('ui', 'timeout',
834 default='600',
834 default='600',
835 )
835 )
836 coreconfigitem('ui', 'traceback',
836 coreconfigitem('ui', 'traceback',
837 default=False,
837 default=False,
838 )
838 )
839 coreconfigitem('ui', 'tweakdefaults',
839 coreconfigitem('ui', 'tweakdefaults',
840 default=False,
840 default=False,
841 )
841 )
842 coreconfigitem('ui', 'usehttp2',
842 coreconfigitem('ui', 'usehttp2',
843 default=False,
843 default=False,
844 )
844 )
845 coreconfigitem('ui', 'username',
845 coreconfigitem('ui', 'username',
846 alias=[('ui', 'user')]
846 alias=[('ui', 'user')]
847 )
847 )
848 coreconfigitem('ui', 'verbose',
848 coreconfigitem('ui', 'verbose',
849 default=False,
849 default=False,
850 )
850 )
851 coreconfigitem('verify', 'skipflags',
851 coreconfigitem('verify', 'skipflags',
852 default=None,
852 default=None,
853 )
853 )
854 coreconfigitem('web', 'allowbz2',
854 coreconfigitem('web', 'allowbz2',
855 default=False,
855 default=False,
856 )
856 )
857 coreconfigitem('web', 'allowgz',
857 coreconfigitem('web', 'allowgz',
858 default=False,
858 default=False,
859 )
859 )
860 coreconfigitem('web', 'allowpull',
860 coreconfigitem('web', 'allowpull',
861 default=True,
861 default=True,
862 )
862 )
863 coreconfigitem('web', 'allow_push',
863 coreconfigitem('web', 'allow_push',
864 default=list,
864 default=list,
865 )
865 )
866 coreconfigitem('web', 'allowzip',
866 coreconfigitem('web', 'allowzip',
867 default=False,
867 default=False,
868 )
868 )
869 coreconfigitem('web', 'cache',
869 coreconfigitem('web', 'cache',
870 default=True,
870 default=True,
871 )
871 )
872 coreconfigitem('web', 'contact',
872 coreconfigitem('web', 'contact',
873 default=None,
873 default=None,
874 )
874 )
875 coreconfigitem('web', 'deny_push',
875 coreconfigitem('web', 'deny_push',
876 default=list,
876 default=list,
877 )
877 )
878 coreconfigitem('web', 'guessmime',
878 coreconfigitem('web', 'guessmime',
879 default=False,
879 default=False,
880 )
880 )
881 coreconfigitem('web', 'hidden',
881 coreconfigitem('web', 'hidden',
882 default=False,
882 default=False,
883 )
883 )
884 coreconfigitem('web', 'labels',
884 coreconfigitem('web', 'labels',
885 default=list,
885 default=list,
886 )
886 )
887 coreconfigitem('web', 'logoimg',
887 coreconfigitem('web', 'logoimg',
888 default='hglogo.png',
888 default='hglogo.png',
889 )
889 )
890 coreconfigitem('web', 'logourl',
890 coreconfigitem('web', 'logourl',
891 default='https://mercurial-scm.org/',
891 default='https://mercurial-scm.org/',
892 )
892 )
893 coreconfigitem('web', 'accesslog',
893 coreconfigitem('web', 'accesslog',
894 default='-',
894 default='-',
895 )
895 )
896 coreconfigitem('web', 'address',
896 coreconfigitem('web', 'address',
897 default='',
897 default='',
898 )
898 )
899 coreconfigitem('web', 'allow_archive',
899 coreconfigitem('web', 'allow_archive',
900 default=list,
900 default=list,
901 )
901 )
902 coreconfigitem('web', 'allow_read',
902 coreconfigitem('web', 'allow_read',
903 default=list,
903 default=list,
904 )
904 )
905 coreconfigitem('web', 'baseurl',
905 coreconfigitem('web', 'baseurl',
906 default=None,
906 default=None,
907 )
907 )
908 coreconfigitem('web', 'cacerts',
908 coreconfigitem('web', 'cacerts',
909 default=None,
909 default=None,
910 )
910 )
911 coreconfigitem('web', 'certificate',
911 coreconfigitem('web', 'certificate',
912 default=None,
912 default=None,
913 )
913 )
914 coreconfigitem('web', 'collapse',
914 coreconfigitem('web', 'collapse',
915 default=False,
915 default=False,
916 )
916 )
917 coreconfigitem('web', 'csp',
917 coreconfigitem('web', 'csp',
918 default=None,
918 default=None,
919 )
919 )
920 coreconfigitem('web', 'deny_read',
920 coreconfigitem('web', 'deny_read',
921 default=list,
921 default=list,
922 )
922 )
923 coreconfigitem('web', 'descend',
923 coreconfigitem('web', 'descend',
924 default=True,
924 default=True,
925 )
925 )
926 coreconfigitem('web', 'description',
926 coreconfigitem('web', 'description',
927 default="",
927 default="",
928 )
928 )
929 coreconfigitem('web', 'encoding',
929 coreconfigitem('web', 'encoding',
930 default=lambda: encoding.encoding,
930 default=lambda: encoding.encoding,
931 )
931 )
932 coreconfigitem('web', 'errorlog',
932 coreconfigitem('web', 'errorlog',
933 default='-',
933 default='-',
934 )
934 )
935 coreconfigitem('web', 'ipv6',
935 coreconfigitem('web', 'ipv6',
936 default=False,
936 default=False,
937 )
937 )
938 coreconfigitem('web', 'maxchanges',
938 coreconfigitem('web', 'maxchanges',
939 default=10,
939 default=10,
940 )
940 )
941 coreconfigitem('web', 'maxfiles',
941 coreconfigitem('web', 'maxfiles',
942 default=10,
942 default=10,
943 )
943 )
944 coreconfigitem('web', 'maxshortchanges',
944 coreconfigitem('web', 'maxshortchanges',
945 default=60,
945 default=60,
946 )
946 )
947 coreconfigitem('web', 'motd',
947 coreconfigitem('web', 'motd',
948 default='',
948 default='',
949 )
949 )
950 coreconfigitem('web', 'name',
950 coreconfigitem('web', 'name',
951 default=dynamicdefault,
951 default=dynamicdefault,
952 )
952 )
953 coreconfigitem('web', 'port',
953 coreconfigitem('web', 'port',
954 default=8000,
954 default=8000,
955 )
955 )
956 coreconfigitem('web', 'prefix',
956 coreconfigitem('web', 'prefix',
957 default='',
957 default='',
958 )
958 )
959 coreconfigitem('web', 'push_ssl',
959 coreconfigitem('web', 'push_ssl',
960 default=True,
960 default=True,
961 )
961 )
962 coreconfigitem('web', 'refreshinterval',
962 coreconfigitem('web', 'refreshinterval',
963 default=20,
963 default=20,
964 )
964 )
965 coreconfigitem('web', 'staticurl',
965 coreconfigitem('web', 'staticurl',
966 default=None,
966 default=None,
967 )
967 )
968 coreconfigitem('web', 'stripes',
968 coreconfigitem('web', 'stripes',
969 default=1,
969 default=1,
970 )
970 )
971 coreconfigitem('web', 'style',
971 coreconfigitem('web', 'style',
972 default='paper',
972 default='paper',
973 )
973 )
974 coreconfigitem('web', 'templates',
974 coreconfigitem('web', 'templates',
975 default=None,
975 default=None,
976 )
976 )
977 coreconfigitem('web', 'view',
977 coreconfigitem('web', 'view',
978 default='served',
978 default='served',
979 )
979 )
980 coreconfigitem('worker', 'backgroundclose',
980 coreconfigitem('worker', 'backgroundclose',
981 default=dynamicdefault,
981 default=dynamicdefault,
982 )
982 )
983 # Windows defaults to a limit of 512 open files. A buffer of 128
983 # Windows defaults to a limit of 512 open files. A buffer of 128
984 # should give us enough headway.
984 # should give us enough headway.
985 coreconfigitem('worker', 'backgroundclosemaxqueue',
985 coreconfigitem('worker', 'backgroundclosemaxqueue',
986 default=384,
986 default=384,
987 )
987 )
988 coreconfigitem('worker', 'backgroundcloseminfilecount',
988 coreconfigitem('worker', 'backgroundcloseminfilecount',
989 default=2048,
989 default=2048,
990 )
990 )
991 coreconfigitem('worker', 'backgroundclosethreadcount',
991 coreconfigitem('worker', 'backgroundclosethreadcount',
992 default=4,
992 default=4,
993 )
993 )
994 coreconfigitem('worker', 'numcpus',
994 coreconfigitem('worker', 'numcpus',
995 default=None,
995 default=None,
996 )
996 )
General Comments 0
You need to be logged in to leave comments. Login now