##// END OF EJS Templates
configitems: register the 'paths' config section
Boris Feld -
r34671:ec45d7a6 default
parent child Browse files
Show More
@@ -1,967 +1,971 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, {})
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=None,
107 default=None,
108 )
108 )
109 coreconfigitem('annotate', 'showfunc',
109 coreconfigitem('annotate', 'showfunc',
110 default=None,
110 default=None,
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=None,
116 default=None,
117 )
117 )
118 coreconfigitem('annotate', 'ignorews',
118 coreconfigitem('annotate', 'ignorews',
119 default=None,
119 default=None,
120 )
120 )
121 coreconfigitem('annotate', 'ignorewsamount',
121 coreconfigitem('annotate', 'ignorewsamount',
122 default=None,
122 default=None,
123 )
123 )
124 coreconfigitem('annotate', 'ignoreblanklines',
124 coreconfigitem('annotate', 'ignoreblanklines',
125 default=None,
125 default=None,
126 )
126 )
127 coreconfigitem('annotate', 'ignorewseol',
127 coreconfigitem('annotate', 'ignorewseol',
128 default=None,
128 default=None,
129 )
129 )
130 coreconfigitem('annotate', 'nobinary',
130 coreconfigitem('annotate', 'nobinary',
131 default=None,
131 default=None,
132 )
132 )
133 coreconfigitem('annotate', 'noprefix',
133 coreconfigitem('annotate', 'noprefix',
134 default=None,
134 default=None,
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.requiredest',
182 coreconfigitem('commands', 'update.requiredest',
183 default=False,
183 default=False,
184 )
184 )
185 coreconfigitem('committemplate', '.*',
185 coreconfigitem('committemplate', '.*',
186 default=None,
186 default=None,
187 generic=True,
187 generic=True,
188 )
188 )
189 coreconfigitem('debug', 'dirstate.delaywrite',
189 coreconfigitem('debug', 'dirstate.delaywrite',
190 default=0,
190 default=0,
191 )
191 )
192 coreconfigitem('defaults', '.*',
192 coreconfigitem('defaults', '.*',
193 default=None,
193 default=None,
194 generic=True,
194 generic=True,
195 )
195 )
196 coreconfigitem('devel', 'all-warnings',
196 coreconfigitem('devel', 'all-warnings',
197 default=False,
197 default=False,
198 )
198 )
199 coreconfigitem('devel', 'bundle2.debug',
199 coreconfigitem('devel', 'bundle2.debug',
200 default=False,
200 default=False,
201 )
201 )
202 coreconfigitem('devel', 'cache-vfs',
202 coreconfigitem('devel', 'cache-vfs',
203 default=None,
203 default=None,
204 )
204 )
205 coreconfigitem('devel', 'check-locks',
205 coreconfigitem('devel', 'check-locks',
206 default=False,
206 default=False,
207 )
207 )
208 coreconfigitem('devel', 'check-relroot',
208 coreconfigitem('devel', 'check-relroot',
209 default=False,
209 default=False,
210 )
210 )
211 coreconfigitem('devel', 'default-date',
211 coreconfigitem('devel', 'default-date',
212 default=None,
212 default=None,
213 )
213 )
214 coreconfigitem('devel', 'deprec-warn',
214 coreconfigitem('devel', 'deprec-warn',
215 default=False,
215 default=False,
216 )
216 )
217 coreconfigitem('devel', 'disableloaddefaultcerts',
217 coreconfigitem('devel', 'disableloaddefaultcerts',
218 default=False,
218 default=False,
219 )
219 )
220 coreconfigitem('devel', 'empty-changegroup',
220 coreconfigitem('devel', 'empty-changegroup',
221 default=False,
221 default=False,
222 )
222 )
223 coreconfigitem('devel', 'legacy.exchange',
223 coreconfigitem('devel', 'legacy.exchange',
224 default=list,
224 default=list,
225 )
225 )
226 coreconfigitem('devel', 'servercafile',
226 coreconfigitem('devel', 'servercafile',
227 default='',
227 default='',
228 )
228 )
229 coreconfigitem('devel', 'serverexactprotocol',
229 coreconfigitem('devel', 'serverexactprotocol',
230 default='',
230 default='',
231 )
231 )
232 coreconfigitem('devel', 'serverrequirecert',
232 coreconfigitem('devel', 'serverrequirecert',
233 default=False,
233 default=False,
234 )
234 )
235 coreconfigitem('devel', 'strip-obsmarkers',
235 coreconfigitem('devel', 'strip-obsmarkers',
236 default=True,
236 default=True,
237 )
237 )
238 coreconfigitem('devel', 'warn-config',
238 coreconfigitem('devel', 'warn-config',
239 default=None,
239 default=None,
240 )
240 )
241 coreconfigitem('devel', 'warn-config-default',
241 coreconfigitem('devel', 'warn-config-default',
242 default=None,
242 default=None,
243 )
243 )
244 coreconfigitem('devel', 'user.obsmarker',
244 coreconfigitem('devel', 'user.obsmarker',
245 default=None,
245 default=None,
246 )
246 )
247 coreconfigitem('diff', 'nodates',
247 coreconfigitem('diff', 'nodates',
248 default=None,
248 default=None,
249 )
249 )
250 coreconfigitem('diff', 'showfunc',
250 coreconfigitem('diff', 'showfunc',
251 default=None,
251 default=None,
252 )
252 )
253 coreconfigitem('diff', 'unified',
253 coreconfigitem('diff', 'unified',
254 default=None,
254 default=None,
255 )
255 )
256 coreconfigitem('diff', 'git',
256 coreconfigitem('diff', 'git',
257 default=None,
257 default=None,
258 )
258 )
259 coreconfigitem('diff', 'ignorews',
259 coreconfigitem('diff', 'ignorews',
260 default=None,
260 default=None,
261 )
261 )
262 coreconfigitem('diff', 'ignorewsamount',
262 coreconfigitem('diff', 'ignorewsamount',
263 default=None,
263 default=None,
264 )
264 )
265 coreconfigitem('diff', 'ignoreblanklines',
265 coreconfigitem('diff', 'ignoreblanklines',
266 default=None,
266 default=None,
267 )
267 )
268 coreconfigitem('diff', 'ignorewseol',
268 coreconfigitem('diff', 'ignorewseol',
269 default=None,
269 default=None,
270 )
270 )
271 coreconfigitem('diff', 'nobinary',
271 coreconfigitem('diff', 'nobinary',
272 default=None,
272 default=None,
273 )
273 )
274 coreconfigitem('diff', 'noprefix',
274 coreconfigitem('diff', 'noprefix',
275 default=None,
275 default=None,
276 )
276 )
277 coreconfigitem('email', 'bcc',
277 coreconfigitem('email', 'bcc',
278 default=None,
278 default=None,
279 )
279 )
280 coreconfigitem('email', 'cc',
280 coreconfigitem('email', 'cc',
281 default=None,
281 default=None,
282 )
282 )
283 coreconfigitem('email', 'charsets',
283 coreconfigitem('email', 'charsets',
284 default=list,
284 default=list,
285 )
285 )
286 coreconfigitem('email', 'from',
286 coreconfigitem('email', 'from',
287 default=None,
287 default=None,
288 )
288 )
289 coreconfigitem('email', 'method',
289 coreconfigitem('email', 'method',
290 default='smtp',
290 default='smtp',
291 )
291 )
292 coreconfigitem('email', 'reply-to',
292 coreconfigitem('email', 'reply-to',
293 default=None,
293 default=None,
294 )
294 )
295 coreconfigitem('experimental', 'allowdivergence',
295 coreconfigitem('experimental', 'allowdivergence',
296 default=False,
296 default=False,
297 )
297 )
298 coreconfigitem('experimental', 'archivemetatemplate',
298 coreconfigitem('experimental', 'archivemetatemplate',
299 default=dynamicdefault,
299 default=dynamicdefault,
300 )
300 )
301 coreconfigitem('experimental', 'bundle-phases',
301 coreconfigitem('experimental', 'bundle-phases',
302 default=False,
302 default=False,
303 )
303 )
304 coreconfigitem('experimental', 'bundle2-advertise',
304 coreconfigitem('experimental', 'bundle2-advertise',
305 default=True,
305 default=True,
306 )
306 )
307 coreconfigitem('experimental', 'bundle2-output-capture',
307 coreconfigitem('experimental', 'bundle2-output-capture',
308 default=False,
308 default=False,
309 )
309 )
310 coreconfigitem('experimental', 'bundle2.pushback',
310 coreconfigitem('experimental', 'bundle2.pushback',
311 default=False,
311 default=False,
312 )
312 )
313 coreconfigitem('experimental', 'bundle2lazylocking',
313 coreconfigitem('experimental', 'bundle2lazylocking',
314 default=False,
314 default=False,
315 )
315 )
316 coreconfigitem('experimental', 'bundlecomplevel',
316 coreconfigitem('experimental', 'bundlecomplevel',
317 default=None,
317 default=None,
318 )
318 )
319 coreconfigitem('experimental', 'changegroup3',
319 coreconfigitem('experimental', 'changegroup3',
320 default=False,
320 default=False,
321 )
321 )
322 coreconfigitem('experimental', 'clientcompressionengines',
322 coreconfigitem('experimental', 'clientcompressionengines',
323 default=list,
323 default=list,
324 )
324 )
325 coreconfigitem('experimental', 'copytrace',
325 coreconfigitem('experimental', 'copytrace',
326 default='on',
326 default='on',
327 )
327 )
328 coreconfigitem('experimental', 'copytrace.sourcecommitlimit',
328 coreconfigitem('experimental', 'copytrace.sourcecommitlimit',
329 default=100,
329 default=100,
330 )
330 )
331 coreconfigitem('experimental', 'crecordtest',
331 coreconfigitem('experimental', 'crecordtest',
332 default=None,
332 default=None,
333 )
333 )
334 coreconfigitem('experimental', 'editortmpinhg',
334 coreconfigitem('experimental', 'editortmpinhg',
335 default=False,
335 default=False,
336 )
336 )
337 coreconfigitem('experimental', 'maxdeltachainspan',
337 coreconfigitem('experimental', 'maxdeltachainspan',
338 default=-1,
338 default=-1,
339 )
339 )
340 coreconfigitem('experimental', 'mmapindexthreshold',
340 coreconfigitem('experimental', 'mmapindexthreshold',
341 default=None,
341 default=None,
342 )
342 )
343 coreconfigitem('experimental', 'nonnormalparanoidcheck',
343 coreconfigitem('experimental', 'nonnormalparanoidcheck',
344 default=False,
344 default=False,
345 )
345 )
346 coreconfigitem('experimental', 'stabilization',
346 coreconfigitem('experimental', 'stabilization',
347 default=list,
347 default=list,
348 alias=[('experimental', 'evolution')],
348 alias=[('experimental', 'evolution')],
349 )
349 )
350 coreconfigitem('experimental', 'stabilization.bundle-obsmarker',
350 coreconfigitem('experimental', 'stabilization.bundle-obsmarker',
351 default=False,
351 default=False,
352 alias=[('experimental', 'evolution.bundle-obsmarker')],
352 alias=[('experimental', 'evolution.bundle-obsmarker')],
353 )
353 )
354 coreconfigitem('experimental', 'stabilization.track-operation',
354 coreconfigitem('experimental', 'stabilization.track-operation',
355 default=True,
355 default=True,
356 alias=[('experimental', 'evolution.track-operation')]
356 alias=[('experimental', 'evolution.track-operation')]
357 )
357 )
358 coreconfigitem('experimental', 'exportableenviron',
358 coreconfigitem('experimental', 'exportableenviron',
359 default=list,
359 default=list,
360 )
360 )
361 coreconfigitem('experimental', 'extendedheader.index',
361 coreconfigitem('experimental', 'extendedheader.index',
362 default=None,
362 default=None,
363 )
363 )
364 coreconfigitem('experimental', 'extendedheader.similarity',
364 coreconfigitem('experimental', 'extendedheader.similarity',
365 default=False,
365 default=False,
366 )
366 )
367 coreconfigitem('experimental', 'format.compression',
367 coreconfigitem('experimental', 'format.compression',
368 default='zlib',
368 default='zlib',
369 )
369 )
370 coreconfigitem('experimental', 'graphshorten',
370 coreconfigitem('experimental', 'graphshorten',
371 default=False,
371 default=False,
372 )
372 )
373 coreconfigitem('experimental', 'graphstyle.parent',
373 coreconfigitem('experimental', 'graphstyle.parent',
374 default=dynamicdefault,
374 default=dynamicdefault,
375 )
375 )
376 coreconfigitem('experimental', 'graphstyle.missing',
376 coreconfigitem('experimental', 'graphstyle.missing',
377 default=dynamicdefault,
377 default=dynamicdefault,
378 )
378 )
379 coreconfigitem('experimental', 'graphstyle.grandparent',
379 coreconfigitem('experimental', 'graphstyle.grandparent',
380 default=dynamicdefault,
380 default=dynamicdefault,
381 )
381 )
382 coreconfigitem('experimental', 'hook-track-tags',
382 coreconfigitem('experimental', 'hook-track-tags',
383 default=False,
383 default=False,
384 )
384 )
385 coreconfigitem('experimental', 'httppostargs',
385 coreconfigitem('experimental', 'httppostargs',
386 default=False,
386 default=False,
387 )
387 )
388 coreconfigitem('experimental', 'manifestv2',
388 coreconfigitem('experimental', 'manifestv2',
389 default=False,
389 default=False,
390 )
390 )
391 coreconfigitem('experimental', 'mergedriver',
391 coreconfigitem('experimental', 'mergedriver',
392 default=None,
392 default=None,
393 )
393 )
394 coreconfigitem('experimental', 'obsmarkers-exchange-debug',
394 coreconfigitem('experimental', 'obsmarkers-exchange-debug',
395 default=False,
395 default=False,
396 )
396 )
397 coreconfigitem('experimental', 'rebase.multidest',
397 coreconfigitem('experimental', 'rebase.multidest',
398 default=False,
398 default=False,
399 )
399 )
400 coreconfigitem('experimental', 'revertalternateinteractivemode',
400 coreconfigitem('experimental', 'revertalternateinteractivemode',
401 default=True,
401 default=True,
402 )
402 )
403 coreconfigitem('experimental', 'revlogv2',
403 coreconfigitem('experimental', 'revlogv2',
404 default=None,
404 default=None,
405 )
405 )
406 coreconfigitem('experimental', 'spacemovesdown',
406 coreconfigitem('experimental', 'spacemovesdown',
407 default=False,
407 default=False,
408 )
408 )
409 coreconfigitem('experimental', 'treemanifest',
409 coreconfigitem('experimental', 'treemanifest',
410 default=False,
410 default=False,
411 )
411 )
412 coreconfigitem('experimental', 'updatecheck',
412 coreconfigitem('experimental', 'updatecheck',
413 default=None,
413 default=None,
414 )
414 )
415 coreconfigitem('extensions', '.*',
415 coreconfigitem('extensions', '.*',
416 default=None,
416 default=None,
417 generic=True,
417 generic=True,
418 )
418 )
419 coreconfigitem('format', 'aggressivemergedeltas',
419 coreconfigitem('format', 'aggressivemergedeltas',
420 default=False,
420 default=False,
421 )
421 )
422 coreconfigitem('format', 'chunkcachesize',
422 coreconfigitem('format', 'chunkcachesize',
423 default=None,
423 default=None,
424 )
424 )
425 coreconfigitem('format', 'dotencode',
425 coreconfigitem('format', 'dotencode',
426 default=True,
426 default=True,
427 )
427 )
428 coreconfigitem('format', 'generaldelta',
428 coreconfigitem('format', 'generaldelta',
429 default=False,
429 default=False,
430 )
430 )
431 coreconfigitem('format', 'manifestcachesize',
431 coreconfigitem('format', 'manifestcachesize',
432 default=None,
432 default=None,
433 )
433 )
434 coreconfigitem('format', 'maxchainlen',
434 coreconfigitem('format', 'maxchainlen',
435 default=None,
435 default=None,
436 )
436 )
437 coreconfigitem('format', 'obsstore-version',
437 coreconfigitem('format', 'obsstore-version',
438 default=None,
438 default=None,
439 )
439 )
440 coreconfigitem('format', 'usefncache',
440 coreconfigitem('format', 'usefncache',
441 default=True,
441 default=True,
442 )
442 )
443 coreconfigitem('format', 'usegeneraldelta',
443 coreconfigitem('format', 'usegeneraldelta',
444 default=True,
444 default=True,
445 )
445 )
446 coreconfigitem('format', 'usestore',
446 coreconfigitem('format', 'usestore',
447 default=True,
447 default=True,
448 )
448 )
449 coreconfigitem('hooks', '.*',
449 coreconfigitem('hooks', '.*',
450 default=dynamicdefault,
450 default=dynamicdefault,
451 generic=True,
451 generic=True,
452 )
452 )
453 coreconfigitem('hostsecurity', 'ciphers',
453 coreconfigitem('hostsecurity', 'ciphers',
454 default=None,
454 default=None,
455 )
455 )
456 coreconfigitem('hostsecurity', 'disabletls10warning',
456 coreconfigitem('hostsecurity', 'disabletls10warning',
457 default=False,
457 default=False,
458 )
458 )
459 coreconfigitem('http_proxy', 'always',
459 coreconfigitem('http_proxy', 'always',
460 default=False,
460 default=False,
461 )
461 )
462 coreconfigitem('http_proxy', 'host',
462 coreconfigitem('http_proxy', 'host',
463 default=None,
463 default=None,
464 )
464 )
465 coreconfigitem('http_proxy', 'no',
465 coreconfigitem('http_proxy', 'no',
466 default=list,
466 default=list,
467 )
467 )
468 coreconfigitem('http_proxy', 'passwd',
468 coreconfigitem('http_proxy', 'passwd',
469 default=None,
469 default=None,
470 )
470 )
471 coreconfigitem('http_proxy', 'user',
471 coreconfigitem('http_proxy', 'user',
472 default=None,
472 default=None,
473 )
473 )
474 coreconfigitem('logtoprocess', 'commandexception',
474 coreconfigitem('logtoprocess', 'commandexception',
475 default=None,
475 default=None,
476 )
476 )
477 coreconfigitem('logtoprocess', 'commandfinish',
477 coreconfigitem('logtoprocess', 'commandfinish',
478 default=None,
478 default=None,
479 )
479 )
480 coreconfigitem('logtoprocess', 'command',
480 coreconfigitem('logtoprocess', 'command',
481 default=None,
481 default=None,
482 )
482 )
483 coreconfigitem('logtoprocess', 'develwarn',
483 coreconfigitem('logtoprocess', 'develwarn',
484 default=None,
484 default=None,
485 )
485 )
486 coreconfigitem('logtoprocess', 'uiblocked',
486 coreconfigitem('logtoprocess', 'uiblocked',
487 default=None,
487 default=None,
488 )
488 )
489 coreconfigitem('merge', 'checkunknown',
489 coreconfigitem('merge', 'checkunknown',
490 default='abort',
490 default='abort',
491 )
491 )
492 coreconfigitem('merge', 'checkignored',
492 coreconfigitem('merge', 'checkignored',
493 default='abort',
493 default='abort',
494 )
494 )
495 coreconfigitem('merge', 'followcopies',
495 coreconfigitem('merge', 'followcopies',
496 default=True,
496 default=True,
497 )
497 )
498 coreconfigitem('merge', 'preferancestor',
498 coreconfigitem('merge', 'preferancestor',
499 default=lambda: ['*'],
499 default=lambda: ['*'],
500 )
500 )
501 coreconfigitem('pager', 'attend-.*',
501 coreconfigitem('pager', 'attend-.*',
502 default=dynamicdefault,
502 default=dynamicdefault,
503 generic=True,
503 generic=True,
504 )
504 )
505 coreconfigitem('pager', 'ignore',
505 coreconfigitem('pager', 'ignore',
506 default=list,
506 default=list,
507 )
507 )
508 coreconfigitem('pager', 'pager',
508 coreconfigitem('pager', 'pager',
509 default=dynamicdefault,
509 default=dynamicdefault,
510 )
510 )
511 coreconfigitem('patch', 'eol',
511 coreconfigitem('patch', 'eol',
512 default='strict',
512 default='strict',
513 )
513 )
514 coreconfigitem('patch', 'fuzz',
514 coreconfigitem('patch', 'fuzz',
515 default=2,
515 default=2,
516 )
516 )
517 coreconfigitem('paths', 'default',
517 coreconfigitem('paths', 'default',
518 default=None,
518 default=None,
519 )
519 )
520 coreconfigitem('paths', 'default-push',
520 coreconfigitem('paths', 'default-push',
521 default=None,
521 default=None,
522 )
522 )
523 coreconfigitem('paths', '.*',
524 default=None,
525 generic=True,
526 )
523 coreconfigitem('phases', 'checksubrepos',
527 coreconfigitem('phases', 'checksubrepos',
524 default='follow',
528 default='follow',
525 )
529 )
526 coreconfigitem('phases', 'new-commit',
530 coreconfigitem('phases', 'new-commit',
527 default='draft',
531 default='draft',
528 )
532 )
529 coreconfigitem('phases', 'publish',
533 coreconfigitem('phases', 'publish',
530 default=True,
534 default=True,
531 )
535 )
532 coreconfigitem('profiling', 'enabled',
536 coreconfigitem('profiling', 'enabled',
533 default=False,
537 default=False,
534 )
538 )
535 coreconfigitem('profiling', 'format',
539 coreconfigitem('profiling', 'format',
536 default='text',
540 default='text',
537 )
541 )
538 coreconfigitem('profiling', 'freq',
542 coreconfigitem('profiling', 'freq',
539 default=1000,
543 default=1000,
540 )
544 )
541 coreconfigitem('profiling', 'limit',
545 coreconfigitem('profiling', 'limit',
542 default=30,
546 default=30,
543 )
547 )
544 coreconfigitem('profiling', 'nested',
548 coreconfigitem('profiling', 'nested',
545 default=0,
549 default=0,
546 )
550 )
547 coreconfigitem('profiling', 'output',
551 coreconfigitem('profiling', 'output',
548 default=None,
552 default=None,
549 )
553 )
550 coreconfigitem('profiling', 'showmax',
554 coreconfigitem('profiling', 'showmax',
551 default=0.999,
555 default=0.999,
552 )
556 )
553 coreconfigitem('profiling', 'showmin',
557 coreconfigitem('profiling', 'showmin',
554 default=dynamicdefault,
558 default=dynamicdefault,
555 )
559 )
556 coreconfigitem('profiling', 'sort',
560 coreconfigitem('profiling', 'sort',
557 default='inlinetime',
561 default='inlinetime',
558 )
562 )
559 coreconfigitem('profiling', 'statformat',
563 coreconfigitem('profiling', 'statformat',
560 default='hotpath',
564 default='hotpath',
561 )
565 )
562 coreconfigitem('profiling', 'type',
566 coreconfigitem('profiling', 'type',
563 default='stat',
567 default='stat',
564 )
568 )
565 coreconfigitem('progress', 'assume-tty',
569 coreconfigitem('progress', 'assume-tty',
566 default=False,
570 default=False,
567 )
571 )
568 coreconfigitem('progress', 'changedelay',
572 coreconfigitem('progress', 'changedelay',
569 default=1,
573 default=1,
570 )
574 )
571 coreconfigitem('progress', 'clear-complete',
575 coreconfigitem('progress', 'clear-complete',
572 default=True,
576 default=True,
573 )
577 )
574 coreconfigitem('progress', 'debug',
578 coreconfigitem('progress', 'debug',
575 default=False,
579 default=False,
576 )
580 )
577 coreconfigitem('progress', 'delay',
581 coreconfigitem('progress', 'delay',
578 default=3,
582 default=3,
579 )
583 )
580 coreconfigitem('progress', 'disable',
584 coreconfigitem('progress', 'disable',
581 default=False,
585 default=False,
582 )
586 )
583 coreconfigitem('progress', 'estimateinterval',
587 coreconfigitem('progress', 'estimateinterval',
584 default=60.0,
588 default=60.0,
585 )
589 )
586 coreconfigitem('progress', 'refresh',
590 coreconfigitem('progress', 'refresh',
587 default=0.1,
591 default=0.1,
588 )
592 )
589 coreconfigitem('progress', 'width',
593 coreconfigitem('progress', 'width',
590 default=dynamicdefault,
594 default=dynamicdefault,
591 )
595 )
592 coreconfigitem('push', 'pushvars.server',
596 coreconfigitem('push', 'pushvars.server',
593 default=False,
597 default=False,
594 )
598 )
595 coreconfigitem('server', 'bundle1',
599 coreconfigitem('server', 'bundle1',
596 default=True,
600 default=True,
597 )
601 )
598 coreconfigitem('server', 'bundle1gd',
602 coreconfigitem('server', 'bundle1gd',
599 default=None,
603 default=None,
600 )
604 )
601 coreconfigitem('server', 'bundle1.pull',
605 coreconfigitem('server', 'bundle1.pull',
602 default=None,
606 default=None,
603 )
607 )
604 coreconfigitem('server', 'bundle1gd.pull',
608 coreconfigitem('server', 'bundle1gd.pull',
605 default=None,
609 default=None,
606 )
610 )
607 coreconfigitem('server', 'bundle1.push',
611 coreconfigitem('server', 'bundle1.push',
608 default=None,
612 default=None,
609 )
613 )
610 coreconfigitem('server', 'bundle1gd.push',
614 coreconfigitem('server', 'bundle1gd.push',
611 default=None,
615 default=None,
612 )
616 )
613 coreconfigitem('server', 'compressionengines',
617 coreconfigitem('server', 'compressionengines',
614 default=list,
618 default=list,
615 )
619 )
616 coreconfigitem('server', 'concurrent-push-mode',
620 coreconfigitem('server', 'concurrent-push-mode',
617 default='strict',
621 default='strict',
618 )
622 )
619 coreconfigitem('server', 'disablefullbundle',
623 coreconfigitem('server', 'disablefullbundle',
620 default=False,
624 default=False,
621 )
625 )
622 coreconfigitem('server', 'maxhttpheaderlen',
626 coreconfigitem('server', 'maxhttpheaderlen',
623 default=1024,
627 default=1024,
624 )
628 )
625 coreconfigitem('server', 'preferuncompressed',
629 coreconfigitem('server', 'preferuncompressed',
626 default=False,
630 default=False,
627 )
631 )
628 coreconfigitem('server', 'uncompressed',
632 coreconfigitem('server', 'uncompressed',
629 default=True,
633 default=True,
630 )
634 )
631 coreconfigitem('server', 'uncompressedallowsecret',
635 coreconfigitem('server', 'uncompressedallowsecret',
632 default=False,
636 default=False,
633 )
637 )
634 coreconfigitem('server', 'validate',
638 coreconfigitem('server', 'validate',
635 default=False,
639 default=False,
636 )
640 )
637 coreconfigitem('server', 'zliblevel',
641 coreconfigitem('server', 'zliblevel',
638 default=-1,
642 default=-1,
639 )
643 )
640 coreconfigitem('smtp', 'host',
644 coreconfigitem('smtp', 'host',
641 default=None,
645 default=None,
642 )
646 )
643 coreconfigitem('smtp', 'local_hostname',
647 coreconfigitem('smtp', 'local_hostname',
644 default=None,
648 default=None,
645 )
649 )
646 coreconfigitem('smtp', 'password',
650 coreconfigitem('smtp', 'password',
647 default=None,
651 default=None,
648 )
652 )
649 coreconfigitem('smtp', 'port',
653 coreconfigitem('smtp', 'port',
650 default=dynamicdefault,
654 default=dynamicdefault,
651 )
655 )
652 coreconfigitem('smtp', 'tls',
656 coreconfigitem('smtp', 'tls',
653 default='none',
657 default='none',
654 )
658 )
655 coreconfigitem('smtp', 'username',
659 coreconfigitem('smtp', 'username',
656 default=None,
660 default=None,
657 )
661 )
658 coreconfigitem('sparse', 'missingwarning',
662 coreconfigitem('sparse', 'missingwarning',
659 default=True,
663 default=True,
660 )
664 )
661 coreconfigitem('trusted', 'groups',
665 coreconfigitem('trusted', 'groups',
662 default=list,
666 default=list,
663 )
667 )
664 coreconfigitem('trusted', 'users',
668 coreconfigitem('trusted', 'users',
665 default=list,
669 default=list,
666 )
670 )
667 coreconfigitem('ui', '_usedassubrepo',
671 coreconfigitem('ui', '_usedassubrepo',
668 default=False,
672 default=False,
669 )
673 )
670 coreconfigitem('ui', 'allowemptycommit',
674 coreconfigitem('ui', 'allowemptycommit',
671 default=False,
675 default=False,
672 )
676 )
673 coreconfigitem('ui', 'archivemeta',
677 coreconfigitem('ui', 'archivemeta',
674 default=True,
678 default=True,
675 )
679 )
676 coreconfigitem('ui', 'askusername',
680 coreconfigitem('ui', 'askusername',
677 default=False,
681 default=False,
678 )
682 )
679 coreconfigitem('ui', 'clonebundlefallback',
683 coreconfigitem('ui', 'clonebundlefallback',
680 default=False,
684 default=False,
681 )
685 )
682 coreconfigitem('ui', 'clonebundleprefers',
686 coreconfigitem('ui', 'clonebundleprefers',
683 default=list,
687 default=list,
684 )
688 )
685 coreconfigitem('ui', 'clonebundles',
689 coreconfigitem('ui', 'clonebundles',
686 default=True,
690 default=True,
687 )
691 )
688 coreconfigitem('ui', 'color',
692 coreconfigitem('ui', 'color',
689 default='auto',
693 default='auto',
690 )
694 )
691 coreconfigitem('ui', 'commitsubrepos',
695 coreconfigitem('ui', 'commitsubrepos',
692 default=False,
696 default=False,
693 )
697 )
694 coreconfigitem('ui', 'debug',
698 coreconfigitem('ui', 'debug',
695 default=False,
699 default=False,
696 )
700 )
697 coreconfigitem('ui', 'debugger',
701 coreconfigitem('ui', 'debugger',
698 default=None,
702 default=None,
699 )
703 )
700 coreconfigitem('ui', 'fallbackencoding',
704 coreconfigitem('ui', 'fallbackencoding',
701 default=None,
705 default=None,
702 )
706 )
703 coreconfigitem('ui', 'forcecwd',
707 coreconfigitem('ui', 'forcecwd',
704 default=None,
708 default=None,
705 )
709 )
706 coreconfigitem('ui', 'forcemerge',
710 coreconfigitem('ui', 'forcemerge',
707 default=None,
711 default=None,
708 )
712 )
709 coreconfigitem('ui', 'formatdebug',
713 coreconfigitem('ui', 'formatdebug',
710 default=False,
714 default=False,
711 )
715 )
712 coreconfigitem('ui', 'formatjson',
716 coreconfigitem('ui', 'formatjson',
713 default=False,
717 default=False,
714 )
718 )
715 coreconfigitem('ui', 'formatted',
719 coreconfigitem('ui', 'formatted',
716 default=None,
720 default=None,
717 )
721 )
718 coreconfigitem('ui', 'graphnodetemplate',
722 coreconfigitem('ui', 'graphnodetemplate',
719 default=None,
723 default=None,
720 )
724 )
721 coreconfigitem('ui', 'http2debuglevel',
725 coreconfigitem('ui', 'http2debuglevel',
722 default=None,
726 default=None,
723 )
727 )
724 coreconfigitem('ui', 'interactive',
728 coreconfigitem('ui', 'interactive',
725 default=None,
729 default=None,
726 )
730 )
727 coreconfigitem('ui', 'interface',
731 coreconfigitem('ui', 'interface',
728 default=None,
732 default=None,
729 )
733 )
730 coreconfigitem('ui', 'interface.chunkselector',
734 coreconfigitem('ui', 'interface.chunkselector',
731 default=None,
735 default=None,
732 )
736 )
733 coreconfigitem('ui', 'logblockedtimes',
737 coreconfigitem('ui', 'logblockedtimes',
734 default=False,
738 default=False,
735 )
739 )
736 coreconfigitem('ui', 'logtemplate',
740 coreconfigitem('ui', 'logtemplate',
737 default=None,
741 default=None,
738 )
742 )
739 coreconfigitem('ui', 'merge',
743 coreconfigitem('ui', 'merge',
740 default=None,
744 default=None,
741 )
745 )
742 coreconfigitem('ui', 'mergemarkers',
746 coreconfigitem('ui', 'mergemarkers',
743 default='basic',
747 default='basic',
744 )
748 )
745 coreconfigitem('ui', 'mergemarkertemplate',
749 coreconfigitem('ui', 'mergemarkertemplate',
746 default=('{node|short} '
750 default=('{node|short} '
747 '{ifeq(tags, "tip", "", '
751 '{ifeq(tags, "tip", "", '
748 'ifeq(tags, "", "", "{tags} "))}'
752 'ifeq(tags, "", "", "{tags} "))}'
749 '{if(bookmarks, "{bookmarks} ")}'
753 '{if(bookmarks, "{bookmarks} ")}'
750 '{ifeq(branch, "default", "", "{branch} ")}'
754 '{ifeq(branch, "default", "", "{branch} ")}'
751 '- {author|user}: {desc|firstline}')
755 '- {author|user}: {desc|firstline}')
752 )
756 )
753 coreconfigitem('ui', 'nontty',
757 coreconfigitem('ui', 'nontty',
754 default=False,
758 default=False,
755 )
759 )
756 coreconfigitem('ui', 'origbackuppath',
760 coreconfigitem('ui', 'origbackuppath',
757 default=None,
761 default=None,
758 )
762 )
759 coreconfigitem('ui', 'paginate',
763 coreconfigitem('ui', 'paginate',
760 default=True,
764 default=True,
761 )
765 )
762 coreconfigitem('ui', 'patch',
766 coreconfigitem('ui', 'patch',
763 default=None,
767 default=None,
764 )
768 )
765 coreconfigitem('ui', 'portablefilenames',
769 coreconfigitem('ui', 'portablefilenames',
766 default='warn',
770 default='warn',
767 )
771 )
768 coreconfigitem('ui', 'promptecho',
772 coreconfigitem('ui', 'promptecho',
769 default=False,
773 default=False,
770 )
774 )
771 coreconfigitem('ui', 'quiet',
775 coreconfigitem('ui', 'quiet',
772 default=False,
776 default=False,
773 )
777 )
774 coreconfigitem('ui', 'quietbookmarkmove',
778 coreconfigitem('ui', 'quietbookmarkmove',
775 default=False,
779 default=False,
776 )
780 )
777 coreconfigitem('ui', 'remotecmd',
781 coreconfigitem('ui', 'remotecmd',
778 default='hg',
782 default='hg',
779 )
783 )
780 coreconfigitem('ui', 'report_untrusted',
784 coreconfigitem('ui', 'report_untrusted',
781 default=True,
785 default=True,
782 )
786 )
783 coreconfigitem('ui', 'rollback',
787 coreconfigitem('ui', 'rollback',
784 default=True,
788 default=True,
785 )
789 )
786 coreconfigitem('ui', 'slash',
790 coreconfigitem('ui', 'slash',
787 default=False,
791 default=False,
788 )
792 )
789 coreconfigitem('ui', 'ssh',
793 coreconfigitem('ui', 'ssh',
790 default='ssh',
794 default='ssh',
791 )
795 )
792 coreconfigitem('ui', 'statuscopies',
796 coreconfigitem('ui', 'statuscopies',
793 default=False,
797 default=False,
794 )
798 )
795 coreconfigitem('ui', 'strict',
799 coreconfigitem('ui', 'strict',
796 default=False,
800 default=False,
797 )
801 )
798 coreconfigitem('ui', 'style',
802 coreconfigitem('ui', 'style',
799 default='',
803 default='',
800 )
804 )
801 coreconfigitem('ui', 'supportcontact',
805 coreconfigitem('ui', 'supportcontact',
802 default=None,
806 default=None,
803 )
807 )
804 coreconfigitem('ui', 'textwidth',
808 coreconfigitem('ui', 'textwidth',
805 default=78,
809 default=78,
806 )
810 )
807 coreconfigitem('ui', 'timeout',
811 coreconfigitem('ui', 'timeout',
808 default='600',
812 default='600',
809 )
813 )
810 coreconfigitem('ui', 'traceback',
814 coreconfigitem('ui', 'traceback',
811 default=False,
815 default=False,
812 )
816 )
813 coreconfigitem('ui', 'tweakdefaults',
817 coreconfigitem('ui', 'tweakdefaults',
814 default=False,
818 default=False,
815 )
819 )
816 coreconfigitem('ui', 'usehttp2',
820 coreconfigitem('ui', 'usehttp2',
817 default=False,
821 default=False,
818 )
822 )
819 coreconfigitem('ui', 'username',
823 coreconfigitem('ui', 'username',
820 alias=[('ui', 'user')]
824 alias=[('ui', 'user')]
821 )
825 )
822 coreconfigitem('ui', 'verbose',
826 coreconfigitem('ui', 'verbose',
823 default=False,
827 default=False,
824 )
828 )
825 coreconfigitem('verify', 'skipflags',
829 coreconfigitem('verify', 'skipflags',
826 default=None,
830 default=None,
827 )
831 )
828 coreconfigitem('web', 'allowbz2',
832 coreconfigitem('web', 'allowbz2',
829 default=False,
833 default=False,
830 )
834 )
831 coreconfigitem('web', 'allowgz',
835 coreconfigitem('web', 'allowgz',
832 default=False,
836 default=False,
833 )
837 )
834 coreconfigitem('web', 'allowpull',
838 coreconfigitem('web', 'allowpull',
835 default=True,
839 default=True,
836 )
840 )
837 coreconfigitem('web', 'allow_push',
841 coreconfigitem('web', 'allow_push',
838 default=list,
842 default=list,
839 )
843 )
840 coreconfigitem('web', 'allowzip',
844 coreconfigitem('web', 'allowzip',
841 default=False,
845 default=False,
842 )
846 )
843 coreconfigitem('web', 'cache',
847 coreconfigitem('web', 'cache',
844 default=True,
848 default=True,
845 )
849 )
846 coreconfigitem('web', 'contact',
850 coreconfigitem('web', 'contact',
847 default=None,
851 default=None,
848 )
852 )
849 coreconfigitem('web', 'deny_push',
853 coreconfigitem('web', 'deny_push',
850 default=list,
854 default=list,
851 )
855 )
852 coreconfigitem('web', 'guessmime',
856 coreconfigitem('web', 'guessmime',
853 default=False,
857 default=False,
854 )
858 )
855 coreconfigitem('web', 'hidden',
859 coreconfigitem('web', 'hidden',
856 default=False,
860 default=False,
857 )
861 )
858 coreconfigitem('web', 'labels',
862 coreconfigitem('web', 'labels',
859 default=list,
863 default=list,
860 )
864 )
861 coreconfigitem('web', 'logoimg',
865 coreconfigitem('web', 'logoimg',
862 default='hglogo.png',
866 default='hglogo.png',
863 )
867 )
864 coreconfigitem('web', 'logourl',
868 coreconfigitem('web', 'logourl',
865 default='https://mercurial-scm.org/',
869 default='https://mercurial-scm.org/',
866 )
870 )
867 coreconfigitem('web', 'accesslog',
871 coreconfigitem('web', 'accesslog',
868 default='-',
872 default='-',
869 )
873 )
870 coreconfigitem('web', 'address',
874 coreconfigitem('web', 'address',
871 default='',
875 default='',
872 )
876 )
873 coreconfigitem('web', 'allow_archive',
877 coreconfigitem('web', 'allow_archive',
874 default=list,
878 default=list,
875 )
879 )
876 coreconfigitem('web', 'allow_read',
880 coreconfigitem('web', 'allow_read',
877 default=list,
881 default=list,
878 )
882 )
879 coreconfigitem('web', 'baseurl',
883 coreconfigitem('web', 'baseurl',
880 default=None,
884 default=None,
881 )
885 )
882 coreconfigitem('web', 'cacerts',
886 coreconfigitem('web', 'cacerts',
883 default=None,
887 default=None,
884 )
888 )
885 coreconfigitem('web', 'certificate',
889 coreconfigitem('web', 'certificate',
886 default=None,
890 default=None,
887 )
891 )
888 coreconfigitem('web', 'collapse',
892 coreconfigitem('web', 'collapse',
889 default=False,
893 default=False,
890 )
894 )
891 coreconfigitem('web', 'csp',
895 coreconfigitem('web', 'csp',
892 default=None,
896 default=None,
893 )
897 )
894 coreconfigitem('web', 'deny_read',
898 coreconfigitem('web', 'deny_read',
895 default=list,
899 default=list,
896 )
900 )
897 coreconfigitem('web', 'descend',
901 coreconfigitem('web', 'descend',
898 default=True,
902 default=True,
899 )
903 )
900 coreconfigitem('web', 'description',
904 coreconfigitem('web', 'description',
901 default="",
905 default="",
902 )
906 )
903 coreconfigitem('web', 'encoding',
907 coreconfigitem('web', 'encoding',
904 default=lambda: encoding.encoding,
908 default=lambda: encoding.encoding,
905 )
909 )
906 coreconfigitem('web', 'errorlog',
910 coreconfigitem('web', 'errorlog',
907 default='-',
911 default='-',
908 )
912 )
909 coreconfigitem('web', 'ipv6',
913 coreconfigitem('web', 'ipv6',
910 default=False,
914 default=False,
911 )
915 )
912 coreconfigitem('web', 'maxchanges',
916 coreconfigitem('web', 'maxchanges',
913 default=10,
917 default=10,
914 )
918 )
915 coreconfigitem('web', 'maxfiles',
919 coreconfigitem('web', 'maxfiles',
916 default=10,
920 default=10,
917 )
921 )
918 coreconfigitem('web', 'maxshortchanges',
922 coreconfigitem('web', 'maxshortchanges',
919 default=60,
923 default=60,
920 )
924 )
921 coreconfigitem('web', 'motd',
925 coreconfigitem('web', 'motd',
922 default='',
926 default='',
923 )
927 )
924 coreconfigitem('web', 'name',
928 coreconfigitem('web', 'name',
925 default=dynamicdefault,
929 default=dynamicdefault,
926 )
930 )
927 coreconfigitem('web', 'port',
931 coreconfigitem('web', 'port',
928 default=8000,
932 default=8000,
929 )
933 )
930 coreconfigitem('web', 'prefix',
934 coreconfigitem('web', 'prefix',
931 default='',
935 default='',
932 )
936 )
933 coreconfigitem('web', 'push_ssl',
937 coreconfigitem('web', 'push_ssl',
934 default=True,
938 default=True,
935 )
939 )
936 coreconfigitem('web', 'refreshinterval',
940 coreconfigitem('web', 'refreshinterval',
937 default=20,
941 default=20,
938 )
942 )
939 coreconfigitem('web', 'stripes',
943 coreconfigitem('web', 'stripes',
940 default=1,
944 default=1,
941 )
945 )
942 coreconfigitem('web', 'style',
946 coreconfigitem('web', 'style',
943 default='paper',
947 default='paper',
944 )
948 )
945 coreconfigitem('web', 'templates',
949 coreconfigitem('web', 'templates',
946 default=None,
950 default=None,
947 )
951 )
948 coreconfigitem('web', 'view',
952 coreconfigitem('web', 'view',
949 default='served',
953 default='served',
950 )
954 )
951 coreconfigitem('worker', 'backgroundclose',
955 coreconfigitem('worker', 'backgroundclose',
952 default=dynamicdefault,
956 default=dynamicdefault,
953 )
957 )
954 # Windows defaults to a limit of 512 open files. A buffer of 128
958 # Windows defaults to a limit of 512 open files. A buffer of 128
955 # should give us enough headway.
959 # should give us enough headway.
956 coreconfigitem('worker', 'backgroundclosemaxqueue',
960 coreconfigitem('worker', 'backgroundclosemaxqueue',
957 default=384,
961 default=384,
958 )
962 )
959 coreconfigitem('worker', 'backgroundcloseminfilecount',
963 coreconfigitem('worker', 'backgroundcloseminfilecount',
960 default=2048,
964 default=2048,
961 )
965 )
962 coreconfigitem('worker', 'backgroundclosethreadcount',
966 coreconfigitem('worker', 'backgroundclosethreadcount',
963 default=4,
967 default=4,
964 )
968 )
965 coreconfigitem('worker', 'numcpus',
969 coreconfigitem('worker', 'numcpus',
966 default=None,
970 default=None,
967 )
971 )
General Comments 0
You need to be logged in to leave comments. Login now