From b26d811385f54084ce1c64591ba70721df96a7b9 Mon Sep 17 00:00:00 2001 From: Anirudh Agnihotry Date: Fri, 2 Jul 2021 08:43:52 -0700 Subject: [PATCH] Add Csproj pack infra for packages with ref and runtime assemblies and symbols. (#54250) * add infra for adding ref and runtime assemblies delete the project add a comment move the warning disable to cenral location moving props/targets to packaging.props and packaging.targets use intellisense package for ref and runtime xml files add comments, flag for ref assemblies, remove xml from runtimes, use outputItem to get the reference assembly addressing some more feedback remove ref assemblies add suppression file and update package validatio * move PackageValidationBaselineVersion to packaging.targets * update the package validation version --- NuGet.config | 2 + eng/Versions.props | 2 +- eng/packaging.props | 10 +++-- eng/packaging.targets | 37 +++++++++++++++++++ global.json | 2 +- src/libraries/Directory.Build.targets | 19 ---------- .../src/CompatibilitySuppressions.xml | 16 ++++++++ ...icrosoft.Extensions.DependencyModel.csproj | 2 - ...ensions.HostFactoryResolver.Sources.csproj | 2 +- .../src/System.IO.Hashing.csproj | 2 +- .../pkg/System.Windows.Extensions.pkgproj | 12 ------ .../src/CompatibilitySuppressions.xml | 12 ++++++ .../src/System.Windows.Extensions.csproj | 1 + 13 files changed, 78 insertions(+), 41 deletions(-) create mode 100644 src/libraries/Microsoft.Extensions.DependencyModel/src/CompatibilitySuppressions.xml delete mode 100644 src/libraries/System.Windows.Extensions/pkg/System.Windows.Extensions.pkgproj create mode 100644 src/libraries/System.Windows.Extensions/src/CompatibilitySuppressions.xml diff --git a/NuGet.config b/NuGet.config index 7812fc325d56d..f39fab9df8ec4 100644 --- a/NuGet.config +++ b/NuGet.config @@ -17,6 +17,8 @@ + + diff --git a/eng/Versions.props b/eng/Versions.props index 765b461a291b2..1c8ae0b1d33b0 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -64,7 +64,7 @@ 6.0.0-beta.21330.2 6.0.0-beta.21330.2 - 5.9.0-preview.2 + 6.0.0-preview.1.102 6.0.0-alpha.1.20612.4 6.0.0-preview.7.21321.2 diff --git a/eng/packaging.props b/eng/packaging.props index 534d3ddcf321b..9e992bbf7a310 100644 --- a/eng/packaging.props +++ b/eng/packaging.props @@ -13,6 +13,7 @@ 6.0.0 true true + .dll;.exe;.winmd;.json;.pri; @@ -29,10 +30,6 @@ - - $(MSBuildThisFileDirectory)useSharedDesignerContext.txt - - @(NETCoreApp30RIDs) + + + + + diff --git a/eng/packaging.targets b/eng/packaging.targets index 1f19f57c98a6d..d6344a0b666d7 100644 --- a/eng/packaging.targets +++ b/eng/packaging.targets @@ -1,4 +1,15 @@ + + + $(TargetsForTfmSpecificContentInPackage);AddRuntimeSpecificAssemblies;LibIntellisenseDocs + $(TargetsForTfmSpecificDebugSymbolsInPackage);AddRuntimeDebugSymbolsWithTfm + false + + true + $(MSBuildThisFileDirectory)useSharedDesignerContext.txt + $([MSBuild]::Subtract($(MajorVersion), 1)).0.0 + + + + + $([System.IO.Path]::GetDirectoryName($(TargetPath)))\$(TargetName).pdb + + + + + /runtimes/$(_runtimeOS)/lib/$(TargetFrameworkWithoutSuffix)/$(TargetName).pdb + $(TargetFrameworkWithoutSuffix) + + + diff --git a/global.json b/global.json index 9650ac9e9ad46..ca21d08dc3bb1 100644 --- a/global.json +++ b/global.json @@ -13,7 +13,7 @@ }, "msbuild-sdks": { "Microsoft.DotNet.Build.Tasks.TargetFramework.Sdk": "6.0.0-beta.21330.3", - "Microsoft.DotNet.PackageValidation": "1.0.0-preview.6.21274.7", + "Microsoft.DotNet.PackageValidation": "1.0.0-preview.7.21352.4", "Microsoft.DotNet.Arcade.Sdk": "6.0.0-beta.21330.2", "Microsoft.DotNet.Helix.Sdk": "6.0.0-beta.21330.2", "Microsoft.DotNet.SharedFramework.Sdk": "6.0.0-beta.21330.3", diff --git a/src/libraries/Directory.Build.targets b/src/libraries/Directory.Build.targets index b10705260f4fc..b330933c28035 100644 --- a/src/libraries/Directory.Build.targets +++ b/src/libraries/Directory.Build.targets @@ -17,7 +17,6 @@ $([MSBuild]::NormalizeDirectory('$(ArtifactsBinDir)', 'testhost', '$(NetCoreAppCurrentBuildSettings)')) $([MSBuild]::NormalizeDirectory('$(NetCoreAppCurrentTestHostPath)', 'shared', '$(MicrosoftNetCoreAppFrameworkName)', '$(ProductVersion)')) - $(TargetsForTfmSpecificContentInPackage);LibIntellisenseDocs $(PackageOutputPath) $(NoWarn);nullable @@ -145,11 +144,6 @@ - - $([MSBuild]::Subtract($(MajorVersion), 1)).0.0 - true - - @@ -235,11 +229,6 @@ - - false - true - - - - - .dll;.exe;.winmd;.json;.pri; - .pdb;.mdb;$(AllowedOutputExtensionsInPackageBuildOutputFolder) - - - IncludeAnalyzersInPackage;$(BeforePack) diff --git a/src/libraries/Microsoft.Extensions.DependencyModel/src/CompatibilitySuppressions.xml b/src/libraries/Microsoft.Extensions.DependencyModel/src/CompatibilitySuppressions.xml new file mode 100644 index 0000000000000..d088c3cafe554 --- /dev/null +++ b/src/libraries/Microsoft.Extensions.DependencyModel/src/CompatibilitySuppressions.xml @@ -0,0 +1,16 @@ + + + + + PKV006 + .NETFramework,Version=v4.5.1 + + + PKV006 + .NETStandard,Version=v1.3 + + + PKV006 + .NETStandard,Version=v1.6 + + \ No newline at end of file diff --git a/src/libraries/Microsoft.Extensions.DependencyModel/src/Microsoft.Extensions.DependencyModel.csproj b/src/libraries/Microsoft.Extensions.DependencyModel/src/Microsoft.Extensions.DependencyModel.csproj index b7ccc5b0db1ae..81b60b7135205 100644 --- a/src/libraries/Microsoft.Extensions.DependencyModel/src/Microsoft.Extensions.DependencyModel.csproj +++ b/src/libraries/Microsoft.Extensions.DependencyModel/src/Microsoft.Extensions.DependencyModel.csproj @@ -2,8 +2,6 @@ netstandard2.0;net461 true - - $(NoWarn);PKV006 Abstractions for reading `.deps` files. Commonly Used Types: diff --git a/src/libraries/Microsoft.Extensions.HostFactoryResolver/src/Microsoft.Extensions.HostFactoryResolver.Sources.csproj b/src/libraries/Microsoft.Extensions.HostFactoryResolver/src/Microsoft.Extensions.HostFactoryResolver.Sources.csproj index 43edfb9491a63..dff90383f96cb 100644 --- a/src/libraries/Microsoft.Extensions.HostFactoryResolver/src/Microsoft.Extensions.HostFactoryResolver.Sources.csproj +++ b/src/libraries/Microsoft.Extensions.HostFactoryResolver/src/Microsoft.Extensions.HostFactoryResolver.Sources.csproj @@ -10,7 +10,7 @@ true - false + true Internal package for sharing Microsoft.Extensions.Hosting.HostFactoryResolver type. diff --git a/src/libraries/System.IO.Hashing/src/System.IO.Hashing.csproj b/src/libraries/System.IO.Hashing/src/System.IO.Hashing.csproj index 3ef2ef309ec11..acfa86bb798d8 100644 --- a/src/libraries/System.IO.Hashing/src/System.IO.Hashing.csproj +++ b/src/libraries/System.IO.Hashing/src/System.IO.Hashing.csproj @@ -5,7 +5,7 @@ $(NetCoreAppCurrent);netstandard2.0;net461 true - false + true Provides non-cryptographic hash algorithms, such as CRC-32. Commonly Used Types: diff --git a/src/libraries/System.Windows.Extensions/pkg/System.Windows.Extensions.pkgproj b/src/libraries/System.Windows.Extensions/pkg/System.Windows.Extensions.pkgproj deleted file mode 100644 index 240cfdfab1b89..0000000000000 --- a/src/libraries/System.Windows.Extensions/pkg/System.Windows.Extensions.pkgproj +++ /dev/null @@ -1,12 +0,0 @@ - - - - - netcoreapp3.1 - - - - - - - \ No newline at end of file diff --git a/src/libraries/System.Windows.Extensions/src/CompatibilitySuppressions.xml b/src/libraries/System.Windows.Extensions/src/CompatibilitySuppressions.xml new file mode 100644 index 0000000000000..c6379c3e4ac3c --- /dev/null +++ b/src/libraries/System.Windows.Extensions/src/CompatibilitySuppressions.xml @@ -0,0 +1,12 @@ + + + + + PKV006 + .NETCoreapp,Version=v3.0 + + + PKV007 + .NETCoreapp,Version=v3.0-win + + \ No newline at end of file diff --git a/src/libraries/System.Windows.Extensions/src/System.Windows.Extensions.csproj b/src/libraries/System.Windows.Extensions/src/System.Windows.Extensions.csproj index e995c093bb7c9..276e9865a70a0 100644 --- a/src/libraries/System.Windows.Extensions/src/System.Windows.Extensions.csproj +++ b/src/libraries/System.Windows.Extensions/src/System.Windows.Extensions.csproj @@ -2,6 +2,7 @@ true $(NetCoreAppCurrent)-windows;$(NetCoreAppCurrent);netcoreapp3.1-windows;netcoreapp3.1 + true