msbuild
msbuild copied to clipboard
The Microsoft Build Engine (MSBuild) is the build platform for .NET and Visual Studio.
I noticed this allocates too much: https://github.com/dotnet/msbuild/blob/4b2d01ad2b0ef3ee4a05ed29ff1ec2b558b51f17/src/Shared/FileMatcher.cs#L1498  Let's investigate if we can cache these regexes, I suspect there's a very limited number of expressions here that we can reuse...
Fixes #11872 ### Context Adding a Regex Cache to FileMatcher to avoid repeated Regex creation. ### Changes Made FileMatcher.cs -> added a cache. ### Testing Existing tests. ### Notes
### Context There's a good amount of contention inside of `BuildManager.PendBuildRequest()` coming from the lock in the body: private BuildSubmissionBase PendBuildRequest( TRequestData requestData) where TRequestData : BuildRequestData where TResultData :...
Sets the initial size of the HashSet base on the likely size of elements we could expect. ### Changes Made ### Testing ### Notes
Fixes # Allocation of Translator ### Context In a trace we were seeing that there were allocations for a write translator.  Which can be avoided. ### Changes Made Instead...
Fixes # ### Context ### Changes Made ### Testing ### Notes
…than getting boxed Fixes # ### Context  ### Changes Made ### Testing ### Notes
### Context Some longer strings in `ExpandSingleMetadata` are truncated with ellipses appended. Especially for long strings, we want to avoid creating intermediate strings that are immediately discarded. We can use...
…nd preserve formating enabled Fixes #2772 ### Context Fix bug in project evaluation described in #2772 ### Changes Made Apply recommended fix. ### Testing Add test to reproduce issue and...
### Issue Description [ccache](https://ccache.dev) is a compiler cache that stores the results of previous compiler invocations to accelerate your builds (even after you clean). It works fine with MSBuild as...