PowerShell / PSResourceGet

PSResourceGet is the package manager for PowerShell
https://www.powershellgallery.com/packages/Microsoft.PowerShell.PSResourceGet
MIT License
495 stars 94 forks source link

Either finish this Version or Update PowerShellGetv2 with my Bugfix already #313

Open echalone opened 4 years ago

echalone commented 4 years ago

Hi, please either finish development of this version of PowerShellGet already or accept my Bugfix for PowerShellGetv2: https://github.com/PowerShell/PowerShellGetv2/pull/592 The fix is literally just one line. You delete one line in an if statement and it is fixed.

You still send out PowerShell Core 7 with the same f-ing Bug in PowerShellGet which will reinstall all Scripts to the User-Scope instead of the scope they were installed in when you update them via Update-Script. I sent you a fix, you said you will instead develop this version of PowerShellGet. But not only is this taking forever, you even shipped out a new Version 2.2.5 of PowerShellGetv2 WITHOUT my bugfix (I've fixed it in 2.2.3 already). I don't believe this >:[

Please, fix this Bug NOW for PowerShell Core 7, I can't use your newest product on our servers because you're not fixing this!

echalone commented 3 years ago

For everyone with the same problem: I have written a PowerShell script that will fix this bug after you installed PowerShell 7 Core. You can get the script here: https://github.com/echalone/TUN/blob/master/PowerShell/Scripts/Tools/Local/Tools.Local.RepairPS7CorePowerShellGet.ps1 Be sure to execute this script with elevated/administrative privileges (it will try to restart itself with elevated privileges otherwise).

Whenever you installed OR updated PowerShell 7 Core on a machine, execute this script so my PowerShellGet Module Version 2 bugfix is applied. The script should find the installation directory on its own, but if not, you can provide the installatin directory for PowerShell 7 Core via the "PowerShellCorePath" parameter. The script will ask you for your confirmation if it should apply the fix, if you want to skip this confirmation add the switch -NoConfirm to your call of the script. That's it, the script will search for the bug in your installed PowerShellGet module version and replace the line with the fixed line via a regular expression. Should the module already be fixed or of another version without this bug in it, then the fix will not be applied and you will be told so by the script. So it should be relatively save to run this script, even if you're not sure of your PowerShellGet module version. If it's one that needs to be fixed, it will fix it, if not, it won't, easy as that.