Skip to content
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

Merge 'main' into RefStructInterfaces #72519

Merged

Conversation

AlekseyTs
Copy link
Contributor

No description provided.

CyrusNajmabadi and others added 30 commits March 5, 2024 14:09
* Roslyn non-source-only build fixes
These changes make it possible to build roslyn in non-source-only modes in the VMR:
- Remove some vertical build (non-source-only) exclusions that were added during the PoC phase of the VMR
- When packing the language server nuget package, Pack only the rid that the current vertical is building.
- Mark a couple benchmark projects as IsTestProject. Tests are excluded by default when building the VMR
- Mark a couple of test utility projects as test utility projects. When not building tests, these projects are excluded from the build.

* Improve comments

* Use ExcludeFromDotNetBuild instead of IsTestProject for benchmark projects

* Add more comments

* Update src/Features/LanguageServer/Microsoft.CodeAnalysis.LanguageServer/Microsoft.CodeAnalysis.LanguageServer.csproj

Co-authored-by: Viktor Hofer <[email protected]>

---------

Co-authored-by: Viktor Hofer <[email protected]>
CyrusNajmabadi and others added 12 commits March 12, 2024 07:26
Looking at profiles building Compilers.slnf locally found a number of places that we weren't using PooledBlobBuilder that were impacting allocations. This change removes 250MB of byte[] allocations and saves 50MB on LOH.

This reduces time spent in GC during build by ~1 second.

Note: profiling the compiler server is imprecise as due to the parallel nature of the server and msbuild profiles can be quite noisy. For these measurements I did several measurements and picked the most average for the comparisons.
This avoids full solution level searches in scenarios where a project cone is being searched. This was particularly bad when the AssetHint didn't indicate a project/document.
* Move to scout queue

* Change corehost
@AlekseyTs AlekseyTs requested review from a team as code owners March 12, 2024 22:33
@dotnet-issue-labeler dotnet-issue-labeler bot added the untriaged Issues and PRs which have not yet been triaged by a lead label Mar 12, 2024
@AlekseyTs
Copy link
Contributor Author

@cston, @jjonescz, @dotnet/roslyn-compiler Need a sign-off on a merge from main

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Area-Compilers New Feature - RefStructInterfaces untriaged Issues and PRs which have not yet been triaged by a lead
Projects
None yet
Development

Successfully merging this pull request may close these issues.