Releases: Linktech-Engineering-LLC/VSCode-Updater
Release list
VSCode-Updater v3.1.0 — Servicing‑Blocked Detection & Early‑Abort Pipeline
This release introduces a major reliability enhancement to the VSCode-Updater execution pipeline: Windows servicing‑blocked detection with deterministic early‑abort behavior. The updater now protects installations from corruption when Windows itself is in an unhealthy servicing state (component store corruption or pending reboot).
This is a foundational upgrade to the watchdog architecture and significantly improves safety on long‑lived Windows systems.
🚀 What’s New in 3.1.0
Windows Servicing‑Blocked Detection
VSCode-Updater now performs a pre‑flight servicing health check using:
DISM /Online /Cleanup-Image /CheckHealth- Windows pending reboot indicators
If Windows servicing is unhealthy, the updater:
- aborts monitoring immediately
- terminates the installer worker
- skips retries
- skips fallback
- logs full diagnostics
- emits deterministic exit code 114 (ServicingBlocked)
This prevents partial installs and protects VS Code from corruption.
🛡️ New Watchdog Lane: ServicingBlocked
A fourth watchdog lane has been added alongside filesystem, idle, and active stall detection.
The ServicingBlocked lane:
- exits before extraction, payload load, or finalization
- produces a complete diagnostic summary
- integrates with the timeline system
- suppresses ZIP fallback
- returns a deterministic exit code
This is a major architectural enhancement to the updater’s safety model.
📊 Improved Diagnostics & Logging
- DISM corruption flags logged explicitly
- Pending reboot flags logged
- Timeline entries reflect early‑exit behavior
- Summary includes stall type:
ComponentStoreCorruptorPendingReboot - Fallback suppression logged deterministically
Logs now provide full operator‑grade visibility into servicing failures.
🔧 Changes
- Main update loop now skips retries and fallback when servicing is blocked
- ZIP fallback suppressed during servicing‑blocked conditions
- Module manifest (
.psd1) updated with new version and exit code - Module file (
.psm1) updated with new watchdog lane wiring - README updated with servicing‑blocked documentation and architecture notes
🐛 Fixes
- Removed stray boolean diagnostic output caused by
WriteLogreturning values to the pipeline - Improved cleanup behavior for early‑abort scenarios
- Corrected final result propagation to avoid misclassification as installer failure
📦 Exit Codes
New:
- 114 — ServicingBlocked
Windows servicing corruption or pending reboot prevents safe installation.
📅 Release Date
2026‑08‑13
VSCode‑Updater v2.1.0 — Release Notes
Enhancements
- Added deterministic stall‑handling logic:
- Any *Stalled watchdog result now triggers immediate ZIP fallback.
- Eliminated unnecessary retries after a stall to prevent repeated failures.
- Improved cleanup sequencing:
- Ensures cleanup runs before fallback and before retries.
- Cleanup routines are now consistently idempotent and safe to run multiple times.
- Strengthened installer monitoring:
- More reliable detection of InnoSetup worker processes.
- Improved filesystem‑stall detection and logging clarity.
- Improved fallback reliability:
- Ensures environment is clean before ZIP extraction.
- Guarantees symlink replacement and version activation succeed even after a failed installer run.
Stability Improvements
- Reduced risk of partial installs or locked files.
- Ensured consistent post‑update state validated by
Get‑VSCodeDashboard. - Added more explicit stall‑state logging for diagnostics.
Internal
- Updated retry loop structure for clarity and determinism.
- Added guardrails around max retry count.
- Prepared checklist items for next session (v2.1.x roadmap).
VSCode‑Updater 2.0.1
Release Notes (v2.0.1)
This release updates the module manifest and metadata to ensure full compatibility with the PowerShell Gallery publishing pipeline. All metadata fields have been normalized to the PrivateData.PSData block, resolving validation issues under PowerShellGet v1 and Windows PowerShell 5.1. The GitHub Actions workflow has also been updated to run under PowerShell 7 with the correct module‑publishing behavior.
Changes
- Corrected and reorganized manifest metadata for PowerShell Gallery compliance.
- Moved ProjectUri, LicenseUri, IconUri, Tags, and ReleaseNotes into PrivateData.PSData.
- Ensured the manifest parses cleanly under both PowerShell 5.1 and PowerShell 7.
- Updated the GitHub Actions workflow to use PowerShellGet v2 and PowerShell 7 for publishing.
- Cleaned up version alignment between the manifest, tag, and release.
Notes
This release focuses solely on metadata and publishing infrastructure. No functional changes were made to the module’s behavior.
VSCode-Updater v2.0.0
🚀 VSCode-Updater v2.0.0
This release introduces a fully redesigned, deterministic update engine for Visual Studio Code.
The module now provides operator‑grade reliability, predictable exit states, and hardened silent‑install orchestration across Windows platforms.
✨ New Features
Deterministic Watchdog
- Monitors installer execution in real time.
- Detects stalls, hung processes, and non‑terminating installers.
- Enforces strict timeout and controlled termination behavior.
Unified Logging Lifecycle
- Consistent log format across PowerShell 5.1 and 7+.
- Timestamped lifecycle banners for start, stop, and watchdog events.
- Supports custom log path overrides.
Exit‑Code Normalization Layer
- Maps installer return codes into predictable module exit states.
- Ensures clean, single‑line output for automation systems (CI/CD, RMM, monitoring).
Silent Installer Orchestration
- Bypasses VS Code’s internal updater.
- Ensures deterministic, unattended updates with hardened error handling.
🔧 Improvements
- Rebuilt download logic for reliability and predictable failure modes.
- Consolidated helper functions under
Private/with strict scoping. - Updated module manifest with accurate metadata and exports.
- README updated to reflect new architecture and usage patterns.
🗑️ Removed
- Legacy non‑deterministic update logic.
- Any reliance on VS Code’s built‑in update mechanism.
📦 Compatibility
- Windows PowerShell 5.1 and PowerShell 7+
- Windows 10/11, Server 2016–2025
📘 Notes
This release marks the beginning of the hardened, operator‑grade lifecycle for VSCode‑Updater.
Future releases will expand verbose diagnostics, telemetry, and extended logging options.