* Remove BOM, insert newline at EOF
* Correct case of $MyInvocation special variable
* Correct case of $OFS special variable
* Correct case of $NestedPromptLevel special variable
* Correct case of $Matches special variable
* Correct case of $LASTEXITCODE special variable
* Correct case of $StackTrace special variable
* Correct case of $args special variable
* Correct case of $this special variable
* Correct case of $input special variable
* Correct case of $PSCmdlet special variable
* Correct case of $error special variable
* Correct case of $PSDefaultParameterValues special variable
* Correct case of $PSScriptRoot special variable
* Correct case of $PWD special variable
* Correct case of $null special variable
* Correct case of $true special variable
* Correct case of $false special variable
* Correct case of $PSModuleAutoLoadingPreference special variable
* Correct case of $IsLinux special variable
* Correct case of $IsMacOS special variable
* Correct case of $IsWindows special variable
* Correct case of $IsCoreCLR special variable
* Correct case of $DebugPreference special variable
* Correct case of $VerbosePreference special variable
* Correct case of $InformationPreference special variable
* Correct case of $ExecutionContext special variable
* Correct case of $HOME special variable
* Correct case of $Host special variable
* Correct case of $PID special variable
* Correct case of $PSCulture special variable
* Correct case of $PSHOME special variable
* Correct case of $PSUICulture special variable
* Correct case of $PSVersionTable special variable
* Fix false positives
* Move fxd compliance to the top to avoid binskim and apiscan on fxd folder
* Choose only the files we build for compliance
* Update tools/packaging/packaging.psm1
Co-Authored-By: Travis Plunk <travis.plunk@microsoft.com>
Add support in packaging.psm1 to produce a .msix AppX package. Update the docker image to use the new msix package type. Update the associated yml files so AzDevOps performs the build.
## PR Context
Enable publishing PSCore6 to Microsoft Store
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.
Removes appveyor stuff
## PR Context
<!-- Provide a little reasoning as to why this Pull Request helps and why you have opened it. -->
#8686 , appveyor removed