Closed Zwatotem closed 1 year ago
Thanks for the detailed bug report! :+1:
The underlying problem is most likely not specific to namespaces or C# in general. SemanticDiff isn't always great at matching statements between the old and new code when a lot of code is moved or a parent statement is removed. This seems to be the case here. It can't correctly match some of the brackets and statements, so they show up as changes.
We are aware of this issue and have some ideas on how to fix it. Hopefully we can resolve this in the next release. I will keep you updated.
We have just released SemanticDiff 0.8.5 which should fix this issue. Can you confirm this?
We have just released SemanticDiff 0.8.5 which should fix this issue. Can you confirm this?
Sorry for the long time to reply. Yes, this looks to t fixed. Thank you very much :)
Describe the Bug In C# removing the namespace block causes practically the whole file to be outdented one level. The outdent is threated as not meaningful (as expected), but not for the lines containing brackets.
To Reproduce Steps to reproduce the behavior:
Expected Behavior Only the braces of namespace block and the internal changes are highlighted. Any other braces shouldn't be highlighted.
Actual Behavior The expected changes are highlighted, however the braces and flow control statements that were merely outdented are also highlighted despite not caring any semantic changes.
Screenshots
Source Code
SemanticDiff Version v0.8.3
VS Code Information
Additional Context This is C# 10 or so. Didn't check other versions/languages, neither did I mutate the code to check under what conditions the problem exactly occurs.