Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: dotnet/msbuild
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: 20ce296
Choose a base ref
...
head repository: dotnet/msbuild
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: a440ea9
Choose a head ref
  • 11 commits
  • 19 files changed
  • 11 contributors

Commits on Oct 7, 2022

  1. Undeclared projects needs to be normalized and case insensitive so th…

    …at the current project can be ignored properly (#7999)
    
    Undeclared projects needs to be normalized and case insensitive (on windows) so that the current project can be ignored properly
    erickulcyk authored Oct 7, 2022
    Configuration menu
    Copy the full SHA
    cf56617 View commit details
    Browse the repository at this point in the history
  2. Update docker tag to the latest schema (#8020)

    As a part of dotnet/arcade#10123, we are moving all docker containers to the new tagging schema
    dkurepa authored Oct 7, 2022
    Configuration menu
    Copy the full SHA
    1c9cff3 View commit details
    Browse the repository at this point in the history
  3. Fix processor count on Windows for multiple processor groups (#7945)

    Fixes #7943
    
    Context
    MSBuild detects the wrong processor count on Windows when debugging processor groups
    
    Changes Made
    Replaces GetLogicalProcessorInformationEx with GetActiveProcessorCount and removes an incorrect check for >32 processors which is incompatible with Windows boot parameters for debugging processor groups.
    
    Testing
    Manual testing
    dmex authored Oct 7, 2022
    Configuration menu
    Copy the full SHA
    0228ca0 View commit details
    Browse the repository at this point in the history
  4. Support ItemDefinitionGroup in Choose/When (#7979)

    Fixes #5436
    
    Context
    Changes Made
    There is a significant error in the original Constuctor ProjectItemDefinitionGroupElement(XmlElement xmlElement, ProjectRootElement parent, ProjectRootElement containingProject). The second parameter and third parameter types are the same. Fix the constructor bug and parse ItemDefinationGroup in when and otherwise.
    
    Testing
    Add one test SupportItemDefinationGroupInWhenOtherwise()
    JaynieBai authored Oct 7, 2022
    Configuration menu
    Copy the full SHA
    06db703 View commit details
    Browse the repository at this point in the history
  5. [main] Update dependencies from nuget/nuget.client (#7982)

    * Update dependencies from https://github.com/nuget/nuget.client build 6.4.0.90
    
    NuGet.Build.Tasks
     From Version 6.4.0-preview.3.74 -> To Version 6.4.0-preview.3.90
    
    * Update dependencies from https://github.com/nuget/nuget.client build 6.4.0.97
    
    NuGet.Build.Tasks
     From Version 6.4.0-preview.3.74 -> To Version 6.4.0-preview.3.97
    
    * Update dependencies from https://github.com/nuget/nuget.client build 6.4.0.100
    
    NuGet.Build.Tasks
     From Version 6.4.0-preview.3.74 -> To Version 6.4.0-preview.3.100
    
    Co-authored-by: dotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com>
    dotnet-maestro[bot] and dotnet-maestro[bot] authored Oct 7, 2022
    Configuration menu
    Copy the full SHA
    9785b17 View commit details
    Browse the repository at this point in the history
  6. Fix issue 7828: enabling the binary logger adds console output (#7989)

    Fixes #7828
    
    Context
    Binary logger option overrides verbosity by diagnostic and prints a line even verbosity is set to quiet.
    
    Changes Made
    The fix introduces a variable to store the original verbosity, if the "original verbosity" is quiet, it suppresses the console output when binary logger is requested.
    fanhaipeng authored Oct 7, 2022
    Configuration menu
    Copy the full SHA
    9e6f145 View commit details
    Browse the repository at this point in the history

Commits on Oct 10, 2022

  1. arm64 binaries ngen with arm64 ngenArchitecture (#7975)

    Customer Impact
    Slower arm64 MSBuild due to assemblies NOT being ngen'd for the arm64 architecture.
    
    Testing
    Verified no regressions in https://dev.azure.com/devdiv/DevDiv/_git/VS/pullrequest/426628
    
    Code Reviewers
    raines
    Forgind
    
    Description of fix
    Change setting in our .swr file to ngen relevant assemblies as arm64.
    benvillalobos authored Oct 10, 2022
    Configuration menu
    Copy the full SHA
    1c76c5f View commit details
    Browse the repository at this point in the history
  2. Restore newline auto return (#8013)

    Fixes #8008
    
    Context
    With the MSBuild server, I added support for VT100, which meant we could understand colorization and such from an older command prompt, but I also added DISABLE_NEWLINE_AUTO_RETURN, which made the UI look worse.
    
    Customer Impact
    Customers using MSBuild server and trying to print newlines (\n) will see output with extra space.
    
    Testing
    Manually tested the change: ran the proposed repro project and saw the bug. Overwrote the MSBuild in that SDK with custom bits from this PR and retested it, and I could no longer reproduce the issue. Tried using MSBuild.exe on a random project, and the important part of the VT100 change was preserved.
    
    Code Reviewers
    rokonec
    
    Description of fix
    Removed the DISABLE_NEWLINE_AUTO_RETURN argument
    Forgind authored Oct 10, 2022
    Configuration menu
    Copy the full SHA
    2605f91 View commit details
    Browse the repository at this point in the history
  3. Log each inner exception of an aggregate exception in TaskLoggingHelp…

    …er.LogErrorFromException() (#7998)
    
    Fixes #7985
    
    Context
    TaskLoggingHelper.LogErrorFromException() does not currently take into account the relatively new AggregateException which has inner exceptions but an outer exception with very little details.
    
    Changes Made
    I've updated TaskLoggingHelper.LogErrorFromException() to check if the specified exception is an AggregateException and call the method again for each inner exception, respecting all of the arguments passed in around showing details or a stack trace.
    
    Testing
    A unit test was added
    
    Notes
    Unfortunately, I can't add the other improvement around an InvalidProjectFileException since TaskLoggingHelper is compiled into Microsoft.Build.Utilities.Core and that assembly does not reference Microsoft.Build.dll so it doesn't have access to the InvalidProjectFileException class 😢
    jeffkl authored Oct 10, 2022
    Configuration menu
    Copy the full SHA
    99f9c4d View commit details
    Browse the repository at this point in the history
  4. Update dependencies from https://github.com/nuget/nuget.client build …

    …6.4.0.107 (#8037)
    
    NuGet.Build.Tasks
     From Version 6.4.0-preview.3.100 -> To Version 6.4.0-preview.3.107
    
    Co-authored-by: dotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com>
    dotnet-maestro[bot] and dotnet-maestro[bot] authored Oct 10, 2022
    Configuration menu
    Copy the full SHA
    e2dabce View commit details
    Browse the repository at this point in the history
  5. Fallback when server client fails due to mutex connection timeout err…

    …or. (#8024)
    
    Fixes #7993
    
    Summary
    In the MSBuild server, we identify the state of the server via mutexes. Sometimes, for reason yet unknown to us, mutex could throw the exception System.IO.IOException: Connection timed out. When this occurs, we fallback to old behavior building without server. We fixed some of those in #8000, but now found more situations when this happens.
    
    Customer Impact
    MSBuild non-Windows users could have intermittent error when building with dotnet build.
    This does not affect Visual Studio.
    
    Regression?
    Yes, this is a regression.
    
    Testing
    Unit tests.
    
    Risk
    Low risk. The fix adds additional try-catch blocks to process this situation.
    
    Code Reviewers
    [TODO]
    
    Description of the fix
    Add a try-catch block to catch and process the IOException exception when mutexes are used.
    Add a new client exit type for this kind of error.
    AR-May authored Oct 10, 2022
    Configuration menu
    Copy the full SHA
    a440ea9 View commit details
    Browse the repository at this point in the history
Loading