-
Notifications
You must be signed in to change notification settings - Fork 311
Provide better diagnostics to non-admin users of 'integrate install'. #1036
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
Conversation
@microsoft-github-policy-service agree |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Sorry for the piecemeal review -- I didn't review closely enough the first time.
In your proposal, it seems like your intent is to keep all the "external" behavior the same (failures are still failures, successes are successes), but just change the messages displayed to the user to be more helpful. In that case, we need the exit codes to remain the same so that scripts/CI systems will react in the same way.
Thanks for the PR! It does look good to me after the exit code issue is resolved.
Building up on #1034, this PR treats failures as warnings in
integrate_install_msbuild14()
.1) Happy path
No change. This is fine.
2) With %LOCALAPPDATA%\vcpkg set as read-only
No change. This failure mode seems unlikely, and the simplicity of a hard error is reasonable to me.
3) Declining UAC elevation to modify MSBuild14 files under to C:\Program Files (x86)\
For users only interested in VS2017 and later toolchains, this is more informative than the current version, which fails with either
or
IMO the text in the new version should be improved ("Integration was not applied" should talk about partial success, "All MSBuild C++ projects..." is not strictly true here), but I didn't want to introduce new strings.
What do you think?