You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Test escape ',' and "," and %3C in the powershell , cmd, bash and zsh. Found "," and ',' is not supported in the following 4 shells and cmd error is different from others.
Test ";=" and ';=' and %3B in 4 shells. Found when ";=" and ';=' global property, it reports error in 4 shells with the same error MSB1006: Property is not valid. But = and ; work well separately for global property
Powershell
With quotes: MSBUILD : error MSB1005: Specify a property and its value.
With double quotes: MSBUILD : error MSB1005: Specify a property and its value.
Html Codes. Works well
CMD
With quotes: MSBUILD : error MSB1006: Property is not valid.
With double quotes: MSBUILD : error MSB1005: Specify a property and its value.
With html codes: Good
bash
With quotes: MSBUILD : error MSB1005: Specify a property and its value.
With double quotes: MSBUILD : error MSB1005: Specify a property and its value.
Html codes: works well
ZSH
With quotes: MSBUILD : error MSB1005: Specify a property and its value.
With double quotes: MSBUILD : error MSB1005: Specify a property and its value.
JaynieBai
changed the title
[Bug]: Escape , and ;= doesn't work for global property, but html encode %3C and %3B= works well with dotnet msbuild
[Bug]: Escape , and ;= doesn't work for global property when build with dotnet, but html encode %3C and %3B= works well
May 13, 2024
@JaynieBai could you please check whether it is shell or msbuild parsing causing this error? For that, please check which parameters msbuild received. You can set $env:MSBUILDDEBUGONSTART=1, run the build, start debugging and look the parameters that msbuild received in the code.
When run with dotnet, the CommandLine is D:\WORK\msbuild\artifacts\bin\bootstrap\core\sdk\9.0.100-rc.1.24452.12\MSBuild.dll .\MyApp.csproj /p:F1=,
When run with msbuild.exe, the CommandLine is D:\WORK\msbuild\artifacts\bin\bootstrap\net472\MSBuild\Current\Bin\MSBuild.exe .\MyApp.csproj /p:F1=","
So for dotnet build, we have to execute dotnet D:\WORK\msbuild\artifacts\bin\bootstrap\core\sdk\9.0.100-rc.1.24452.12\MSBuild.dll .\MyApp.csproj /p:F1=\",\" with escape character "
Issue Description
Test escape ',' and "," and %3C in the powershell , cmd, bash and zsh. Found "," and ',' is not supported in the following 4 shells and cmd error is different from others.
Test ";=" and ';=' and %3B in 4 shells. Found when ";=" and ';=' global property, it reports error in 4 shells with the same error MSB1006: Property is not valid. But = and ; work well separately for global property
Powershell
With quotes: MSBUILD : error MSB1005: Specify a property and its value.
With double quotes: MSBUILD : error MSB1005: Specify a property and its value.
Html Codes. Works well
CMD
With quotes: MSBUILD : error MSB1006: Property is not valid.
With double quotes: MSBUILD : error MSB1005: Specify a property and its value.
With html codes: Good
bash
With quotes: MSBUILD : error MSB1005: Specify a property and its value.
With double quotes: MSBUILD : error MSB1005: Specify a property and its value.
Html codes: works well
ZSH
With quotes: MSBUILD : error MSB1005: Specify a property and its value.
With double quotes: MSBUILD : error MSB1005: Specify a property and its value.
Html codes work well
Steps to Reproduce
custom-proj1.zip
dotnet version 9.0.100-preview.3.24204.13
Expected Behavior
dotnet build should support such properties "," and ";=" as msbuild.exe
Actual Behavior
Dotnet build doesn't support the global property ", " and ";="
Analysis
No response
Versions & Configurations
No response
The text was updated successfully, but these errors were encountered: