From 8d26873baea087935a11d119095b96ac6daa0b49 Mon Sep 17 00:00:00 2001 From: Christoph Haas Date: Mon, 24 Aug 2026 22:23:04 +0200 Subject: [PATCH] Widen transitional/dummy package description blacklist Add 'dummy package' and 'dependency package', the other phrases the Debian Developer's Reference (6.9.7) documents as convention and that deborphan --guess-dummy looks for. Deliberately skip bare 'dummy' and 'empty package': both have real false positives in production data (xserver-xorg-video-dummy, a bridge card 'double dummy solver' library, python3-roscreate's 'empty package template creator'). Verified against production data: 266 combined matches, still zero with screenshots. --- lib/tasks/import_debian.rake | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/lib/tasks/import_debian.rake b/lib/tasks/import_debian.rake index c82d6a3..833bcb5 100644 --- a/lib/tasks/import_debian.rake +++ b/lib/tasks/import_debian.rake @@ -38,9 +38,17 @@ BLACKLIST_SECTION_PATTERN = [ # List of regular expressions. If the package's short description # matches any of these then the package will not be imported. # Transitional/dummy stub packages exist only to ease upgrades to a -# renamed or split package and never get a useful screenshot. +# renamed or split package and never get a useful screenshot. Debian +# has no dedicated metadata field for this - the Developer's Reference +# (6.9.7) documents these exact phrases as the convention package +# maintainers use, and as what deborphan --guess-dummy looks for. +# Deliberately not matching a bare "dummy": too many real packages use +# that word for actual functionality (e.g. xserver-xorg-video-dummy, +# fence-agents-dummy, "double dummy solver" bridge card libraries). BLACKLIST_DESCRIPTION_PATTERN = [ /transitional/i, + /dummy package/i, + /dependency package/i, ] # Whether to delete a blacklisted package from the database