-
Notifications
You must be signed in to change notification settings - Fork 1.1k
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
sln-add: Support for slnx #44570
sln-add: Support for slnx #44570
Conversation
d397257
to
b6aa066
Compare
9f9f687
to
6e7f552
Compare
Refactor code Refactor code Add translations Fix typo Fix issues with --solution-folders Standarize error messages and tests Fix solution folder formatting Nit: Address pr comments
bf6d349
to
90f4248
Compare
@edvilme checkout the complete feedback. using solution.FindProject makes the regex usage irrelevant |
Added When you commit this breaking change:
Tagging @dotnet/compat for awareness of the breaking change. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Excellent work here. I think you did a great job looking at the solution persistence code and implementing this. This will likely cause several breaking changes, which should be documented as mentioned in our comments above and also prior discussions with the SLN team. Also, thanks to @/richardstanton for doing some calls with us on this to determine the desired behavior, and @kasperk81 / others for helping!
Please do follow up with the remaining comments before merging -- and it would be ideal to get a review from the SLNX side, but not necessary. I'm approving because everything has been tentatively accounted for and the changes look good (don't want to block this for eternity) but it is important that the remaining items have some sort of resolution before merging. (Also, I will be gone soon and I want to give you a thumbs up while I'm still here.)
Yes, I will review those. For now, I think the breaking changes would be:
|
Thank you, and thanks for all your support ant the thorough review. Likewise thanks to @kasperk81 and @/richardstanton for all your support here :) |
The
The current behavior auto-generates GUIDs and inserts them in entries like In short, the SDK should not force GUIDs when the community prefers the cleaner, GUID-free path-based approach. |
/backport to release/9.0.2xx |
Started backporting to release/9.0.2xx: https://github.com/dotnet/sdk/actions/runs/12265385120 |
@edvilme backporting to release/9.0.2xx failed, the patch most likely resulted in conflicts: $ git am --3way --empty=keep --ignore-whitespace --keep-non-patch changes.patch
Applying: [IMP] sln-list: Support for slnx
Using index info to reconstruct a base tree...
M src/Cli/dotnet/commands/dotnet-sln/LocalizableStrings.resx
M src/Cli/dotnet/commands/dotnet-sln/list/Program.cs
M src/Cli/dotnet/commands/dotnet-sln/xlf/LocalizableStrings.cs.xlf
M src/Cli/dotnet/commands/dotnet-sln/xlf/LocalizableStrings.de.xlf
M src/Cli/dotnet/commands/dotnet-sln/xlf/LocalizableStrings.es.xlf
M src/Cli/dotnet/commands/dotnet-sln/xlf/LocalizableStrings.fr.xlf
M src/Cli/dotnet/commands/dotnet-sln/xlf/LocalizableStrings.it.xlf
M src/Cli/dotnet/commands/dotnet-sln/xlf/LocalizableStrings.ja.xlf
M src/Cli/dotnet/commands/dotnet-sln/xlf/LocalizableStrings.ko.xlf
M src/Cli/dotnet/commands/dotnet-sln/xlf/LocalizableStrings.pl.xlf
M src/Cli/dotnet/commands/dotnet-sln/xlf/LocalizableStrings.pt-BR.xlf
M src/Cli/dotnet/commands/dotnet-sln/xlf/LocalizableStrings.ru.xlf
M src/Cli/dotnet/commands/dotnet-sln/xlf/LocalizableStrings.tr.xlf
M src/Cli/dotnet/commands/dotnet-sln/xlf/LocalizableStrings.zh-Hans.xlf
M src/Cli/dotnet/commands/dotnet-sln/xlf/LocalizableStrings.zh-Hant.xlf
Falling back to patching base and 3-way merge...
Auto-merging src/Cli/dotnet/commands/dotnet-sln/xlf/LocalizableStrings.zh-Hant.xlf
CONFLICT (content): Merge conflict in src/Cli/dotnet/commands/dotnet-sln/xlf/LocalizableStrings.zh-Hant.xlf
Auto-merging src/Cli/dotnet/commands/dotnet-sln/xlf/LocalizableStrings.zh-Hans.xlf
CONFLICT (content): Merge conflict in src/Cli/dotnet/commands/dotnet-sln/xlf/LocalizableStrings.zh-Hans.xlf
Auto-merging src/Cli/dotnet/commands/dotnet-sln/xlf/LocalizableStrings.tr.xlf
CONFLICT (content): Merge conflict in src/Cli/dotnet/commands/dotnet-sln/xlf/LocalizableStrings.tr.xlf
Auto-merging src/Cli/dotnet/commands/dotnet-sln/xlf/LocalizableStrings.ru.xlf
CONFLICT (content): Merge conflict in src/Cli/dotnet/commands/dotnet-sln/xlf/LocalizableStrings.ru.xlf
Auto-merging src/Cli/dotnet/commands/dotnet-sln/xlf/LocalizableStrings.pt-BR.xlf
CONFLICT (content): Merge conflict in src/Cli/dotnet/commands/dotnet-sln/xlf/LocalizableStrings.pt-BR.xlf
Auto-merging src/Cli/dotnet/commands/dotnet-sln/xlf/LocalizableStrings.pl.xlf
CONFLICT (content): Merge conflict in src/Cli/dotnet/commands/dotnet-sln/xlf/LocalizableStrings.pl.xlf
Auto-merging src/Cli/dotnet/commands/dotnet-sln/xlf/LocalizableStrings.ko.xlf
CONFLICT (content): Merge conflict in src/Cli/dotnet/commands/dotnet-sln/xlf/LocalizableStrings.ko.xlf
Auto-merging src/Cli/dotnet/commands/dotnet-sln/xlf/LocalizableStrings.ja.xlf
CONFLICT (content): Merge conflict in src/Cli/dotnet/commands/dotnet-sln/xlf/LocalizableStrings.ja.xlf
Auto-merging src/Cli/dotnet/commands/dotnet-sln/xlf/LocalizableStrings.it.xlf
CONFLICT (content): Merge conflict in src/Cli/dotnet/commands/dotnet-sln/xlf/LocalizableStrings.it.xlf
Auto-merging src/Cli/dotnet/commands/dotnet-sln/xlf/LocalizableStrings.fr.xlf
CONFLICT (content): Merge conflict in src/Cli/dotnet/commands/dotnet-sln/xlf/LocalizableStrings.fr.xlf
Auto-merging src/Cli/dotnet/commands/dotnet-sln/xlf/LocalizableStrings.es.xlf
CONFLICT (content): Merge conflict in src/Cli/dotnet/commands/dotnet-sln/xlf/LocalizableStrings.es.xlf
Auto-merging src/Cli/dotnet/commands/dotnet-sln/xlf/LocalizableStrings.de.xlf
CONFLICT (content): Merge conflict in src/Cli/dotnet/commands/dotnet-sln/xlf/LocalizableStrings.de.xlf
Auto-merging src/Cli/dotnet/commands/dotnet-sln/xlf/LocalizableStrings.cs.xlf
CONFLICT (content): Merge conflict in src/Cli/dotnet/commands/dotnet-sln/xlf/LocalizableStrings.cs.xlf
Auto-merging src/Cli/dotnet/commands/dotnet-sln/list/Program.cs
CONFLICT (content): Merge conflict in src/Cli/dotnet/commands/dotnet-sln/list/Program.cs
Auto-merging src/Cli/dotnet/commands/dotnet-sln/LocalizableStrings.resx
CONFLICT (content): Merge conflict in src/Cli/dotnet/commands/dotnet-sln/LocalizableStrings.resx
error: Failed to merge in the changes.
hint: Use 'git am --show-current-patch=diff' to see the failed patch
hint: When you have resolved this problem, run "git am --continue".
hint: If you prefer to skip this patch, run "git am --skip" instead.
hint: To restore the original branch and stop patching, run "git am --abort".
hint: Disable this message with "git config advice.mergeConflict false"
Patch failed at 0001 [IMP] sln-list: Support for slnx
Error: The process '/usr/bin/git' failed with exit code 128 Please backport manually! |
@edvilme @kasperk81 @nagilson @baronfel @Forgind I'm thinking of picking up #45072 again, but I want to make sure we're aligned on the approach. First, my personal preferences:
Problems for each:
Do you want a big PR (like #45072 currently is) that includes style changes, or do you want a few small PRs (perhaps with style/resx changes coming first)? |
Hello @Bartleby2718 Regarding the PRs I agree that atomic PRs might be easier to review and develop than massive PRs. However my personal suggestion would be to find something in the middle and making sure those are independent, as to avoid having a lot of merge conflicts, backports and reviews on different PRs. As for the style, whatever works best for you, but due to the size of the repo, I would suggest attaching to the code conventions used as it makes it easier to maintain and contribute to in the future. |
Contributes to #40913
This adds
dotnet sln add
support for .slnx files