PowerShell / PowerShellGet

This module provide functions used with PowerShellGet v3 to provide compatibility with scripts expecting PowerShellGet v2
MIT License
49 stars 13 forks source link

Bug with Get-InstalledScript and Uninstall-Script #64

Open alerickson opened 4 months ago

alerickson commented 4 months ago

Prerequisites

Steps to reproduce

Install-Script -Name Install-VSCode -Repository PSGallery -NoPathUpdate -Scope AllUsers -verbose -debug

will install at AllUsers scope (as expected).

Expected behavior

Get-InstalledScript Install-VSCode should be able to find the script installed. PowerShellGet 2.2.5 functionality checks AllUsers first and if it's not there, checks CurrentUser scope.

Actual behavior

Get-InstalledScript does not have a -Scope parameter so it does not pass a -Scope parameter onto Get-InstalledPSResource. Get-InstalledPSResource just uses the default value of CurrentUser and never checks AllUsers.

Note: This is also happening with Get-InstalledModule, Uninstall-Script, and Uninstall-Module.

One proposal is to have PSResourceGet's ScopeType be a flagged enum so that multiple values can be passed (this would be a breaking change in PSResourceGet).

Version

3.0.23-beta23

SydneyhSmith commented 4 months ago

The plan is to adapt PSResourceGet so that it checks first currentuser scope and then alluser scope by default