Update SA1649CodeFixProvider to fix problems related to linked files#3862
Open
bjornhellander wants to merge 2 commits intoDotNetAnalyzers:masterfrom
Open
Update SA1649CodeFixProvider to fix problems related to linked files#3862bjornhellander wants to merge 2 commits intoDotNetAnalyzers:masterfrom
bjornhellander wants to merge 2 commits intoDotNetAnalyzers:masterfrom
Conversation
4f91b3e to
1d22cdb
Compare
Codecov Report❌ Patch coverage is Additional details and impacted files@@ Coverage Diff @@
## master #3862 +/- ##
==========================================
+ Coverage 97.14% 97.39% +0.24%
==========================================
Files 957 958 +1
Lines 112852 112981 +129
Branches 3389 3401 +12
==========================================
+ Hits 109629 110034 +405
+ Misses 2224 1948 -276
Partials 999 999 🚀 New features to boost your workflow:
|
1d22cdb to
282c5e1
Compare
…ts which reference the same file before adding them there (to not end up with two identical files in those projects) and also to re-add files with correct path (to not get a copy where there was a link before) DotNetAnalyzers#1693 DotNetAnalyzers#3866
282c5e1 to
834380f
Compare
…on if it is available DotNetAnalyzers#2277
2d9ad41 to
b858737
Compare
Contributor
Author
|
Hi @sharwell, nice to see that you are back! Hope all is well! This PR fixes most cases where the code fix messes up project files. It also uses a better method of renaming files than removing and re-adding them again, to avoid e.g. closing offending files when the fix is applied. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Fixes #1693
Fixes #3866
Fixes #2277
Unsure how to unit test this properly, but I have also used the code fix "live" in this repository with good success:
https://github.com/bjornhellander/SA1649CodeFixProblem
Shared Projects still doesn't work, with exceptions being thrown and the fix messing up the projects, but it does not seem to behave worse than before. (The built-in rename refactoring MoveTypeCodeRefactoringProvider also throws exception on this, but handles files and projects better.) But normal linked files between projects seem to be handled correctly with these changes.
I have started looking at the new APIs to rename files, but since these issues seems to be solvable without them I didn't add those part in this PR.