Skip to content

Conversation

@kzu
Copy link
Member

@kzu kzu commented Feb 24, 2023

.NET 7.0 SDK changed from:

    <ResolvePackageDependencies
      ProjectPath="$(MSBuildProjectFullPath)"
      ProjectAssetsFile="$(ProjectAssetsFile)"
      ProjectLanguage="$(Language)"
      EmitLegacyAssetsFileItems="$(EmitLegacyAssetsFileItems)"
      TargetFramework="$(TargetFramework)"
      ContinueOnError="ErrorAndContinue">

      <Output TaskParameter="PackageDefinitions" ItemName="PackageDefinitions" />
      <Output TaskParameter="PackageDependencies" ItemName="PackageDependencies" />

      <!-- These outputs only produced when EmitLegacyAssetsFileItems is true -->
      <Output TaskParameter="TargetDefinitions" ItemName="TargetDefinitions" />
      <Output TaskParameter="FileDefinitions" ItemName="FileDefinitions" />
      <Output TaskParameter="FileDependencies" ItemName="FileDependencies" />
    </ResolvePackageDependencies>

to:

    <ResolvePackageDependencies
      ProjectPath="$(MSBuildProjectFullPath)"
      ProjectAssetsFile="$(ProjectAssetsFile)"
      ProjectLanguage="$(Language)"
      TargetFramework="$(TargetFramework)"
      ContinueOnError="ErrorAndContinue"
      Condition="'$(EmitLegacyAssetsFileItems)' == 'true'">

      <Output TaskParameter="PackageDefinitions" ItemName="PackageDefinitions" />
      <Output TaskParameter="PackageDependencies" ItemName="PackageDependencies" />
      <Output TaskParameter="TargetDefinitions" ItemName="TargetDefinitions" />
      <Output TaskParameter="FileDefinitions" ItemName="FileDefinitions" />
      <Output TaskParameter="FileDependencies" ItemName="FileDependencies" />
    </ResolvePackageDependencies>

Since the SDK now conditions the execution of the resolve to the value of EmitLegacyAssetsFileItems, we need to explicitly set it.

Since this was likely done for performance reasons, only turn on when package inference is active, since we don't use that anywhere else.

.NET 7.0 SDK changed from:

```xml
    <ResolvePackageDependencies
      ProjectPath="$(MSBuildProjectFullPath)"
      ProjectAssetsFile="$(ProjectAssetsFile)"
      ProjectLanguage="$(Language)"
      EmitLegacyAssetsFileItems="$(EmitLegacyAssetsFileItems)"
      TargetFramework="$(TargetFramework)"
      ContinueOnError="ErrorAndContinue">

      <Output TaskParameter="PackageDefinitions" ItemName="PackageDefinitions" />
      <Output TaskParameter="PackageDependencies" ItemName="PackageDependencies" />

      <!-- These outputs only produced when EmitLegacyAssetsFileItems is true -->
      <Output TaskParameter="TargetDefinitions" ItemName="TargetDefinitions" />
      <Output TaskParameter="FileDefinitions" ItemName="FileDefinitions" />
      <Output TaskParameter="FileDependencies" ItemName="FileDependencies" />
    </ResolvePackageDependencies>
```

to:

```xml
    <ResolvePackageDependencies
      ProjectPath="$(MSBuildProjectFullPath)"
      ProjectAssetsFile="$(ProjectAssetsFile)"
      ProjectLanguage="$(Language)"
      TargetFramework="$(TargetFramework)"
      ContinueOnError="ErrorAndContinue"
      Condition="'$(EmitLegacyAssetsFileItems)' == 'true'">

      <Output TaskParameter="PackageDefinitions" ItemName="PackageDefinitions" />
      <Output TaskParameter="PackageDependencies" ItemName="PackageDependencies" />
      <Output TaskParameter="TargetDefinitions" ItemName="TargetDefinitions" />
      <Output TaskParameter="FileDefinitions" ItemName="FileDefinitions" />
      <Output TaskParameter="FileDependencies" ItemName="FileDependencies" />
    </ResolvePackageDependencies>
```

Since the SDK now conditions the execution of the resolve to the value of `EmitLegacyAssetsFileItems`, we need to explicitly set it.

Since this was likely done for performance reasons, only turn on when package inference is active, since we don't use that anywhere else.
@kzu kzu added the enhancement New feature or request label Feb 24, 2023
@kzu kzu merged commit 2ca40f3 into main Feb 24, 2023
@kzu kzu deleted the dev/transitivedeps branch February 24, 2023 23:45
@devlooped devlooped locked and limited conversation to collaborators Nov 23, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants