From: Štěpán Balážik Date: Wed, 28 Jan 2026 15:29:11 +0000 (+0100) Subject: Fix vulture warnings and tweak ignore lists X-Git-Tag: v9.20.20~5^2~16 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=68b9928f0fab58fa1f359ff9e82d8f30d8c0365b;p=thirdparty%2Fbind9.git Fix vulture warnings and tweak ignore lists Run vulture on the whole repository, fix most errors in previously unchecked code, adjust ignore lists. (cherry picked from commit 57ecaee95d84a0d9dc25ec518bd98b9c8d1b2f31) --- diff --git a/bin/tests/system/conftest.py b/bin/tests/system/conftest.py index 9ffff85d448..ce402ad6b49 100644 --- a/bin/tests/system/conftest.py +++ b/bin/tests/system/conftest.py @@ -42,7 +42,6 @@ isctest.vars.init_vars() # ----------------------- Globals definition ----------------------------- FILE_DIR = os.path.abspath(Path(__file__).parent) -ENV_RE = Re(b"([^=]+)=(.*)") PRIORITY_TESTS = [ # Tests that are scheduled first. Speeds up parallel execution. "rpz/", diff --git a/bin/tests/system/kasp/tests_kasp.py b/bin/tests/system/kasp/tests_kasp.py index 89f2696e568..c233f0b3b46 100644 --- a/bin/tests/system/kasp/tests_kasp.py +++ b/bin/tests/system/kasp/tests_kasp.py @@ -912,7 +912,7 @@ def test_kasp_default(ns3): ns3.rndc(f"loadkeys {zone}") watcher.wait_for_line(f"zone {zone}/IN (signed): {expectmsg}") # Nothing has changed. - expected[0].private = False # noqa + expected[0].private = False isctest.kasp.check_dnssec_verify(ns3, zone) isctest.kasp.check_keys(zone, keys, expected) isctest.kasp.check_keytimes(keys, expected) diff --git a/bin/tests/system/multisigner/tests_multisigner.py b/bin/tests/system/multisigner/tests_multisigner.py index da9a3e5a566..d20cdff8d44 100644 --- a/bin/tests/system/multisigner/tests_multisigner.py +++ b/bin/tests/system/multisigner/tests_multisigner.py @@ -531,8 +531,8 @@ def test_multisigner(ns3, ns4): # Add DNSKEY to RRset. newprops = [f"zsk unlimited {ALGORITHM} {SIZE}"] extra = isctest.kasp.policy_to_properties(ttl=TTL, keys=newprops) - extra[0].private = False # noqa - extra[0].legacy = True # noqa + extra[0].private = False + extra[0].legacy = True check_add_zsk(ns3, zone, keys3, expected3, [zsks4[0]], extra) check_add_zsk(ns4, zone, keys4, expected4, [zsks3[0]], extra) @@ -546,8 +546,8 @@ def test_multisigner(ns3, ns4): # Add CDNSKEY RRset. newprops = [f"ksk unlimited {ALGORITHM} {SIZE}"] extra = isctest.kasp.policy_to_properties(ttl=TTL, keys=newprops) - extra[0].private = False # noqa - extra[0].legacy = True # noqa + extra[0].private = False + extra[0].legacy = True check_add_cdnskey(ns3, zone, keys3, expected3, [ksks4[0]], extra) check_add_cdnskey(ns4, zone, keys4, expected4, [ksks3[0]], extra) @@ -602,8 +602,8 @@ def test_multisigner_secondary(ns3, ns4, ns5): # Add DNSKEY to RRset. newprops = [f"zsk unlimited {ALGORITHM} {SIZE}"] extra = isctest.kasp.policy_to_properties(ttl=TTL, keys=newprops) - extra[0].private = False # noqa - extra[0].legacy = True # noqa + extra[0].private = False + extra[0].legacy = True check_add_zsk(ns3, zone, keys3, expected3, [zsks4[0]], extra, primary=ns5) check_add_zsk(ns4, zone, keys4, expected4, [zsks3[0]], extra, primary=ns5) @@ -619,8 +619,8 @@ def test_multisigner_secondary(ns3, ns4, ns5): # Add CDNSKEY RRset. newprops = [f"ksk unlimited {ALGORITHM} {SIZE}"] extra = isctest.kasp.policy_to_properties(ttl=TTL, keys=newprops) - extra[0].private = False # noqa - extra[0].legacy = True # noqa + extra[0].private = False + extra[0].legacy = True check_add_cdnskey(ns3, zone, keys3, expected3, [ksks4[0]], extra, primary=ns5) check_add_cdnskey(ns4, zone, keys4, expected4, [ksks3[0]], extra, primary=ns5) diff --git a/bin/tests/system/nsec3/common.py b/bin/tests/system/nsec3/common.py index be0925e3b36..ac5bb9c5f30 100644 --- a/bin/tests/system/nsec3/common.py +++ b/bin/tests/system/nsec3/common.py @@ -124,8 +124,8 @@ def check_nsec3_case(server, params, nsec3=True): if "external-keys" in params: expected2 = isctest.kasp.policy_to_properties(ttl, keys=params["external-keys"]) for ek in expected2: - ek.private = False # noqa - ek.legacy = True # noqa + ek.private = False + ek.legacy = True expected = expected + expected2 assert "external-keydir" in params extkeys = isctest.kasp.keydir_to_keylist(zone, params["external-keydir"]) diff --git a/bin/tests/system/rollover-multisigner/tests_rollover_multisigner.py b/bin/tests/system/rollover-multisigner/tests_rollover_multisigner.py index 02c43ab459b..1dc112e643c 100644 --- a/bin/tests/system/rollover-multisigner/tests_rollover_multisigner.py +++ b/bin/tests/system/rollover-multisigner/tests_rollover_multisigner.py @@ -139,8 +139,8 @@ def test_rollover_multisigner(ns3, alg, size): newprops = [f"zsk unlimited {alg} {size} tag-range:0-32767"] expected2 = isctest.kasp.policy_to_properties(ttl, newprops) - expected2[0].private = False # noqa - expected2[0].legacy = True # noqa + expected2[0].private = False + expected2[0].legacy = True expected = expected + expected2 ownkeys = isctest.kasp.keydir_to_keylist(zone, ns3.identifier) @@ -163,8 +163,8 @@ def test_rollover_multisigner(ns3, alg, size): newkeys = isctest.kasp.keystr_to_keylist(out) newprops = [f"zsk unlimited {alg} {size} tag-range:0-32767"] expected2 = isctest.kasp.policy_to_properties(ttl, newprops) - expected2[0].private = False # noqa - expected2[0].legacy = True # noqa + expected2[0].private = False + expected2[0].legacy = True expected = expected + expected2 dnskey = newkeys[0].dnskey diff --git a/bin/tests/system/vulture_ignore_list.py b/bin/tests/system/vulture_ignore_list.py index 2080fe1d3d3..2d8d69e57e4 100644 --- a/bin/tests/system/vulture_ignore_list.py +++ b/bin/tests/system/vulture_ignore_list.py @@ -9,6 +9,4 @@ # See the COPYRIGHT file distributed with this work for additional # information regarding copyright ownership. -transfers_complete # unused function (cipher-suites/tests_cipher_suites.py:31) -transfers_complete # unused variable (cipher-suites/tests_cipher_suites.py:86) -token_init_and_cleanup # unused function (keyfromlabel/tests_keyfromlabel.py:43) +transfers_complete # unused function (cipher-suites/tests_cipher_suites.py:82) diff --git a/dangerfile.py b/dangerfile.py index b6851be7a57..27e2d31c1ca 100644 --- a/dangerfile.py +++ b/dangerfile.py @@ -42,7 +42,6 @@ def lines_containing(lines, string): return [l for l in lines if bytes(string, "utf-8") in l] -changes_issue_or_mr_id_regex = re.compile(rb"\[(GL [#!]|RT #)[0-9]+\]") rdata_regex = re.compile(r"lib/dns/rdata/") # Source: https://docs.gitlab.com/user/project/issues/managing_issues/#default-closing-pattern diff --git a/pyproject.toml b/pyproject.toml index 4aed089859e..60e51cebbef 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -56,19 +56,29 @@ source-roots = [ [tool.vulture] paths = [ - "bin/tests/system/", + ".", ] exclude = [ "*ans.py", - "conftest.py", - "re_compile_checker.py", + "contrib", + "*doc/arm/_ext/*conf.py", + "doc/arm/conf.py", + "doc/man/conf.py", "isctest", + "re_compile_checker.py", +] +ignore_decorators = [ + "@pytest.fixture", ] ignore_names = [ - "after_servers_start", - "bootstrap", - "pytestmark", - "autouse_*", + "pytest*", + # attributes of `isctest.kasp.KeyProperties` set but later not read in: + # - bin/tests/system/kasp/tests_kasp.py + # - bin/tests/system/multisigner/tests_multisigner.py + # - bin/tests/system/nsec3/common.py + # - bin/tests/system/rollover-multisigner/tests_rollover_multisigner.py + "private", + "legacy", ] [tool.ruff]