[PATCH 1 of 8] configitems: add a basic class to hold config item information
Martin von Zweigbergk
martinvonz at google.com
Thu Jun 22 00:49:06 EDT 2017
On Wed, Jun 21, 2017 at 1:55 AM, Pierre-Yves David
<pierre-yves.david at ens-lyon.org> wrote:
> # HG changeset patch
> # User Pierre-Yves David <pierre-yves.david at octobus.net>
> # Date 1497717715 -7200
> # Sat Jun 17 18:41:55 2017 +0200
> # Node ID 76b9e5749847f4c80a9bbd70f1eede96cb41e4fe
> # Parent 4107eb8a5648ad31f7fb3e95bbc8999c73a94c49
> # EXP-Topic config.register
> # Available At https://www.mercurial-scm.org/repo/users/marmoute/mercurial/
> # hg pull https://www.mercurial-scm.org/repo/users/marmoute/mercurial/ -r 76b9e5749847
> configitems: add a basic class to hold config item information
>
> The goal of this class is allow explicit declaration for the available config
> option. This class will hold the data for one specific config item.
>
> To keep it simple we start centralizing the handling of the default config value.
>
> In the future we can expect more data to be carried on this class. For example:
> - documentation,
> - status (experimental, advanced, normal, deprecated),
> - aliases,
> - expected type,
> - etc...
>
> diff --git a/mercurial/configitems.py b/mercurial/configitems.py
> new file mode 100644
> --- /dev/null
> +++ b/mercurial/configitems.py
> @@ -0,0 +1,25 @@
> +# config.py - centralized declaration of configuration option
> +#
> +# Copyright 2017 Pierre-Yves David <pierre-yves.david at octobus.net>
> +#
> +# This software may be used and distributed according to the terms of the
> +# GNU General Public License version 2 or any later version.
> +
> +from __future__ import absolute_import
> +
> +from . import (
> + error,
> +)
Moving this import to patch 2 in flight.
> +
> +class configitem(object):
> + """represent a known config item
> +
> + :section: the official config section where to find this item,
> + :name: the official name within the section,
> + :default: default value for this item,
> + """
> +
> + def __init__(self, section, name, default=None):
> + self.section = section
> + self.name = name
> + self.default = default
> _______________________________________________
> Mercurial-devel mailing list
> Mercurial-devel at mercurial-scm.org
> https://www.mercurial-scm.org/mailman/listinfo/mercurial-devel
More information about the Mercurial-devel
mailing list