Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package python-cli-helpers for openSUSE:Factory checked in at 2026-03-25 21:19:42 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/python-cli-helpers (Old) and /work/SRC/openSUSE:Factory/.python-cli-helpers.new.8177 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-cli-helpers" Wed Mar 25 21:19:42 2026 rev:16 rq:1342386 version:2.12.0 Changes: -------- --- /work/SRC/openSUSE:Factory/python-cli-helpers/python-cli-helpers.changes 2026-03-16 14:19:32.502796458 +0100 +++ /work/SRC/openSUSE:Factory/.python-cli-helpers.new.8177/python-cli-helpers.changes 2026-03-27 06:47:42.013503842 +0100 @@ -1,0 +2,6 @@ +Tue Mar 24 19:45:52 UTC 2026 - <[email protected]> + +- Update to 2.12.0: + * Probe tabulate version for `preserve_whitespace` keyword support. + +------------------------------------------------------------------- Old: ---- cli_helpers-2.11.0.tar.gz New: ---- cli_helpers-2.12.0.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ python-cli-helpers.spec ++++++ --- /var/tmp/diff_new_pack.l20xzh/_old 2026-03-27 06:47:42.541525638 +0100 +++ /var/tmp/diff_new_pack.l20xzh/_new 2026-03-27 06:47:42.545525803 +0100 @@ -17,7 +17,7 @@ Name: python-cli-helpers -Version: 2.11.0 +Version: 2.12.0 Release: 0 Summary: Helpers for building command-line apps License: BSD-3-Clause ++++++ cli_helpers-2.11.0.tar.gz -> cli_helpers-2.12.0.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/cli_helpers-2.11.0/CHANGELOG new/cli_helpers-2.12.0/CHANGELOG --- old/cli_helpers-2.11.0/CHANGELOG 2026-03-05 16:04:15.000000000 +0100 +++ new/cli_helpers-2.12.0/CHANGELOG 2026-03-21 11:41:59.000000000 +0100 @@ -1,5 +1,11 @@ # Changelog +## Version 2.12.0 + +(released on 2025-03-21) + +- Probe tabulate version for `preserve_whitespace` keyword support. + ## Version 2.11.0 (released on 2025-03-05) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/cli_helpers-2.11.0/PKG-INFO new/cli_helpers-2.12.0/PKG-INFO --- old/cli_helpers-2.11.0/PKG-INFO 2026-03-05 16:16:21.000000000 +0100 +++ new/cli_helpers-2.12.0/PKG-INFO 2026-03-21 11:44:08.000000000 +0100 @@ -1,6 +1,6 @@ Metadata-Version: 2.4 Name: cli_helpers -Version: 2.11.0 +Version: 2.12.0 Summary: Helpers for building command-line apps Home-page: https://github.com/dbcli/cli_helpers Author: dbcli diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/cli_helpers-2.11.0/cli_helpers/__init__.py new/cli_helpers-2.12.0/cli_helpers/__init__.py --- old/cli_helpers-2.11.0/cli_helpers/__init__.py 2026-03-05 16:07:42.000000000 +0100 +++ new/cli_helpers-2.12.0/cli_helpers/__init__.py 2026-03-21 11:42:52.000000000 +0100 @@ -1 +1 @@ -__version__ = "2.11.0" +__version__ = "2.12.0" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/cli_helpers-2.11.0/cli_helpers/tabular_output/tabulate_adapter.py new/cli_helpers-2.12.0/cli_helpers/tabular_output/tabulate_adapter.py --- old/cli_helpers-2.11.0/cli_helpers/tabular_output/tabulate_adapter.py 2026-03-05 15:53:28.000000000 +0100 +++ new/cli_helpers-2.12.0/cli_helpers/tabular_output/tabulate_adapter.py 2026-03-21 11:41:59.000000000 +0100 @@ -5,7 +5,7 @@ import os -from cli_helpers.utils import filter_dict_by_key +from cli_helpers.utils import filter_dict_by_key, version_as_tuple from cli_helpers.compat import ( Terminal256Formatter, TerminalTrueColorFormatter, @@ -141,6 +141,10 @@ headless_formats = ("minimal",) +def has_new_preserve_whitespace_arg(): + return version_as_tuple(tabulate.__version__) >= (0, 10, 0) + + def get_preprocessors(format_name): common_formatters = ( override_missing_value, @@ -249,7 +253,10 @@ if table_format in supported_markup_formats: tkwargs.update(numalign=None, stralign=None) - tkwargs.update(preserve_whitespace=preserve_whitespace) + if has_new_preserve_whitespace_arg(): + tkwargs.update(preserve_whitespace=preserve_whitespace) + else: + tabulate.PRESERVE_WHITESPACE = preserve_whitespace tkwargs.update(default_kwargs.get(table_format, {})) if table_format in headless_formats: diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/cli_helpers-2.11.0/cli_helpers/utils.py new/cli_helpers-2.12.0/cli_helpers/utils.py --- old/cli_helpers-2.11.0/cli_helpers/utils.py 2026-02-18 11:19:54.000000000 +0100 +++ new/cli_helpers-2.12.0/cli_helpers/utils.py 2026-03-21 11:41:59.000000000 +0100 @@ -5,7 +5,7 @@ import os import re from functools import lru_cache -from typing import Dict, Union +from typing import Dict, Tuple, Union from typing import TYPE_CHECKING @@ -146,3 +146,15 @@ _styles_iter = ((key, val) for key, val in getattr(style, "styles", {}).items()) _relevant_styles_iter = filter(lambda tpl: tpl[0] in relevant_styles, _styles_iter) return {key: val for key, val in _relevant_styles_iter} + + +@lru_cache() +def version_as_tuple(version: str) -> Tuple: + try: + list_s = [re.sub(r'(rc|alpha|beta|test|dev|post).*$', '', x) for x in version.split('.')] + list_s = [re.sub(r'[^\d]', '', x) for x in list_s] + list_i = [int(x) for x in list_s if x] + list_i.extend([0, 0, 0]) + return tuple(list_i[:3]) + except ValueError: + return (0, 0, 0) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/cli_helpers-2.11.0/cli_helpers.egg-info/PKG-INFO new/cli_helpers-2.12.0/cli_helpers.egg-info/PKG-INFO --- old/cli_helpers-2.11.0/cli_helpers.egg-info/PKG-INFO 2026-03-05 16:16:21.000000000 +0100 +++ new/cli_helpers-2.12.0/cli_helpers.egg-info/PKG-INFO 2026-03-21 11:44:08.000000000 +0100 @@ -1,6 +1,6 @@ Metadata-Version: 2.4 Name: cli_helpers -Version: 2.11.0 +Version: 2.12.0 Summary: Helpers for building command-line apps Home-page: https://github.com/dbcli/cli_helpers Author: dbcli diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/cli_helpers-2.11.0/tests/test_utils.py new/cli_helpers-2.12.0/tests/test_utils.py --- old/cli_helpers-2.11.0/tests/test_utils.py 2026-01-26 10:54:43.000000000 +0100 +++ new/cli_helpers-2.12.0/tests/test_utils.py 2026-03-21 11:41:59.000000000 +0100 @@ -75,3 +75,28 @@ fd = utils.filter_dict_by_key(d, keys) assert len(fd) == 1 assert all([k in keys for k in fd]) + + +def test_version_as_tuple_01(): + """Test version_as_tuple() in the usual case.""" + assert utils.version_as_tuple('0.10.0') == (0, 10, 0) + + +def test_version_as_tuple_02(): + """Test version_as_tuple() with leading v.""" + assert utils.version_as_tuple('v0.10.0') == (0, 10, 0) + + +def test_version_as_tuple_03(): + """Test version_as_tuple() trailing padding.""" + assert utils.version_as_tuple('0.10') == (0, 10, 0) + + +def test_version_as_tuple_04(): + """Test version_as_tuple() stripping rc suffixes.""" + assert utils.version_as_tuple('0.10.0rc1') == (0, 10, 0) + + +def test_version_as_tuple_05(): + """Test version_as_tuple() deleting post1 elements.""" + assert utils.version_as_tuple('0.10.0.post1') == (0, 10, 0)
