[PATCH STABLE] share: move config item declarations into core

Gregory Szorc gregory.szorc at gmail.com
Mon Nov 6 13:41:01 EST 2017


# HG changeset patch
# User Gregory Szorc <gregory.szorc at gmail.com>
# Date 1509993220 28800
#      Mon Nov 06 10:33:40 2017 -0800
# Branch stable
# Node ID 0f6f27367dae401905a789f4e7fa1d672304b24a
# Parent  f445b10dc7fb3495d24d1c22b0996148864c77f7
share: move config item declarations into core

These config items control share behavior that is implemented in core.
Since the functionality is implemented in core, extensions may
leverage it.

Mozilla has one such extension. And, it needs to access share.pool.
Before this patch, a devel warning regarding accessing an unregistered
config option would be issued unless the share extension were loaded.
Moving the registration of the config options to core fixes this.

diff --git a/hgext/share.py b/hgext/share.py
--- a/hgext/share.py
+++ b/hgext/share.py
@@ -63,16 +63,6 @@ command = registrar.command(cmdtable)
 # leave the attribute unspecified.
 testedwith = 'ships-with-hg-core'
 
-configtable = {}
-configitem = registrar.configitem(configtable)
-
-configitem('share', 'pool',
-    default=None,
-)
-configitem('share', 'poolnaming',
-    default='identity',
-)
-
 @command('share',
     [('U', 'noupdate', None, _('do not create a working directory')),
      ('B', 'bookmarks', None, _('also share bookmarks')),
diff --git a/mercurial/configitems.py b/mercurial/configitems.py
--- a/mercurial/configitems.py
+++ b/mercurial/configitems.py
@@ -790,6 +790,12 @@ coreconfigitem('server', 'validate',
 coreconfigitem('server', 'zliblevel',
     default=-1,
 )
+coreconfigitem('share', 'pool',
+    default=None,
+)
+coreconfigitem('share', 'poolnaming',
+    default='identity',
+)
 coreconfigitem('smtp', 'host',
     default=None,
 )


More information about the Mercurial-devel mailing list