File: PKG-INFO

package info (click to toggle)
python-argparse-addons 0.12.0-2
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 96 kB
  • sloc: python: 116; makefile: 26
file content (113 lines) | stat: -rw-r--r-- 2,767 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
Metadata-Version: 2.1
Name: argparse-addons
Version: 0.12.0
Summary: Additional argparse types and actions.
Home-page: https://github.com/eerimoq/argparse_addons
Author: Erik Moqvist
Author-email: erik.moqvist@gmail.com
License: MIT
Keywords: argparse
Classifier: License :: OSI Approved :: MIT License
Requires-Python: >=3.6
License-File: LICENSE

About
=====

Additional Python argparse types and actions.

Project homepage: https://github.com/eerimoq/argparse_addons

Installation
============

.. code-block:: text

    $ pip install argparse_addons

Examples
========

Integer type
------------

The script. See `examples/integer.py`_ for the complete script.

.. code-block:: python

   parser.add_argument('--min-max',
                       type=argparse_addons.Integer(0, 255))
   parser.add_argument('--min',
                       type=argparse_addons.Integer(0, None))
   parser.add_argument('--max',
                       type=argparse_addons.Integer(None, 255))
   parser.add_argument('--any',
                       type=argparse_addons.Integer())

Error message for the ``--min-max`` argument.

.. code-block:: text

   $ python3 examples/integer.py --min-max -1
   usage: integer.py [-h] [--min-max MIN_MAX] [--min MIN] [--max MAX] [--any ANY]
   integer.py: error: argument --min-max: -1 is not in the range 0..255

Error message for the ``--min`` argument.

.. code-block:: text

   $ python3 examples/integer.py --min -1
   usage: integer.py [-h] [--min-max MIN_MAX] [--min MIN] [--max MAX] [--any ANY]
   integer.py: error: argument --min: -1 is not in the range 0..inf

Error message for the ``--max`` argument.

.. code-block:: text

   $ python3 examples/integer.py --max 1000
   usage: integer.py [-h] [--min-max MIN_MAX] [--min MIN] [--max MAX] [--any ANY]
   integer.py: error: argument --max: 1000 is not in the range -inf..255

Error message for the ``--any`` argument.

.. code-block:: text

   $ python3 examples/integer.py --any a
   usage: integer.py [-h] [--min-max MIN_MAX] [--min MIN] [--max MAX] [--any ANY]
   integer.py: error: argument --any: invalid integer value: 'a'

All values within allowed ranges.

.. code-block:: text

   $ python3 examples/integer.py --min-max 47 --min 1000 --max -5 --any 1
   --min-max: 47
   --min:     1000
   --max:     -5
   --any:     1

Contributing
============

#. Fork the repository.

#. Install prerequisites.

   .. code-block:: text

      pip install -r requirements.txt

#. Implement the new feature or bug fix.

#. Implement test case(s) to ensure that future changes do not break
   legacy.

#. Run the tests.

   .. code-block:: text

      make test

#. Create a pull request.

.. _examples/integer.py: https://github.com/eerimoq/argparse_addons/blob/master/examples/integer.py