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