Skip to content

Commit c5547bc

Browse files
committed
Rearrange MSBuild logic in project files
Follow the following rules: - SOF (_Start Of File_) Imports, - Core properties, Package properties, build properties, - Build items, Resource items, Content items, Misc. items, - In-place Imports, Choose (_elements within follows outer sort order_) - `ProjectReference` items, `PackageReference` items, - Targets and Properties and Items close to said Targets, - EOF (_End Of File_) Imports. Where there's a condition by target properties, we should group them together under `Choose`. For multiple target values, we should sort them by the order in which they are defined. And the order in which they should be defined is either ascending or descending in terms of compatibility layering.
1 parent d0eb7e8 commit c5547bc

15 files changed

+119
-110
lines changed

eng/Toolkit.Common.props

Lines changed: 8 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -2,18 +2,22 @@
22

33
<PropertyGroup>
44
<EnforceCodeStyleInBuild>true</EnforceCodeStyleInBuild>
5+
<ContinuousIntegrationBuild>$(TF_BUILD)</ContinuousIntegrationBuild>
6+
<SourceLinkEnabled>$(ContinuousIntegrationBuild)</SourceLinkEnabled>
57
</PropertyGroup>
68

79
<PropertyGroup>
8-
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
10+
<Nullable>Enable</Nullable>
911
<LangVersion>11.0</LangVersion>
10-
<Nullable>enable</Nullable>
12+
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
13+
</PropertyGroup>
1114

12-
<!--
15+
<!--
1316
Suppress ref safety warnings in unsafe contexts (see https://github.com/dotnet/csharplang/issues/6476).
1417
This is used eg. to replace Unsafe.SizeOf<T>() calls with just sizeof(T). The warning is not necessary
1518
since in order to use these APIs the caller already has to be in an unsafe context.
16-
-->
19+
-->
20+
<PropertyGroup>
1721
<NoWarn>$(NoWarn);CS8500</NoWarn>
1822
</PropertyGroup>
1923

@@ -24,11 +28,6 @@
2428
<AssemblySignPublicKey>$([System.IO.File]::ReadAllText($(AssemblySignPublicKeyFile)))</AssemblySignPublicKey>
2529
</PropertyGroup>
2630

27-
<PropertyGroup>
28-
<ContinuousIntegrationBuild>$(TF_BUILD)</ContinuousIntegrationBuild>
29-
<SourceLinkEnabled>$(ContinuousIntegrationBuild)</SourceLinkEnabled>
30-
</PropertyGroup>
31-
3231
<!-- Identify projects targeting multiple Roslyn versions and add defaults -->
3332
<PropertyGroup Condition="$(MSBuildProjectName.Contains('.Roslyn'))">
3433
<IsCompilerTargeting>True</IsCompilerTargeting>

eng/Toolkit.Common.targets

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -16,17 +16,14 @@
1616
<PropertyGroup>
1717
<!-- TODO: Dynamically generate Title if one wasn't set -->
1818
<Title Condition="'$(Title)' == ''">$(Product) Asset</Title>
19-
</PropertyGroup>
20-
21-
<PropertyGroup>
2219
<PackageTags Condition="'$(PackageTags)' != ''">$(CommonTags);$(PackageTags)</PackageTags>
2320
<PackageTags Condition="'$(PackageTags)' == ''">$(CommonTags)</PackageTags>
2421
</PropertyGroup>
2522

2623
<ItemGroup Condition="$(IsPackable)">
27-
<None Include="$(BuildToolsDirectory)Icon.png" Pack="true" PackagePath="\" Visible="False" />
28-
<None Include="$(RepositoryDirectory)License.md" Pack="true" PackagePath="\" Visible="False" />
29-
<None Include="$(RepositoryDirectory)ThirdPartyNotices.txt" Pack="true" PackagePath="\" Visible="False" />
24+
<None Pack="true" PackagePath="\" Visible="False" Include="$(BuildToolsDirectory)Icon.png" />
25+
<None Pack="true" PackagePath="\" Visible="False" Include="$(RepositoryDirectory)License.md" />
26+
<None Pack="true" PackagePath="\" Visible="False" Include="$(RepositoryDirectory)ThirdPartyNotices.txt" />
3027
</ItemGroup>
3128

3229
<!--

eng/Toolkit.TextTemplates.targets

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,10 @@
11
<Project>
22

3+
<!-- T4 service used by the Guard APIs -->
4+
<ItemGroup>
5+
<Service Include="{508349b6-6b84-4df5-91f0-309beebad82d}" />
6+
</ItemGroup>
7+
38
<ItemGroup>
49
<None Update="Generated\Guard.Comparable.Numeric.tt">
510
<Generator>TextTemplatingFileGenerator</Generator>
@@ -19,11 +24,6 @@
1924
</None>
2025
</ItemGroup>
2126

22-
<!-- T4 service used by the Guard APIs -->
23-
<ItemGroup>
24-
<Service Include="{508349b6-6b84-4df5-91f0-309beebad82d}" />
25-
</ItemGroup>
26-
2727
<ItemGroup>
2828
<Compile Update="Generated\Guard.Comparable.Numeric.g.cs">
2929
<DesignTime>True</DesignTime>

src/CommunityToolkit.Diagnostics/CommunityToolkit.Diagnostics.csproj

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,18 @@
1414
<PackageTags>Diagnostics;Guard;ThrowHelper;TypeInfo;Extensions;Helpers</PackageTags>
1515
</PropertyGroup>
1616

17+
<!-- Necessary polyfills -->
18+
<PropertyGroup>
19+
<PolySharpIncludeGeneratedTypes>
20+
System.Diagnostics.CodeAnalysis.DoesNotReturnAttribute;
21+
System.Diagnostics.CodeAnalysis.DoesNotReturnIfAttribute;
22+
System.Diagnostics.CodeAnalysis.NotNullAttribute;
23+
System.Diagnostics.StackTraceHiddenAttribute;
24+
System.Runtime.CompilerServices.CallerArgumentExpressionAttribute;
25+
System.Runtime.CompilerServices.SkipLocalsInitAttribute;
26+
</PolySharpIncludeGeneratedTypes>
27+
</PropertyGroup>
28+
1729
<Choose>
1830

1931
<!-- .NET Standard 2.0 doesn't have the Span<T> type -->
@@ -31,18 +43,6 @@
3143
</When>
3244
</Choose>
3345

34-
<!-- Necessary polyfills -->
35-
<PropertyGroup>
36-
<PolySharpIncludeGeneratedTypes>
37-
System.Diagnostics.CodeAnalysis.DoesNotReturnAttribute;
38-
System.Diagnostics.CodeAnalysis.DoesNotReturnIfAttribute;
39-
System.Diagnostics.CodeAnalysis.NotNullAttribute;
40-
System.Diagnostics.StackTraceHiddenAttribute;
41-
System.Runtime.CompilerServices.CallerArgumentExpressionAttribute;
42-
System.Runtime.CompilerServices.SkipLocalsInitAttribute;
43-
</PolySharpIncludeGeneratedTypes>
44-
</PropertyGroup>
45-
4646
<Import Project="$(BuildToolsDirectory)Toolkit.TextTemplates.targets" />
4747

4848
</Project>

src/CommunityToolkit.HighPerformance/CommunityToolkit.HighPerformance.csproj

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -25,21 +25,30 @@
2525
<PackageTags>Parallel;Performance;Unsafe;Span;Memory;String;StringPool;Array;Stream;Buffer;Extensions;Helpers</PackageTags>
2626
</PropertyGroup>
2727

28+
<!-- Necessary polyfills -->
29+
<PropertyGroup>
30+
<PolySharpIncludeGeneratedTypes>
31+
System.Diagnostics.CodeAnalysis.NotNullAttribute;
32+
System.Diagnostics.CodeAnalysis.NotNullWhenAttribute;
33+
System.Runtime.CompilerServices.SkipLocalsInitAttribute;
34+
</PolySharpIncludeGeneratedTypes>
35+
</PropertyGroup>
36+
2837
<Choose>
2938
<When Condition="'$(TargetFramework)' == 'netstandard2.0'">
3039

40+
<!-- On .NET Standard 2.0, the unit test project also needs access to internals -->
41+
<ItemGroup>
42+
<InternalsVisibleTo Include="CommunityToolkit.HighPerformance.UnitTests, PublicKey=$(AssemblySignPublicKey)" />
43+
</ItemGroup>
44+
3145
<!-- .NET Standard 2.0 doesn't have the Span<T>, HashCode and ValueTask types -->
3246
<ItemGroup>
3347
<PackageReference Include="Microsoft.Bcl.HashCode" Version="1.1.1" />
3448
<PackageReference Include="System.Memory" Version="4.5.5" />
3549
<PackageReference Include="System.Threading.Tasks.Extensions" Version="4.5.4" />
3650
<PackageReference Include="System.Runtime.CompilerServices.Unsafe" Version="6.0.0" />
3751
</ItemGroup>
38-
39-
<!-- On .NET Standard 2.0, the unit test project also needs access to internals-->
40-
<ItemGroup>
41-
<InternalsVisibleTo Include="CommunityToolkit.HighPerformance.UnitTests, PublicKey=$(AssemblySignPublicKey)" />
42-
</ItemGroup>
4352
</When>
4453

4554
<!-- .NET Standard 2.1 doesn't have the Unsafe type -->
@@ -50,13 +59,4 @@
5059
</When>
5160
</Choose>
5261

53-
<!-- Necessary polyfills -->
54-
<PropertyGroup>
55-
<PolySharpIncludeGeneratedTypes>
56-
System.Diagnostics.CodeAnalysis.NotNullAttribute;
57-
System.Diagnostics.CodeAnalysis.NotNullWhenAttribute;
58-
System.Runtime.CompilerServices.SkipLocalsInitAttribute;
59-
</PolySharpIncludeGeneratedTypes>
60-
</PropertyGroup>
61-
6262
</Project>

src/CommunityToolkit.Mvvm/CommunityToolkit.Mvvm.csproj

Lines changed: 36 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,39 @@
2020
<PackageTags>MVVM;Toolkit;MVVMToolkit;INotifyPropertyChanged;Observable;IOC;DI;Dependency Injection;Object Messaging;Extensions;Helpers</PackageTags>
2121
</PropertyGroup>
2222

23+
<!-- Necessary polyfills -->
24+
<PropertyGroup>
25+
<PolySharpIncludeGeneratedTypes>
26+
System.Diagnostics.CodeAnalysis.DoesNotReturnAttribute;
27+
System.Diagnostics.CodeAnalysis.MaybeNullWhenAttribute;
28+
System.Diagnostics.CodeAnalysis.MemberNotNullAttribute;
29+
System.Diagnostics.CodeAnalysis.NotNullAttribute;
30+
System.Diagnostics.CodeAnalysis.NotNullIfNotNullAttribute;
31+
System.Diagnostics.CodeAnalysis.NotNullWhenAttribute;
32+
System.Diagnostics.CodeAnalysis.RequiresUnreferencedCodeAttribute;
33+
System.Diagnostics.CodeAnalysis.UnconditionalSuppressMessageAttribute;
34+
System.Runtime.CompilerServices.CallerArgumentExpressionAttribute;
35+
System.Runtime.CompilerServices.IsExternalInit;
36+
System.Runtime.CompilerServices.SkipLocalsInitAttribute;
37+
</PolySharpIncludeGeneratedTypes>
38+
</PropertyGroup>
39+
40+
<!-- Add the [InternalsVisibleTo] attribute for the test project -->
41+
<ItemGroup>
42+
<InternalsVisibleTo Include="CommunityToolkit.Mvvm.Internals.UnitTests, PublicKey=$(AssemblySignPublicKey)" />
43+
</ItemGroup>
44+
45+
<!--
46+
Include the custom .targets file to check the source generator.
47+
.NET 6 is not needed as it guarantees Roslyn 4.x.
48+
-->
49+
<ItemGroup>
50+
<None Include="CommunityToolkit.Mvvm.targets" Pack="True" PackagePath="build\netstandard2.0" />
51+
<None Include="CommunityToolkit.Mvvm.targets" Pack="True" PackagePath="build\netstandard2.1" />
52+
<None Include="CommunityToolkit.Mvvm.targets" Pack="True" PackagePath="buildTransitive\netstandard2.0" />
53+
<None Include="CommunityToolkit.Mvvm.targets" Pack="True" PackagePath="buildTransitive\netstandard2.1" />
54+
</ItemGroup>
55+
2356
<!-- .NET Standard 2.0 doesn't have the Span<T> and IAsyncEnumerable<T> types -->
2457
<ItemGroup Condition="'$(TargetFramework)' == 'netstandard2.0'">
2558
<PackageReference Include="Microsoft.Bcl.AsyncInterfaces" Version="7.0.0" />
@@ -40,40 +73,11 @@
4073
<ProjectReference Include="..\CommunityToolkit.Mvvm.SourceGenerators\CommunityToolkit.Mvvm.SourceGenerators.Roslyn43.csproj" ReferenceOutputAssembly="false" />
4174
</ItemGroup>
4275

43-
<!-- Add the [InternalsVisibleTo] attribute for the test project -->
44-
<ItemGroup>
45-
<InternalsVisibleTo Include="CommunityToolkit.Mvvm.Internals.UnitTests, PublicKey=$(AssemblySignPublicKey)" />
46-
</ItemGroup>
47-
48-
<!-- Necessary polyfills -->
49-
<PropertyGroup>
50-
<PolySharpIncludeGeneratedTypes>
51-
System.Diagnostics.CodeAnalysis.DoesNotReturnAttribute;
52-
System.Diagnostics.CodeAnalysis.MaybeNullWhenAttribute;
53-
System.Diagnostics.CodeAnalysis.MemberNotNullAttribute;
54-
System.Diagnostics.CodeAnalysis.NotNullAttribute;
55-
System.Diagnostics.CodeAnalysis.NotNullIfNotNullAttribute;
56-
System.Diagnostics.CodeAnalysis.NotNullWhenAttribute;
57-
System.Diagnostics.CodeAnalysis.RequiresUnreferencedCodeAttribute;
58-
System.Diagnostics.CodeAnalysis.UnconditionalSuppressMessageAttribute;
59-
System.Runtime.CompilerServices.CallerArgumentExpressionAttribute;
60-
System.Runtime.CompilerServices.IsExternalInit;
61-
System.Runtime.CompilerServices.SkipLocalsInitAttribute;
62-
</PolySharpIncludeGeneratedTypes>
63-
</PropertyGroup>
64-
65-
<ItemGroup Label="Package">
66-
67-
<!-- Include the custom .targets file to check the source generator (.NET 6 is not needed as it guarantees Roslyn 4.x) -->
68-
<None Include="CommunityToolkit.Mvvm.targets" PackagePath="buildTransitive\netstandard2.0" Pack="true" />
69-
<None Include="CommunityToolkit.Mvvm.targets" PackagePath="buildTransitive\netstandard2.1" Pack="true" />
70-
<None Include="CommunityToolkit.Mvvm.targets" PackagePath="build\netstandard2.0" Pack="true" />
71-
<None Include="CommunityToolkit.Mvvm.targets" PackagePath="build\netstandard2.1" Pack="true" />
72-
73-
<!--
76+
<!--
7477
Pack the source generator to the right package folders (each matching the target Roslyn version).
7578
Roslyn will automatically load the highest version compatible with Roslyn's version in the SDK.
76-
-->
79+
-->
80+
<ItemGroup>
7781
<None Include="..\CommunityToolkit.Mvvm.SourceGenerators\bin\$(Configuration)\netstandard2.0-roslyn4.0\CommunityToolkit.Mvvm.SourceGenerators.dll" PackagePath="analyzers\dotnet\roslyn4.0\cs" Pack="true" Visible="false" />
7882
<None Include="..\CommunityToolkit.Mvvm.SourceGenerators\bin\$(Configuration)\netstandard2.0-roslyn4.3\CommunityToolkit.Mvvm.SourceGenerators.dll" PackagePath="analyzers\dotnet\roslyn4.3\cs" Pack="true" Visible="false" />
7983
</ItemGroup>

src/CommunityToolkit.Mvvm/CommunityToolkit.Mvvm.targets

Lines changed: 11 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -13,16 +13,17 @@
1313
AfterTargets="ResolvePackageDependenciesForBuild;ResolveNuGetPackageAssets"
1414
DependsOnTargets="MVVMToolkitGatherAnalyzers">
1515

16-
<!-- Use the CSharpCoreTargetsPath property to find the version of the compiler we are using. This is the same mechanism
17-
MSBuild uses to find the compiler. We could check the assembly version for any compiler assembly (since they all have
18-
the same version) but Microsoft.Build.Tasks.CodeAnalysis.dll is where MSBuild loads the compiler tasks from so if
19-
someone is getting creative with msbuild tasks/targets this is the "most correct" assembly to check. -->
16+
<!--
17+
Use the CSharpCoreTargetsPath property to find the version of the compiler we are using. This is the same mechanism
18+
MSBuild uses to find the compiler. We could check the assembly version for any compiler assembly (since they all have
19+
the same version) but Microsoft.Build.Tasks.CodeAnalysis.dll is where MSBuild loads the compiler tasks from so if
20+
someone is getting creative with msbuild tasks/targets this is the "most correct" assembly to check.
21+
-->
2022
<GetAssemblyIdentity AssemblyFiles="$([System.IO.Path]::Combine(`$([System.IO.Path]::GetDirectoryName($(CSharpCoreTargetsPath)))`,`Microsoft.Build.Tasks.CodeAnalysis.dll`))">
2123
<Output TaskParameter="Assemblies" ItemName="MVVMToolkitCurrentCompilerAssemblyIdentity"/>
2224
</GetAssemblyIdentity>
2325

2426
<PropertyGroup>
25-
2627
<!-- Transform the resulting item from GetAssemblyIdentity into a property representing its assembly version -->
2728
<MVVMToolkitCurrentCompilerVersion>@(MVVMToolkitCurrentCompilerAssemblyIdentity->'%(Version)')</MVVMToolkitCurrentCompilerVersion>
2829

@@ -35,9 +36,11 @@
3536
<Analyzer Remove="@(MVVMToolkitAnalyzer)"/>
3637
</ItemGroup>
3738

38-
<!-- If the source generators are disabled, also emit a warning. This would've been produced by MSBuild itself as well, but
39-
emitting this manually lets us customize the message to inform developers as to why exactly the generators have been
40-
disabled, and that the rest of the MVVM Toolkit will still keep working as intended, just without additional features. -->
39+
<!--
40+
If the source generators are disabled, also emit a warning. This would've been produced by MSBuild itself as well, but
41+
emitting this manually lets us customize the message to inform developers as to why exactly the generators have been
42+
disabled, and that the rest of the MVVM Toolkit will still keep working as intended, just without additional features.
43+
-->
4144
<Warning Condition ="'$(MVVMToolkitCurrentCompilerVersionIsNotNewEnough)' == 'true'" Text="The MVVM Toolkit source generators have been disabled on the current configuration, as they need Roslyn 4.x in order to work. The MVVM Toolkit will work just fine, but features relying on the source generators will not be available."/>
4245
</Target>
4346

tests/CommunityToolkit.Mvvm.DisableINotifyPropertyChanging.UnitTests/CommunityToolkit.Mvvm.DisableINotifyPropertyChanging.Roslyn40.UnitTests.csproj

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,8 @@
66

77
<ItemGroup>
88
<ProjectReference Include="..\..\src\CommunityToolkit.Mvvm\CommunityToolkit.Mvvm.csproj" />
9-
<ProjectReference Include="..\..\src\CommunityToolkit.Mvvm.SourceGenerators\CommunityToolkit.Mvvm.SourceGenerators.Roslyn40.csproj" OutputItemType="Analyzer" ReferenceOutputAssembly="false" PrivateAssets="contentfiles;build" />
9+
<ProjectReference Include="..\..\src\CommunityToolkit.Mvvm.SourceGenerators\CommunityToolkit.Mvvm.SourceGenerators.Roslyn40.csproj"
10+
OutputItemType="Analyzer" ReferenceOutputAssembly="false" PrivateAssets="build;contentFiles" />
1011
</ItemGroup>
1112

1213
</Project>

tests/CommunityToolkit.Mvvm.DisableINotifyPropertyChanging.UnitTests/CommunityToolkit.Mvvm.DisableINotifyPropertyChanging.Roslyn43.UnitTests.csproj

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,8 @@
66

77
<ItemGroup>
88
<ProjectReference Include="..\..\src\CommunityToolkit.Mvvm\CommunityToolkit.Mvvm.csproj" />
9-
<ProjectReference Include="..\..\src\CommunityToolkit.Mvvm.SourceGenerators\CommunityToolkit.Mvvm.SourceGenerators.Roslyn43.csproj" OutputItemType="Analyzer" ReferenceOutputAssembly="false" PrivateAssets="contentfiles;build" />
9+
<ProjectReference Include="..\..\src\CommunityToolkit.Mvvm.SourceGenerators\CommunityToolkit.Mvvm.SourceGenerators.Roslyn43.csproj"
10+
OutputItemType="Analyzer" ReferenceOutputAssembly="false" PrivateAssets="build;contentFiles" />
1011
</ItemGroup>
1112

1213
</Project>

tests/CommunityToolkit.Mvvm.ExternalAssembly/CommunityToolkit.Mvvm.ExternalAssembly.Roslyn40.csproj

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,8 @@
66

77
<ItemGroup>
88
<ProjectReference Include="..\..\src\CommunityToolkit.Mvvm\CommunityToolkit.Mvvm.csproj" />
9-
<ProjectReference Include="..\..\src\CommunityToolkit.Mvvm.SourceGenerators\CommunityToolkit.Mvvm.SourceGenerators.Roslyn40.csproj" OutputItemType="Analyzer" ReferenceOutputAssembly="false" PrivateAssets="contentfiles;build" />
9+
<ProjectReference Include="..\..\src\CommunityToolkit.Mvvm.SourceGenerators\CommunityToolkit.Mvvm.SourceGenerators.Roslyn40.csproj"
10+
OutputItemType="Analyzer" ReferenceOutputAssembly="false" PrivateAssets="build;contentFiles" />
1011
</ItemGroup>
1112

1213
</Project>

tests/CommunityToolkit.Mvvm.ExternalAssembly/CommunityToolkit.Mvvm.ExternalAssembly.Roslyn43.csproj

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,8 @@
66

77
<ItemGroup>
88
<ProjectReference Include="..\..\src\CommunityToolkit.Mvvm\CommunityToolkit.Mvvm.csproj" />
9-
<ProjectReference Include="..\..\src\CommunityToolkit.Mvvm.SourceGenerators\CommunityToolkit.Mvvm.SourceGenerators.Roslyn43.csproj" OutputItemType="Analyzer" ReferenceOutputAssembly="false" PrivateAssets="contentfiles;build" />
9+
<ProjectReference Include="..\..\src\CommunityToolkit.Mvvm.SourceGenerators\CommunityToolkit.Mvvm.SourceGenerators.Roslyn43.csproj"
10+
OutputItemType="Analyzer" ReferenceOutputAssembly="false" PrivateAssets="build;contentFiles" />
1011
</ItemGroup>
1112

1213
</Project>

tests/CommunityToolkit.Mvvm.SourceGenerators.UnitTests/CommunityToolkit.Mvvm.SourceGenerators.Roslyn40.UnitTests.csproj

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5,13 +5,13 @@
55
</PropertyGroup>
66

77
<ItemGroup>
8-
<PackageReference Include="Microsoft.CodeAnalysis.CSharp.Analyzer.Testing.MSTest" Version="1.1.1" />
9-
<PackageReference Include="Microsoft.CodeAnalysis.CSharp.Workspaces" Version="4.0.1" />
8+
<ProjectReference Include="..\..\src\CommunityToolkit.Mvvm\CommunityToolkit.Mvvm.csproj" />
9+
<ProjectReference Include="..\..\src\CommunityToolkit.Mvvm.SourceGenerators\CommunityToolkit.Mvvm.SourceGenerators.Roslyn40.csproj" />
1010
</ItemGroup>
1111

1212
<ItemGroup>
13-
<ProjectReference Include="..\..\src\CommunityToolkit.Mvvm\CommunityToolkit.Mvvm.csproj" />
14-
<ProjectReference Include="..\..\src\CommunityToolkit.Mvvm.SourceGenerators\CommunityToolkit.Mvvm.SourceGenerators.Roslyn40.csproj" />
13+
<PackageReference Include="Microsoft.CodeAnalysis.CSharp.Workspaces" Version="4.0.1" />
14+
<PackageReference Include="Microsoft.CodeAnalysis.CSharp.Analyzer.Testing.MSTest" Version="1.1.1" />
1515
</ItemGroup>
1616

1717
</Project>

tests/CommunityToolkit.Mvvm.SourceGenerators.UnitTests/CommunityToolkit.Mvvm.SourceGenerators.Roslyn43.UnitTests.csproj

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5,13 +5,13 @@
55
</PropertyGroup>
66

77
<ItemGroup>
8-
<PackageReference Include="Microsoft.CodeAnalysis.CSharp.Analyzer.Testing.MSTest" Version="1.1.1" />
9-
<PackageReference Include="Microsoft.CodeAnalysis.CSharp.Workspaces" Version="4.4.0" />
8+
<ProjectReference Include="..\..\src\CommunityToolkit.Mvvm\CommunityToolkit.Mvvm.csproj" />
9+
<ProjectReference Include="..\..\src\CommunityToolkit.Mvvm.SourceGenerators\CommunityToolkit.Mvvm.SourceGenerators.Roslyn43.csproj" />
1010
</ItemGroup>
1111

1212
<ItemGroup>
13-
<ProjectReference Include="..\..\src\CommunityToolkit.Mvvm\CommunityToolkit.Mvvm.csproj" />
14-
<ProjectReference Include="..\..\src\CommunityToolkit.Mvvm.SourceGenerators\CommunityToolkit.Mvvm.SourceGenerators.Roslyn43.csproj" />
13+
<PackageReference Include="Microsoft.CodeAnalysis.CSharp.Workspaces" Version="4.3.1" />
14+
<PackageReference Include="Microsoft.CodeAnalysis.CSharp.Analyzer.Testing.MSTest" Version="1.1.1" />
1515
</ItemGroup>
1616

1717
</Project>

0 commit comments

Comments
 (0)