From 8ffece44e515029fbbbc6beff4efd4fd078afe7d Mon Sep 17 00:00:00 2001 From: spyke7 Date: Sat, 22 Nov 2025 00:39:53 +0530 Subject: [PATCH 1/4] Removed warnings category:UserWarning --- src/mdacli/libcli.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/mdacli/libcli.py b/src/mdacli/libcli.py index fad9212d..ecdada19 100644 --- a/src/mdacli/libcli.py +++ b/src/mdacli/libcli.py @@ -127,7 +127,7 @@ def find_cls_members(cls, modules, ignore_warnings=False): Flag to ignore warnings """ with warnings.catch_warnings(): - if not ignore_warnings: + if ignore_warnings: warnings.simplefilter("ignore") return find_classes_in_modules(cls, *[m for m in modules]) From 118f44a35af75f7cd15d4f158b2ced192858b9ae Mon Sep 17 00:00:00 2001 From: spyke7 Date: Fri, 28 Nov 2025 15:58:00 +0530 Subject: [PATCH 2/4] Updated CHANGELOG and added tests --- docs/CHANGELOG.rst | 6 ++++++ tests/test_libcli.py | 45 ++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 51 insertions(+) diff --git a/docs/CHANGELOG.rst b/docs/CHANGELOG.rst index 97e4953b..b2237ad6 100644 --- a/docs/CHANGELOG.rst +++ b/docs/CHANGELOG.rst @@ -5,6 +5,12 @@ Changelog Unreleased ---------- +* Updated the ignoring warnings in libcli.py +* Added tests for ignoring warnings + +v0.1.34 (2025-11-28) +------------------------------------------ + * Added argcomplete for tab completion * Updated docs diff --git a/tests/test_libcli.py b/tests/test_libcli.py index 0645321b..9c66710d 100644 --- a/tests/test_libcli.py +++ b/tests/test_libcli.py @@ -10,6 +10,7 @@ import logging import os import sys +import warnings from io import StringIO from json.decoder import JSONDecodeError from pathlib import Path @@ -125,6 +126,50 @@ def test_find_cls_members_single(cls): assert members[1] is InterRDF_s +def test_find_cls_members_ignore_warnings_true(): + """Test that warnings are suppressed when ignore_warnings=True.""" + with patch("mdacli.libcli.find_classes_in_modules") as mocked: + + def warn_func(*_args, **_kwargs): + warnings.warn("warning", DeprecationWarning, stacklevel=2) + return ["OK"] + + mocked.side_effect = warn_func + + with warnings.catch_warnings(): + warnings.simplefilter("error") + + members = find_cls_members( + AnalysisBase, + modules=["dummy.mod"], + ignore_warnings=True, + ) + + assert members == ["OK"] + + +def test_find_cls_members_ignore_warnings_false(): + """Test that warnings are emitted when ignore_warnings=False.""" + with patch("mdacli.libcli.find_classes_in_modules") as mocked: + + def warn_func(*_args, **_kwargs): + warnings.warn( + "This module was moved to ...", DeprecationWarning, stacklevel=2 + ) + return ["OK"] + + mocked.side_effect = warn_func + + with pytest.warns(DeprecationWarning, match="moved to"): + members = find_cls_members( + AnalysisBase, + modules=["dummy.mod"], + ignore_warnings=False, + ) + + assert members == ["OK"] + + @pytest.mark.parametrize( "cls", [AnalysisBase, [AnalysisBase, AnalysisBase], (AnalysisBase, AnalysisBase)] ) From 0c88399317c094d56b2f13b88ea64c057e6f2174 Mon Sep 17 00:00:00 2001 From: spyke7 Date: Sat, 29 Nov 2025 02:19:23 +0530 Subject: [PATCH 3/4] Skipped hbonds in __main__.py --- src/mdacli/__main__.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/mdacli/__main__.py b/src/mdacli/__main__.py index 07d142fb..71b3b3c0 100644 --- a/src/mdacli/__main__.py +++ b/src/mdacli/__main__.py @@ -40,7 +40,7 @@ def main(): mdacli.cli( name="MDAnalysis", - module_list=[f"MDAnalysis.analysis.{m}" for m in __all__], + module_list=[f"MDAnalysis.analysis.{m}" for m in __all__ if m != "hbonds"], version=mdacli.__version__, description=__doc__, skip_modules=skip_mods, From 3076679de167e332c53c38afe87982182ad845f9 Mon Sep 17 00:00:00 2001 From: Philip Loche Date: Tue, 2 Dec 2025 09:02:57 +0100 Subject: [PATCH 4/4] Format changelog --- docs/CHANGELOG.rst | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/docs/CHANGELOG.rst b/docs/CHANGELOG.rst index b2237ad6..a7b89ead 100644 --- a/docs/CHANGELOG.rst +++ b/docs/CHANGELOG.rst @@ -5,12 +5,7 @@ Changelog Unreleased ---------- -* Updated the ignoring warnings in libcli.py -* Added tests for ignoring warnings - -v0.1.34 (2025-11-28) ------------------------------------------- - +* Ignore unrelated warnings from MDAnalysis * Added argcomplete for tab completion * Updated docs