PowerShell/tools
Christoph Bergmeister [MVP] f5fc0535ac Preserve user shortcuts pinned to Taskbar during MSI upgrade (#9305)
Fixes #8919 

Preserve user shortcuts pinned to Taskbar during MSI upgrade by not removing shortcuts in this case (assuming the user has not changed the installation directory), see https://stackoverflow.com/a/33402698/1810304
This also requires the Guid to not always be re-generated, which PR #7701 originally added to ensure shortcuts get removed when RTM and preview are installed, the underlying problem was rather that RTM and preview shared the same GUIDs, therefore the GUIDs are hard-coded again but different for RTM and preview, therefore the shortcuts will still always get removed on uninstall. But this also means those GUIDs should change when the default installation directory changes, i.e. in PowerShell 7. Should we write the code to already take this into account that it does not get forgotten?

Tested by first reproducing the issue by building installers locally (and bumping the patch version. Then the fix was applied to verify the solution, it. For this to take effect the version from which an MSI is being upgraded must have this fix already, i.e. if this fix got shipped in `6.2.1`, then on upgrading to it, the issue would still occur but when upgrading `6.2.1` to `6.2.2` the shortcut would start being preserved. I am wondering if we could maybe improve this to show effect earlier by trying to extract the used (auto-generated) GUIDs in the `6.2.0` and `6.2.0-rc` packages out and use them...
Please not that we probably need to take this out for `7.0` because the base installation directory will change. This also assumes that the user has not specified a different installation directory on upgrade but this is a bit of an edge case where I think other things might break as well.
2019-04-07 12:25:56 -07:00
..
credScan Fix credential scan issues (#4927) 2017-09-27 11:54:22 -07:00
failingTests Update copyright and license headers (#6134) 2018-02-13 09:23:53 -08:00
packaging Preserve user shortcuts pinned to Taskbar during MSI upgrade (#9305) 2019-04-07 12:25:56 -07:00
performance Add tools for PowerShell perf analysis (#7595) 2018-08-31 16:55:42 -07:00
releaseBuild Remove duplicate Policheck task and pin to specific version (#9297) 2019-04-04 16:14:57 -07:00
ResxGen Generate logging resources for Unix platforms 2018-07-06 13:28:20 -07:00
terms Remove exclusion for hang and add context exception for remaining instances (#5595) 2017-12-01 17:34:30 -08:00
windows Make install scripts more consistent over different operating systems (#9071) 2019-03-08 13:00:04 -08:00
Xml Make install scripts more consistent over different operating systems (#9071) 2019-03-08 13:00:04 -08:00
.gitignore Allow packaging from a zip package to allow for signing (#5418) 2017-11-13 10:10:51 -08:00
ci.psm1 Fix skipping of tests in RemoteSession.Basic.Tests.ps1 (#9304) 2019-04-05 17:00:41 -07:00
debug.sh Update install/build scripts and dockerfiles (#5222) 2017-10-25 08:25:35 -07:00
download.sh Revive 'download.sh' and make it redirect to 'install-powershell.sh' (#5386) 2017-11-09 22:58:53 -08:00
generate-icns.sh Add script to create icns files. (#7456) 2019-01-02 12:11:47 -08:00
install-powershell-readme.md Remove AppImage from tools (#9100) 2019-03-11 16:19:05 -07:00
install-powershell.ps1 Make install-powershell.ps1 work on Windows Server 2012 R2 (#9271) 2019-04-02 10:39:09 -07:00
install-powershell.sh Remove AppImage from tools (#9100) 2019-03-11 16:19:05 -07:00
installpsh-amazonlinux.sh Make install scripts more consistent over different operating systems (#9071) 2019-03-08 13:00:04 -08:00
installpsh-debian.sh Make install scripts more consistent over different operating systems (#9071) 2019-03-08 13:00:04 -08:00
installpsh-osx.sh Make install scripts more consistent over different operating systems (#9071) 2019-03-08 13:00:04 -08:00
installpsh-redhat.sh Make install scripts more consistent over different operating systems (#9071) 2019-03-08 13:00:04 -08:00
installpsh-suse.sh Make install scripts more consistent over different operating systems (#9071) 2019-03-08 13:00:04 -08:00
metadata.json Update docs for v6.2.0 (#9229) 2019-03-28 12:02:14 -07:00
releaseTools.psm1 Comment cleanup in releaseTools.psm1 (#9064) 2019-03-07 18:10:41 -08:00
Sign-Package.ps1 Update copyright and license headers (#6134) 2018-02-13 09:23:53 -08:00
WindowsCI.psm1 Refactor macOS CI so that tests run in parallel (#9056) 2019-03-11 13:00:22 -07:00