v2 · Configuration
Legacy v2 ParamsProto classes, typed values, flags, and argument handling.
These compatibility APIs ship with the selected source version. See the compatibility overview for other v1/v2 APIs, or migration when upgrading.
API index
| Name | Kind | Defined in |
|---|---|---|
Proto | class | params_proto.v2.proto |
Flag | class | params_proto.v2.proto |
Accumulant | class | params_proto.v2.proto |
StrType | class | params_proto.v2.proto |
Eval | class | params_proto.v2.proto |
is_private | function | params_proto.v2.proto |
get_children | function | params_proto.v2.proto |
Meta | class | params_proto.v2.proto |
ArgFactory | class | params_proto.v2.proto |
ParamsProto | class | params_proto.v2.proto |
find_ancestors | function | params_proto.v2.proto |
PrefixProto | class | params_proto.v2.proto |
is_subclass | function | params_proto.v2.proto |
is_base_class | function | params_proto.v2.proto |
update | function | params_proto.v2.proto |
ARGS | singleton | params_proto.v2.proto |
params_proto.v2
Public imports
These symbols are available from this module. Their definitions are documented in the linked modules.
all_available—params_proto.parse_env_template.all_availabledot_to_deps—params_proto.v2.utils.dot_to_depsProto—params_proto.v2.proto.ProtoFlag—params_proto.v2.proto.FlagAccumulant—params_proto.v2.proto.AccumulantStrType—params_proto.v2.proto.StrTypeEval—params_proto.v2.proto.Evalis_private—params_proto.v2.proto.is_privateget_children—params_proto.v2.proto.get_childrenMeta—params_proto.v2.proto.MetaArgFactory—params_proto.v2.proto.ArgFactoryParamsProto—params_proto.v2.proto.ParamsProtofind_ancestors—params_proto.v2.proto.find_ancestorsPrefixProto—params_proto.v2.proto.PrefixProtois_subclass—params_proto.v2.proto.is_subclassis_base_class—params_proto.v2.proto.is_base_classupdate—params_proto.v2.proto.updateARGS—params_proto.v2.proto.ARGSread_deps—params_proto.v2.utils.read_deps
params_proto.v2.proto
Proto
Proto(default = None, help = None, dtype = None, metavar = '\x08', env = None, strict_parsing = False, **kwargs)Parameters
| Parameter | Type / default | Description |
|---|---|---|
default | —= None | — |
help | —= None | — |
dtype | —= None | — |
metavar | —= '\x08' | — |
env | —= None | the environment variable for the default value -- in the next version could be set automatically from the prefix of the class. |
strict_parsing | —= False | default to False, when true raises error for env var that are not set. this is passed onto the expandvars function as nounset. |
**kwargs | —variadic | — |
Attributes
| Name | Type / value | Description |
|---|---|---|
default | None | — |
help | None | — |
dtype | None | — |
Proto.__init__
Proto.__init__(default = None, help = None, dtype = None, metavar = '\x08', env = None, strict_parsing = False, **kwargs)The proto object. The env attribute allows one to set the environment variable from which this proto reads value from.
Parameters
| Parameter | Type / default | Description |
|---|---|---|
default | —= None | — |
help | —= None | — |
dtype | —= None | — |
metavar | —= '\x08' | — |
env | —= None | the environment variable for the default value -- in the next version could be set automatically from the prefix of the class. |
strict_parsing | —= False | default to False, when true raises error for env var that are not set. this is passed onto the expandvars function as nounset. |
**kwargs | —variadic | — |
Proto.value
Proto.valueFlag
Flag(help = None, to_value = True, default = None, dtype = None, **kwargs)Parameters
| Parameter | Type / default | Description |
|---|---|---|
help | —= None | — |
to_value | —= True | — |
default | —= None | — |
dtype | —= None | — |
**kwargs | —variadic | — |
Inherited members
default— fromparams_proto.v2.proto.Protohelp— fromparams_proto.v2.proto.Protodtype— fromparams_proto.v2.proto.Protovalue— fromparams_proto.v2.proto.Proto
Flag.__init__
Flag.__init__(help = None, to_value = True, default = None, dtype = None, **kwargs)Parameters
| Parameter | Type / default | Description |
|---|---|---|
help | —= None | — |
to_value | —= True | — |
default | —= None | — |
dtype | —= None | — |
**kwargs | —variadic | — |
Accumulant
Accumulant(*args, **kwargs)used by neo_hyper to avoid reset.
Parameters
| Parameter | Type / default | Description |
|---|---|---|
*args | —variadic | — |
**kwargs | —variadic | — |
Attributes
| Name | Type / value | Description |
|---|---|---|
accumulant | True | — |
Inherited members
default— fromparams_proto.v2.proto.Protohelp— fromparams_proto.v2.proto.Protodtype— fromparams_proto.v2.proto.Protovalue— fromparams_proto.v2.proto.Proto
Accumulant.__init__
Accumulant.__init__(*args, **kwargs)Parameters
| Parameter | Type / default | Description |
|---|---|---|
*args | —variadic | — |
**kwargs | —variadic | — |
StrType
class StrType(type)Eval
Eval(default, help = None, **kwargs)Parameters
| Parameter | Type / default | Description |
|---|---|---|
default | —required | — |
help | —= None | — |
**kwargs | —variadic | — |
Attributes
| Name | Type / value | Description |
|---|---|---|
thunk | None | — |
Inherited members
default— fromparams_proto.v2.proto.Protohelp— fromparams_proto.v2.proto.Protodtype— fromparams_proto.v2.proto.Protovalue— fromparams_proto.v2.proto.Proto
Eval.__init__
Eval.__init__(default, help = None, **kwargs)Parameters
| Parameter | Type / default | Description |
|---|---|---|
default | —required | — |
help | —= None | — |
**kwargs | —variadic | — |
is_private
is_private(k: str) → boolFilter Private Attributes.
Returns True if key equals "prefix", or starts with "__" or "<ParentClass>_"
Parameters
| Parameter | Type / default | Description |
|---|---|---|
k | strrequired | <str> the key to be tested. |
Returns
bool
get_children
get_children(__init__)decorator to parse the dependencies into current scope, using the cls._prefix attribute of the namespace.
Allows one to use _prefix to override to original class._prefix
Parameters
| Parameter | Type / default | Description |
|---|---|---|
__init__ | —required | — |
Meta
Meta(name, bases, namespace, cli = True, cli_parse = True, **kwargs)Parameters
| Parameter | Type / default | Description |
|---|---|---|
name | —required | — |
bases | —required | — |
namespace | —required | — |
cli | —= True | — |
cli_parse | —= True | — |
**kwargs | —variadic | — |
Meta.__init__
Meta.__init__(name, bases, namespace, cli = True, cli_parse = True, **kwargs)Parameters
| Parameter | Type / default | Description |
|---|---|---|
name | —required | — |
bases | —required | — |
namespace | —required | — |
cli | —= True | — |
cli_parse | —= True | — |
**kwargs | —variadic | — |
ArgFactory
ArgFactory()The reason we do not inherit from argparse, is because the argument group returns new instances, so unless we patch those classes as well, we will not be able to intercept these calls. (I tried that first.)
For this reason we implement this as a funciton, with a stateful context.
Attributes
| Name | Type / value | Description |
|---|---|---|
groups | defaultdict(lambda: None) | — |
last_group | None | — |
clear | __init__ | — |
ArgFactory.__init__
ArgFactory.__init__()ArgFactory.add_argument
ArgFactory.add_argument(proto, key, *name_or_flags, _argument_group = None, default = None, dtype = None, to_value = None, **kwargs)Parameters
| Parameter | Type / default | Description |
|---|---|---|
proto | —required | — |
key | —required | — |
*name_or_flags | —variadic | — |
_argument_group | —= None | Keyword-only parameter. |
default | —= None | Keyword-only parameter. |
dtype | —= None | Keyword-only parameter. |
to_value | —= None | Keyword-only parameter. |
**kwargs | —variadic | — |
ArgFactory.add_argument_group
ArgFactory.add_argument_group(name, description)Parameters
| Parameter | Type / default | Description |
|---|---|---|
name | —required | — |
description | —required | — |
ArgFactory.parse_args
ArgFactory.parse_args(*args)Parameters
| Parameter | Type / default | Description |
|---|---|---|
*args | —variadic | — |
ParamsProto
ParamsProto(_deps = None, _prefix = None, **children)Parameters
| Parameter | Type / default | Description |
|---|---|---|
_deps | —= None | — |
_prefix | —= None | — |
**children | —variadic | — |
ParamsProto.__init__
ParamsProto.__init__(_deps = None, _prefix = None, **children)default init function, called after new.
Parameters
| Parameter | Type / default | Description |
|---|---|---|
_deps | —= None | — |
_prefix | —= None | — |
**children | —variadic | — |
find_ancestors
find_ancestors(cls)Find all ancestors of a class.
Returns:
Parameters
| Parameter | Type / default | Description |
|---|---|---|
cls | —required | — |
PrefixProto
class PrefixProto(ParamsProto)A ParamsProto class with prefix set to True.
Since we override the init_subclass method, the returned classes instance is still a ParamsProto class. NOT a PrefixProto class.
Inherited members
__init__— fromparams_proto.v2.proto.ParamsProto
is_subclass
is_subclass(cls, *, ancestors = (ParamsProto, PrefixProto), extra = tuple())Parameters
| Parameter | Type / default | Description |
|---|---|---|
cls | —required | — |
ancestors | —= (ParamsProto, PrefixProto) | Keyword-only parameter. |
extra | —= tuple() | Keyword-only parameter. |
is_base_class
is_base_class(cls, extra = tuple())Check if a class is a base class of ParamsProto.
Returns:
Parameters
| Parameter | Type / default | Description |
|---|---|---|
cls | —required | — |
extra | —= tuple() | — |
update
update(Config: Union[type, Meta, ParamsProto], override)Update a ParamsProto namespace, or instance
by the override dictionary. Note the dictionary is dot.separated
dot-keys are not yet implemented.
Returns:
Parameters
| Parameter | Type / default | Description |
|---|---|---|
Config | Union[type, Meta, ParamsProto]required | — |
override | —required | — |
ARGS
ARGS = ArgFactory()The reason we do not inherit from argparse, is because the argument group returns new instances, so unless we patch those classes as well, we will not be able to intercept these calls. (I tried that first.)
For this reason we implement this as a funciton, with a stateful context.
Attributes
| Name | Type / value | Description |
|---|---|---|
groups | defaultdict(lambda: None) | — |
last_group | None | — |
clear | __init__ | — |
ARGS.__init__
ARGS.__init__()ARGS.add_argument
ARGS.add_argument(proto, key, *name_or_flags, _argument_group = None, default = None, dtype = None, to_value = None, **kwargs)Parameters
| Parameter | Type / default | Description |
|---|---|---|
proto | —required | — |
key | —required | — |
*name_or_flags | —variadic | — |
_argument_group | —= None | Keyword-only parameter. |
default | —= None | Keyword-only parameter. |
dtype | —= None | Keyword-only parameter. |
to_value | —= None | Keyword-only parameter. |
**kwargs | —variadic | — |
ARGS.add_argument_group
ARGS.add_argument_group(name, description)Parameters
| Parameter | Type / default | Description |
|---|---|---|
name | —required | — |
description | —required | — |
ARGS.parse_args
ARGS.parse_args(*args)Parameters
| Parameter | Type / default | Description |
|---|---|---|
*args | —variadic | — |
Public imports
These symbols are available from this module. Their definitions are documented in the linked modules.
all_available—params_proto.parse_env_template.all_availabledot_to_deps—params_proto.v2.utils.dot_to_deps