Skip to content

v1.10.0

Choose a tag to compare

@FedeB2160 FedeB2160 released this 24 Aug 09:22
· 101 commits to main since this release

v1.10.0

Coming from v1.9.0: download the new exe and delete the old one, or let the app update itself from Settings. Your theme carries over; if it was set to Auto it becomes System, which is the same thing under a name that says what it does.

Settings and About are tabs now

The gear button and the full-window overlay behind it are gone. Settings and About are tabs at the right end of the strip, so the progress bar and the log stay visible while you are in them — the overlay used to cover exactly the part of the window that tells you how an operation is going.

The three functional tabs are in alphabetical order, Install | Installed | Updates, and Updates is still the view the app opens on, since that is what the startup scan fills.

Every tab has an icon and a tooltip, and Tab strip in Settings chooses whether the strip shows the icon, the name, or both.

About says what the app actually does: the five features in a table, name and description aligned, followed by links to the source, the release notes, the licence and where to report a bug.

Updates you can stop, and a list that stops lying

Update turns into Cancel while its own queue runs. Cancelling lets the package in flight finish and then stops: nothing is killed halfway through an installer, and the packages that never ran keep their tick and an empty result.

After an update, an install, an uninstall or an import, Update locks until the next Check, and the counter says why. Pressing it again used to re-run winget on packages that were already current, which exits non-zero and painted a red cross over rows that had in fact succeeded. Pins do not lock it: a pin blocks upgrades, it does not change installed versions.

While a queue runs the ticks and the pin entries are visibly disabled rather than merely refusing to work, and the lists still scroll. They were blocked before; they just did not look it.

Fixed: two winget processes at once

Typing in Install and switching straight to Installed could run winget search and winget list at the same time, which is how a winget command ends up failing for no visible reason. A search counts as winget work like everything else now, and the update, install, uninstall and pin queues all pass through a single place that takes the busy state and refuses to start a second process.

The light theme has structure again

Buttons, text boxes, the log and the tabs sat on a white page with an almost-white fill and a hairline border, so they were nearly invisible — and a disabled button vanished completely. The page is a light grey with white controls on it now, the way Windows 11 does it, the border that marks an interactive control is a stronger colour than the grid lines, and a disabled button keeps its outline and only dims its label.

The Update to vX.Y.Z button is readable in the dark theme: its label was white on the accent colour, which measured 2.01:1 there. The light theme's warning glyph was below the threshold too and has been darkened. Every foreground/background pair in both themes is measured by the test suite now, so this cannot come back quietly.

The scrollbars follow the theme. In the dark theme they used to stay white, the last piece of the window that Windows still painted its own way.

Your choices are remembered

Unknown, MS Store and Scope used to reset at every launch while the theme did not. They persist now, and ticking Unknown rescans immediately instead of quietly applying to the next check.

The startup check for a new release can be turned off, from Check for updates at startup. It is on by default, as it always was; the point is that a program going online by itself should say so and leave you the choice.

Smaller things

  • F5 rescans the active tab, Ctrl+F jumps to the search box.
  • The progress bar goes indeterminate while scanning rather than sitting at zero, which looked like something stuck. It shows real progress only for a queue, which knows how many packages it has.
  • The context menu entries say they act on the highlighted rows rather than the ticked ones. That was always true and documented only in the code, which nobody reads with the right mouse button held down.
  • The status icons in the Result column carry accessible names, so a screen reader announces "Succeeded" or "Failed" instead of the character code behind the icon.
  • Internally: every winget invocation uses the path resolved once at startup rather than looking the name up on each call, and a command line whose quotes do not balance is refused instead of being run.