Releases: StuartMeeks/NextIteration.SpectreConsole.SelfUpdate
Releases · StuartMeeks/NextIteration.SpectreConsole.SelfUpdate
v0.1.9
Fixed
- Prerelease versions with multi-digit numeric identifiers compared as strings, so
rc.10looked older thanrc.9.ComparePrereleaseusedstring.CompareOrdinal, which orders"rc.9"after"rc.10"character-by-character ('9'>'1'). A CLI on0.5.0-rc.9runningupdate --prereleaseagainst a0.5.0-rc.10release therefore reported "Already up to date." Comparison now follows Semantic Versioning §11: dot-separated prerelease identifiers compare left to right, numeric identifiers compare numerically, numeric ranks below alphanumeric, and a longer identifier set outranks a shorter one with an equal prefix.
Changed
- Bumped NuGet dependencies to their latest versions:
Microsoft.Extensions.DependencyInjection.AbstractionsandMicrosoft.Extensions.Http10.0.5 → 10.0.8,Microsoft.SourceLink.GitHub8.0.0 → 10.0.300, and the test stack (Microsoft.NET.Test.Sdk17.11.1 → 18.6.0,xunit2.9.2 → 2.9.3,xunit.runner.visualstudio2.8.2 → 3.1.5,coverlet.collector6.0.2 → 10.0.1).
Full changelog: https://github.com/StuartMeeks/NextIteration.SpectreConsole.SelfUpdate/blob/main/CHANGELOG.md
v0.1.8
Added
UpdateCleanup.Run(...)startup-cleanup helper. StartupCleanupOldInstall()is synchronous and, under OneDrive / antivirus / Windows Search contention, theDeleteDirectoryRobustlyretry/backoff path can take several seconds — with no output the app looks hung. The new staticUpdateCleanuphelper (mirrorsUpdateBanner) wraps the cleanup and shows aCleaning up previous update…status spinner only when there is leftover state to remove; the common no-leftovers case stays completely silent.Run(IServiceProvider, IAnsiConsole?)is the drop-in startup entry point; aRun(IUpdateInstaller, IAnsiConsole)overload is provided for explicit/headless callers.IUpdateInstaller.HasPendingCleanup. Cheap, side-effect-free check that returnstruewhen a.old/or.update/directory left by a previous update still exists.
Changed
- The demo
Program.csand the README quick start now callUpdateCleanup.Run(serviceProvider)instead ofIUpdateInstaller.CleanupOldInstall()directly. Purely additive —CleanupOldInstall()is unchanged, so existing consumers keep compiling; switching the one startup line opts into the message.
Full changelog: https://github.com/StuartMeeks/NextIteration.SpectreConsole.SelfUpdate/blob/main/CHANGELOG.md