From ab38abe8de950b98cf5e0e11f7616314896d0442 Mon Sep 17 00:00:00 2001 From: Simon Cropp Date: Thu, 25 May 2023 12:11:02 +1000 Subject: [PATCH] fix" MSB4120: definition within target references itself (#38) --- readme.md | 9 +++++---- src/Cymbal/build/Cymbal.targets | 19 ++++++++++--------- src/Directory.Build.props | 2 +- ...se_propertyCache=False.DotNet.verified.txt | 4 +--- ...lse_propertyCache=True.DotNet.verified.txt | 4 +--- ...ue_propertyCache=False.DotNet.verified.txt | 4 +--- ...rue_propertyCache=True.DotNet.verified.txt | 4 +--- ...sts.Should_Parse_SymbolServer.verified.txt | 4 +--- 8 files changed, 21 insertions(+), 29 deletions(-) diff --git a/readme.md b/readme.md index 8c25aeb..ac8c3da 100644 --- a/readme.md +++ b/readme.md @@ -20,15 +20,16 @@ Works around [symbols not being copied from references](https://github.com/dotne AfterTargets="ResolveAssemblyReferences" Condition="@(ReferenceCopyLocalPaths) != ''"> - - + + ``` -snippet source | anchor +snippet source | anchor This is done at Build time. diff --git a/src/Cymbal/build/Cymbal.targets b/src/Cymbal/build/Cymbal.targets index 32225f0..88dccf2 100644 --- a/src/Cymbal/build/Cymbal.targets +++ b/src/Cymbal/build/Cymbal.targets @@ -5,28 +5,29 @@ + TaskName="CymbalTask" + AssemblyFile="$(CymbalAssembly)" /> + Name="CymbalTarget" + AfterTargets="Publish" > - + - - + + - + \ No newline at end of file diff --git a/src/Directory.Build.props b/src/Directory.Build.props index e863c64..fb27678 100644 --- a/src/Directory.Build.props +++ b/src/Directory.Build.props @@ -1,6 +1,6 @@ - 1.2.0 + 1.2.1 $(ProjectDir)..\ false enable diff --git a/src/Tests/Tests.RunTask_environmentCache=False_propertyCache=False.DotNet.verified.txt b/src/Tests/Tests.RunTask_environmentCache=False_propertyCache=False.DotNet.verified.txt index eb82c00..0ccaf49 100644 --- a/src/Tests/Tests.RunTask_environmentCache=False_propertyCache=False.DotNet.verified.txt +++ b/src/Tests/Tests.RunTask_environmentCache=False_propertyCache=False.DotNet.verified.txt @@ -1,9 +1,7 @@ { buildOutput: 1>Project "{SolutionDirectory}SampleApp/SampleApp.csproj" on node 1 (Publish target(s)). - 1>IncludeSymbolFromReferences: - {SolutionDirectory}Cymbal/build/Cymbal.targets(26,14): message : MSB4120: Item 'ReferenceCopyLocalPaths' definition within target references itself via (qualified or unqualified) metadatum 'DestinationSubDirectory'. This can lead to unintended expansion and cross-applying of pre-existing items. More info: https://aka.ms/msbuild/metadata-self-ref [{SolutionDirectory}SampleApp/SampleApp.csproj] - PrepareForPublish: + 1>PrepareForPublish: _CopyResolvedFilesToPublishPreserveNewest: _CopyResolvedFilesToPublishAlways: Publish: diff --git a/src/Tests/Tests.RunTask_environmentCache=False_propertyCache=True.DotNet.verified.txt b/src/Tests/Tests.RunTask_environmentCache=False_propertyCache=True.DotNet.verified.txt index c38f38c..37b29e3 100644 --- a/src/Tests/Tests.RunTask_environmentCache=False_propertyCache=True.DotNet.verified.txt +++ b/src/Tests/Tests.RunTask_environmentCache=False_propertyCache=True.DotNet.verified.txt @@ -1,9 +1,7 @@ { buildOutput: 1>Project "{SolutionDirectory}SampleApp/SampleApp.csproj" on node 1 (Publish target(s)). - 1>IncludeSymbolFromReferences: - {SolutionDirectory}Cymbal/build/Cymbal.targets(26,14): message : MSB4120: Item 'ReferenceCopyLocalPaths' definition within target references itself via (qualified or unqualified) metadatum 'DestinationSubDirectory'. This can lead to unintended expansion and cross-applying of pre-existing items. More info: https://aka.ms/msbuild/metadata-self-ref [{SolutionDirectory}SampleApp/SampleApp.csproj] - PrepareForPublish: + 1>PrepareForPublish: _CopyResolvedFilesToPublishPreserveNewest: _CopyResolvedFilesToPublishAlways: Publish: diff --git a/src/Tests/Tests.RunTask_environmentCache=True_propertyCache=False.DotNet.verified.txt b/src/Tests/Tests.RunTask_environmentCache=True_propertyCache=False.DotNet.verified.txt index 5e8f2b7..1ed6ce1 100644 --- a/src/Tests/Tests.RunTask_environmentCache=True_propertyCache=False.DotNet.verified.txt +++ b/src/Tests/Tests.RunTask_environmentCache=True_propertyCache=False.DotNet.verified.txt @@ -1,9 +1,7 @@ { buildOutput: 1>Project "{SolutionDirectory}SampleApp/SampleApp.csproj" on node 1 (Publish target(s)). - 1>IncludeSymbolFromReferences: - {SolutionDirectory}Cymbal/build/Cymbal.targets(26,14): message : MSB4120: Item 'ReferenceCopyLocalPaths' definition within target references itself via (qualified or unqualified) metadatum 'DestinationSubDirectory'. This can lead to unintended expansion and cross-applying of pre-existing items. More info: https://aka.ms/msbuild/metadata-self-ref [{SolutionDirectory}SampleApp/SampleApp.csproj] - PrepareForPublish: + 1>PrepareForPublish: _CopyResolvedFilesToPublishPreserveNewest: _CopyResolvedFilesToPublishAlways: Publish: diff --git a/src/Tests/Tests.RunTask_environmentCache=True_propertyCache=True.DotNet.verified.txt b/src/Tests/Tests.RunTask_environmentCache=True_propertyCache=True.DotNet.verified.txt index 5e8f2b7..1ed6ce1 100644 --- a/src/Tests/Tests.RunTask_environmentCache=True_propertyCache=True.DotNet.verified.txt +++ b/src/Tests/Tests.RunTask_environmentCache=True_propertyCache=True.DotNet.verified.txt @@ -1,9 +1,7 @@ { buildOutput: 1>Project "{SolutionDirectory}SampleApp/SampleApp.csproj" on node 1 (Publish target(s)). - 1>IncludeSymbolFromReferences: - {SolutionDirectory}Cymbal/build/Cymbal.targets(26,14): message : MSB4120: Item 'ReferenceCopyLocalPaths' definition within target references itself via (qualified or unqualified) metadatum 'DestinationSubDirectory'. This can lead to unintended expansion and cross-applying of pre-existing items. More info: https://aka.ms/msbuild/metadata-self-ref [{SolutionDirectory}SampleApp/SampleApp.csproj] - PrepareForPublish: + 1>PrepareForPublish: _CopyResolvedFilesToPublishPreserveNewest: _CopyResolvedFilesToPublishAlways: Publish: diff --git a/src/Tests/Tests.Should_Parse_SymbolServer.verified.txt b/src/Tests/Tests.Should_Parse_SymbolServer.verified.txt index 97f72ff..f6e492f 100644 --- a/src/Tests/Tests.Should_Parse_SymbolServer.verified.txt +++ b/src/Tests/Tests.Should_Parse_SymbolServer.verified.txt @@ -1,9 +1,7 @@ { buildOutput: 1>Project "{SolutionDirectory}SampleWithSymbolServer/SampleWithSymbolServer.csproj" on node 1 (Publish target(s)). - 1>IncludeSymbolFromReferences: - {SolutionDirectory}Cymbal/build/Cymbal.targets(26,14): message : MSB4120: Item 'ReferenceCopyLocalPaths' definition within target references itself via (qualified or unqualified) metadatum 'DestinationSubDirectory'. This can lead to unintended expansion and cross-applying of pre-existing items. More info: https://aka.ms/msbuild/metadata-self-ref [{SolutionDirectory}SampleWithSymbolServer/SampleWithSymbolServer.csproj] - PrepareForPublish: + 1>PrepareForPublish: _CopyResolvedFilesToPublishPreserveNewest: _CopyResolvedFilesToPublishAlways: Publish: