-
Notifications
You must be signed in to change notification settings - Fork 4.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
Add repo files to Roslyn.sln and Compilers.sln as solution items #59328
Add repo files to Roslyn.sln and Compilers.sln as solution items #59328
Conversation
note: this is unnecessary for Compilers.slnf as it implicitly inherits all solution items from Roslyn.sln
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.
This functionality is built into Solution Explorer, even if the files are not added to the solution file. Adding the files to the solution is worse because it adds a long-term maintenance requirement.
Here's the normal view of a solution:
And here's a toggle that shows the files:
In Visual Studio 2017 (intentionally chosen for these screenshots due to particularly high level of polish this feature had in that release), this button was a single-click toggle that immediately switched between file view and project view. In newer releases, the button is much more tedious (multiple clicks in different locations), but still serves the same intent. If we have a problem with the built-in feature, we should work with the editor to make the experience more usable and not penalize the solution file itself.
This is not true, this is never how this has worked for solution files, only project files.
This is a good argument. Since 16.9 (about a year of changes) we've added/remove/renamed 33 files.> git diff --name-only --diff-filter=ARD upstream/release/dev16.9-vs-deps..HEAD -- ":!eng/common" ":!eng/source-build-patches" ":!src" ":!.vscode" ":!.devcontainer" ":!.github" ":!.git-blame-ignore-revs"
Verify.cmd
azure-pipelines-integration-corehost.yml
azure-pipelines-integration-dartlab.yml
azure-pipelines-integration-lsp.yml
azure-pipelines-pr-validation.yml
docs/analyzers/DiagnosticSuppressorDesign.md
docs/area-owners.md
docs/compilers/CSharp/Compiler Breaking Changes - DotNet 6.md
docs/compilers/CSharp/Compiler Breaking Changes - DotNet 7.md
docs/compilers/CSharp/Compiler Breaking Changes - post DotNet 5.md
docs/compilers/CSharp/readme.md
docs/compilers/IOperation Test Hook.md
docs/compilers/terrapin.md
docs/contributing/API Review Process.md
docs/features/GlobalUsingDirective.md
docs/features/StaticAbstractMembersInInterfaces.md
docs/features/UsedAssemblyReferences.md
docs/features/incremental-generators.md
docs/ide/external-access.md
eng/Publishing.props
eng/SourceBuild.props
eng/SourceBuildPrebuiltBaseline.xml
eng/Tools.props
eng/docker/Mono/Dockerfile
eng/docker/mono.sh
eng/pipelines/insert.yml
eng/pipelines/test-integration-job.yml
eng/targets/ILAsm.targets
eng/targets/ILDAsm.targets
eng/targets/PackageProject.props
eng/test-rebuild.ps1
eng/update-build-number.ps1
verify.sh which was done across 36 commits.> git log --format=format:"|%as | %s | [%h](https://github.com/dotnet/roslyn/commit/%h) |" --diff-filter=ARD upstream/release/dev16.9-vs-deps..HEAD -- ":!eng/common" ":!eng/docker" ":!eng/source-build-patches" ":!src" ":!.vscode" ":!.devcontainer" ":!.github" ":!.git-blame-ignore-revs"
in 32 pull requests
tl;dr: we've had a pr to remove/add/rename one of these files ~1.3 times a month in the past year. So we should ask ourselves if this maintenance is too much. If we, as a team, think this is too much I am happy to close.
So your argument is that we should move to VS 2017 :) "Show all Files" only exists for items underneath a project. That feature has never been able to show files in a repo. This is what shows if you enable that option in the roslyn repo. It does not include the For files that do exist under a project I can certainly see the argument of not having them visible but instead relying on "Show all Files."
I agree we should file feedback about this, but it sounds like your position is that we should have no solution items? Is the feature you want to ask for "Show-all-Files shows all files in the same folder as the solution and their sub-directories?" |
Sounds like a feature I would want. |
@jmarolf The feature here is not Show All FIles. It's a different button: Switching to folder view via that button, you get this: |
Reflected on this @sharwell and I think I agree. Most I'll do here is update contributing docs to point out that VS has language service support for azdo pipelines etc. So you should get used to switching to folder view for that. I think we can both agree there are issues with the folder view but lets try and get the team to fix those first. |
Visual Studio now has a built-in language service for azure-pipelines and auto-indexes the text for items added to the solution.
This PR adds these additional files to the solution with the following layout
Full file listing here:
NOTE: if we don't want to take this change we may still want this:
cf44e8b
which ensures that Compilers.sln and Roslyn.sln have the same set of solution items