Chris Titus and GitHub
822003d87f
Fix AppX detection and add package restore support ( #4842 )
...
* Fix installed AppX package detection
* Add AppX package restore workflow
* Add AppX operation progress feedback
* Fix AppX operation launch race
* Handle AppX workflow failures
2026-07-15 15:57:56 -05:00
9791386f53
fix: resolve silent failures in AppX removal and PS7 DISM bugs ( #4822 )
...
* fix: resolve silent failures in AppX removal and PS7 DISM bugs
- Fixed a bug where Remove-AppxPackage failed silently in PowerShell 7 due to pipeline binding issues. We now explicitly loop through Get-AppxPackage results and pass PackageFullName directly.
- Added wildcard matching to Get-AppxPackage and Get-AppxProvisionedPackage to reliably locate packages regardless of short name vs family name variations.
- Offloaded Get-AppxProvisionedPackage and Remove-AppxProvisionedPackage execution to Windows PowerShell 5.1 (powershell.exe) to bypass PowerShell 7 DISM COM exceptions ("Class not registered") and performance hangs.
- Deduplicated AppX removal logic by calling Remove-WinUtilAPPX directly from Invoke-WPFAppxRemoval instead of copying the implementation.
* refactor(Remove-WinUtilAPPX): use script block to improve readability
* feat: enhance AppX removal process and add provisioned package removal function
* fix(tests): update AppX removal tests
This also adds tests for the new Remove-WinUtilProvisionedAPPX functionality
* Move AppX removal under Tweaks
* Address AppX removal review feedback
* Complete AppX removal error handling
* Prevent AppX cleanup confirmation prompts
---------
Co-authored-by: Chris Titus <contact@christitus.com >
2026-07-13 13:16:35 -05:00
Chris Titus and GitHub
58d37bb461
Clean up analyzer warnings across app search and ISO workflows ( #4794 )
...
* Clean up analyzer warnings
* Align analyzer warning cleanup policy
* Run PSScriptAnalyzer directly in unittests workflow
* Bind lazy-rendered buttons to click handlers
* Remove WinUtil performance tracing
* Fix Win11 ISO creator temp directory reuse
2026-07-02 12:05:25 -05:00
Chris Titus and GitHub
2cb20893fc
Expand Pester coverage across install, tweaks, and UI workflows ( #4792 )
...
* Harden Pester CI and discard runspace return values
* Add prioritized test backlog
* Add WinUtil action logging
* Add config integrity tests
* Add XAML control wiring tests
* Add registry and service helper tests
* Add package manager tests
* Add runspace behavior tests
* Add tweak orchestration tests
* Add install workflow tests
* Add update profile tests
* Add AppX removal tests
* Log package installer output
* Add UI state helper tests
* Pin Pester test runner version
* Expand Win11 Creator tests
* Add preferences and theme tests
* Add search filter tests
* Add compile contract tests
* Use single WinUtil session log
* Remove installer output logging helper
* Handle locked WinUtil transcript log
* Avoid appending to active transcript log
* Log install uninstall package identities
2026-07-01 21:49:15 -05:00
Gabi and GitHub
7c71a39f7a
Feature/appx removal tab ( #4729 )
...
* feat: add config-driven AppX package removal tab
- Add config/appx.json with curated list of removable AppX packages
- Add AppX Removal tab (WPFTab6) with Select All, Clear, and Remove buttons
- Reuse existing Invoke-WPFUIElements engine for minimal code footprint
- Add Invoke-WPFAppxRemoval.ps1 for background runspace package removal
- Add theme colors for the new tab button in light and dark modes
* yep
* yep
* yep
* yep
* Update inputXML.xaml
* Update Invoke-WPFButton.ps1
* Update Invoke-WPFButton.ps1
* Update Invoke-WPFSelectedCheckboxesUpdate.ps1
* Update appx.json
* Update appx.json
* Update appx.json
* Update tweaks.json
* Update appx.json
* Update appx.json
* Update appx.json
* Update Invoke-WPFAppxRemoval.ps1
* Update Invoke-WPFButton.ps1
* Delete functions/public/Invoke-WPFAppxRemoval.ps1
* Revert "Update Invoke-WPFButton.ps1"
This reverts commit d8705cc08e .
* Revert "Delete functions/public/Invoke-WPFAppxRemoval.ps1"
This reverts commit 9e45d1ad99 .
* Update Invoke-WPFAppxRemoval.ps1
* Update Invoke-WPFAppxRemoval.ps1
* Update Invoke-WPFAppxRemoval.ps1
* Update Invoke-WPFButton.ps1
* yep
* Update appx.json
* Update appx.json
* Update tweaks.json
* Update start.ps1
* Update preset.json
* Update tweaks.json
* yep
* yep
* yep
* yep
* yep
* yep
* Update Invoke-WPFAppxRemoval.ps1
* Update Update-WinUtilSelections.ps1
* Update Update-WinUtilSelections.ps1
* yep
* Update Invoke-WPFAppxRemoval.ps1
* yep
* yep
* Update Invoke-WPFAppxRemoval.ps1
* Update appx.json
* Update Invoke-WPFAppxRemoval.ps1
* Update Invoke-WPFAppxRemoval.ps1
* Update appx.json
* Update Invoke-WPFGetInstalled.ps1
* Update Invoke-WPFAppxRemoval.ps1
* yep
* yep
* Update Invoke-WPFSelectedCheckboxesUpdate.ps1
* yep
* yep
* Update Invoke-WPFAppxRemoval.ps1
* Update Invoke-WPFAppxRemoval.ps1
* yep
* Update Invoke-WPFAppxRemoval.ps1
* Update Invoke-WPFAppxRemoval.ps1
* Update appx.json
* Update Invoke-WPFImpex.ps1
* Update Invoke-WPFImpex.ps1
* Update Invoke-WPFAppxRemoval.ps1
* Update preset.json
* Update preset.json
* Update Invoke-WPFSelectedCheckboxesUpdate.ps1
* Update Invoke-WPFAppxRemoval.ps1
* Update tweaks.json
* Update Invoke-WPFAppxRemoval.ps1
* Update Invoke-WPFAppxRemoval.ps1
* Update Invoke-WPFAppxRemoval.ps1
* Update Invoke-WPFAppxRemoval.ps1
* yep
* yep
* Update Invoke-WPFAppxRemoval.ps1
* yep
* Delete functions/private/Find-AppxByNameOrDescription.ps1
* yep
* Update Invoke-WPFButton.ps1
* Update main.ps1
* Update Invoke-WPFTab.ps1
* yep
* yep
* Update themes.json
2026-07-01 12:13:32 -05:00