{"id":16521800,"url":"https://github.com/davesteele/piublocker","last_synced_at":"2025-06-15T19:40:13.959Z","repository":{"id":142203263,"uuid":"2617392","full_name":"davesteele/piublocker","owner":"davesteele","description":"Analysis of of Debian piuparts dependency-failed-testing blockers","archived":false,"fork":false,"pushed_at":"2011-11-08T02:24:36.000Z","size":188,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-03-03T02:22:56.137Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/davesteele.png","metadata":{"files":{"readme":"README.rst","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2011-10-21T01:12:58.000Z","updated_at":"2014-03-23T08:10:17.000Z","dependencies_parsed_at":"2023-03-12T19:00:17.081Z","dependency_job_id":null,"html_url":"https://github.com/davesteele/piublocker","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/davesteele/piublocker","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/davesteele%2Fpiublocker","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/davesteele%2Fpiublocker/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/davesteele%2Fpiublocker/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/davesteele%2Fpiublocker/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/davesteele","download_url":"https://codeload.github.com/davesteele/piublocker/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/davesteele%2Fpiublocker/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":260040478,"owners_count":22949839,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-10-11T16:57:56.206Z","updated_at":"2025-06-15T19:40:13.936Z","avatar_url":"https://github.com/davesteele.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"This code is a quick hack that analyzes Debian sid piuparts_ packages that are in state-dependency-failed-testing_, and prints out information on the failed packages which are blocking their testing.\n\n.. _piuparts: http://piuparts.debian.org/\n.. _state-dependency-failed-testing: http://piuparts.debian.org/sid/state-dependency-failed-testing.html\n\nThe output consists of:\n\n* the number of packages in state-failed-dependency-testing which have been traced to a state-failed-testing package\n* the number of packages in state-failed-testing causing the dependencies\n* the list of state-failed-testing packages sorted by impact, with:\n\n - the number of packages blocked by this package\n - the number of packages which are blocked only by this package\n - the number of packages left in state-failed-dependency-testing after this package and the ones above it pass\n - the total number of packages which depend on this package, directly or recursively\n\nExample::\n\n    # ./piublocker \n    dependency failed -  2047\n    failed testing -  222\n    \n    blocking free cum  rdeps package\n     458      39  2008   497 sgml-data\n     439       3  1613   477 docbook-xsl\n     278     202  1411   706 ca-certificates-java\n     199     182  1221   205 texlive-base\n     119     119  1102   163 iceweasel\n      91      13  1088   121 menu\n      88      29  1059    93 gnustep-base-common\n      69       1   990    69 blends-common\n      59       0   931    60 gnustep-back0.20\n      58      10   896    85 antlr\n      55      36   857   714 libhttp-date-perl\n      55       5   825   124 libcommons-httpclient-java\n      47      13   802   118 libcommons-beanutils-java\n      45      23   778   117 openssh-client\n      36      15   749    36 gforge-common\n      35      34   714    35 gosa\n      33      33   681    33 liquidsoap\n      30       3   678    30 libspring-core-java\n      28       1   656    28 libatinject-jsr330-api-java\n      26      26   630    27 drupal6\n\nThe cumulative effect of removing the top blocking failed packages on this date can be seen here (from an earlier run):\n\n\n\n.. image:: piublocker/raw/master/images/Screenshot.png\n\nThis is a typical distribution of packages states in Debian sid piuparts. The packages in state-dependency-failed-testing are in dark red (from http://piuparts.debian.org/sid/)\n\n.. image:: piublocker/raw/master/images/states.png\n\nThe application parses http://piuparts.debian.org/sid/state-dependency-failed-testing.html to gather package data. The information is stored locally in the file piudata.json, to speed up subsequent runs. Delete the file to cause the data to be downloaded again.\n\n`BeautifulSoup \u003chttp://www.crummy.com/software/BeautifulSoup/\u003e`_ and apt-rdepends must be installed.\n\nThe number of packages counted in state-failed-dependency-testing is less than that reported by the web page, possibly because it only counts packages which trace directly to a failed-dependency-test package.\n\nThe code is not a model of cleanliness, or efficiency.\n\n.. David Steele\n\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdavesteele%2Fpiublocker","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdavesteele%2Fpiublocker","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdavesteele%2Fpiublocker/lists"}