We are gleeful to announce the release of: cliff 4.8.0 This release is part of the epoxy release series. The source is available from: https://opendev.org/openstack/cliff Download the package from: https://pypi.org/project/cliff Please report issues through: https://storyboard.openstack.org/#!/project/openstack/cliff For more details, please see below. Changes in cliff 4.7.0..4.8.0 ----------------------------- 4826a43 Remove unnecessary shebangs f812e26 ruff: Enable pyupgrade rules b35e895 Migrate to ruff, ruff-format ea4f13d Drop support for Python 3.8, add Python 3.12 3757bb3 pre-commit: Bump versions b4c61f3 Normalize columns given by '-c'/'--columns' Diffstat (except docs and test files) ------------------------------------- .pre-commit-config.yaml | 23 ++++------------ .zuul.yaml | 13 +++++---- bandit.yaml | 4 --- cliff/_argparse.py | 12 +++----- cliff/app.py | 14 ++++------ cliff/columns.py | 7 ++--- cliff/command.py | 4 +-- cliff/commandmanager.py | 9 +++--- cliff/complete.py | 21 +++++++------- cliff/display.py | 53 ++++++++++++++++++++---------------- cliff/formatters/base.py | 5 ++-- cliff/formatters/commaseparated.py | 3 +- cliff/formatters/json_format.py | 3 +- cliff/formatters/shell.py | 5 ++-- cliff/formatters/value.py | 14 +++++----- cliff/formatters/yaml_format.py | 3 +- cliff/help.py | 16 +++++------ cliff/hooks.py | 2 +- cliff/interactive.py | 5 ++-- cliff/lister.py | 2 +- cliff/show.py | 4 +-- cliff/sphinxext.py | 22 +++++++-------- demoapp/cliffdemo/encoding.py | 2 -- demoapp/cliffdemo/main.py | 2 +- demoapp/cliffdemo/show.py | 2 +- demoapp/setup.py | 4 +-- pyproject.toml | 12 ++++++++ setup.cfg | 4 +-- 49 files changed, 175 insertions(+), 208 deletions(-)