This commit ensures that any `/property` option's value is surrounded by quotes
to allow MSBuild to properly interpret special characters like semicolons.
Users familiar with MSBuild expect `/property:Name="Value"` to handle
semicolons. However, since `dotnet` parses the command line first, the
quotes get processed by its command line parser. This results in
`/property:Name=Value` being passed to MSBuild, which will not parse a "Value"
containing a semicolon correctly.
Since it is safe to always quote the property value for this option, this fix
simply ensures that the value is surrounded by quotes.
This fixes the issue for all commands that forward arguments to MSBuild.
Fixes#7791.
Make use of the MSBuild distributed logger functionality and add a
forwarding logger. When in a multi-proc build, the forwarding logger
will decide which events to forward to the main node to be logged.
Without this, all events are routed and a perf penalty is incurred.
* remove reference to TestAssetsManager in dotnet-add-reference
* remove TestAssetsManager dependency from dotnet-build
* remove TAM ref from dotnet-list-reference
* remove TAM dependency from dotnet-msbuild
* remove TAM dependency from ProjectJsonMigration tests
* remove TAM dependency from dotnet.Tests
* remove TAM dependency from dotnet-new.Tests
* remove TAM from dotnet-pack.Tests
* remove TAM from dotnet-publish.Tests
* remove TAM from dotnet-restore.Tests
* remove TAM dependency from dotnet-remove-reference.Tests
* remove TAM dependency from dotnet-run.Tests
* remove TAM dependency from dotnet-test.Tests
* remove TAM dependency from Microsoft.DotNet.Cli.Utils.Tests
* remove TAM from TestBase
* remove TAM
* remove newly introduced dependency on TAM
* Remove argument separator from commands
Currently, the argument separator (`--`) is only supported on
`dotnet run`. This PR removes it from other commands to make the help and
usage of these command clearer.
* Adding dotnet run message test
* Responding to PR feedback