-
Notifications
You must be signed in to change notification settings - Fork 1.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Toolset update: VS 2022 17.11 Preview 1 #4687
Merged
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Use case-sensitive matching for 'PROVISION_IMAGE_SUCCEEDED'.
We need to preserve the original filename 'PowerShell-7.4.2-win-x64.msi' instead of generating 'RANDOM.exe'.
CUDA is 3 GB, so this may be helpful.
This uses a case-sensitive comparison; the default is case-insensitive.
PowerShell 7.4 added `$PSNativeCommandUseErrorActionPreference`: https://learn.microsoft.com/en-us/powershell/module/microsoft.powershell.core/about/about_preference_variables?view=powershell-7.4#psnativecommanduseerroractionpreference
See: https://learn.microsoft.com/en-us/azure/devops/release-notes/2021/pipelines/sprint-195-update#automatic-retries-for-a-task The release notes said "The failing task is retried immediately" but I now observe quadratic backoff, waiting 1, 4, 9 seconds.
…ested] `git submodule status` emits lowercase hexits, and we pass lowercase 'llvm-project'. Although PowerShell defaults to case-insensitive, choosing case-sensitive for string operations should align with C++ expectations and avoid surprises.
`$VM.ID` and `$VM.StorageProfile.OsDisk.Name` are unchanged between these locations. Calling `Get-AzVM` is necessary; the return value of `New-AzVm` isn't useful.
The progress bar message makes the `Write-Host` messages unnecessary. `-ResourceId $VM.ID` is much shorter than `-ResourceGroupName $ResourceGroupName -Name $Name`, allowing us to directly say `'PowerState/stopped'` without wrapping. The original implementation in GH 633 (named `Start-WaitForShutdown`) was verbose, justifying a separate function, but now a direct loop is clearer.
`$ErrorActionPreference` wasn't useful because sysprep is a native command. `Write-Host` wasn't useful because we aren't printing the message returned by `Invoke-AzVMRunCommand`. The PowerShell call operator `&` wasn't useful because we aren't expanding any variables here.
No changes except for: * Drop redundant banner. * `$DiffFile` was never passed as an argument, so set it as an ordinary variable. * Indentation.
Simplify by using the PowerShell redirection operator `>` instead of `Start-Process`. https://learn.microsoft.com/en-us/powershell/module/microsoft.powershell.core/about/about_redirection?view=powershell-7.4#powershell-redirection-operators Verified that the diff can be applied cleanly.
Overhaul messaging.
Actually name the file format.diff before uploading, as this appears in the zip.
Name the zip differently from the file within.
Style: Avoid Yoda condition when checking `git diff` output.
They were talking about our old scale set system. Now they talk about hosted pools, and explain the overall process in more detail.
Not yet required - the internal toolset is still 19.40.
MSVC no longer emits warning C4521 'multiple copy constructors specified', since at least MSVC-PR-368907 on 2021-12-09.
barcharcraz
approved these changes
May 22, 2024
I'm mirroring this to the MSVC-internal repo - please notify me if any further changes are pushed. |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
📜 Changelog
⚙️ Azure Pipelines Commits
Followup to #4594. I manually tested all of the success and failure scenarios for these commits.
Invoke-AzVMRunCommand
doesn't indicate that, so I have a simple strategy - have the VM script print a special message for success, then have the maintainer script search for that message.'PROVISION_IMAGE_SUCCEEDED'
.'PowerShell-7.4.2-win-x64.msi'
instead of generating'RANDOM.exe'
, otherwise we won't be able to run it.D:\installerTemp
.D:
is fast temporary storage.'PROTOTYPE'
isn't absolutely perfect, but it's the simplest way to recognize the VM.)cmd /c ver
.pwsh: true
.$PSNativeCommandUseErrorActionPreference
: https://learn.microsoft.com/en-us/powershell/module/microsoft.powershell.core/about/about_preference_variables?view=powershell-7.4#psnativecommanduseerroractionpreference-creplace
and-ceq
.git submodule status
emits lowercase hexits, and we pass lowercase'llvm-project'
.Restart-AzVM
arguments.Get-AzVM
up so we can use$VM.ID
earlier.$VM.ID
and$VM.StorageProfile.OsDisk.Name
are unchanged between these locations.Get-AzVM
is necessary; the return value ofNew-AzVm
isn't useful.Wait-Shutdown
function.Write-Host
messages unnecessary.-ResourceId $VM.ID
is much shorter than-ResourceGroupName $ResourceGroupName -Name $Name
, allowing us to directly say'PowerState/stopped'
without wrapping.Start-WaitForShutdown
) was verbose, justifying a separate function, but now a direct loop is clearer.$VM.ID
.-ScriptString
.$ErrorActionPreference
wasn't useful because sysprep is a native command.Write-Host
wasn't useful because we aren't printing the message returned byInvoke-AzVMRunCommand
.&
wasn't useful because we aren't expanding any variables here.New-AzVMConfig
, use-VMName
instead of the alias-Name
.New-AzVm
defaults to Trusted Launch as of Azure PowerShell 11.0.0 (November 2023).validationBuildOutputLocation
a dedicated name, and clean it.$DiffFile
was never passed as an argument, so set it as an ordinary variable.>
instead ofStart-Process
.git diff
output.🧰 Toolset Update Commits
std::num_get
".STL-ASan-CI passed.