Skip to content

Commit 76790a5

Browse files
authored
Fix Windows Python package uninstallation (#19)
1 parent 97a6630 commit 76790a5

File tree

1 file changed

+19
-8
lines changed

1 file changed

+19
-8
lines changed

installers/win-setup-template.ps1

+19-8
Original file line numberDiff line numberDiff line change
@@ -102,19 +102,30 @@ if (-Not (Test-Path $PythonToolcachePath))
102102
}
103103

104104
Write-Host "Check if current Python version is installed..."
105-
$InstalledVersion = Get-ChildItem -Path $PythonToolcachePath -Filter "$MajorVersion.$MinorVersion.*"
105+
$InstalledVersions = Get-Item "$PythonToolcachePath\$MajorVersion.$MinorVersion.*\$Architecture"
106106

107-
Write-Host "Remove registry entries for Python ${MajorVersion}.${MinorVersion}(${Architecture})..."
108-
Remove-RegistryEntries -Architecture $Architecture -MajorVersion $MajorVersion -MinorVersion $MinorVersion
107+
if ($null -ne $InstalledVersions)
108+
{
109+
Write-Host "Python$MajorVersion.$MinorVersion ($Architecture) was found in $PythonToolcachePath..."
109110

110-
if (($null -ne $InstalledVersion) -and (Test-Path -Path $InstalledVersion.FullName)) {
111-
Write-Host "Python$MajorVersion.$MinorVersion was found in $PythonToolcachePath"
112-
Write-Host "Deleting $($InstalledVersion.FullName)..."
113-
Remove-Item -Path $InstalledVersion.FullName -Recurse -Force
114-
} else {
111+
foreach ($InstalledVersion in $InstalledVersions)
112+
{
113+
if (Test-Path -Path $InstalledVersion)
114+
{
115+
Write-Host "Deleting $InstalledVersion..."
116+
Remove-Item -Path $InstalledVersion -Recurse -Force
117+
Remove-Item -Path "$($InstalledVersion.Parent.FullName)/${Architecture}.complete" -Force -Verbose
118+
}
119+
}
120+
}
121+
else
122+
{
115123
Write-Host "No Python$MajorVersion.$MinorVersion.* found"
116124
}
117125

126+
Write-Host "Remove registry entries for Python ${MajorVersion}.${MinorVersion}(${Architecture})..."
127+
Remove-RegistryEntries -Architecture $Architecture -MajorVersion $MajorVersion -MinorVersion $MinorVersion
128+
118129
Write-Host "Create Python $Version folder in $PythonToolcachePath"
119130
New-Item -ItemType Directory -Path $PythonArchPath -Force | Out-Null
120131

0 commit comments

Comments
 (0)