-
Notifications
You must be signed in to change notification settings - Fork 4.8k
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
.\build.cmd -subset clr+libs -config release
fails in ConfigurationBindingGenerator
#88918
Comments
Tagging subscribers to this area: @dotnet/area-extensions-configuration Issue DetailsAs per the title, currently running
|
Can you check again with the latest bits? Doesn't repro for me with latest main e264ba7. What commit were you folks on when you saw this? |
Still able to reproduce with e264ba7. This is what I ran: git checkout e264ba7
get-process dotnet | stop-process
dotnet build-server shutdown
git clean -ffdx
dotnet nuget locals all --clear
.\build.cmd -s clr+libs -c Release |
Same. I'm also able to repro still using 5a43a6f |
I've hit a couple of errors trying to build with the preview 6 SDK installed. Do y'all have .NET 8 preview 6 installed? Does it build if you do |
I get this on debug builds as well, but in that scenario it will trigger an assert instead of a crash. I have currently not found a way around this issue.
|
Do folks still see this issue when upgrading to the latest Visual Studio preview and adding the latest MSVC/compiler build tools (under individual components)? This resolved the issue for me. It could be that the compiler toolset currently used when building are wrongly selecting a stale version of the generator. |
I was able to get a repro on MacOS using @martincostello's project. Here's the call stack.
I can see that it loaded the preview6 generator:
I disassembled this and see: Trying to get more info, I'm pretty novice debugging with VS Code on macOS. |
I was able to get symbols and updated the above. Here's the parameter to
|
It looks to me like the the multi-line string literal embedded into the binary as new-line constants that depend upon whatever the git client settings are on the machine building the generator: Lines 57 to 59 in 90b85ea
So if I disassemble the one on the mac it has runtime/src/libraries/Microsoft.Extensions.Configuration.Binder/gen/Helpers/SourceWriter.cs Line 47 in 90b85ea
@tannergooding observed a break here because his local git client on windows was configured for source line-endings (eg: LF), which differed from Environment.NewLine: runtime/src/libraries/Microsoft.Extensions.Configuration.Binder/gen/Helpers/SourceWriter.cs Line 14 in 90b85ea
@martincostello observed a break because his mac/unix build client's had a different line ending in the generator (built on windows - CRLF) than his environment (LF). |
So the right fix would be to handle both CRLF and LF correctly as line endings I presume. I can provide a fix for that if you don't mind. |
@jasper-d thanks for the offer, but I believe a fix is already in the works :-) |
As per the title, currently running
.\build.cmd -subset clr+libs -config release
currently fails with the following:The text was updated successfully, but these errors were encountered: