Cmdkit

Latest version: v2.7.7

Safety actively analyzes 722491 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 1 of 4

2.7.7

There were no hard requirements that prevented the use of Python 3.9. The project listed Python 3.10+ because of development dependencies that disallowed 3.9 but we decided to retroactively fix this to allow for wider deployment potential.

2.7.6

Previously we relied on the [toml](https://pypi.org/project/toml/) package for parsing TOML configuration files. However, this package is no longer considered the best provider of such support and is actually now [deprecated](https://fedoraproject.org/wiki/Changes/DeprecatePythonToml) by some Linux distros. Further, TOML has made its way into the Python standard library (for Python 3.11+, [tomllib](https://docs.python.org/3/library/tomllib.html) Therefore it was best to migrate to no dependency at all for Python 3.11+ or use [tomli](https://pypi.org/project/tomli/) otherwise. For *write* capabilities we've added [tomli-w](https://pypi.org/project/tomli-w/). Many application have no need to write TOML, so this is an optional dependency.

Proper support for package _extras_ is now provided. To explicitly enable TOML, developers can specify `cmdkit[toml]` as a dependency.

2.7.5

Minor fixes to address issues with `colorize_usage` function.

- Allow 2-letter metavars (e.g., _ID_)
- Fix pattern matching on special resource names (e.g., _stdout_ vs `--stdout`).

2.7.4

The `ansi.py` module holds a collection of regular expressions
that apply automatic formatting to usage and help text with
standard syntax.

This change addresses the following:

- Section headers are generic match on capitalized word at the
start of a line ending in a colon, instead of only matching
on a list of magic words.
- Metavars (e.g., FILE, ADDR, PORT) are matched on any all-caps
word not contained by quotes, not preceded by dash; instead of
being a reserved list of magic words.
- Match any <thing> 4+ character word contained by angle brackets
instead of reserved list of magic words.
- Add small list of special list of reserved resources, including
localhost, stdin, stdout, and stderr.
- Fix option pattern to include stacked single letter options.
- Fix digit matching to include decimals, this also makes IP
addresses match like numbers (naive but works).
- Add to digit matching suffixes for count (K, M, G, T) along
with optional 'b' for bytes, case insensitive.

2.7.3

See [release notes](https://cmdkit.readthedocs.io/en/latest/blog/20231012_2_7_3_release.html).

2.7.2

This release includes a fix to a bug in the `LogRecord` extension where use of the `logging.makeLogRecord` fails because it passes a `None` for the _name_ field initially which causes an exception on the `relative_name` attribute where it was assumed to be a string.

Page 1 of 4

© 2025 Safety CLI Cybersecurity Inc. All Rights Reserved.