mercurial/ui.py
changeset 33471 d74141ccfd8b
parent 33329 e714159860fd
child 33499 0407a51b9d8c
--- a/mercurial/ui.py	Fri Jul 14 16:17:37 2017 +0200
+++ b/mercurial/ui.py	Wed Jul 12 23:36:10 2017 +0200
@@ -457,11 +457,17 @@
         if default is _unset:
             if item is None:
                 value = default
+            elif item.default is configitems.dynamicdefault:
+                value = None
+                msg = "config item requires an explicit default value: '%s.%s'"
+                msg %= (section, name)
+                self.develwarn(msg, 2, 'warn-config-default')
             elif callable(item.default):
                     value = item.default()
             else:
                 value = item.default
-        elif item is not None:
+        elif (item is not None
+              and item.default is not configitems.dynamicdefault):
             msg = ("specifying a default value for a registered "
                    "config item: '%s.%s' '%s'")
             msg %= (section, name, default)