Ravenports generated: 03 Aug 2023 23:53
[ravenports.git] / bucket_C8 / python-jsonargparse
1 # Buildsheet autogenerated by ravenadm tool -- Do not edit.
2
3 NAMEBASE=               python-jsonargparse
4 VERSION=                4.23.0
5 KEYWORDS=               python
6 VARIANTS=               py310 v11
7 SDESC[py310]=           JSON argument and config file parser (3.10)
8 SDESC[v11]=             JSON argument and config file parser (3.11)
9 HOMEPAGE=               none
10 CONTACT=                Python_Automaton[python@ironwolf.systems]
11
12 DOWNLOAD_GROUPS=        main
13 SITES[main]=            PYPIWHL/8f/f9/01a023c42ce3f7de79976de30a49ce0cf59c622aa1f83147469d20e371b9
14 DISTFILE[1]=            jsonargparse-4.23.0-py3-none-any.whl:main
15 DF_INDEX=               1
16 SPKGS[py310]=           single
17 SPKGS[v11]=             single
18
19 OPTIONS_AVAILABLE=      PY310 PY311
20 OPTIONS_STANDARD=       none
21 VOPTS[py310]=           PY310=ON PY311=OFF
22 VOPTS[v11]=             PY310=OFF PY311=ON
23
24 DISTNAME=               jsonargparse-4.23.0.dist-info
25
26 GENERATED=              yes
27
28 [PY310].RUN_DEPENDS_ON=                 python-PyYAML:single:py310
29 [PY310].USES_ON=                        python:py310,wheel
30
31 [PY311].RUN_DEPENDS_ON=                 python-PyYAML:single:v11
32 [PY311].USES_ON=                        python:v11,wheel
33
34 [FILE:3341:descriptions/desc.single]
35
36
37 jsonargparse
38 ============
39
40 Docs: https://jsonargparse.readthedocs.io/
41
42 Source: https://github.com/omni-us/jsonargparse/
43
44 This package is an extension to python's argparse which simplifies parsing
45 of
46 configuration options from command line arguments, json configuration files
47 ([yaml] or [jsonnet] supersets),
48 environment variables and hard-coded defaults.
49
50 The aim is similar to other projects such as [configargparse
51 ], [yconf
52 ], [confuse
53 ], [typer
54 ], [OmegaConf
55 ], [Fire
56 ] and [click
57 ]. The obvious question is, why yet another
58 package similar to many already existing ones? The answer is simply that
59 none of
60 the existing projects had the exact features we wanted and after analyzing
61 the
62 alternatives it seemed simpler to start a new project.
63
64 Features
65 ========
66
67 - Great support of type hints for automatic creation of parsers and minimal
68   boilerplate command line interfaces.
69
70 - Non-intrusive/decoupled parsing logic. No need to inherit from a special
71 class
72   or add decorators or use custom type hints.
73
74 - Easy to implement configurable dependency injection (object composition).
75
76 - Support for nested namespaces making possible to parse config files with
77   non-flat hierarchies.
78
79 - Parsing of relative paths within config files and path lists.
80
81 - Support for two popular supersets of json: yaml and jsonnet.
82
83 - Parsers can be configured just like with python's argparse, thus it has a
84   gentle learning curve.
85
86 - Several convenient types and action classes to ease common parsing use
87 cases
88   (paths, comparison operators, json schemas, enums, regex strings, ...).
89
90 - Support for command line tab argument completion using [argcomplete
91  ].
92
93 .. _installation:
94
95 Installation
96 ============
97
98 You can install using [pip] as:
99
100 .. code-block:: bash
101
102     pip install jsonargparse
103
104 By default the only dependency that jsonargparse installs is [PyYAML
105 ]. However, several optional features can be
106 enabled by specifying any of the following extras requires: signatures,
107 jsonschema, jsonnet, urls, argcomplete and reconplogger.
108 There is also the all extras require to enable all optional features.
109 Installing jsonargparse with extras require is as follows:
110
111 .. code-block:: bash
112
113     pip install "jsonargparse[signatures,urls]"  # Enable signatures and
114 URLs features
115     pip install "jsonargparse[all]"              # Enable all optional
116 features
117
118 The following table references sections that describe optional features and
119 the
120 corresponding extras requires that enables them.
121
122 +-----------------------------+-------------+-------------+---------+------------+------------+
123 |                             | urls/fsspec | argcomplete | jsonnet |
124 jsonschema | signatures |
125 +-----------------------------+-------------+-------------+---------+------------+------------+
126 | `classes-methods-functions` |             |             |         |      
127      | ✓          |
128 +-----------------------------+-------------+-------------+---------+------------+------------+
129 | `parsing-urls`              | ✓           |             |         |    
130        |            |
131 +-----------------------------+-------------+-------------+---------+------------+------------+
132 | `json-schemas`              |             |             |         | ✓  
133        |            |
134 +-----------------------------+-------------+-------------+---------+------------+------------+
135
136
137 [FILE:115:distinfo]
138 b057619b1d317b849bf6d8e36e6cdb2074c2b676b5a5e4df794faf1f3c26e2aa       198674 jsonargparse-4.23.0-py3-none-any.whl
139