Skip to content

Commit 00b0220

Browse files
committed
ResolvePackageDependencies only when EmitLegacyAssetsFileItem is true
Removing all the conditions that depend on EmitLegacyAssetsFileItems since there is case when this variable is false.
1 parent d62e4f4 commit 00b0220

File tree

3 files changed

+25
-73
lines changed

3 files changed

+25
-73
lines changed

src/Tasks/Microsoft.NET.Build.Tasks.UnitTests/GivenAResolvePackageDependenciesTask.cs

Lines changed: 11 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -21,9 +21,9 @@ public class GivenAResolvePackageDependenciesTask
2121

2222
[Theory]
2323
[MemberData(nameof(ItemCounts))]
24-
public void ItRaisesLockFileToMSBuildItems(string projectName, int[] counts, bool emitLegacyAssetsFileItems)
24+
public void ItRaisesLockFileToMSBuildItems(string projectName, int[] counts)
2525
{
26-
var task = GetExecutedTaskFromPrefix(projectName, out _, emitLegacyAssetsFileItems);
26+
var task = GetExecutedTaskFromPrefix(projectName, out _);
2727

2828
task.PackageDefinitions .Count().Should().Be(counts[0]);
2929
task.FileDefinitions .Count().Should().Be(counts[1]);
@@ -40,36 +40,16 @@ public static IEnumerable<object[]> ItemCounts
4040
{
4141
new object[] {
4242
"dotnet.new",
43-
new int[] { 110, 2536, 1, 846, 73 },
44-
true
45-
},
46-
new object[] {
47-
"dotnet.new",
48-
new int[] { 110, 0, 0, 846, 0 },
49-
false
50-
},
51-
new object[] {
52-
"simple.dependencies",
53-
new int[] { 113, 2613, 1, 878, 94 },
54-
true
43+
new int[] { 110, 2536, 1, 845, 75 },
5544
},
5645
new object[] {
5746
"simple.dependencies",
58-
new int[] { 113, 0, 0, 878, 0 },
59-
false
47+
new int[] { 113, 2613, 1, 877, 96 },
6048
},
6149
};
6250
}
6351
}
6452

65-
[Fact]
66-
public void ItOmitsLegacyItemsByDefault()
67-
{
68-
var task = new ResolvePackageDependencies();
69-
70-
task.EmitLegacyAssetsFileItems.Should().Be(false);
71-
}
72-
7353
[Theory]
7454
[InlineData("dotnet.new")]
7555
[InlineData("simple.dependencies")]
@@ -584,8 +564,7 @@ public void ItAddsAnalyzerMetadataAndFileDependencies()
584564
{
585565
ProjectAssetsFile = lockFile.Path,
586566
ProjectPath = null,
587-
ProjectLanguage = projectLanguage, // set language
588-
EmitLegacyAssetsFileItems = true
567+
ProjectLanguage = projectLanguage // set language
589568
};
590569
task.Execute().Should().BeTrue();
591570

@@ -669,8 +648,7 @@ public void ItFiltersAnalyzersByProjectLanguage()
669648
{
670649
ProjectAssetsFile = lockFile.Path,
671650
ProjectPath = null,
672-
ProjectLanguage = projectLanguage, // set language
673-
EmitLegacyAssetsFileItems = true
651+
ProjectLanguage = projectLanguage // set language
674652
};
675653
task.Execute().Should().BeTrue();
676654

@@ -839,19 +817,19 @@ public void ItDoesNotThrowOnCrossTargetingWithTargetPlatforms()
839817
GetExecutedTaskFromContents(lockFileContent, out _); // Task should not fail on matching framework names
840818
}
841819

842-
private static ResolvePackageDependencies GetExecutedTaskFromPrefix(string lockFilePrefix, out LockFile lockFile, bool emitLegacyAssetsFileItems = true, string target = null)
820+
private static ResolvePackageDependencies GetExecutedTaskFromPrefix(string lockFilePrefix, out LockFile lockFile, string target = null)
843821
{
844822
lockFile = TestLockFiles.GetLockFile(lockFilePrefix);
845-
return GetExecutedTask(lockFile, emitLegacyAssetsFileItems, target);
823+
return GetExecutedTask(lockFile, target);
846824
}
847825

848-
private static ResolvePackageDependencies GetExecutedTaskFromContents(string lockFileContents, out LockFile lockFile, bool emitLegacyAssetsFileItems = true, string target = null)
826+
private static ResolvePackageDependencies GetExecutedTaskFromContents(string lockFileContents, out LockFile lockFile, string target = null)
849827
{
850828
lockFile = TestLockFiles.CreateLockFile(lockFileContents);
851-
return GetExecutedTask(lockFile, emitLegacyAssetsFileItems, target);
829+
return GetExecutedTask(lockFile, target);
852830
}
853831

854-
private static ResolvePackageDependencies GetExecutedTask(LockFile lockFile, bool emitLegacyAssetsFileItems, string target)
832+
private static ResolvePackageDependencies GetExecutedTask(LockFile lockFile, string target)
855833
{
856834
var resolver = new MockPackageResolver(_packageRoot);
857835

@@ -860,7 +838,6 @@ private static ResolvePackageDependencies GetExecutedTask(LockFile lockFile, boo
860838
ProjectAssetsFile = lockFile.Path,
861839
ProjectPath = _projectPath,
862840
ProjectLanguage = null,
863-
EmitLegacyAssetsFileItems = emitLegacyAssetsFileItems,
864841
TargetFramework = target
865842
};
866843

src/Tasks/Microsoft.NET.Build.Tasks/ResolvePackageDependencies.cs

Lines changed: 12 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -18,9 +18,6 @@ namespace Microsoft.NET.Build.Tasks
1818
/// </summary>
1919
public sealed class ResolvePackageDependencies : TaskBase
2020
{
21-
/// <summary>
22-
/// Only used if <see cref="EmitLegacyAssetsFileItems"/> is <see langword="true"/>.
23-
/// </summary>
2421
private readonly Dictionary<string, string> _fileTypes = new Dictionary<string, string>(StringComparer.OrdinalIgnoreCase);
2522

2623
private HashSet<string> _projectFileDependencies;
@@ -37,7 +34,6 @@ public sealed class ResolvePackageDependencies : TaskBase
3734

3835
/// <summary>
3936
/// All the targets in the lock file.
40-
/// Only populated if <see cref="EmitLegacyAssetsFileItems"/> is <see langword="true"/>.
4137
/// </summary>
4238
[Output]
4339
public ITaskItem[] TargetDefinitions
@@ -56,7 +52,6 @@ public ITaskItem[] PackageDefinitions
5652

5753
/// <summary>
5854
/// All the files in the lock file.
59-
/// Only populated if <see cref="EmitLegacyAssetsFileItems"/> is <see langword="true"/>.
6055
/// </summary>
6156
[Output]
6257
public ITaskItem[] FileDefinitions
@@ -77,7 +72,6 @@ public ITaskItem[] PackageDependencies
7772
/// <summary>
7873
/// All the dependencies between files and packages, labeled by the group containing
7974
/// the file (e.g. CompileTimeAssembly, RuntimeAssembly, etc.).
80-
/// Only populated if <see cref="EmitLegacyAssetsFileItems"/> is <see langword="true"/>.
8175
/// </summary>
8276
[Output]
8377
public ITaskItem[] FileDependencies
@@ -114,12 +108,6 @@ public string ProjectLanguage
114108
get; set;
115109
}
116110

117-
/// <summary>
118-
/// Setting this property restores pre-16.7 behaviour of populating <see cref="TargetDefinitions"/>,
119-
/// <see cref="FileDefinitions"/> and <see cref="FileDependencies"/> outputs.
120-
/// </summary>
121-
public bool EmitLegacyAssetsFileItems { get; set; } = false;
122-
123111
public string TargetFramework { get; set; }
124112

125113
#endregion
@@ -195,11 +183,6 @@ private void GetPackageAndFileDefinitions()
195183

196184
_packageDefinitions.Add(item);
197185

198-
if (!EmitLegacyAssetsFileItems)
199-
{
200-
continue;
201-
}
202-
203186
foreach (var file in package.Files)
204187
{
205188
if (NuGetUtils.IsPlaceholderFile(file))
@@ -276,18 +259,15 @@ private void RaiseLockFileTargets()
276259
{
277260
foreach (var target in LockFile.Targets)
278261
{
279-
if (EmitLegacyAssetsFileItems)
280-
{
281-
TaskItem item = new TaskItem(target.Name);
282-
item.SetMetadata(MetadataKeys.RuntimeIdentifier, target.RuntimeIdentifier ?? string.Empty);
283-
item.SetMetadata(MetadataKeys.TargetFramework, TargetFramework);
284-
item.SetMetadata(MetadataKeys.TargetFrameworkMoniker, target.TargetFramework.DotNetFrameworkName);
285-
item.SetMetadata(MetadataKeys.FrameworkName, target.TargetFramework.Framework);
286-
item.SetMetadata(MetadataKeys.FrameworkVersion, target.TargetFramework.Version.ToString());
287-
item.SetMetadata(MetadataKeys.Type, "target");
288-
289-
_targetDefinitions.Add(item);
290-
}
262+
TaskItem item = new TaskItem(target.Name);
263+
item.SetMetadata(MetadataKeys.RuntimeIdentifier, target.RuntimeIdentifier ?? string.Empty);
264+
item.SetMetadata(MetadataKeys.TargetFramework, TargetFramework);
265+
item.SetMetadata(MetadataKeys.TargetFrameworkMoniker, target.TargetFramework.DotNetFrameworkName);
266+
item.SetMetadata(MetadataKeys.FrameworkName, target.TargetFramework.Framework);
267+
item.SetMetadata(MetadataKeys.FrameworkVersion, target.TargetFramework.Version.ToString());
268+
item.SetMetadata(MetadataKeys.Type, "target");
269+
270+
_targetDefinitions.Add(item);
291271

292272
// raise each library in the target
293273
GetPackageAndFileDependencies(target);
@@ -323,11 +303,8 @@ private void GetPackageAndFileDependencies(LockFileTarget target)
323303
// get sub package dependencies
324304
GetPackageDependencies(package, target.Name, resolvedPackageVersions, transitiveProjectRefs);
325305

326-
if (EmitLegacyAssetsFileItems)
327-
{
328-
// get file dependencies on this package
329-
GetFileDependencies(package, target.Name);
330-
}
306+
// get file dependencies on this package
307+
GetFileDependencies(package, target.Name);
331308
}
332309
}
333310

@@ -375,7 +352,7 @@ private void GetFileDependencies(LockFileTargetLibrary package, string targetNam
375352
string filePath = entry.Item1;
376353
IDictionary<string, string> properties = entry.Item2;
377354

378-
if (NuGetUtils.IsPlaceholderFile(filePath) || !EmitLegacyAssetsFileItems)
355+
if (NuGetUtils.IsPlaceholderFile(filePath))
379356
{
380357
continue;
381358
}

src/Tasks/Microsoft.NET.Build.Tasks/targets/Microsoft.PackageDependencyResolution.targets

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -196,14 +196,12 @@ Copyright (c) .NET Foundation. All rights reserved.
196196
ProjectPath="$(MSBuildProjectFullPath)"
197197
ProjectAssetsFile="$(ProjectAssetsFile)"
198198
ProjectLanguage="$(Language)"
199-
EmitLegacyAssetsFileItems="$(EmitLegacyAssetsFileItems)"
200199
TargetFramework="$(TargetFramework)"
201-
ContinueOnError="ErrorAndContinue">
200+
ContinueOnError="ErrorAndContinue"
201+
Condition="'$(EmitLegacyAssetsFileItems)' == 'true'">
202202

203203
<Output TaskParameter="PackageDefinitions" ItemName="PackageDefinitions" />
204204
<Output TaskParameter="PackageDependencies" ItemName="PackageDependencies" />
205-
206-
<!-- These outputs only produced when EmitLegacyAssetsFileItems is true -->
207205
<Output TaskParameter="TargetDefinitions" ItemName="TargetDefinitions" />
208206
<Output TaskParameter="FileDefinitions" ItemName="FileDefinitions" />
209207
<Output TaskParameter="FileDependencies" ItemName="FileDependencies" />

0 commit comments

Comments
 (0)