# Buildsheet autogenerated by ravenadm tool -- Do not edit. NAMEBASE= python-jsonargparse VERSION= 4.23.1 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= none CONTACT= Python_Automaton[python@ironwolf.systems] DOWNLOAD_GROUPS= main SITES[main]= PYPIWHL/76/cb/46990ca2a355ec970565686f2e4fca919839b3b9023c96fb55b966796047 DISTFILE[1]= jsonargparse-4.23.1-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.23.1.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:3406:descriptions/desc.single] jsonargparse ============ Docs: https://jsonargparse.readthedocs.io/ | Source: 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 json, yaml, jsonnet and extendible to more. - 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, 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] 225a401cb0e0ed8ed65f4557f8cc70b3a53d8aaf98c8676dd32cb9556794d406 199118 jsonargparse-4.23.1-py3-none-any.whl