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