cmd2 2.7.0__py3-none-any.whl → 3.0.0b1__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,39 +1,16 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: cmd2
3
- Version: 2.7.0
3
+ Version: 3.0.0b1
4
4
  Summary: cmd2 - quickly build feature-rich and user-friendly interactive command line applications in Python
5
5
  Author: cmd2 Contributors
6
- License: The MIT License (MIT)
7
-
8
- Copyright (c) 2008-2025 Catherine Devlin and others
9
-
10
- Permission is hereby granted, free of charge, to any person obtaining a copy
11
- of this software and associated documentation files (the "Software"), to deal
12
- in the Software without restriction, including without limitation the rights
13
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
14
- copies of the Software, and to permit persons to whom the Software is
15
- furnished to do so, subject to the following conditions:
16
-
17
- The above copyright notice and this permission notice shall be included in
18
- all copies or substantial portions of the Software.
19
-
20
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
21
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
22
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
23
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
24
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
25
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
26
- THE SOFTWARE.
27
-
6
+ License-Expression: MIT
28
7
  Keywords: CLI,cmd,command,interactive,prompt,Python
29
8
  Classifier: Development Status :: 5 - Production/Stable
30
9
  Classifier: Environment :: Console
31
10
  Classifier: Operating System :: OS Independent
32
11
  Classifier: Intended Audience :: Developers
33
12
  Classifier: Intended Audience :: System Administrators
34
- Classifier: License :: OSI Approved :: MIT License
35
13
  Classifier: Programming Language :: Python :: 3 :: Only
36
- Classifier: Programming Language :: Python :: 3.9
37
14
  Classifier: Programming Language :: Python :: 3.10
38
15
  Classifier: Programming Language :: Python :: 3.11
39
16
  Classifier: Programming Language :: Python :: 3.12
@@ -41,21 +18,22 @@ Classifier: Programming Language :: Python :: 3.13
41
18
  Classifier: Programming Language :: Python :: 3.14
42
19
  Classifier: Programming Language :: Python :: Free Threading :: 3 - Stable
43
20
  Classifier: Topic :: Software Development :: Libraries :: Python Modules
44
- Requires-Python: >=3.9
21
+ Requires-Python: >=3.10
45
22
  Description-Content-Type: text/markdown
46
23
  License-File: LICENSE
24
+ Requires-Dist: backports.strenum; python_version == "3.10"
47
25
  Requires-Dist: gnureadline>=8; platform_system == "Darwin"
48
26
  Requires-Dist: pyperclip>=1.8
49
27
  Requires-Dist: pyreadline3>=3.4; platform_system == "Windows"
28
+ Requires-Dist: rich>=14.1.0
50
29
  Requires-Dist: rich-argparse>=1.7.1
51
- Requires-Dist: wcwidth>=0.2.10
52
30
  Dynamic: license-file
53
31
 
54
32
  <h1 align="center">cmd2 : immersive interactive command line applications</h1>
55
33
 
56
34
  [![Latest Version](https://img.shields.io/pypi/v/cmd2.svg?style=flat-square&label=latest%20stable%20version)](https://pypi.python.org/pypi/cmd2/)
57
35
  [![GitHub Actions](https://github.com/python-cmd2/cmd2/workflows/CI/badge.svg)](https://github.com/python-cmd2/cmd2/actions?query=workflow%3ACI)
58
- [![codecov](https://codecov.io/gh/python-cmd2/cmd2/branch/master/graph/badge.svg)](https://codecov.io/gh/python-cmd2/cmd2)
36
+ [![codecov](https://codecov.io/gh/python-cmd2/cmd2/branch/main/graph/badge.svg)](https://codecov.io/gh/python-cmd2/cmd2)
59
37
  [![Documentation Status](https://readthedocs.org/projects/cmd2/badge/?version=latest)](http://cmd2.readthedocs.io/en/latest/?badge=latest)
60
38
  <a href="https://discord.gg/RpVG6tk"><img src="https://img.shields.io/badge/chat-on%20discord-7289da.svg" alt="Chat"></a>
61
39
 
@@ -69,7 +47,7 @@ Dynamic: license-file
69
47
  <a href="#projects-using-cmd2">Projects using cmd2</a> •
70
48
  </p>
71
49
 
72
- [![Screenshot](https://raw.githubusercontent.com/python-cmd2/cmd2/master/cmd2.png)](https://youtu.be/DDU_JH6cFsA)
50
+ [![Screenshot](https://raw.githubusercontent.com/python-cmd2/cmd2/main/cmd2.png)](https://youtu.be/DDU_JH6cFsA)
73
51
 
74
52
  cmd2 is a tool for building interactive command line applications in Python. Its goal is to make it
75
53
  quick and easy for developers to build feature-rich and user-friendly interactive command line
@@ -78,9 +56,13 @@ applications. It provides a simple API which is an extension of Python's built-i
78
56
  of cmd to make your life easier and eliminates much of the boilerplate code which would be necessary
79
57
  when using cmd.
80
58
 
59
+ > :warning: **cmd2 is now "feature complete" for the `2.x` branch and is actively working on the
60
+ > 3.0.0 release on the `main` branch. New features will only be addressed in 3.x moving forwards. If
61
+ > need be, we will still fix bugs in 2.x.**
62
+
81
63
  ## The developers toolbox
82
64
 
83
- ![system schema](https://raw.githubusercontent.com/python-cmd2/cmd2/master/.github/images/graph.drawio.png)
65
+ ![system schema](https://raw.githubusercontent.com/python-cmd2/cmd2/main/.github/images/graph.drawio.png)
84
66
 
85
67
  When creating solutions developers have no shortage of tools to create rich and smart user
86
68
  interfaces. System administrators have long been duct taping together brittle workflows based on a
@@ -88,7 +70,7 @@ menagerie of simple command line tools created by strangers on github and the gu
88
70
  Unfortunately, when CLIs become significantly complex the ease of command discoverability tends to
89
71
  fade quickly. On the other hand, Web and traditional desktop GUIs are first in class when it comes
90
72
  to easily discovering functionality. The price we pay for beautifully colored displays is complexity
91
- required to aggregate disperate applications into larger systems. `cmd2` fills the niche between
73
+ required to aggregate disparate applications into larger systems. `cmd2` fills the niche between
92
74
  high [ease of command discovery](https://clig.dev/#ease-of-discovery) applications and smart
93
75
  workflow automation systems.
94
76
 
@@ -136,7 +118,7 @@ On all operating systems, the latest stable version of `cmd2` can be installed u
136
118
  pip install -U cmd2
137
119
  ```
138
120
 
139
- cmd2 works with Python 3.9+ on Windows, macOS, and Linux. It is pure Python code with few 3rd-party
121
+ cmd2 works with Python 3.10+ on Windows, macOS, and Linux. It is pure Python code with few 3rd-party
140
122
  dependencies. It works with both conventional CPython and free-threaded variants.
141
123
 
142
124
  For information on other installation options, see
@@ -154,20 +136,16 @@ examples.
154
136
 
155
137
  ## Tutorials
156
138
 
157
- - PyOhio 2019 presentation:
158
- - [video](https://www.youtube.com/watch?v=pebeWrTqIIw)
159
- - [slides](https://github.com/python-cmd2/talks/blob/master/PyOhio_2019/cmd2-PyOhio_2019.pdf)
160
- - [example code](https://github.com/python-cmd2/talks/tree/master/PyOhio_2019/examples)
139
+ - [cmd2 example applications](https://github.com/python-cmd2/cmd2/tree/main/examples)
140
+ - Basic cmd2 examples to demonstrate how to use various features
141
+ - [Advanced Examples](https://github.com/jayrod/cmd2-example-apps)
142
+ - More complex examples that demonstrate more featuers about how to put together a complete
143
+ application
161
144
  - [Cookiecutter](https://github.com/cookiecutter/cookiecutter) Templates from community
162
145
  - Basic cookiecutter template for cmd2 application :
163
146
  https://github.com/jayrod/cookiecutter-python-cmd2
164
147
  - Advanced cookiecutter template with external plugin support :
165
148
  https://github.com/jayrod/cookiecutter-python-cmd2-ext-plug
166
- - [cmd2 example applications](https://github.com/python-cmd2/cmd2/tree/master/examples)
167
- - Basic cmd2 examples to demonstrate how to use various features
168
- - [Advanced Examples](https://github.com/jayrod/cmd2-example-apps)
169
- - More complex examples that demonstrate more featuers about how to put together a complete
170
- application
171
149
 
172
150
  ## Hello World
173
151
 
@@ -180,9 +158,8 @@ import cmd2
180
158
  class FirstApp(cmd2.Cmd):
181
159
  """A simple cmd2 application."""
182
160
 
183
-
184
- def do_hello_world(self, _: cmd2.Statement):
185
- self.poutput('Hello World')
161
+ def do_hello_world(self, _: cmd2.Statement):
162
+ self.poutput('Hello World')
186
163
 
187
164
 
188
165
  if __name__ == '__main__':
@@ -224,6 +201,7 @@ reproduce the bug. At a minimum, please state the following:
224
201
  | [tomcatmanager](https://github.com/tomcatmanager/tomcatmanager) | A command line tool and python library for managing a tomcat server | [tomcatmanager](https://github.com/tomcatmanager) |
225
202
  | [Falcon Toolkit](https://github.com/CrowdStrike/Falcon-Toolkit) | Unleash the power of the CrowdStrike Falcon Platform at the CLI | [CrowdStrike](https://github.com/CrowdStrike) |
226
203
  | [EXPLIoT](https://gitlab.com/expliot_framework/expliot) | Internet of Things Security Testing and Exploitation framework | [expliot_framework](https://gitlab.com/expliot_framework/) |
204
+ | [Pobshell](https://github.com/pdalloz/pobshell) | A Bash‑like shell for live Python objects: `cd`, `ls`, `cat`, `find` and _CLI piping_ for object code, str values & more | [Peter Dalloz](https://www.linkedin.com/in/pdalloz) |
227
205
 
228
206
  Possibly defunct but still good examples
229
207
 
@@ -0,0 +1,27 @@
1
+ cmd2/__init__.py,sha256=JG-jiy2MMArRTujSiU8usvQpdgQbl3KLTim4tU5SCJw,2278
2
+ cmd2/argparse_completer.py,sha256=QaOXP-SfHwmoieNJf5kjZAy0osP3KPeOOx7aYKYthwc,35681
3
+ cmd2/argparse_custom.py,sha256=k6l6KUGK8GujvFIXEqLvYiRYWpM491zufDODfXThEoc,67239
4
+ cmd2/clipboard.py,sha256=5PSKTe3uDe2pFFEDUEMMwAmzcyPkbXXz14SOQxFFncg,515
5
+ cmd2/cmd2.py,sha256=kpmLwgRrZXUDLnFTnvlaAO80Zqh9YFqyf9wWFf9dVww,271802
6
+ cmd2/colors.py,sha256=gLAU8gjhPwZud9MNVk53RGE9ZSdwspLnye_kReeZKjc,7848
7
+ cmd2/command_definition.py,sha256=4FQgivn-9aZegU5tbUl6XsK_G_gZTMfsbGDortz-Ir8,7992
8
+ cmd2/constants.py,sha256=yDcaeEG4Y2DHmLwUpV-_lEiHkiYUZEuyf9mpDdAzmkg,1773
9
+ cmd2/decorators.py,sha256=_xxagAxlcUROLZowqjW5RYP935uNMEJyr2h8FkWalGw,17356
10
+ cmd2/exceptions.py,sha256=J8Ck0dhusB2cfVksRLkM4WVgBTGQnPdEcU26RfBjjRw,3440
11
+ cmd2/history.py,sha256=QNg5QOe3854hFsu9qw7QlqtnTQvmtXojOWgMZlg6JoQ,14755
12
+ cmd2/parsing.py,sha256=G3Ox876rLY4rZ089GjnMlDDbHN_R_g9bemTQ_ONB4Hg,27994
13
+ cmd2/plugin.py,sha256=sju631SN_ldjDFJT5ppmK65btq120r9xuhTpCRCbCCA,762
14
+ cmd2/py.typed,sha256=qrkHrYJvGoZpU2BpVLNxJB44LlhqVSKyYOwD_L_1m3s,10
15
+ cmd2/py_bridge.py,sha256=dpafsQ2fhhDv-PXu1ZOaiLW4ficD0IsZm-y2nGGfdrU,5191
16
+ cmd2/rich_utils.py,sha256=hYD5Cpl1fAYeau3l8NuJIO9SGiC44Ew9vTKHret6QMo,16364
17
+ cmd2/rl_utils.py,sha256=tlDsH5QnN5xlkJT62Q4ZSOHvccXtt1Nm6kcWJQh6cUc,11315
18
+ cmd2/string_utils.py,sha256=7F8ORonOc2xS0ZC56hjhQcnZhonE3lDFdQxij6v54dA,4430
19
+ cmd2/styles.py,sha256=kuekxVEr0kOrDNJJbVFqOl96YqX8M6lheKBCBS1nGSU,2945
20
+ cmd2/terminal_utils.py,sha256=AOk1VjOAzxn7jou2wbALeD6FRIRlKgkQ0VCzIEY51DA,6052
21
+ cmd2/transcript.py,sha256=aD5J7UcU82XNo_nJ6wr98t97OkhOsR04VZwbwb1lJLs,9224
22
+ cmd2/utils.py,sha256=4jlhcHfgr8yoymP2hRPeCr7_1J37vI4MIIBkszyPK6M,32292
23
+ cmd2-3.0.0b1.dist-info/licenses/LICENSE,sha256=9qPeHY4u2fkSz0JQGT-P4T3QqTWTqnQJ_8LkZUhSdFY,1099
24
+ cmd2-3.0.0b1.dist-info/METADATA,sha256=l0NJwAie8NqBSLDlHG0kxTNxS4sT7Z8fZTB6qFCKDro,16271
25
+ cmd2-3.0.0b1.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
26
+ cmd2-3.0.0b1.dist-info/top_level.txt,sha256=gJbOJmyrARwLhm5diXAtzlNQdxbDZ8iRJ8HJi65_5hg,5
27
+ cmd2-3.0.0b1.dist-info/RECORD,,