On Fri, 07 Jul 2017 08:37:32 +0200, David Demelier wrote:
> # HG changeset patch
> # User David Demelier <demelier.da...@gmail.com>
> # Date 1499409190 -7200
> #      Fri Jul 07 08:33:10 2017 +0200
> # Node ID 936ce124293ab334d10239c9088c74f47fc55212
> # Parent  d32ff523e0219b48b119d9dc44d9d07638153a72
> configitems: add alias support in config

Queued, many thanks.

>      def _config(self, section, name, default=_unset, untrusted=False):
>          value = default
> -        if isinstance(name, list):
> -            alternates = name
> -        else:
> -            item = self._knownconfig.get(section, {}).get(name)
> -            if default is _unset:
> -                if item is None:
> -                    value = default
> -                elif callable(item.default):
> +        item = self._knownconfig.get(section, {}).get(name)
> +        alternates = [(section, name)]
> +
> +        if item is not None:
> +            alternates.extend(item.alias)
> +
> +        if default is _unset:
> +            if item is None:
> +                value = default
> +            elif callable(item.default):
>                      value = item.default()
> -                else:
> -                    value = item.default
> -            elif item is not None:
> -                msg = ("specifying a default value for a registered "
> -                       "config item: '%s.%s' '%s'")
> -                msg %= (section, name, default)
> -                self.develwarn(msg, 2, 'warn-config-default')
> +            else:
> +                value = item.default
> +        elif item is not None:
> +            msg = ("specifying a default value for a registered "
> +                   "config item: '%s.%s' '%s'")
> +            msg %= (section, name, default)
> +            self.develwarn(msg, 2, 'warn-config-default')
>  
> -            alternates = [name]
> -
> -        for n in alternates:
> -            candidate = self._data(untrusted).get(section, n, None)
> +        for s, n in alternates:
> +            candidate = self._data(untrusted).get(s, n, None)
>              if candidate is not None:
>                  value = candidate
> +                section = s
>                  name = n
>                  break

Nit: section and name set here appear to be unused.
_______________________________________________
Mercurial-devel mailing list
Mercurial-devel@mercurial-scm.org
https://www.mercurial-scm.org/mailman/listinfo/mercurial-devel

Reply via email to