Skip to content

Todolist improvements - #787

Open
lfos wants to merge 4 commits into
archlinux:masterfrom
lfos:todolist-improvements
Open

lfos wants to merge 4 commits into
archlinux:masterfrom
lfos:todolist-improvements

Conversation

@lfos

@lfos lfos commented Nov 11, 2026 •

Copy link
Copy Markdown
Member

This PR makes several improvements to todo lists. New features:

  1. Rebuilds can now be added in a draft mode, so pending rebuilds can be formally queued before they are started. Potential conflicts/overlaps are automatically detected before the rebuild is started (see below).
  2. It is possible to see which rebuilds have been completed but are still in staging, which rebuilds are currently in the testing repos, and which have actually been completed (i.e., reached the stable repos).
  3. Overlaps between ongoing rebuilds are detected automatically. This extends to overlaps between all stages (e.g., for a new draft, we immediately see if there's an overlap with any rebuilds currently in staging or testing).
  4. Invalid package names are no longer silently dropped - instead a warning is shown.

With these changes, it's possible to just queue new rebuilds as drafts, and then consolidate and coordinate early, based on warnings and issues detected -- reducing guesswork and communication overhead w/o having a shared, structured, consolidated overview. They should also make the process of safely moving rebuilds between repos easier.

Going through a normal rebuild now requires three extra clicks: one click to make a draft an active rebuild, one click to mark a rebuild as moved to the testing repos, and one click to eventually close the rebuild.

Screenshot of a rebuild in draft mode that overlaps with an ongoing rebuild:
20261111-174448

Screenshot of an ongoing rebuild that overlaps with the draft rebuild:
20261111-174509

Screenshot of a rebuild that's been moved to testing and contains an invalid package name:
20261111-174533

New todo list overview:
20261111-174630

lfos added 4 commits November 11, 2026 17:13
Prior to this commit, misspelled or incorrect package names are silently
dropped. Show a warning below the todo list description.
Each todo list gets a fixed set of stages chosen at creation time,
defaulting to Draft, Rebuild in staging and Test in testing for rebuilds
and Draft and In progress for tasks. The list proceeds through its stages
manually; stages asking for per-package completion can only be left once
all packages are marked as complete.

Package maintainers are notified when the list reaches a stage asking for
per-package completion, the creator once all packages completed it.

The per-package status is replaced by a progress counter. Existing lists
are migrated to a single In progress stage.
Rebuilds touching the same package bases interfere with each other in the
staging and testing repositories. Show a warning on an active rebuild for
every other active rebuild sharing package bases with it.
Users without a profile, e.g. created using createsuperuser, have no time
zone set, which made rendering the "Last Touched By" column fail as soon
as a package had been touched. Fall back to UTC in that case.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant