Bug 2277946

Summary: bandit fails to build with pytest 8: AttributeError: 'BaselineFunctionalTests' object has no attribute 'runTest'. Did you mean: 'subTest'?
Product: [Fedora] Fedora Reporter: Tomáš Hrnčiar <thrnciar>
Component: python-testtoolsAssignee: Michel Lind <michel>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: rawhideCC: mhroncok, michel, mikel, misc, python-packagers-sig, thrnciar
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: python-testtools-2.7.1-7.fc41 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2024-08-01 09:54:13 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 2256331    

Description Tomáš Hrnčiar 2024-04-30 08:39:14 UTC
bandit fails to build with pytest 8.


==================================== ERRORS ====================================
______________ ERROR collecting tests/functional/test_baseline.py ______________
/usr/lib/python3.12/site-packages/testtools/testcase.py:241: in __init__
    test_method = self._get_test_method()
/usr/lib/python3.12/site-packages/testtools/testcase.py:696: in _get_test_method
    return getattr(self, method_name)
E   AttributeError: 'BaselineFunctionalTests' object has no attribute 'runTest'. Did you mean: 'subTest'?
_____________ ERROR collecting tests/functional/test_functional.py _____________
/usr/lib/python3.12/site-packages/testtools/testcase.py:241: in __init__
    test_method = self._get_test_method()
/usr/lib/python3.12/site-packages/testtools/testcase.py:696: in _get_test_method
    return getattr(self, method_name)
E   AttributeError: 'FunctionalTests' object has no attribute 'runTest'. Did you mean: 'subTest'?
______________ ERROR collecting tests/functional/test_runtime.py _______________
/usr/lib/python3.12/site-packages/testtools/testcase.py:241: in __init__
    test_method = self._get_test_method()
/usr/lib/python3.12/site-packages/testtools/testcase.py:696: in _get_test_method
    return getattr(self, method_name)
E   AttributeError: 'RuntimeTests' object has no attribute 'runTest'. Did you mean: 'subTest'?
_______________ ERROR collecting tests/unit/cli/test_baseline.py _______________
/usr/lib/python3.12/site-packages/testtools/testcase.py:241: in __init__
    test_method = self._get_test_method()
/usr/lib/python3.12/site-packages/testtools/testcase.py:696: in _get_test_method
    return getattr(self, method_name)
E   AttributeError: 'BanditBaselineToolTests' object has no attribute 'runTest'. Did you mean: 'subTest'?
___________ ERROR collecting tests/unit/cli/test_config_generator.py ___________
/usr/lib/python3.12/site-packages/testtools/testcase.py:241: in __init__
    test_method = self._get_test_method()
/usr/lib/python3.12/site-packages/testtools/testcase.py:696: in _get_test_method
    return getattr(self, method_name)
E   AttributeError: 'BanditConfigGeneratorLoggerTests' object has no attribute 'runTest'. Did you mean: 'subTest'?
___________ ERROR collecting tests/unit/cli/test_config_generator.py ___________
/usr/lib/python3.12/site-packages/testtools/testcase.py:241: in __init__
    test_method = self._get_test_method()
/usr/lib/python3.12/site-packages/testtools/testcase.py:696: in _get_test_method
    return getattr(self, method_name)
E   AttributeError: 'BanditConfigGeneratorTests' object has no attribute 'runTest'. Did you mean: 'subTest'?
_________________ ERROR collecting tests/unit/cli/test_main.py _________________
/usr/lib/python3.12/site-packages/testtools/testcase.py:241: in __init__
    test_method = self._get_test_method()
/usr/lib/python3.12/site-packages/testtools/testcase.py:696: in _get_test_method
    return getattr(self, method_name)
E   AttributeError: 'BanditCLIMainLoggerTests' object has no attribute 'runTest'. Did you mean: 'subTest'?
_________________ ERROR collecting tests/unit/cli/test_main.py _________________
/usr/lib/python3.12/site-packages/testtools/testcase.py:241: in __init__
    test_method = self._get_test_method()
/usr/lib/python3.12/site-packages/testtools/testcase.py:696: in _get_test_method
    return getattr(self, method_name)
E   AttributeError: 'BanditCLIMainTests' object has no attribute 'runTest'. Did you mean: 'subTest'?
____________ ERROR collecting tests/unit/core/test_blacklisting.py _____________
/usr/lib/python3.12/site-packages/testtools/testcase.py:241: in __init__
    test_method = self._get_test_method()
/usr/lib/python3.12/site-packages/testtools/testcase.py:696: in _get_test_method
    return getattr(self, method_name)
E   AttributeError: 'BlacklistingTests' object has no attribute 'runTest'. Did you mean: 'subTest'?
_______________ ERROR collecting tests/unit/core/test_config.py ________________
/usr/lib/python3.12/site-packages/testtools/testcase.py:241: in __init__
    test_method = self._get_test_method()
/usr/lib/python3.12/site-packages/testtools/testcase.py:696: in _get_test_method
    return getattr(self, method_name)
E   AttributeError: 'TestInit' object has no attribute 'runTest'. Did you mean: 'subTest'?
_______________ ERROR collecting tests/unit/core/test_config.py ________________
/usr/lib/python3.12/site-packages/testtools/testcase.py:241: in __init__
    test_method = self._get_test_method()
/usr/lib/python3.12/site-packages/testtools/testcase.py:696: in _get_test_method
    return getattr(self, method_name)
E   AttributeError: 'TestGetOption' object has no attribute 'runTest'. Did you mean: 'subTest'?
_______________ ERROR collecting tests/unit/core/test_config.py ________________
/usr/lib/python3.12/site-packages/testtools/testcase.py:241: in __init__
    test_method = self._get_test_method()
/usr/lib/python3.12/site-packages/testtools/testcase.py:696: in _get_test_method
    return getattr(self, method_name)
E   AttributeError: 'TestGetSetting' object has no attribute 'runTest'. Did you mean: 'subTest'?
_______________ ERROR collecting tests/unit/core/test_config.py ________________
/usr/lib/python3.12/site-packages/testtools/testcase.py:241: in __init__
    test_method = self._get_test_method()
/usr/lib/python3.12/site-packages/testtools/testcase.py:696: in _get_test_method
    return getattr(self, method_name)
E   AttributeError: 'TestConfigCompat' object has no attribute 'runTest'. Did you mean: 'subTest'?
_______________ ERROR collecting tests/unit/core/test_config.py ________________
/usr/lib/python3.12/site-packages/testtools/testcase.py:241: in __init__
    test_method = self._get_test_method()
/usr/lib/python3.12/site-packages/testtools/testcase.py:696: in _get_test_method
    return getattr(self, method_name)
E   AttributeError: 'TestTomlConfig' object has no attribute 'runTest'. Did you mean: 'subTest'?
_______________ ERROR collecting tests/unit/core/test_context.py _______________
/usr/lib/python3.12/site-packages/testtools/testcase.py:241: in __init__
    test_method = self._get_test_method()
/usr/lib/python3.12/site-packages/testtools/testcase.py:696: in _get_test_method
    return getattr(self, method_name)
E   AttributeError: 'ContextTests' object has no attribute 'runTest'. Did you mean: 'subTest'?
______________ ERROR collecting tests/unit/core/test_docs_util.py ______________
/usr/lib/python3.12/site-packages/testtools/testcase.py:241: in __init__
    test_method = self._get_test_method()
/usr/lib/python3.12/site-packages/testtools/testcase.py:696: in _get_test_method
    return getattr(self, method_name)
E   AttributeError: 'DocsUtilTests' object has no attribute 'runTest'. Did you mean: 'subTest'?
________________ ERROR collecting tests/unit/core/test_issue.py ________________
/usr/lib/python3.12/site-packages/testtools/testcase.py:241: in __init__
    test_method = self._get_test_method()
/usr/lib/python3.12/site-packages/testtools/testcase.py:696: in _get_test_method
    return getattr(self, method_name)
E   AttributeError: 'IssueTests' object has no attribute 'runTest'. Did you mean: 'subTest'?
_______________ ERROR collecting tests/unit/core/test_manager.py _______________
/usr/lib/python3.12/site-packages/testtools/testcase.py:241: in __init__
    test_method = self._get_test_method()
/usr/lib/python3.12/site-packages/testtools/testcase.py:696: in _get_test_method
    return getattr(self, method_name)
E   AttributeError: 'ManagerTests' object has no attribute 'runTest'. Did you mean: 'subTest'?
______________ ERROR collecting tests/unit/core/test_meta_ast.py _______________
/usr/lib/python3.12/site-packages/testtools/testcase.py:241: in __init__
    test_method = self._get_test_method()
/usr/lib/python3.12/site-packages/testtools/testcase.py:696: in _get_test_method
    return getattr(self, method_name)
E   AttributeError: 'BanditMetaAstTests' object has no attribute 'runTest'. Did you mean: 'subTest'?
______________ ERROR collecting tests/unit/core/test_test_set.py _______________
/usr/lib/python3.12/site-packages/testtools/testcase.py:241: in __init__
    test_method = self._get_test_method()
/usr/lib/python3.12/site-packages/testtools/testcase.py:696: in _get_test_method
    return getattr(self, method_name)
E   AttributeError: 'BanditTestSetTests' object has no attribute 'runTest'. Did you mean: 'subTest'?
________________ ERROR collecting tests/unit/core/test_util.py _________________
/usr/lib/python3.12/site-packages/testtools/testcase.py:241: in __init__
    test_method = self._get_test_method()
/usr/lib/python3.12/site-packages/testtools/testcase.py:696: in _get_test_method
    return getattr(self, method_name)
E   AttributeError: 'UtilTests' object has no attribute 'runTest'. Did you mean: 'subTest'?
______________ ERROR collecting tests/unit/formatters/test_csv.py ______________
/usr/lib/python3.12/site-packages/testtools/testcase.py:241: in __init__
    test_method = self._get_test_method()
/usr/lib/python3.12/site-packages/testtools/testcase.py:696: in _get_test_method
    return getattr(self, method_name)
E   AttributeError: 'CsvFormatterTests' object has no attribute 'runTest'. Did you mean: 'subTest'?
____________ ERROR collecting tests/unit/formatters/test_custom.py _____________
/usr/lib/python3.12/site-packages/testtools/testcase.py:241: in __init__
    test_method = self._get_test_method()
/usr/lib/python3.12/site-packages/testtools/testcase.py:696: in _get_test_method
    return getattr(self, method_name)
E   AttributeError: 'CustomFormatterTests' object has no attribute 'runTest'. Did you mean: 'subTest'?
_____________ ERROR collecting tests/unit/formatters/test_json.py ______________
/usr/lib/python3.12/site-packages/testtools/testcase.py:241: in __init__
    test_method = self._get_test_method()
/usr/lib/python3.12/site-packages/testtools/testcase.py:696: in _get_test_method
    return getattr(self, method_name)
E   AttributeError: 'JsonFormatterTests' object has no attribute 'runTest'. Did you mean: 'subTest'?
_____________ ERROR collecting tests/unit/formatters/test_sarif.py _____________
/usr/lib/python3.12/site-packages/testtools/testcase.py:241: in __init__
    test_method = self._get_test_method()
/usr/lib/python3.12/site-packages/testtools/testcase.py:696: in _get_test_method
    return getattr(self, method_name)
E   AttributeError: 'SarifFormatterTests' object has no attribute 'runTest'. Did you mean: 'subTest'?
____________ ERROR collecting tests/unit/formatters/test_screen.py _____________
/usr/lib/python3.12/site-packages/testtools/testcase.py:241: in __init__
    test_method = self._get_test_method()
/usr/lib/python3.12/site-packages/testtools/testcase.py:696: in _get_test_method
    return getattr(self, method_name)
E   AttributeError: 'ScreenFormatterTests' object has no attribute 'runTest'. Did you mean: 'subTest'?
_____________ ERROR collecting tests/unit/formatters/test_text.py ______________
/usr/lib/python3.12/site-packages/testtools/testcase.py:241: in __init__
    test_method = self._get_test_method()
/usr/lib/python3.12/site-packages/testtools/testcase.py:696: in _get_test_method
    return getattr(self, method_name)
E   AttributeError: 'TextFormatterTests' object has no attribute 'runTest'. Did you mean: 'subTest'?
______________ ERROR collecting tests/unit/formatters/test_xml.py ______________
/usr/lib/python3.12/site-packages/testtools/testcase.py:241: in __init__
    test_method = self._get_test_method()
/usr/lib/python3.12/site-packages/testtools/testcase.py:696: in _get_test_method
    return getattr(self, method_name)
E   AttributeError: 'XmlFormatterTests' object has no attribute 'runTest'. Did you mean: 'subTest'?
_____________ ERROR collecting tests/unit/formatters/test_yaml.py ______________
/usr/lib/python3.12/site-packages/testtools/testcase.py:241: in __init__
    test_method = self._get_test_method()
/usr/lib/python3.12/site-packages/testtools/testcase.py:696: in _get_test_method
    return getattr(self, method_name)
E   AttributeError: 'YamlFormatterTests' object has no attribute 'runTest'. Did you mean: 'subTest'?
=============================== warnings summary ===============================
bandit/core/utils.py:364
  ast.Str is deprecated and will be removed in Python 3.14; use ast.Constant instead

-- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html
=========================== short test summary info ============================
ERROR tests/functional/test_baseline.py::BaselineFunctionalTests - AttributeE...
ERROR tests/functional/test_functional.py::FunctionalTests - AttributeError: ...
ERROR tests/functional/test_runtime.py::RuntimeTests - AttributeError: 'Runti...
ERROR tests/unit/cli/test_baseline.py::BanditBaselineToolTests - AttributeErr...
ERROR tests/unit/cli/test_config_generator.py::BanditConfigGeneratorLoggerTests
ERROR tests/unit/cli/test_config_generator.py::BanditConfigGeneratorTests - A...
ERROR tests/unit/cli/test_main.py::BanditCLIMainLoggerTests - AttributeError:...
ERROR tests/unit/cli/test_main.py::BanditCLIMainTests - AttributeError: 'Band...
ERROR tests/unit/core/test_blacklisting.py::BlacklistingTests - AttributeErro...
ERROR tests/unit/core/test_config.py::TestInit - AttributeError: 'TestInit' o...
ERROR tests/unit/core/test_config.py::TestGetOption - AttributeError: 'TestGe...
ERROR tests/unit/core/test_config.py::TestGetSetting - AttributeError: 'TestG...
ERROR tests/unit/core/test_config.py::TestConfigCompat - AttributeError: 'Tes...
ERROR tests/unit/core/test_config.py::TestTomlConfig - AttributeError: 'TestT...
ERROR tests/unit/core/test_context.py::ContextTests - AttributeError: 'Contex...
ERROR tests/unit/core/test_docs_util.py::DocsUtilTests - AttributeError: 'Doc...
ERROR tests/unit/core/test_issue.py::IssueTests - AttributeError: 'IssueTests...
ERROR tests/unit/core/test_manager.py::ManagerTests - AttributeError: 'Manage...
ERROR tests/unit/core/test_meta_ast.py::BanditMetaAstTests - AttributeError: ...
ERROR tests/unit/core/test_test_set.py::BanditTestSetTests - AttributeError: ...
ERROR tests/unit/core/test_util.py::UtilTests - AttributeError: 'UtilTests' o...
ERROR tests/unit/formatters/test_csv.py::CsvFormatterTests - AttributeError: ...
ERROR tests/unit/formatters/test_custom.py::CustomFormatterTests - AttributeE...
ERROR tests/unit/formatters/test_json.py::JsonFormatterTests - AttributeError...
ERROR tests/unit/formatters/test_sarif.py::SarifFormatterTests - AttributeErr...
ERROR tests/unit/formatters/test_screen.py::ScreenFormatterTests - AttributeE...
ERROR tests/unit/formatters/test_text.py::TextFormatterTests - AttributeError...
ERROR tests/unit/formatters/test_xml.py::XmlFormatterTests - AttributeError: ...
ERROR tests/unit/formatters/test_yaml.py::YamlFormatterTests - AttributeError...
!!!!!!!!!!!!!!!!!!! Interrupted: 29 errors during collection !!!!!!!!!!!!!!!!!!!
======================== 1 warning, 29 errors in 0.56s =========================


https://docs.pytest.org/en/stable/changelog.html

For the build logs, see:
https://copr-be.cloud.fedoraproject.org/results/thrnciar/pytest/fedora-rawhide-x86_64/07388287-bandit/

For all our attempts to build bandit with pytest 8, see:
https://copr.fedorainfracloud.org/coprs/thrnciar/pytest/package/bandit/

Let us know here if you have any questions.

Pytest 8 is planned to be included in Fedora 41. And this bugzilla is a
heads up before we merge new pytest into rawhide. For more info see a Fedora Change
proposal https://fedoraproject.org/wiki/Changes/Pytest_8

We'd appreciate help from the people who know this package best,
but if you don't want to work on this now, let us know so we can try to work around it on our side.

Comment 2 Fedora Update System 2024-08-01 09:50:17 UTC
FEDORA-2024-adae90f1ce (pytest-8.3.1-1.fc41, python-pluggy1.3-1.3.0-7.fc41, and 4 more) has been submitted as an update to Fedora 41.
https://bodhi.fedoraproject.org/updates/FEDORA-2024-adae90f1ce

Comment 3 Fedora Update System 2024-08-01 09:54:13 UTC
FEDORA-2024-adae90f1ce (pytest-8.3.1-1.fc41, python-pluggy1.3-1.3.0-7.fc41, and 4 more) has been pushed to the Fedora 41 stable repository.
If problem still persists, please make note of it in this bug report.