# Buildsheet autogenerated by ravenadm tool -- Do not edit. NAMEBASE= python-jsonargparse VERSION= 4.20.0 KEYWORDS= python VARIANTS= py310 v11 SDESC[py310]= JSON argument and config file parser (3.10) SDESC[v11]= JSON argument and config file parser (3.11) HOMEPAGE= https://github.com/omni-us/jsonargparse CONTACT= Python_Automaton[python@ironwolf.systems] DOWNLOAD_GROUPS= main SITES[main]= PYPIWHL/8d/fd/e1628a6e74542888cbc40ec0bc6c8d7ab82f50f078ef4be5549af69f10eb DISTFILE[1]= jsonargparse-4.20.0-py3-none-any.whl:main DF_INDEX= 1 SPKGS[py310]= single SPKGS[v11]= single OPTIONS_AVAILABLE= PY310 PY311 OPTIONS_STANDARD= none VOPTS[py310]= PY310=ON PY311=OFF VOPTS[v11]= PY310=OFF PY311=ON DISTNAME= jsonargparse-4.20.0.dist-info GENERATED= yes [PY310].RUN_DEPENDS_ON= python-PyYAML:single:py310 [PY310].USES_ON= python:py310,wheel [PY311].RUN_DEPENDS_ON= python-PyYAML:single:v11 [PY311].USES_ON= python:v11,wheel [FILE:3387:descriptions/desc.single] jsonargparse ============ https://github.com/omni-us/jsonargparse/ This package is an extension to python's argparse which simplifies parsing of configuration options from command line arguments, json configuration files ([yaml] or [jsonnet] supersets), environment variables and hard-coded defaults. The aim is similar to other projects such as [configargparse ], [yconf ], [confuse ], [typer ], [OmegaConf ], [Fire ] and [click ]. The obvious question is, why yet another package similar to many already existing ones? The answer is simply that none of the existing projects had the exact features we wanted and after analyzing the alternatives it seemed simpler to start a new project. Features ======== - Great support of type hints for automatic creation of parsers and minimal boilerplate command line interfaces. - Non-intrusive/decoupled parsing logic. No need to inherit from a special class or add decorators or use custom type hints. - Easy to implement configurable dependency injection (object composition). - Support for nested namespaces making possible to parse config files with non-flat hierarchies. - Parsing of relative paths within config files and path lists. - Support for two popular supersets of json: yaml and jsonnet. - Parsers can be configured just like with python's argparse, thus it has a gentle learning curve. - Several convenient types and action classes to ease common parsing use cases (paths, comparison operators, json schemas, enums, regex strings, ...). - Support for command line tab argument completion using [argcomplete ]. .. _installation: Installation ============ You can install using [pip] as: .. code-block:: bash pip install jsonargparse By default the only dependency that jsonargparse installs is [PyYAML ]. However, several optional features can be enabled by specifying any of the following extras requires: signatures, jsonschema, jsonnet, urls, argcomplete and reconplogger. There is also the all extras require to enable all optional features. Installing jsonargparse with extras require is as follows: .. code-block:: bash pip install "jsonargparse[signatures,urls]" # Enable signatures and URLs features pip install "jsonargparse[all]" # Enable all optional features The following table references sections that describe optional features and the corresponding extras requires that enables them. +-----------------------------+-------------+-------------+---------+------------+------------+ | | urls/fsspec | argcomplete | jsonnet | jsonschema | signatures | +-----------------------------+-------------+-------------+---------+------------+------------+ | `classes-methods-functions` | | | | | ✓ | +-----------------------------+-------------+-------------+---------+------------+------------+ | `parsing-urls` | ✓ | | | | | +-----------------------------+-------------+-------------+---------+------------+------------+ | `json-schemas` | | | | ✓ | | +-----------------------------+-------------+-------------+---------+------------+------------+ | `jsonnet-files` | | | ✓ | | | [FILE:115:distinfo] b42548a3ab7edc9108b40269109c43ba6973e523fa6ba6ff5f9e7583dd2e46fa 183620 jsonargparse-4.20.0-py3-none-any.whl