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.
Found this while on my adventures with dotnet plugins. If your plugin project has any warnings it's unusable in shimless mode (i.e.
RunPlugin
) because msbuild would first print the warning then start the plugin and print the port number. This lead to errors like:When running shimless these warnings don't really matter. So this PR rewrites
RunPlugin
to do the build separately, and then invokedotnet run
with the--no-build
flag. I would have preferred to just usedotnet run
but there doesn't seem to be anyway to pass it flags to silence the msbuild output from it.This is tested by adding a warning to the testprovider project that always triggers. As we use the testprovider project in shimless mode in the integration tests this shows that a project with warnings can still be used.