Source: python-can Version: 4.2.1-1 Severity: serious User: debian...@lists.debian.org Usertags: regression
Dear maintainer(s),With a recent upload of python-can the autopkgtest of python-can fails in testing when that autopkgtest is run with the binary packages of python-can from unstable on amd64 or s390x. It passes when run with only packages from testing. In tabular form:
pass fail python-can from testing 4.2.1-1 all others from testing from testing I copied some of the output at the bottom of this report.Currently this regression is blocking the migration to testing [1]. Can you please investigate the situation and fix it?
More information about this bug and the reason for filing it can be found on https://wiki.debian.org/ContinuousIntegration/RegressionEmailInformation Paul [1] https://qa.debian.org/excuses.php?package=python-can https://ci.debian.net/data/autopkgtest/testing/amd64/p/python-can/34896619/log.gz=================================== FAILURES =================================== 64s ______________ TestDetectAvailableConfigs.test_content_socketcan _______________ 64s 64s self = <test.test_detect_available_configs.TestDetectAvailableConfigs testMethod=test_content_socketcan>
64s 64s def test_content_socketcan(self): 64s > configs = detect_available_configs(interfaces="socketcan")64s 64s test_detect_available_configs.py:44: 64s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 64s /usr/lib/python3/dist-packages/can/interface.py:186: in detect_available_configs 64s bus_class._detect_available_configs() # pylint: disable=protected-access 64s /usr/lib/python3/dist-packages/can/interfaces/socketcan/socketcan.py:878: in _detect_available_configs
64s for channel in find_available_interfaces()64s /usr/lib/python3/dist-packages/can/interfaces/socketcan/utils.py:69: in find_available_interfaces 64s interfaces = [i["ifname"] for i in output_json if i["link_type"] == "can"] 64s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 64s 64s .0 = <list_iterator object at 0x7f45a7f52140> 64s 64s > interfaces = [i["ifname"] for i in output_json if i["link_type"] == "can"]
64s E KeyError: 'link_type'64s 64s /usr/lib/python3/dist-packages/can/interfaces/socketcan/utils.py:69: KeyError 64s ________________ TestDetectAvailableConfigs.test_count_returned ________________ 64s 64s self = <test.test_detect_available_configs.TestDetectAvailableConfigs testMethod=test_count_returned>
64s 64s def test_count_returned(self): 64s # At least virtual has to always return at least one interface 64s > self.assertGreaterEqual(len(detect_available_configs()), 1)64s 64s test_detect_available_configs.py:18: 64s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 64s /usr/lib/python3/dist-packages/can/interface.py:186: in detect_available_configs 64s bus_class._detect_available_configs() # pylint: disable=protected-access 64s /usr/lib/python3/dist-packages/can/interfaces/socketcan/socketcan.py:878: in _detect_available_configs
64s for channel in find_available_interfaces()64s /usr/lib/python3/dist-packages/can/interfaces/socketcan/utils.py:69: in find_available_interfaces 64s interfaces = [i["ifname"] for i in output_json if i["link_type"] == "can"] 64s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 64s 64s .0 = <list_iterator object at 0x7f45a7cbe2c0> 64s 64s > interfaces = [i["ifname"] for i in output_json if i["link_type"] == "can"]
64s E KeyError: 'link_type'64s 64s /usr/lib/python3/dist-packages/can/interfaces/socketcan/utils.py:69: KeyError 64s ________________ TestDetectAvailableConfigs.test_general_values ________________ 64s 64s self = <test.test_detect_available_configs.TestDetectAvailableConfigs testMethod=test_general_values>
64s 64s def test_general_values(self): 64s > configs = detect_available_configs()64s 64s test_detect_available_configs.py:27: 64s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 64s /usr/lib/python3/dist-packages/can/interface.py:186: in detect_available_configs 64s bus_class._detect_available_configs() # pylint: disable=protected-access 64s /usr/lib/python3/dist-packages/can/interfaces/socketcan/socketcan.py:878: in _detect_available_configs
64s for channel in find_available_interfaces()64s /usr/lib/python3/dist-packages/can/interfaces/socketcan/utils.py:69: in find_available_interfaces 64s interfaces = [i["ifname"] for i in output_json if i["link_type"] == "can"] 64s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 64s 64s .0 = <list_iterator object at 0x7f45a7c1a470> 64s 64s > interfaces = [i["ifname"] for i in output_json if i["link_type"] == "can"]
64s E KeyError: 'link_type'64s 64s /usr/lib/python3/dist-packages/can/interfaces/socketcan/utils.py:69: KeyError 64s =========================== short test summary info ============================ 64s FAILED test_detect_available_configs.py::TestDetectAvailableConfigs::test_content_socketcan 64s FAILED test_detect_available_configs.py::TestDetectAvailableConfigs::test_count_returned 64s FAILED test_detect_available_configs.py::TestDetectAvailableConfigs::test_general_values 64s ================== 3 failed, 426 passed, 96 skipped in 30.75s ==================
64s UcanBus was not properly shut down 64s UcanBus was not properly shut down 65s autopkgtest [00:16:39]: test upstream-tests
OpenPGP_signature
Description: OpenPGP digital signature