Closed asaf92 closed 1 month ago
I couldn't figure out the best area label to add to this issue. If you have write-permissions please help me learn by adding exactly one area label.
I couldn't figure out the best area label to add to this issue. If you have write-permissions please help me learn by adding exactly one area label.
Thanks for the report! @tmat do you agree with the analysis, and if so what change would you suggest.
@baronfel The issue is in a workaround for https://github.com/dotnet/sdk/issues/40484. Best would be to fix that issue and remove the workaround from dotnet-watch. Meanwhile, working on a fix to the workaround.
Hi @tmat ! Thanks for the fix, much appreciated.
I noticed this fix is not available in dotnet9 rc2, will it be available in the dotnet9 release?
Describe the bug
On dotnet 9 RC1 - hot-reload does not work when the project name includes a period (
.
).To Reproduce
dotnet new webapp -o BugExample.WebApp
dotnet watch --verbose
Hot reload will not work. A log message will show saying that the process is ignored.
dotnet watch
can still be used with the--no-hot-reload
option, but this means that every change (or most changes) leads to rebuild.Further technical details
I believe this is due to this change in #41324. It assumes that the target process path executable is going to have an extension like the
processPath
, but it doesn't have one.Because it attempts to change the extension, it compares
BugExample.WebApp.exe
toBugExample.exe
. This works when there's no.
becauseChangeExtension
adds an extension when there's no period.dotnet --info
: