#12387 Retire FTI packages in NEW state
Closed: Fixed 8 months ago by churchyard. Opened 8 months ago by churchyard.

I will handle this, no need to do anything

According to the schedule

https://fedorapeople.org/groups/schedule/f-41/f-41-key-tasks.html

we need to follow https://docs.fedoraproject.org/en-US/fesco/Fails_to_build_from_source_Fails_to_install/ and retire (and orphan) packages with NEW fails to install bugzillas with at least 2 reminders today.

Currently, the list would be:

python-webpy python-fedmsg-meta-fedora-infrastructure python-k2hr3-osnl python-oslo-messaging python-oslo-service python-pyswarms abrt-java-connector golang-github-ajstarks-svgo php-symfony-security-acl ghc-cryptohash qt-virt-manager

https://bugzilla.redhat.com/buglist.cgi?bug_id=2256932,2291698,2291752,2291822,2291826,2291879,2295151,2300780,2300782,2304109,2304122

Attached is a script to generate the list:

import bugzilla
import sys
import time
from datetime import datetime


TRACKER = 2260877  # F41FailsToInstall
JUDGEMENT_DAY = datetime.fromisoformat("2024-10-08")

bzapi = bugzilla.Bugzilla("bugzilla.redhat.com")
fields = ["component", "creation_time"]
query = bzapi.build_query(product="Fedora", include_fields=fields)
query["blocks"] = TRACKER
query["status"] = "NEW"
query["limit"] = 1000
bugzillas = bzapi.query(query)
assert len(bugzillas) < 1000


def is_reminder(c):
    return (c["creator"].startswith("mhroncok@") and "reminder" in c["text"] or
        c["creator"].startswith("fti-bugs@") and "reminder" in c["text"] or
        c["creator"].startswith("ksurma@") and "please retire the package" in c["text"])


def count_reminders(bug):
    return sum(is_reminder(c) for c in bug.getcomments())


retire_ids = []
retire_packages = []

for bug in bugzillas:
    creation_time = datetime.fromtimestamp(time.mktime(bug.creation_time.timetuple()))
    delta = JUDGEMENT_DAY - creation_time
    symbol = "\N{GREEN HEART}"
    reminders = count_reminders(bug)
    if delta.days >= 8 * 7:
        if reminders >= 2:
            symbol = "\N{SKULL}"
            retire_ids.append(bug.id)
            retire_packages.append(bug.component)
        elif reminders == 1:
            symbol = "\N{BLACK HEART}"
    print(bug.component, f"{delta.days // 7} weeks", symbol, file=sys.stderr)

print(
    "https://bugzilla.redhat.com/buglist.cgi?bug_id="
    + ",".join(str(b) for b in retire_ids)
)
print(" ".join(retire_packages))

Metadata Update from @churchyard:
- Issue close_status updated to: Fixed
- Issue status updated to: Closed (was: Open)

8 months ago

I'll try to check this the next time I retire packages in bulk.

Log in to comment on this ticket.

Metadata