PowerShell/PowerShellGet

Bug with Get-InstalledScript and Uninstall-Script

alerickson opened this issue · 1 comments

Prerequisites

  • Write a descriptive title.
  • Make sure you are able to repro it on the latest version
  • Search the existing issues.

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

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