You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This commit addresses the full audit review of GeneralUpdate.Core:
**Bug fixes:**
- Remove HasExited race condition in WindowsStrategy & MacStrategy (#3,#4)
- Only rollback when no version succeeded yet in AbstractStrategy (#5)
- Guard against null version.Name in DeleteVersionZip (#6)
- Better semaphore timeout logging in DefaultDownloadOrchestrator (#8)
- Robust concurrent-safe DeleteDirectory in StorageManager (#10)
- Add re-entry guard in AbstractStrategy.ExecuteAsync (#11)
**Design improvements:**
- Fix XML doc to match actual validation in UpdateRequest.Validate() (#12)
- Unify SSL policy: VersionService delegates to HttpClientProvider (#16,#17)
- GracefulExit self-shutdown no longer calls Kill() on the current process (#18)
- Use StartsWith instead of IndexOf in BlackMatcher.ShouldSkipDirectory (#19)
- Replace lock with ConcurrentDictionary.GetOrAdd in Option.ValueOf (#20)
**Glue code removal:**
- Extract shared BlackDefaults.CreatePolicyWithDefaults() (#21)
- Remove duplicate CallSmallBowlHomeAsync from Bootstrap (#22)
- Extract shared OsStrategyResolver class (#23)
- Make SafeOnBeforeUpdateAsync semantics consistent: exception = abort (#24)
**Performance:**
- Cache parsed SemVers in DownloadPlanBuilder to avoid repeated parsing (#26)
- Reuse Sha256HashAlgorithm as static field in HashMiddleware (#30)
- Add CleanupOldTempDirectories() to prevent temp directory accumulation (#31)
Co-authored-by: Claude <noreply@anthropic.com>
0 commit comments