diff --git a/modules/NuGetPackageVerifier/console/Constants.cs b/modules/NuGetPackageVerifier/console/Constants.cs new file mode 100644 index 000000000..d37c5f12a --- /dev/null +++ b/modules/NuGetPackageVerifier/console/Constants.cs @@ -0,0 +1,12 @@ +// Copyright (c) .NET Foundation. All rights reserved. +// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. + +using NuGet.Packaging.Core; + +namespace NuGetPackageVerifier +{ + public class Constants + { + public static PackageType DotNetTool = new PackageType("DotnetTool", PackageType.EmptyVersion); + } +} diff --git a/modules/NuGetPackageVerifier/console/Rules/DotNetToolPackageRule.cs b/modules/NuGetPackageVerifier/console/Rules/DotNetToolPackageRule.cs index b07a5754e..c853d8124 100644 --- a/modules/NuGetPackageVerifier/console/Rules/DotNetToolPackageRule.cs +++ b/modules/NuGetPackageVerifier/console/Rules/DotNetToolPackageRule.cs @@ -14,11 +14,9 @@ public class DotNetToolPackageRule : IPackageVerifierRule { private const string ToolManifestFileName = "DotnetToolSettings.xml"; - private static PackageType DotNetTool = new PackageType("DotnetTool", PackageType.EmptyVersion); - public IEnumerable Validate(PackageAnalysisContext context) { - if (!context.Metadata.PackageTypes.Any(p => p == DotNetTool)) + if (!context.Metadata.PackageTypes.Any(p => p == Constants.DotNetTool)) { yield break; } @@ -28,7 +26,7 @@ public IEnumerable Validate(PackageAnalysisContext context if (packageFiles == null || manifests.Count() == 0) { - yield return PackageIssueFactory.DotNetToolMustHaveManifest(DotNetTool.Name, ToolManifestFileName); + yield return PackageIssueFactory.DotNetToolMustHaveManifest(Constants.DotNetTool.Name, ToolManifestFileName); yield break; } diff --git a/modules/NuGetPackageVerifier/console/Rules/PackageVersionMatchesAssemblyVersionRule.cs b/modules/NuGetPackageVerifier/console/Rules/PackageVersionMatchesAssemblyVersionRule.cs index ff94833ff..27e58fa34 100644 --- a/modules/NuGetPackageVerifier/console/Rules/PackageVersionMatchesAssemblyVersionRule.cs +++ b/modules/NuGetPackageVerifier/console/Rules/PackageVersionMatchesAssemblyVersionRule.cs @@ -13,6 +13,12 @@ public class PackageVersionMatchesAssemblyVersionRule : IPackageVerifierRule { public IEnumerable Validate(PackageAnalysisContext context) { + if (context.Metadata.PackageTypes.Any(p => p == Constants.DotNetTool)) + { + // Skip for dotnet global tool packages which contain assemblies from other teams and projects + yield break; + } + AssemblyAttributesDataHelper.SetAssemblyAttributesData(context); foreach (var assemblyData in context.AssemblyData) { diff --git a/version.props b/version.props index 1b024714e..73b3dff15 100644 --- a/version.props +++ b/version.props @@ -1,7 +1,7 @@ release/2.1 - 2.1.0 + 2.1.1 rtm t000 $(VersionSuffix)-$(BuildNumber)