فهرست منبع

React to dotnet/runtime#47684, a new transport package (#30405)

* React to dotnet/runtime#47684, a new transport package
  - handle Microsoft.Extensions.Internal.Transport -> 'Microsoft.AspNetCore.Internal.Transport name change
  - remove `$(...V0Version)` / `%(RTMVersion)` workarounds
  - remove mention of System.Security.AccessControl package; only need transitive references to that
  - confirm content of Microsoft.AspNetCore.Internal.Transport package
    - missing Microsoft.Extensions.DependencyModel assembly

* Remove unnecessary `using`s
  - namespace previously available due to Microsoft.Extensions.Internal.Transport dependency
  - no need for Microsoft.AspNetCore.Internal.Transport dependency

* nit: Clean up "Extensions" naming in Ref project

* Correct targeting pack content
  - intersection w/ `@(ExternalAspNetCoreAppReference)` items added nothing
  - excluded assemblies now included in transport package
Doug Bunting 5 سال پیش
والد
کامیت
550bd15b01

+ 1 - 5
eng/Dependencies.props

@@ -73,8 +73,6 @@ and are generated based on the last package release.
     <LatestPackageReference Include="System.Reflection.Metadata" />
     <LatestPackageReference Include="System.Runtime.CompilerServices.Unsafe" />
     <LatestPackageReference Include="System.Runtime.InteropServices.RuntimeInformation" />
-    <!-- System.Security.AccessControl should only be referenced in Dependencies.props and RepoTasks.csproj. -->
-    <LatestPackageReference Include="System.Security.AccessControl" />
     <LatestPackageReference Include="System.Security.Cryptography.Cng" />
     <LatestPackageReference Include="System.Security.Cryptography.Pkcs" />
     <LatestPackageReference Include="System.Security.Cryptography.Xml" />
@@ -109,6 +107,7 @@ and are generated based on the last package release.
     <LatestPackageReference Include="Microsoft.AspNetCore.AzureAppServices.SiteExtension.5.0.x64" />
     <LatestPackageReference Include="Microsoft.AspNetCore.AzureAppServices.SiteExtension.5.0.x86" />
     <LatestPackageReference Include="Microsoft.AspNetCore.Components.WebAssembly.Runtime" />
+    <LatestPackageReference Include="Microsoft.AspNetCore.Internal.Transport" />
     <LatestPackageReference Include="Microsoft.Bcl.AsyncInterfaces" />
     <LatestPackageReference Include="Microsoft.CodeAnalysis.PublicApiAnalyzers" />
     <LatestPackageReference Include="Microsoft.EntityFrameworkCore.Design" />
@@ -124,7 +123,6 @@ and are generated based on the last package release.
     <LatestPackageReference Include="Microsoft.IdentityModel.Protocols.OpenIdConnect" />
     <LatestPackageReference Include="Microsoft.IdentityModel.Protocols.WsFederation" />
     <LatestPackageReference Include="Microsoft.Internal.AspNetCore.H2Spec.All" />
-    <LatestPackageReference Include="Microsoft.Extensions.Internal.Transport" />
     <LatestPackageReference Include="Microsoft.NETCore.Windows.ApiSets" />
     <LatestPackageReference Include="Microsoft.NETCore.BrowserDebugHost.Transport" />
     <LatestPackageReference Include="Microsoft.Owin.Security.Cookies" />
@@ -202,10 +200,8 @@ and are generated based on the last package release.
     <!-- Get versions. -->
     <LatestPackageReference Update="@(LatestPackageReference)">
       <Version>$(%(VersionName)Version)</Version>
-      <RTMVersion>$(%(VersionName)V0Version)</RTMVersion>
 
       <!-- Remove excess metadata. -->
-      <RTMVersion Condition=" '%(Version)' == '%(RTMVersion)' " />
       <VersionName />
     </LatestPackageReference>
 

+ 2 - 7
eng/Version.Details.xml

@@ -177,9 +177,9 @@
       <Uri>https://github.com/dotnet/runtime</Uri>
       <Sha>12ec2197ed3999c98f49c006a27ee761282df168</Sha>
     </Dependency>
-    <Dependency Name="Microsoft.Extensions.Internal.Transport" Version="6.0.0-preview.2.21106.9">
+    <Dependency Name="Microsoft.AspNetCore.Internal.Transport" Version="6.0.0-preview.3.21125.3">
       <Uri>https://github.com/dotnet/runtime</Uri>
-      <Sha>afd1d33db716e185c6ef77af569db5cfc3ef183a</Sha>
+      <Sha>12ec2197ed3999c98f49c006a27ee761282df168</Sha>
     </Dependency>
     <Dependency Name="Microsoft.Win32.Registry" Version="6.0.0-preview.3.21125.3">
       <Uri>https://github.com/dotnet/runtime</Uri>
@@ -233,11 +233,6 @@
       <Uri>https://github.com/dotnet/runtime</Uri>
       <Sha>12ec2197ed3999c98f49c006a27ee761282df168</Sha>
     </Dependency>
-    <!-- System.Security.AccessControl should only be referenced in Dependencies.props and RTMVersions.csproj. -->
-    <Dependency Name="System.Security.AccessControl" Version="6.0.0-preview.3.21125.3">
-      <Uri>https://github.com/dotnet/runtime</Uri>
-      <Sha>12ec2197ed3999c98f49c006a27ee761282df168</Sha>
-    </Dependency>
     <Dependency Name="System.Security.Cryptography.Cng" Version="6.0.0-preview.3.21125.3">
       <Uri>https://github.com/dotnet/runtime</Uri>
       <Sha>12ec2197ed3999c98f49c006a27ee761282df168</Sha>

+ 1 - 33
eng/Versions.props

@@ -107,7 +107,7 @@
     <MicrosoftExtensionsOptionsDataAnnotationsVersion>6.0.0-preview.3.21125.3</MicrosoftExtensionsOptionsDataAnnotationsVersion>
     <MicrosoftExtensionsOptionsVersion>6.0.0-preview.3.21125.3</MicrosoftExtensionsOptionsVersion>
     <MicrosoftExtensionsPrimitivesVersion>6.0.0-preview.3.21125.3</MicrosoftExtensionsPrimitivesVersion>
-    <MicrosoftExtensionsInternalTransportVersion>6.0.0-preview.2.21106.9</MicrosoftExtensionsInternalTransportVersion>
+    <MicrosoftAspNetCoreInternalTransportVersion>6.0.0-preview.3.21125.3</MicrosoftAspNetCoreInternalTransportVersion>
     <SystemComponentModelAnnotationsVersion>6.0.0-preview.3.21125.3</SystemComponentModelAnnotationsVersion>
     <SystemDiagnosticsDiagnosticSourceVersion>6.0.0-preview.3.21125.3</SystemDiagnosticsDiagnosticSourceVersion>
     <SystemDiagnosticsEventLogVersion>6.0.0-preview.3.21125.3</SystemDiagnosticsEventLogVersion>
@@ -119,8 +119,6 @@
     <SystemReflectionMetadataVersion>6.0.0-preview.3.21125.3</SystemReflectionMetadataVersion>
     <SystemResourcesExtensionsVersion>6.0.0-preview.3.21125.3</SystemResourcesExtensionsVersion>
     <SystemRuntimeCompilerServicesUnsafeVersion>6.0.0-preview.3.21125.3</SystemRuntimeCompilerServicesUnsafeVersion>
-    <!-- System.Security.AccessControl should only be referenced in Dependencies.props and RepoTasks.csproj. -->
-    <SystemSecurityAccessControlVersion>6.0.0-preview.3.21125.3</SystemSecurityAccessControlVersion>
     <SystemSecurityCryptographyCngVersion>6.0.0-preview.3.21125.3</SystemSecurityCryptographyCngVersion>
     <SystemSecurityCryptographyPkcsVersion>6.0.0-preview.3.21125.3</SystemSecurityCryptographyPkcsVersion>
     <SystemSecurityCryptographyXmlVersion>6.0.0-preview.3.21125.3</SystemSecurityCryptographyXmlVersion>
@@ -161,36 +159,6 @@
     -->
     <MicrosoftNETCoreAppRuntimeVersion>$(MicrosoftNETCoreAppRuntimewinx64Version)</MicrosoftNETCoreAppRuntimeVersion>
   </PropertyGroup>
-  <!--
-    We ship ref/ assemblies for runtime packages in our targeting targeting pack. When servicing that targeting pack,
-    these assemblies must not change. Must also compile our assemblies against the initial ref/ assemblies for runtime
-    packages. But, need to test against the latest implementation assemblies and ship them in our shared framework.
-    Upshot is we need Major.Minor.0 runtime packages for compilation and the targeting pack and Major.Minor.Latest
-    runtime packages for everything else. This is not an issue for assemblies available in Microsoft.NETCore.App.Ref or
-    Microsoft.Extensions.Internal.Transport because it is next to impossible we would service those packages.
-
-    System.Security.AccessControl should only be referenced in Dependencies.props and RepoTasks.csproj. Because
-    it's a transitive reference, we reship the ref/ assembly in Microsoft.AspNetCore.App.Ref. dotnet/runtime ships
-    the implementation assemblies in Microsoft.NETCore.App.Runtime.* packages.
-
-    If testing this configuration prior to servicing, update the versions of dependencies too. E.g. change
-    `$(SystemSecurityPrincipalWindowsV0PackageVersion)` if you change `$(SystemSecurityAccessControlV0PackageVersion)`
-    because System.Security.AccessControl will otherwise be loadable. This should not be necessary in servicing.
-  -->
-  <PropertyGroup Condition=" '$(IsServicingBuild)' == 'true' ">
-    <MicrosoftWin32RegistryV0Version>$(MicrosoftWin32RegistryVersion.Split('.')[0]).$(MicrosoftWin32RegistryVersion.Split('.')[1]).0</MicrosoftWin32RegistryV0Version>
-    <MicrosoftWin32SystemEventsV0Version>$(MicrosoftWin32SystemEventsVersion.Split('.')[0]).$(MicrosoftWin32SystemEventsVersion.Split('.')[1]).0</MicrosoftWin32SystemEventsV0Version>
-    <SystemDiagnosticsEventLogV0Version>$(SystemDiagnosticsEventLogVersion.Split('.')[0]).$(SystemDiagnosticsEventLogVersion.Split('.')[1]).0</SystemDiagnosticsEventLogV0Version>
-    <SystemDrawingCommonV0Version>$(SystemDrawingCommonVersion.Split('.')[0]).$(SystemDrawingCommonVersion.Split('.')[1]).0</SystemDrawingCommonV0Version>
-    <SystemIOPipelinesV0Version>$(SystemIOPipelinesVersion.Split('.')[0]).$(SystemIOPipelinesVersion.Split('.')[1]).0</SystemIOPipelinesV0Version>
-    <SystemSecurityAccessControlV0Version>$(SystemSecurityAccessControlVersion.Split('.')[0]).$(SystemSecurityAccessControlVersion.Split('.')[1]).0</SystemSecurityAccessControlV0Version>
-    <SystemSecurityCryptographyCngV0Version>$(SystemSecurityCryptographyCngVersion.Split('.')[0]).$(SystemSecurityCryptographyCngVersion.Split('.')[1]).0</SystemSecurityCryptographyCngV0Version>
-    <SystemSecurityCryptographyPkcsV0Version>$(SystemSecurityCryptographyPkcsVersion.Split('.')[0]).$(SystemSecurityCryptographyPkcsVersion.Split('.')[1]).0</SystemSecurityCryptographyPkcsV0Version>
-    <SystemSecurityCryptographyXmlV0Version>$(SystemSecurityCryptographyXmlVersion.Split('.')[0]).$(SystemSecurityCryptographyXmlVersion.Split('.')[1]).0</SystemSecurityCryptographyXmlV0Version>
-    <SystemSecurityPermissionsV0Version>$(SystemSecurityPermissionsVersion.Split('.')[0]).$(SystemSecurityPermissionsVersion.Split('.')[1]).0</SystemSecurityPermissionsV0Version>
-    <SystemSecurityPrincipalWindowsV0Version>$(SystemSecurityPrincipalWindowsVersion.Split('.')[0]).$(SystemSecurityPrincipalWindowsVersion.Split('.')[1]).0</SystemSecurityPrincipalWindowsV0Version>
-    <SystemWindowsExtensionsV0Version>$(SystemWindowsExtensionsVersion.Split('.')[0]).$(SystemWindowsExtensionsVersion.Split('.')[1]).0</SystemWindowsExtensionsV0Version>
-  </PropertyGroup>
   <PropertyGroup Label="Manual">
     <!-- Packages from dotnet/roslyn -->
     <MicrosoftNetCompilersToolsetVersion>3.8.0-5.20519.18</MicrosoftNetCompilersToolsetVersion>

+ 6 - 45
eng/targets/ResolveReferences.targets

@@ -244,45 +244,6 @@
         Text="Could not resolve this reference. Could not locate the package or project for &quot;%(Reference.Identity)&quot;. Did you update baselines and dependencies lists? See docs/ReferenceResolution.md for more details." />
   </Target>
 
-  <!--
-    Change @(ResolvedCompileFileDefinitions) items between generation and use in order to compile against RTM lib/
-    or ref/ assemblies. The approach works for all TFMs because it happens after a specific assembly is chosen for
-    compilation; no need to restrict this to (say) the default TFM.
-
-    This target could get confused if the layout changes for one of the dozen special-cased packages during servicing.
-    E.g. ResolvePackageAssets picks a compatible assembly from the 5.0.1 package and _UseRTMReferenceAssemblies
-    changes the path to one not present in the 5.0.0 package. Fortunately, this will break the build with complaints
-    about the "invalid strong name".
-  -->
-  <Target Name="_UseRTMReferenceAssemblies"
-      Condition=" '$(MSBuildProjectName)' != 'RepoTasks' "
-      AfterTargets="ResolvePackageAssets"
-      BeforeTargets="GenerateBuildDependencyFile;GeneratePublishDependencyFile;ILLink;ResolveLockFileReferences"
-      DependsOnTargets="ResolvePackageAssets">
-    <Error Condition=" !EXISTS('$(RepoRoot)artifacts\obj\RepoTasks\RepoTasks.csproj.nuget.g.props') "
-        Text="The eng/tools/RepoTasks project must be restored before building other projects." />
-
-    <JoinItems Left="@(ResolvedCompileFileDefinitions)"
-        Right="@(LatestPackageReference->HasMetadata('RTMVersion'))"
-        LeftKey="Filename"
-        ItemSpecToUse="Left"
-        LeftMetadata="*"
-        RightMetadata="RTMVersion;Version">
-      <Output TaskParameter="JoinResult" ItemName="_ResolvedCompileFileDefinitionsToChange" />
-    </JoinItems>
-
-    <ItemGroup>
-      <ResolvedCompileFileDefinitions Remove="@(_ResolvedCompileFileDefinitionsToChange)" />
-
-      <!-- Ignore %(NuGetPackageVersion) when doing substitution because some projects use downlevel packages. -->
-      <_ResolvedCompileFileDefinitionsToChange
-          HintPath="$([System.String]::new('%(Identity)').Replace('\%(Version)\', '\%(RTMVersion)\').Replace('/%(Version)/', '/%(RTMVersion)/'))" />
-      <ResolvedCompileFileDefinitions Include="@(_ResolvedCompileFileDefinitionsToChange -> '%(HintPath)')" />
-
-      <_ResolvedCompileFileDefinitionsToChange Remove="@(_ResolvedCompileFileDefinitionsToChange)" />
-    </ItemGroup>
-  </Target>
-
   <PropertyGroup>
     <_CompileTfmUsingReferenceAssemblies>false</_CompileTfmUsingReferenceAssemblies>
     <_CompileTfmUsingReferenceAssemblies
@@ -296,8 +257,8 @@
       '$(MSBuildProjectName)' != 'RepoTasks' AND
       ($(_CompileTfmUsingReferenceAssemblies) OR
        ('$(IsTargetingPackBuilding)' != 'false' AND '$(MSBuildProjectName)' == 'Microsoft.AspNetCore.App.Ref')) ">
-    <PackageReference Include="Microsoft.Extensions.Internal.Transport"
-        Version="$(MicrosoftExtensionsInternalTransportVersion)"
+    <PackageReference Include="Microsoft.AspNetCore.Internal.Transport"
+        Version="$(MicrosoftAspNetCoreInternalTransportVersion)"
         IsImplicitlyDefined="true"
         IncludeAssets="Compile"
         PrivateAssets="All"
@@ -305,7 +266,7 @@
   </ItemGroup>
 
   <!--
-    Remove compile-time assets for packages that overlap Microsoft.Extensions.Internal.Transport. Serviced packages
+    Remove compile-time assets for packages that overlap Microsoft.AspNetCore.Internal.Transport. Serviced packages
     may otherwise increase the referenced version. Avoid this because change reduces compatible runtime versions.
     That's not a big deal within the shared framework but can cause problems for shipped packages. Leave test
     projects and Ignitor alone because they may transitively reference newer netstandard assemblies and need a
@@ -313,7 +274,7 @@
   -->
   <Target Name="RemoveExtensionsCompileAssets"
       AfterTargets="ResolvePackageAssets"
-      Condition=" '$(PkgMicrosoft_Extensions_Internal_Transport)' != '' AND
+      Condition=" '$(PkgMicrosoft_AspNetCore_Internal_Transport)' != '' AND
           '$(IsServicingBuild)' == 'true' AND
           '$(IsImplementationProject)' == 'true' AND
           '$(MSBuildProjectName)' != 'Ignitor' AND
@@ -322,8 +283,8 @@
            ('$(IsTargetingPackBuilding)' != 'false' AND '$(MSBuildProjectName)' == 'Microsoft.AspNetCore.App.Ref')) ">
     <ItemGroup>
       <ResolvedCompileFileDefinitions Remove="@(ResolvedCompileFileDefinitions)"
-          Condition=" '%(NuGetPackageId)' != 'Microsoft.Extensions.Internal.Transport' AND
-              EXISTS('$(PkgMicrosoft_Extensions_Internal_Transport)\ref\$(TargetFramework)\%(Filename).dll') AND
+          Condition=" '%(NuGetPackageId)' != 'Microsoft.AspNetCore.Internal.Transport' AND
+              EXISTS('$(PkgMicrosoft_AspNetCore_Internal_Transport)\ref\$(TargetFramework)\%(Filename).dll') AND
               $([System.String]::new('%(Directory)').Contains('$(TargetFramework)')) " />
     </ItemGroup>
   </Target>

+ 0 - 10
eng/tools/RepoTasks/RepoTasks.csproj

@@ -17,16 +17,6 @@
   <ItemGroup>
     <PackageReference Include="NuGet.Packaging" Version="5.6.0" />
     <PackageReference Include="Microsoft.Extensions.DependencyModel" Version="2.1.0" />
-
-    <!--
-      Gather project references for compilation against RTM packages. %(RTMVersion) is set for about a dozen packages
-      in all servicing builds. Cannot reference two versions of a package, mandating this separation from projects
-      using the relevant packages.
-    -->
-    <PackageReference Include="@(LatestPackageReference->HasMetadata('RTMVersion'))"
-        IncludeAssets="None"
-        PrivateAssets="All"
-        Version="%(RTMVersion)" />
   </ItemGroup>
 
   <ItemGroup Condition="'$(TargetFramework)' == '$(DefaultNetCoreTargetFramework)'">

+ 0 - 1
src/Components/Components/test/Routing/RouteTableFactoryTests.cs

@@ -6,7 +6,6 @@ using System.Collections.Generic;
 using System.Globalization;
 using System.Linq;
 using Microsoft.AspNetCore.Components.Routing;
-using Microsoft.Extensions.DependencyModel;
 using Xunit;
 
 namespace Microsoft.AspNetCore.Components.Test.Routing

+ 0 - 2
src/Components/WebAssembly/WebAssembly/test/Hosting/WebAssemblyHostBuilderTest.cs

@@ -7,10 +7,8 @@ using System.Text;
 using Microsoft.AspNetCore.Components.Routing;
 using Microsoft.Extensions.Configuration;
 using Microsoft.Extensions.DependencyInjection;
-using Microsoft.Extensions.DependencyModel;
 using Microsoft.Extensions.Logging;
 using Microsoft.JSInterop;
-using Microsoft.JSInterop.WebAssembly;
 using Moq;
 using Xunit;
 

+ 23 - 25
src/Framework/App.Ref/src/Microsoft.AspNetCore.App.Ref.csproj

@@ -47,8 +47,8 @@ This package is an internal implementation of the .NET Core SDK and is not meant
     <FrameworkListFileName>FrameworkList.xml</FrameworkListFileName>
     <FrameworkListOutputPath>$(ArtifactsObjDir)$(FrameworkListFileName)</FrameworkListOutputPath>
 
-    <!-- Runtime extensions transport paths -->
-    <RuntimeExtensionsReferenceDirectory>$(PkgMicrosoft_Extensions_Internal_Transport)\ref\$(TargetFramework)\</RuntimeExtensionsReferenceDirectory>
+    <!-- Runtime transport path i.e. location of runtime ref/ assemblies that are not in Microsoft.NETCore.App.Ref. -->
+    <RuntimeTransportReferenceDirectory>$(PkgMicrosoft_AspNetCore_Internal_Transport)\ref\$(TargetFramework)\</RuntimeTransportReferenceDirectory>
 
     <!-- Package overrides and platform manifest metadata. -->
     <PackageOverridesFileName>PackageOverrides.txt</PackageOverridesFileName>
@@ -114,38 +114,36 @@ This package is an internal implementation of the .NET Core SDK and is not meant
           BeforeTargets="_GetPackageFiles"
           DependsOnTargets="ResolveReferences;FindReferenceAssembliesForReferences">
     <ItemGroup>
-      <_AvailableExtensionsRefAssemblies Include="$(RuntimeExtensionsReferenceDirectory)*.dll" />
+      <!-- Exclude transitive external dependencies that are not directly referenced in AspNetCore or Runtime. -->
+      <_DisallowedReferenceAssemblies Include="
+          Microsoft.Win32.SystemEvents.dll;
+          System.Drawing.Common.dll;
+          System.Security.Cryptography.Pkcs.dll" />
+      <_AvailableRuntimeRefAssemblies Include="$(RuntimeTransportReferenceDirectory)*.dll"
+          Exclude="@(_DisallowedReferenceAssemblies->'$(RuntimeTransportReferenceDirectory)%(Filename)%(Extension)')" />
     </ItemGroup>
 
-    <JoinItems Left="@(ReferencePathWithRefAssemblies)" Right="@(_AvailableExtensionsRefAssemblies)" LeftKey="Filename" RightKey="Filename" ItemSpecToUse="Left">
-      <Output TaskParameter="JoinResult" ItemName="_ReferencedExtensionsRefAssemblies" />
-    </JoinItems>
-
-    <JoinItems Left="@(_ReferencedExtensionsRefAssemblies)" Right="@(ExternalAspNetCoreAppReference)" LeftKey="Filename" RightKey="Identity" ItemSpecToUse="Left">
-      <Output TaskParameter="JoinResult" ItemName="_SelectedExtensionsRefs" />
-    </JoinItems>
-
-    <JoinItems Left="@(ReferencePathWithRefAssemblies)" Right="@(_SelectedExtensionsRefs)" LeftKey="Filename" RightKey="Filename" ItemSpecToUse="Left">
-      <Output TaskParameter="JoinResult" ItemName="_SelectedExtensionsRefAssemblies" />
+    <JoinItems Left="@(ReferencePathWithRefAssemblies)" Right="@(_AvailableRuntimeRefAssemblies)" LeftKey="Filename" RightKey="Filename" ItemSpecToUse="Left">
+      <Output TaskParameter="JoinResult" ItemName="_ReferencedRuntimeRefAssemblies" />
     </JoinItems>
 
     <ItemGroup>
-      <!-- Exclude transitive external dependencies that are not directly referenced by projects in AspNetCore or Extensions -->
+      <!-- Again, ignore ref/ assemblies provided in the transport package that we don't want in this package. -->
       <AspNetCoreReferenceAssemblyPath
           Include="@(ReferencePathWithRefAssemblies)"
           Exclude="
-            @(_ReferencedExtensionsRefAssemblies);
+            @(_ReferencedRuntimeRefAssemblies);
             @(ReferencePathWithRefAssemblies->WithMetadataValue('NuGetPackageId', 'Microsoft.NETCore.App.Ref'));
-            @(ReferencePathWithRefAssemblies->WithMetadataValue('NuGetPackageId', 'System.Security.Cryptography.Pkcs'));
-            @(ReferencePathWithRefAssemblies->WithMetadataValue('NuGetPackageId', 'System.Drawing.Common'));
-            @(ReferencePathWithRefAssemblies->WithMetadataValue('NuGetPackageId', 'Microsoft.Win32.SystemEvents'));" />
+            @(ReferencePathWithRefAssemblies->WithMetadataValue('Filename', 'Microsoft.Win32.SystemEvents'));
+            @(ReferencePathWithRefAssemblies->WithMetadataValue('Filename', 'System.Drawing.Common'));
+            @(ReferencePathWithRefAssemblies->WithMetadataValue('Filename', 'System.Security.Cryptography.Pkcs'));" />
 
       <AspNetCoreReferenceAssemblyPath
-          Include="@(_SelectedExtensionsRefAssemblies->'$(RuntimeExtensionsReferenceDirectory)%(FileName)%(Extension)')" />
+          Include="@(_ReferencedRuntimeRefAssemblies->'$(RuntimeTransportReferenceDirectory)%(FileName)%(Extension)')" />
 
       <AspNetCoreReferenceDocXml Include="@(_ResolvedProjectReferencePaths->'%(RootDir)%(Directory)%(FileName).xml')"
           Condition="Exists('%(RootDir)%(Directory)%(FileName).xml')" />
-      <AspNetCoreReferenceDocXml Include="@(_SelectedExtensionsRefAssemblies->'$(RuntimeExtensionsReferenceDirectory)%(FileName).xml')" />
+      <AspNetCoreReferenceDocXml Include="@(_ReferencedRuntimeRefAssemblies->'$(RuntimeTransportReferenceDirectory)%(FileName).xml')" />
       <!-- Grab remaining .xml files from packages -->
       <AspNetCoreReferenceDocXml
           Include="@(AspNetCoreReferenceAssemblyPath->WithMetadataValue('ExternallyResolved', 'true')->'%(RootDir)%(Directory)%(Filename).xml')"
@@ -164,15 +162,15 @@ This package is an internal implementation of the .NET Core SDK and is not meant
           Inputs="$(MSBuildAllProjects)"
           Outputs="$(ReferencePackageOverridesPath">
     <ItemGroup>
-      <!-- Use package version for non-Extensions references. -->
+      <!-- Use package version for non-Runtime references. -->
       <_AspNetCoreAppPackageOverrides Include="@(AspNetCoreReferenceAssemblyPath->'%(NuGetPackageId)|%(NuGetPackageVersion)')"
-          Condition="!Exists('$(RuntimeExtensionsReferenceDirectory)%(AspNetCoreReferenceAssemblyPath.NuGetPackageId).dll') AND
+          Condition="!Exists('$(RuntimeTransportReferenceDirectory)%(AspNetCoreReferenceAssemblyPath.NuGetPackageId).dll') AND
             '%(AspNetCoreReferenceAssemblyPath.NuGetPackageId)' != 'Microsoft.NETCore.App' AND
-            '%(AspNetCoreReferenceAssemblyPath.NuGetPackageId)' != 'Microsoft.Extensions.Internal.Transport' AND
+            '%(AspNetCoreReferenceAssemblyPath.NuGetPackageId)' != 'Microsoft.AspNetCore.Internal.Transport' AND
             '%(AspNetCoreReferenceAssemblyPath.NuGetSourceType)' == 'Package' " />
 
-      <!-- Use NETCore.App.Runtime version for Extensions references. -->
-      <_AspNetCoreAppPackageOverrides Include="@(_SelectedExtensionsRefAssemblies->'%(FileName)|$(MicrosoftNETCoreAppRuntimeVersion)')" />
+      <!-- Use NETCore.App.Runtime version for Runtime references. -->
+      <_AspNetCoreAppPackageOverrides Include="@(_ReferencedRuntimeRefAssemblies->'%(FileName)|$(MicrosoftNETCoreAppRuntimeVersion)')" />
 
       <_AspNetCoreAppPackageOverrides Include="@(AspNetCoreReferenceAssemblyPath->'%(FileName)|$(ReferencePackSharedFxVersion)')"
           Condition=" '%(AspNetCoreReferenceAssemblyPath.ReferenceSourceTarget)' == 'ProjectReference' " />