Skip to content

Commit 042e642

Browse files
John Luowtgodbedougbu
authored
Add missing assemblies to ref pack (#19161)
* Add missing assemblies to ref pack * amend * Update comments too * Use patchVersion=0 for ref pack dependencies * Fixup versions * Enable targeting pack tests * Fix targeting pack test * Feedback * Update Microsoft.AspNetCore.App.Ref.csproj * Downgrade System.* versions for all ref/ projects - yeah, @JunTaoLuo and I agreed w/ you @wtgodbe * Update condition Co-authored-by: William Godbe <[email protected]> Co-authored-by: Doug Bunting <[email protected]>
1 parent 99cf3bc commit 042e642

7 files changed

+36
-8
lines changed

Directory.Build.props

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -84,11 +84,11 @@
8484
<RuntimeInstallerBaseName>aspnetcore-runtime</RuntimeInstallerBaseName>
8585
<TargetingPackInstallerBaseName>aspnetcore-targeting-pack</TargetingPackInstallerBaseName>
8686

87-
<!-- Produce targeting pack installers/packages once per major.minor except in extraordinary cases i.e. 3.1.2. -->
88-
<!-- We can remove the 3.1.2 line from any branch other than release/3.1 and from here after 3.1.2 is released. -->
87+
<!-- Produce targeting pack installers/packages once per major.minor except in extraordinary cases i.e. 3.1.3. -->
88+
<!-- We can remove the 3.1.3 line from any branch other than release/3.1 and from here after 3.1.3 is released. -->
8989
<IsTargetingPackBuilding Condition=" '$(DotNetBuildFromSource)' == 'true' ">false</IsTargetingPackBuilding>
9090
<IsTargetingPackBuilding
91-
Condition=" '$(IsTargetingPackBuilding)' == '' AND '$(VersionPrefix)' == '3.1.2' ">true</IsTargetingPackBuilding>
91+
Condition=" '$(IsTargetingPackBuilding)' == '' AND '$(VersionPrefix)' == '3.1.3' ">true</IsTargetingPackBuilding>
9292
<IsTargetingPackBuilding
9393
Condition=" '$(IsTargetingPackBuilding)' == '' AND '$(AspNetCorePatchVersion)' != '0' ">false</IsTargetingPackBuilding>
9494
<IsTargetingPackBuilding Condition=" '$(IsTargetingPackBuilding)' == '' ">true</IsTargetingPackBuilding>

eng/SharedFramework.External.props

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,19 @@
66
-->
77
<Project>
88

9+
<!-- For the targeting pack, always use packages with PatchVersion=0 -->
10+
<PropertyGroup Condition="'$(MSBuildProjectName)' == 'Microsoft.AspNetCore.App.Ref' OR '$(IsReferenceAssemblyProject)' == 'true' ">
11+
<SystemIOPipelinesPackageVersion>$(SystemIOPipelinesPackageVersion.Split('.')[0]).$(SystemIOPipelinesPackageVersion.Split('.')[1]).0</SystemIOPipelinesPackageVersion>
12+
<SystemSecurityCryptographyXmlPackageVersion>$(SystemSecurityCryptographyXmlPackageVersion.Split('.')[0]).$(SystemSecurityCryptographyXmlPackageVersion.Split('.')[1]).0</SystemSecurityCryptographyXmlPackageVersion>
13+
<MicrosoftWin32SystemEventsPackageVersion>$(MicrosoftWin32SystemEventsPackageVersion.Split('.')[0]).$(MicrosoftWin32SystemEventsPackageVersion.Split('.')[1]).0</MicrosoftWin32SystemEventsPackageVersion>
14+
<SystemDiagnosticsEventLogPackageVersion>$(SystemDiagnosticsEventLogPackageVersion.Split('.')[0]).$(SystemDiagnosticsEventLogPackageVersion.Split('.')[1]).0</SystemDiagnosticsEventLogPackageVersion>
15+
<SystemDrawingCommonPackageVersion>$(SystemDrawingCommonPackageVersion.Split('.')[0]).$(SystemDrawingCommonPackageVersion.Split('.')[1]).0</SystemDrawingCommonPackageVersion>
16+
<SystemSecurityCryptographyPkcsPackageVersion>$(SystemSecurityCryptographyPkcsPackageVersion.Split('.')[0]).$(SystemSecurityCryptographyPkcsPackageVersion.Split('.')[1]).0</SystemSecurityCryptographyPkcsPackageVersion>
17+
<SystemSecurityPermissionsPackageVersion>$(SystemSecurityPermissionsPackageVersion.Split('.')[0]).$(SystemSecurityPermissionsPackageVersion.Split('.')[1]).0</SystemSecurityPermissionsPackageVersion>
18+
<SystemWindowsExtensionsPackageVersion>$(SystemWindowsExtensionsPackageVersion.Split('.')[0]).$(SystemWindowsExtensionsPackageVersion.Split('.')[1]).0</SystemWindowsExtensionsPackageVersion>
19+
</PropertyGroup>
20+
21+
922
<ItemGroup>
1023
<!-- Dependencies from aspnet/Extensions -->
1124
<ExternalAspNetCoreAppReference Include="Microsoft.Extensions.Caching.Abstractions" Version="$(MicrosoftExtensionsCachingAbstractionsPackageVersion)" />

eng/Versions.props

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@
3333
<!-- TargetingPackVersionPrefix is used by projects, like .deb and .rpm, which use slightly different version formats. -->
3434
<TargetingPackVersionPrefix>$(VersionPrefix)</TargetingPackVersionPrefix>
3535
<!-- Targeting packs do not produce patch versions in servicing builds. No API changes are allowed in patches. -->
36-
<TargetingPackVersionPrefix Condition="'$(IsTargetingPackBuilding)' != 'true'">$(AspNetCoreMajorVersion).$(AspNetCoreMinorVersion).2</TargetingPackVersionPrefix>
36+
<TargetingPackVersionPrefix Condition="'$(IsTargetingPackBuilding)' != 'true'">$(AspNetCoreMajorVersion).$(AspNetCoreMinorVersion).3</TargetingPackVersionPrefix>
3737
<ExperimentalVersionPrefix>0.3.$(AspNetCorePatchVersion)</ExperimentalVersionPrefix>
3838
<!-- ANCM versioning is intentionally 10 + AspNetCoreMajorVersion because earlier versions of ANCM shipped as 8.x. -->
3939
<AspNetCoreModuleVersionMajor>$([MSBuild]::Add(10, $(AspNetCoreMajorVersion)))</AspNetCoreModuleVersionMajor>

src/Framework/ref/Microsoft.AspNetCore.App.Ref.csproj

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,8 @@
99
<PackageId>$(TargetingPackName)</PackageId>
1010
<VersionPrefix>$(TargetingPackVersionPrefix)</VersionPrefix>
1111
<!-- This is a reference package and does not include any dependencies. -->
12-
<NoWarn>$(NoWarn);NU5128</NoWarn>
12+
<!-- We also disable warnings about package downgrades, because we intentionally reference lower versions of certain packages -->
13+
<NoWarn>$(NoWarn);NU5128;NU1605</NoWarn>
1314

1415
<PackageDescription>Provides a default set of APIs for building an ASP.NET Core application. Contains reference assemblies, documentation, and other design-time assets.
1516

@@ -130,7 +131,7 @@ This package is an internal implementation of the .NET Core SDK and is not meant
130131
<!-- Exclude transitive external dependencies that are not directly referenced by projects in AspNetCore or Extensions -->
131132
<AspNetCoreReferenceAssemblyPath
132133
Include="@(ReferencePathWithRefAssemblies)"
133-
Condition="'%(ReferencePathWithRefAssemblies.IsReferenceAssembly)' == 'true'"
134+
Condition="'%(ReferencePathWithRefAssemblies.IsReferenceAssembly)' != 'false'"
134135
Exclude="
135136
@(_ReferencedExtensionsRefAssemblies);
136137
@(ReferencePathWithRefAssemblies->WithMetadataValue('NuGetPackageId', 'Microsoft.NETCore.App.Ref'));

src/Framework/test/Microsoft.AspNetCore.App.UnitTests.csproj

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
<RootNamespace>Microsoft.AspNetCore</RootNamespace>
66
<!-- https://github.com/aspnet/AspNetCore/issues/7939: This unit test requires the shared framework be available in Helix. -->
77
<BuildHelixPayload>false</BuildHelixPayload>
8+
<VerifyAncmBinary Condition="'$(TargetOsName)' == 'win' AND '$(TargetArchitecture)' != 'arm'">true</VerifyAncmBinary>
89
</PropertyGroup>
910

1011
<ItemGroup>
@@ -35,6 +36,10 @@
3536
<_Parameter1>TargetingPackLayoutRoot</_Parameter1>
3637
<_Parameter2>$(TargetingPackLayoutRoot)</_Parameter2>
3738
</AssemblyAttribute>
39+
<AssemblyAttribute Include="Microsoft.AspNetCore.TestData">
40+
<_Parameter1>VerifyAncmBinary</_Parameter1>
41+
<_Parameter2>$(VerifyAncmBinary)</_Parameter2>
42+
</AssemblyAttribute>
3843
</ItemGroup>
3944

4045
<ItemGroup>

src/Framework/test/TargetingPackTests.cs

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ public TargetingPackTests(ITestOutputHelper output)
2828
_targetingPackRoot = Path.Combine(TestData.GetTestDataValue("TargetingPackLayoutRoot"), "packs", "Microsoft.AspNetCore.App.Ref", TestData.GetTestDataValue("TargetingPackVersion"));
2929
}
3030

31-
[Fact(Skip="https://github.com/aspnet/AspNetCore/issues/14832")]
31+
[Fact]
3232
public void AssembliesAreReferenceAssemblies()
3333
{
3434
IEnumerable<string> dlls = Directory.GetFiles(_targetingPackRoot, "*.dll", SearchOption.AllDirectories);
@@ -55,7 +55,7 @@ public void AssembliesAreReferenceAssemblies()
5555
});
5656
}
5757

58-
[Fact(Skip="https://github.com/aspnet/AspNetCore/issues/14832")]
58+
[Fact]
5959
public void PlatformManifestListsAllFiles()
6060
{
6161
var platformManifestPath = Path.Combine(_targetingPackRoot, "data", "PlatformManifest.txt");
@@ -90,6 +90,12 @@ public void PlatformManifestListsAllFiles()
9090
})
9191
.ToHashSet();
9292

93+
if (!TestData.VerifyAncmBinary())
94+
{
95+
actualAssemblies.Remove("aspnetcorev2_inprocess");
96+
expectedAssemblies.Remove("aspnetcorev2_inprocess");
97+
}
98+
9399
var missing = expectedAssemblies.Except(actualAssemblies);
94100
var unexpected = actualAssemblies.Except(expectedAssemblies);
95101

src/Framework/test/TestData.cs

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
// Copyright (c) .NET Foundation. All rights reserved.
22
// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.
33

4+
using System;
45
using System.Linq;
56
using System.Reflection;
67

@@ -20,6 +21,8 @@ public class TestData
2021

2122
public static string GetTargetingPackDependencies() => GetTestDataValue("TargetingPackDependencies");
2223

24+
public static bool VerifyAncmBinary() => string.Equals(GetTestDataValue("VerifyAncmBinary"), "true", StringComparison.OrdinalIgnoreCase);
25+
2326
public static string GetTestDataValue(string key)
2427
=> typeof(TestData).Assembly.GetCustomAttributes<TestDataAttribute>().Single(d => d.Key == key).Value;
2528
}

0 commit comments

Comments
 (0)