aboutsummaryrefslogtreecommitdiffstats
path: root/sb_builder/packages.py
AgeCommit message (Collapse)AuthorFilesLines
25 hourssbb-remote 0.12.0: named builds, per-package job results, pruneDanilo M.1-1/+10
- Packages: named packages run slackrepo build, which also updates outdated ones; update on a named item finds only already-built packages. The per-row Update action is gone, Update all stays. - A real slackrepo job reads its items' buildresults rows into the job's results and is failed when any item failed, aborted or was bad: slackrepo itself exits 0. The notification names the failed items; a Build results dialog lists every item with its log and Retry failed, reopenable from the Jobs ribbon. - slackrepo prune: the helper lists built items whose SlackBuild is gone and runs slackrepo remove on them, without an Update all. stats gives the count; Packages gets a Prune action, the Built tile a 'to prune' note. Remove and prune ask for confirmation at Run it. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
26 hoursDetail panes: navigation as a button on top, reflowed descriptionsDanilo M.1-6/+3
Open in Hints and Open in Packages were plain links at the end of the pane, below the fold on a long one. ui.nav_button() makes them buttons, first in the pane; the UI guideline now says navigation buttons. The Repository description drops slack-desc's 70-column breaks. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
26 hoursRepository, Packages: no stale detail pane; scan survives racesDanilo M.1-2/+3
A reload or filter that drops the current row left its pane and link up, and the link then crashed on current() being None (Packages had the same). A .txz slackrepo replaces between glob and stat is skipped, and any exception in the scan thread reaches the stats line instead of leaving it at loading. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
26 hoursPackages: hint column, hint: query prefixDanilo M.1-7/+27
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
26 hoursPackages: compare versions, new status newerDanilo M.1-7/+34
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
40 hourssbb-remote 0.9.0: SBo orphans tile on the DashboardDanilo M.1-0/+8
stats gains "orphans", the packages whose .info says MAINTAINER="orphaned - no maintainer" (0.14s over the tree on the VM). The placeholder tile shows the count and opens Packages with only the orphaned chip on. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
48 hoursPackages: fix segfault on Clear / Select visible behind a filterDanilo M.1-4/+12
Both emitted layoutChanged without layoutAboutToBeChanged; with a filter on and a current row, the proxy kept stale persistent indexes and Qt crashed (Ctrl+Shift+A with orphaned + cat:games closed the app). Only check states change, so the model now emits dataChanged on the box column. The new test segfaults on the old code. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
48 hoursPackages: orphaned filter chipDanilo M.1-10/+22
SBo marks an orphaned package MAINTAINER="orphaned - no maintainer" (1936 in the tree today); the inventory already carries the maintainer, so the chip filters in the GUI alone. The shown/selected count moves next to the search field so the chip row fits the default window width. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
48 hoursFilter bars: chips read as buttons, status dots, group labelsDanilo M.1-15/+7
Chips get a button background and border, a dot in the color the table uses for that status, and a muted label per group (overlay, status, state, result). Search fields get a search icon and a clear button. Phase 2 spec: why the signing key locks after the GUI quits. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
48 hoursOne frame for every tab: ribbons of actions, next steps as dialogsDanilo M.1-62/+46
Tabs are permanent and load on first show. The ribbon shows the current tab's actions in workflow order, a small ribbon under it the view controls; inapplicable actions are disabled with the reason as tooltip. Starting a job stays on the tab; the Jobs tab reads (running), then shows the end status. When a preview this session started ends, its log opens with Run it (publish box) or Apply shadowing; Not now loses nothing, Run it in Jobs reopens it. New hint moves to the Packages ribbon and acts on the ticked packages without a hint. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2 daysPackages: Build/Update/Rebuild/Remove act on ticked packages onlyDanilo M.1-5/+2
The highlighted row used to stand in when nothing was ticked; with row clicks toggling the tick, that ran an action on a row just unticked. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2 daysPackages tab: a click anywhere on a row ticks or unticks itDanilo M.1-2/+10
Same as the Hints tab: the box is no longer user-checkable on its own and one clicked handler toggles the row, so no click counts twice. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2 daysCtrl+A / Ctrl+Shift+A: select visible and clear, Packages and HintsDanilo M.1-3/+8
The search field keeps Ctrl+A for its own text. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2 daysHints screen: upstream check, hint jobs, diff and revertDanilo M.1-3/+50
Check upstream fills the upstream column and ticks the outdated hints, Update selected starts hint-update, Delete hint acts on the VM. When a hint job ends its SBB-RESULT opens a dialog with each changed hint's diff, Revert per package (once) and Build these. The Packages detail pane gets New hint and Open in Hints. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
3 daysAdd Packages tab, hint view, Run it and signing key unlockDanilo M.1-0/+332
Packages tab over the helper inventory: query bar with cat:/maint:/ req:/status: prefixes, overlay and status chips, check column, and a detail pane with versions, dependencies after hints and a structured read-only view of the hint (hints.py mirrors slackrepo's parser). Actions start slackrepo previews; the Jobs tab offers Run it with a publish box (default from [builds] publish), asking for the signing key passphrase first when the key is locked. Status bar shows the key state; Dashboard tiles open their tabs; inventory reloads after slackrepo and publish jobs. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>