From e58781e1c808c5f8ac017b5cfdffd41dbd1fd19d Mon Sep 17 00:00:00 2001 From: Nirmal Guru Date: Tue, 27 Jul 2021 10:04:46 +0530 Subject: [PATCH 01/13] Rename solution, readme and icon files - Rename `build` folder to `eng`: - This is a standard build infra directory used in official dotnet projects. - Rename NuGet Icon to `Icon.png`: - This is no longer used as a public reference point for NuGet icon URL. - Also, Icon URL is deprecated. Hence, it's safe to change. - Normalize casing for `ReadMe.md`: - Repository information files such as ReadMe, License, etc... are only UPPER_CASE if they are without an extension. With extension, the casing becomes PascalCase or Kebab-Case. The primary reason is attention to the presentation of file names. - Do Kebab-Case when a phrase is presented. E.g., `Code-of-Conduct.md`. - Rename solution file to `CommunityToolkit.sln`: - The `dotnet` seems implied and also doesn't stand-out in the file list because of the lower casing and `d` char. - Spaces are a main issue when doing automation (_like using `*.sln` in build scripts and in URLs it adds `%20`_). - Move `toolkit.snk` file to `eng` sub-directory. - Remove un-needed and deleted files from solution. - Update Git Ignore entries to latest from upstream. - Indent text in `ThirdPartyNotices.txt` with spaces instead. --- .gitignore | 18 +++++++++++------- CODE_OF_CONDUCT.md => Code-of-Conduct.md | 0 ...munity Toolkit.sln => CommunityToolkit.sln | 16 ++++++---------- Directory.Build.props | 4 ++-- Directory.Build.targets | 2 +- README.md => ReadMe.md | 2 +- ThirdPartyNotices.txt | 6 +++--- azure-pipelines.yml | 2 +- build/nuget.png => eng/Icon.png | Bin {build => eng}/Sign-Package.ps1 | 0 {build => eng}/SignClientSettings.json | 0 .../Toolkit.Common.props | 3 +-- .../Toolkit.Common.targets | 2 +- toolkit.snk => eng/toolkit.snk | Bin 14 files changed, 27 insertions(+), 28 deletions(-) rename CODE_OF_CONDUCT.md => Code-of-Conduct.md (100%) rename dotnet Community Toolkit.sln => CommunityToolkit.sln (98%) rename README.md => ReadMe.md (98%) rename build/nuget.png => eng/Icon.png (100%) rename {build => eng}/Sign-Package.ps1 (100%) rename {build => eng}/SignClientSettings.json (100%) rename build/Community.Toolkit.Common.props => eng/Toolkit.Common.props (91%) rename build/Community.Toolkit.Common.targets => eng/Toolkit.Common.targets (87%) rename toolkit.snk => eng/toolkit.snk (100%) diff --git a/.gitignore b/.gitignore index 45cc92d11..84ce9d618 100644 --- a/.gitignore +++ b/.gitignore @@ -28,14 +28,21 @@ # Visual Studio 15+ auto generated files Generated\ Files/ +# Backup folder for Package Reference Convert tool in Visual Studio 15+ +MigrationBackup/ + +# Live Unit Testing for Visual Studio +.lutignore +*.lutconfig + # Local History for Visual Studio .localhistory/ # Visual Studio History (VSHistory) files .vshistory/ -# Backup folder for Package Reference Convert tool in Visual Studio 2017 -MigrationBackup/ +# Local History for Visual Studio Code +.history/ # VS Code files for those working on multiple tools .vscode/* @@ -45,9 +52,6 @@ MigrationBackup/ !.vscode/extensions.json *.code-workspace -# Local History for Visual Studio Code -.history/ - # MSTest test Results [Tt]est[Rr]esult*/ [Bb]uild[Ll]og.* @@ -95,7 +99,7 @@ StyleCopReport.xml *.tlog *.vspscc *.vssscc -.builds +*.builds *.pidb *.svclog *.scc @@ -177,7 +181,7 @@ _pkginfo.txt # Others ClientBin/ -~$* +~* *~ *~.* *.dbmdl diff --git a/CODE_OF_CONDUCT.md b/Code-of-Conduct.md similarity index 100% rename from CODE_OF_CONDUCT.md rename to Code-of-Conduct.md diff --git a/dotnet Community Toolkit.sln b/CommunityToolkit.sln similarity index 98% rename from dotnet Community Toolkit.sln rename to CommunityToolkit.sln index 8e1b61745..55b638287 100644 --- a/dotnet Community Toolkit.sln +++ b/CommunityToolkit.sln @@ -15,7 +15,6 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution azure-pipelines.yml = azure-pipelines.yml Directory.Build.props = Directory.Build.props Directory.Build.targets = Directory.Build.targets - toolkit.snk = toolkit.snk version.json = version.json EndProjectSection EndProject @@ -27,10 +26,10 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "CommunityToolkit.HighPerfor EndProject Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Docs", "Docs", "{88C6FFBE-322D-4CEA-842B-B2CB281D357D}" ProjectSection(SolutionItems) = preProject - CODE_OF_CONDUCT.md = CODE_OF_CONDUCT.md + Code-of-Conduct.md = Code-of-Conduct.md Contributing.md = Contributing.md License.md = License.md - README.md = README.md + ReadMe.md = ReadMe.md ThirdPartyNotices.txt = ThirdPartyNotices.txt EndProjectSection EndProject @@ -44,13 +43,10 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "CommunityToolkit.Common.Uni EndProject Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Build", "Build", "{CD16E790-7B7B-411E-9CE7-768E759CC22D}" ProjectSection(SolutionItems) = preProject - build\Community.Toolkit.Common.props = build\Community.Toolkit.Common.props - build\Community.Toolkit.Common.targets = build\Community.Toolkit.Common.targets - build\header.txt = build\header.txt - build\nuget.png = build\nuget.png - build\Sign-Package.ps1 = build\Sign-Package.ps1 - build\SignClientSettings.json = build\SignClientSettings.json - build\Update-Headers.ps1 = build\Update-Headers.ps1 + eng\Toolkit.Common.props = eng\Toolkit.Common.props + eng\Toolkit.Common.targets = eng\Toolkit.Common.targets + eng\Sign-Package.ps1 = eng\Sign-Package.ps1 + eng\SignClientSettings.json = eng\SignClientSettings.json EndProjectSection EndProject Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Configuration", "Configuration", "{6640D447-C28D-4DBB-91F4-3ADCE0CA64AD}" diff --git a/Directory.Build.props b/Directory.Build.props index 37e8c3425..022a4a7aa 100644 --- a/Directory.Build.props +++ b/Directory.Build.props @@ -2,10 +2,10 @@ $(MSBuildThisFileDirectory) - $(RepositoryDirectory)build\ + $(RepositoryDirectory)eng\ - + diff --git a/Directory.Build.targets b/Directory.Build.targets index c51d83ac5..df33e0f2c 100644 --- a/Directory.Build.targets +++ b/Directory.Build.targets @@ -1,6 +1,6 @@ - + diff --git a/README.md b/ReadMe.md similarity index 98% rename from README.md rename to ReadMe.md index e1d670d78..6476895d0 100644 --- a/README.md +++ b/ReadMe.md @@ -42,7 +42,7 @@ Check out our [Preview Packages Wiki Page](https://github.com/CommunityToolkit/d ## 📄 Code of Conduct This project has adopted the code of conduct defined by the [Contributor Covenant](http://contributor-covenant.org/) to clarify expected behavior in our community. -For more information see the [.NET Foundation Code of Conduct](CODE_OF_CONDUCT.md). +For more information see the [.NET Foundation's Code of Conduct](Code-of-Conduct.md). ## 🏢 .NET Foundation diff --git a/ThirdPartyNotices.txt b/ThirdPartyNotices.txt index ea8b9da1c..1010bb503 100644 --- a/ThirdPartyNotices.txt +++ b/ThirdPartyNotices.txt @@ -5,9 +5,9 @@ Do Not Translate or Localize This project incorporates components from the projects listed below. The original copyright notices and the licenses under which the .NET Foundation received such components are set forth below. The .NET Foundation reserves all rights not expressly granted herein, whether by implication, estoppel or otherwise. -1. PedroLamas/DeferredEvents version 1.0.4 (https://github.com/PedroLamas/DeferredEvents), included in CommunityToolkit.Common/Deferred. -2. MichaeIDietrich/UwpNotificationNetCoreTest commit 5c1a4a3 (https://github.com/MichaeIDietrich/UwpNotificationNetCoreTest), used in DesktopNotificationManagerCompat.cs to support .NET Core 3.0. -3. lbugnion/mvvmlight commit 4cbf77c (https://github.com/lbugnion/mvvmlight), from which some APIs from the `CommunityToolkit.Mvvm` package take inspiration from. +1. PedroLamas/DeferredEvents version 1.0.4 (https://github.com/PedroLamas/DeferredEvents), included in CommunityToolkit.Common/Deferred. +2. MichaeIDietrich/UwpNotificationNetCoreTest commit 5c1a4a3 (https://github.com/MichaeIDietrich/UwpNotificationNetCoreTest), used in DesktopNotificationManagerCompat.cs to support .NET Core 3.0. +3. lbugnion/mvvmlight commit 4cbf77c (https://github.com/lbugnion/mvvmlight), from which some APIs from the `CommunityToolkit.Mvvm` package take inspiration from. 4. PrivateObject/PrivateType (https://github.com/microsoft/testfx/tree/664ac7c2ac9dbfbee9d2a0ef560cfd72449dfe34/src/TestFramework/Extension.Desktop), included in UnitTests. 5. QuinnDamerell/UniversalMarkdown (https://github.com/QuinnDamerell/UniversalMarkdown) contributed by Quinn Damerell and Paul Bartrum for the MarkdownTextBlock control, relicensed to this .NET Foundation project under the MIT license upon contribution in https://github.com/CommunityToolkit/WindowsCommunityToolkit/pull/772. 6. qmatteoq/DesktopBridgeHelpers commit e278153 (https://github.com/qmatteoq/DesktopBridgeHelpers), contributed by Matteo Pagani to identify if running with identity in DesktopNotificationManagerCompat.cs and DesktopBridgeHelpers.cs, relicensed to this .NET Foundation project under the MIT license upon contribution in https://github.com/CommunityToolkit/WindowsCommunityToolkit/pull/3457. diff --git a/azure-pipelines.yml b/azure-pipelines.yml index 4738052bf..28e2b003d 100644 --- a/azure-pipelines.yml +++ b/azure-pipelines.yml @@ -78,7 +78,7 @@ jobs: displayName: Pack solution # Sign packages - - pwsh: build/Sign-Package.ps1 + - pwsh: eng/Sign-Package.ps1 displayName: Authenticode sign packages env: SignClientUser: $(SignClientUser) diff --git a/build/nuget.png b/eng/Icon.png similarity index 100% rename from build/nuget.png rename to eng/Icon.png diff --git a/build/Sign-Package.ps1 b/eng/Sign-Package.ps1 similarity index 100% rename from build/Sign-Package.ps1 rename to eng/Sign-Package.ps1 diff --git a/build/SignClientSettings.json b/eng/SignClientSettings.json similarity index 100% rename from build/SignClientSettings.json rename to eng/SignClientSettings.json diff --git a/build/Community.Toolkit.Common.props b/eng/Toolkit.Common.props similarity index 91% rename from build/Community.Toolkit.Common.props rename to eng/Toolkit.Common.props index a43ae645d..6456ab2d9 100644 --- a/build/Community.Toolkit.Common.props +++ b/eng/Toolkit.Common.props @@ -11,7 +11,6 @@ https://github.com/CommunityToolkit/dotnet https://github.com/CommunityToolkit/dotnet/releases Icon.png - https://raw.githubusercontent.com/CommunityToolkit/dotnet/main/build/nuget.png @@ -33,7 +32,7 @@ true - $(RepositoryDirectory)toolkit.snk + $(MSBuildThisFileDirectory)toolkit.snk 002400000480000094000000060200000024000052534131000400000100010041753AF735AE6140C9508567666C51C6AB929806ADB0D210694B30AB142A060237BC741F9682E7D8D4310364B4BBA4EE89CC9D3D5CE7E5583587E8EA44DCA09977996582875E71FB54FA7B170798D853D5D8010B07219633BDB761D01AC924DA44576D6180CDCEAE537973982BB461C541541D58417A3794E34F45E6F2D129E2 diff --git a/build/Community.Toolkit.Common.targets b/eng/Toolkit.Common.targets similarity index 87% rename from build/Community.Toolkit.Common.targets rename to eng/Toolkit.Common.targets index f34ab2ab5..0de2ec957 100644 --- a/build/Community.Toolkit.Common.targets +++ b/eng/Toolkit.Common.targets @@ -12,7 +12,7 @@ - + diff --git a/toolkit.snk b/eng/toolkit.snk similarity index 100% rename from toolkit.snk rename to eng/toolkit.snk From d798226308b6b3ce22f871b398752c626d6b3326 Mon Sep 17 00:00:00 2001 From: Nirmal Guru Date: Sun, 18 Sep 2022 09:16:25 +0530 Subject: [PATCH 02/13] Simplify Roslyn multi-targeting - Fix the text flow warping in the MSBuild Console logging. - Use checked version properties instead of hard-coded checks. - Update the structure of the projects list in the Solution file. - Refactor Roslyn multi-targeting to use multiple projects in the same project directory without using Shared projects. This refactoring is made in preparation for the solution to use the NuGet's CPVM (Central Package Versions Management) feature. This also slightly improves IDE load time and Build performance. --- CommunityToolkit.sln | 470 ++++-------------- Directory.Build.rsp | 5 + eng/Toolkit.Common.props | 11 + eng/Toolkit.Common.targets | 16 + eng/Toolkit.CompilerTargeting.props | 59 +++ eng/Toolkit.CompilerTargeting.targets | 63 +++ ...kit.Mvvm.SourceGenerators.Roslyn401.csproj | 6 - ...kit.Mvvm.SourceGenerators.Roslyn431.csproj | 6 - ...lkit.Mvvm.SourceGenerators.Roslyn40.csproj | 26 + ...lkit.Mvvm.SourceGenerators.Roslyn43.csproj | 26 + ...ityToolkit.Mvvm.SourceGenerators.projitems | 86 ---- ...mmunityToolkit.Mvvm.SourceGenerators.props | 38 -- ...munityToolkit.Mvvm.SourceGenerators.shproj | 13 - .../Extensions/ISymbolExtensions.cs | 4 +- .../GeneratorAttributeSyntaxContext.cs | 2 +- .../SyntaxValueProviderExtensions.cs | 2 +- .../CommunityToolkit.Mvvm.csproj | 8 +- src/Directory.Build.props | 2 + src/Directory.Build.targets | 5 +- ...ropertyChanging.Roslyn40.UnitTests.csproj} | 2 +- ...PropertyChanging.Roslyn43.UnitTests.csproj | 18 + ...kit.Mvvm.ExternalAssembly.Roslyn40.csproj} | 4 +- ...kit.Mvvm.ExternalAssembly.Roslyn43.csproj} | 6 +- ...ityToolkit.Mvvm.ExternalAssembly.projitems | 16 - ...munityToolkit.Mvvm.ExternalAssembly.shproj | 13 - ...ourceGenerators.Roslyn40.UnitTests.csproj} | 6 +- ...ourceGenerators.Roslyn43.UnitTests.csproj} | 4 +- ....Mvvm.SourceGenerators.UnitTests.projitems | 15 - ...kit.Mvvm.SourceGenerators.UnitTests.shproj | 13 - ...ityToolkit.Mvvm.Roslyn40.UnitTests.csproj} | 6 +- ...ityToolkit.Mvvm.Roslyn43.UnitTests.csproj} | 6 +- .../CommunityToolkit.Mvvm.UnitTests.projitems | 43 -- .../CommunityToolkit.Mvvm.UnitTests.shproj | 13 - 33 files changed, 344 insertions(+), 669 deletions(-) create mode 100644 Directory.Build.rsp create mode 100644 eng/Toolkit.CompilerTargeting.props create mode 100644 eng/Toolkit.CompilerTargeting.targets delete mode 100644 src/CommunityToolkit.Mvvm.SourceGenerators.Roslyn401/CommunityToolkit.Mvvm.SourceGenerators.Roslyn401.csproj delete mode 100644 src/CommunityToolkit.Mvvm.SourceGenerators.Roslyn431/CommunityToolkit.Mvvm.SourceGenerators.Roslyn431.csproj create mode 100644 src/CommunityToolkit.Mvvm.SourceGenerators/CommunityToolkit.Mvvm.SourceGenerators.Roslyn40.csproj create mode 100644 src/CommunityToolkit.Mvvm.SourceGenerators/CommunityToolkit.Mvvm.SourceGenerators.Roslyn43.csproj delete mode 100644 src/CommunityToolkit.Mvvm.SourceGenerators/CommunityToolkit.Mvvm.SourceGenerators.projitems delete mode 100644 src/CommunityToolkit.Mvvm.SourceGenerators/CommunityToolkit.Mvvm.SourceGenerators.props delete mode 100644 src/CommunityToolkit.Mvvm.SourceGenerators/CommunityToolkit.Mvvm.SourceGenerators.shproj rename tests/CommunityToolkit.Mvvm.DisableINotifyPropertyChanging.UnitTests/{CommunityToolkit.Mvvm.DisableINotifyPropertyChanging.UnitTests.csproj => CommunityToolkit.Mvvm.DisableINotifyPropertyChanging.Roslyn40.UnitTests.csproj} (76%) create mode 100644 tests/CommunityToolkit.Mvvm.DisableINotifyPropertyChanging.UnitTests/CommunityToolkit.Mvvm.DisableINotifyPropertyChanging.Roslyn43.UnitTests.csproj rename tests/{CommunityToolkit.Mvvm.ExternalAssembly.Roslyn401/CommunityToolkit.Mvvm.ExternalAssembly.Roslyn401.csproj => CommunityToolkit.Mvvm.ExternalAssembly/CommunityToolkit.Mvvm.ExternalAssembly.Roslyn40.csproj} (67%) rename tests/{CommunityToolkit.Mvvm.ExternalAssembly.Roslyn431/CommunityToolkit.Mvvm.ExternalAssembly.Roslyn431.csproj => CommunityToolkit.Mvvm.ExternalAssembly/CommunityToolkit.Mvvm.ExternalAssembly.Roslyn43.csproj} (59%) delete mode 100644 tests/CommunityToolkit.Mvvm.ExternalAssembly/CommunityToolkit.Mvvm.ExternalAssembly.projitems delete mode 100644 tests/CommunityToolkit.Mvvm.ExternalAssembly/CommunityToolkit.Mvvm.ExternalAssembly.shproj rename tests/{CommunityToolkit.Mvvm.SourceGenerators.Roslyn401.UnitTests/CommunityToolkit.Mvvm.SourceGenerators.Roslyn401.UnitTests.csproj => CommunityToolkit.Mvvm.SourceGenerators.UnitTests/CommunityToolkit.Mvvm.SourceGenerators.Roslyn40.UnitTests.csproj} (73%) rename tests/{CommunityToolkit.Mvvm.SourceGenerators.Roslyn431.UnitTests/CommunityToolkit.Mvvm.SourceGenerators.Roslyn431.UnitTests.csproj => CommunityToolkit.Mvvm.SourceGenerators.UnitTests/CommunityToolkit.Mvvm.SourceGenerators.Roslyn43.UnitTests.csproj} (76%) delete mode 100644 tests/CommunityToolkit.Mvvm.SourceGenerators.UnitTests/CommunityToolkit.Mvvm.SourceGenerators.UnitTests.projitems delete mode 100644 tests/CommunityToolkit.Mvvm.SourceGenerators.UnitTests/CommunityToolkit.Mvvm.SourceGenerators.UnitTests.shproj rename tests/{CommunityToolkit.Mvvm.Roslyn401.UnitTests/CommunityToolkit.Mvvm.Roslyn401.UnitTests.csproj => CommunityToolkit.Mvvm.UnitTests/CommunityToolkit.Mvvm.Roslyn40.UnitTests.csproj} (71%) rename tests/{CommunityToolkit.Mvvm.Roslyn431.UnitTests/CommunityToolkit.Mvvm.Roslyn431.UnitTests.csproj => CommunityToolkit.Mvvm.UnitTests/CommunityToolkit.Mvvm.Roslyn43.UnitTests.csproj} (71%) delete mode 100644 tests/CommunityToolkit.Mvvm.UnitTests/CommunityToolkit.Mvvm.UnitTests.projitems delete mode 100644 tests/CommunityToolkit.Mvvm.UnitTests/CommunityToolkit.Mvvm.UnitTests.shproj diff --git a/CommunityToolkit.sln b/CommunityToolkit.sln index 55b638287..bf3bbb9a4 100644 --- a/CommunityToolkit.sln +++ b/CommunityToolkit.sln @@ -1,12 +1,8 @@ Microsoft Visual Studio Solution File, Format Version 12.00 # Visual Studio Version 17 -VisualStudioVersion = 17.0.31815.197 -MinimumVisualStudioVersion = 10.0.40219.1 -Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Tests", "Tests", "{B30036C4-D514-4E5B-A323-587A061772CE}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "CommunityToolkit.Common", "src\CommunityToolkit.Common\CommunityToolkit.Common.csproj", "{6FE128A8-CEFA-4A61-A987-EC92DE6B538E}" -EndProject -Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{CFA75BE0-5A44-45DE-8114-426A605B062B}" +VisualStudioVersion = 17.0 +MinimumVisualStudioVersion = 15.0 +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Root", "Root", "{CFA75BE0-5A44-45DE-8114-426A605B062B}" ProjectSection(SolutionItems) = preProject .editorconfig = .editorconfig .gitattributes = .gitattributes @@ -14,15 +10,20 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution .runsettings = .runsettings azure-pipelines.yml = azure-pipelines.yml Directory.Build.props = Directory.Build.props + Directory.Build.rsp = Directory.Build.rsp Directory.Build.targets = Directory.Build.targets version.json = version.json EndProjectSection EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "CommunityToolkit.Mvvm", "src\CommunityToolkit.Mvvm\CommunityToolkit.Mvvm.csproj", "{D82AE6E1-E612-434E-ACB2-363EE48738D3}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "CommunityToolkit.HighPerformance", "src\CommunityToolkit.HighPerformance\CommunityToolkit.HighPerformance.csproj", "{7E30D48C-4CD8-47BE-B557-10A20391DCC4}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "CommunityToolkit.HighPerformance.UnitTests", "tests\CommunityToolkit.HighPerformance.UnitTests\CommunityToolkit.HighPerformance.UnitTests.csproj", "{D9BDBC68-3D0A-47FC-9C88-0BF769101644}" +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Build", "Build", "{CD16E790-7B7B-411E-9CE7-768E759CC22D}" + ProjectSection(SolutionItems) = preProject + eng\Sign-Package.ps1 = eng\Sign-Package.ps1 + eng\SignClientSettings.json = eng\SignClientSettings.json + eng\Toolkit.Common.props = eng\Toolkit.Common.props + eng\Toolkit.Common.targets = eng\Toolkit.Common.targets + eng\Toolkit.CompilerTargeting.props = eng\Toolkit.CompilerTargeting.props + eng\Toolkit.CompilerTargeting.targets = eng\Toolkit.CompilerTargeting.targets + EndProjectSection EndProject Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Docs", "Docs", "{88C6FFBE-322D-4CEA-842B-B2CB281D357D}" ProjectSection(SolutionItems) = preProject @@ -33,442 +34,161 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Docs", "Docs", "{88C6FFBE-3 ThirdPartyNotices.txt = ThirdPartyNotices.txt EndProjectSection EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Sources", "Sources", "{9C3C9461-25D3-437B-B942-AF449AAA3E94}" + ProjectSection(SolutionItems) = preProject + src\Directory.Build.props = src\Directory.Build.props + src\Directory.Build.targets = src\Directory.Build.targets + EndProjectSection +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "CommunityToolkit.Common", "src\CommunityToolkit.Common\CommunityToolkit.Common.csproj", "{6FE128A8-CEFA-4A61-A987-EC92DE6B538E}" +EndProject Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "CommunityToolkit.Diagnostics", "src\CommunityToolkit.Diagnostics\CommunityToolkit.Diagnostics.csproj", "{76F89522-CA28-458D-801D-947AB033A758}" EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "CommunityToolkit.Mvvm.SourceGenerators.Roslyn401", "src\CommunityToolkit.Mvvm.SourceGenerators.Roslyn401\CommunityToolkit.Mvvm.SourceGenerators.Roslyn401.csproj", "{E24D1146-5AD8-498F-A518-4890D8BF4937}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "CommunityToolkit.HighPerformance", "src\CommunityToolkit.HighPerformance\CommunityToolkit.HighPerformance.csproj", "{7E30D48C-4CD8-47BE-B557-10A20391DCC4}" EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "CommunityToolkit.Diagnostics.UnitTests", "tests\CommunityToolkit.Diagnostics.UnitTests\CommunityToolkit.Diagnostics.UnitTests.csproj", "{35E48D4D-6433-4B70-98A9-BA544921EE04}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "CommunityToolkit.Mvvm", "src\CommunityToolkit.Mvvm\CommunityToolkit.Mvvm.csproj", "{D82AE6E1-E612-434E-ACB2-363EE48738D3}" EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "CommunityToolkit.Common.UnitTests", "tests\CommunityToolkit.Common.UnitTests\CommunityToolkit.Common.UnitTests.csproj", "{17522D0B-CA70-40B6-AFD8-8B8D45E75D92}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "CommunityToolkit.Mvvm.SourceGenerators.Roslyn40", "src\CommunityToolkit.Mvvm.SourceGenerators\CommunityToolkit.Mvvm.SourceGenerators.Roslyn40.csproj", "{E24D1146-5AD8-498F-A518-4890D8BF4937}" EndProject -Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Build", "Build", "{CD16E790-7B7B-411E-9CE7-768E759CC22D}" - ProjectSection(SolutionItems) = preProject - eng\Toolkit.Common.props = eng\Toolkit.Common.props - eng\Toolkit.Common.targets = eng\Toolkit.Common.targets - eng\Sign-Package.ps1 = eng\Sign-Package.ps1 - eng\SignClientSettings.json = eng\SignClientSettings.json - EndProjectSection +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "CommunityToolkit.Mvvm.SourceGenerators.Roslyn43", "src\CommunityToolkit.Mvvm.SourceGenerators\CommunityToolkit.Mvvm.SourceGenerators.Roslyn43.csproj", "{DF455C40-B18E-4890-8758-7CCCB5CA7052}" EndProject -Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Configuration", "Configuration", "{6640D447-C28D-4DBB-91F4-3ADCE0CA64AD}" +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Tests", "Tests", "{B30036C4-D514-4E5B-A323-587A061772CE}" EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "CommunityToolkit.Mvvm.DisableINotifyPropertyChanging.UnitTests", "tests\CommunityToolkit.Mvvm.DisableINotifyPropertyChanging.UnitTests\CommunityToolkit.Mvvm.DisableINotifyPropertyChanging.UnitTests.csproj", "{9E09DA49-4389-4ECE-8B68-EBDB1221DA90}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "CommunityToolkit.Common.UnitTests", "tests\CommunityToolkit.Common.UnitTests\CommunityToolkit.Common.UnitTests.csproj", "{17522D0B-CA70-40B6-AFD8-8B8D45E75D92}" EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "CommunityToolkit.Mvvm.Internals.UnitTests", "tests\CommunityToolkit.Mvvm.Internals.UnitTests\CommunityToolkit.Mvvm.Internals.UnitTests.csproj", "{743D74BA-12AE-4639-AD77-B9DDA9C03255}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "CommunityToolkit.Diagnostics.UnitTests", "tests\CommunityToolkit.Diagnostics.UnitTests\CommunityToolkit.Diagnostics.UnitTests.csproj", "{35E48D4D-6433-4B70-98A9-BA544921EE04}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "CommunityToolkit.HighPerformance.UnitTests", "tests\CommunityToolkit.HighPerformance.UnitTests\CommunityToolkit.HighPerformance.UnitTests.csproj", "{D9BDBC68-3D0A-47FC-9C88-0BF769101644}" EndProject -Project("{D954291E-2A0B-460D-934E-DC6B0785DB48}") = "CommunityToolkit.Mvvm.SourceGenerators", "src\CommunityToolkit.Mvvm.SourceGenerators\CommunityToolkit.Mvvm.SourceGenerators.shproj", "{5E7F1212-A54B-40CA-98C5-1FF5CD1A1638}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "CommunityToolkit.Mvvm.Internals.UnitTests", "tests\CommunityToolkit.Mvvm.Internals.UnitTests\CommunityToolkit.Mvvm.Internals.UnitTests.csproj", "{743D74BA-12AE-4639-AD77-B9DDA9C03255}" EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "CommunityToolkit.Mvvm.SourceGenerators.Roslyn431", "src\CommunityToolkit.Mvvm.SourceGenerators.Roslyn431\CommunityToolkit.Mvvm.SourceGenerators.Roslyn431.csproj", "{DF455C40-B18E-4890-8758-7CCCB5CA7052}" +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Targeting Roslyn 4.0", "Targeting Roslyn 4.0", "{6640D447-C28D-4DBB-91F4-3ADCE0CA64AD}" EndProject -Project("{D954291E-2A0B-460D-934E-DC6B0785DB48}") = "CommunityToolkit.Mvvm.UnitTests", "tests\CommunityToolkit.Mvvm.UnitTests\CommunityToolkit.Mvvm.UnitTests.shproj", "{B8DCD82E-B53B-4249-AD4E-F9B99ACB9334}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "CommunityToolkit.Mvvm.Roslyn40.UnitTests", "tests\CommunityToolkit.Mvvm.UnitTests\CommunityToolkit.Mvvm.Roslyn40.UnitTests.csproj", "{AD9C3223-8E37-4FD4-A0D4-A45119551D3A}" EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "CommunityToolkit.Mvvm.Roslyn401.UnitTests", "tests\CommunityToolkit.Mvvm.Roslyn401.UnitTests\CommunityToolkit.Mvvm.Roslyn401.UnitTests.csproj", "{AD9C3223-8E37-4FD4-A0D4-A45119551D3A}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "CommunityToolkit.Mvvm.SourceGenerators.Roslyn40.UnitTests", "tests\CommunityToolkit.Mvvm.SourceGenerators.UnitTests\CommunityToolkit.Mvvm.SourceGenerators.Roslyn40.UnitTests.csproj", "{F3799252-7A66-4533-89D8-B3C312052D95}" EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "CommunityToolkit.Mvvm.Roslyn431.UnitTests", "tests\CommunityToolkit.Mvvm.Roslyn431.UnitTests\CommunityToolkit.Mvvm.Roslyn431.UnitTests.csproj", "{5B44F7F1-DCA2-4776-924E-A266F7BBF753}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "CommunityToolkit.Mvvm.DisableINotifyPropertyChanging.Roslyn40.UnitTests", "tests\CommunityToolkit.Mvvm.DisableINotifyPropertyChanging.UnitTests\CommunityToolkit.Mvvm.DisableINotifyPropertyChanging.Roslyn40.UnitTests.csproj", "{9E09DA49-4389-4ECE-8B68-EBDB1221DA90}" EndProject -Project("{D954291E-2A0B-460D-934E-DC6B0785DB48}") = "CommunityToolkit.Mvvm.SourceGenerators.UnitTests", "tests\CommunityToolkit.Mvvm.SourceGenerators.UnitTests\CommunityToolkit.Mvvm.SourceGenerators.UnitTests.shproj", "{FB59CE88-7732-4A63-B5BD-AC5681B7DA1A}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "CommunityToolkit.Mvvm.ExternalAssembly.Roslyn40", "tests\CommunityToolkit.Mvvm.ExternalAssembly\CommunityToolkit.Mvvm.ExternalAssembly.Roslyn40.csproj", "{ECFE93AA-4B98-4292-B3FA-9430D513B4F9}" EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "CommunityToolkit.Mvvm.SourceGenerators.Roslyn401.UnitTests", "tests\CommunityToolkit.Mvvm.SourceGenerators.Roslyn401.UnitTests\CommunityToolkit.Mvvm.SourceGenerators.Roslyn401.UnitTests.csproj", "{F3799252-7A66-4533-89D8-B3C312052D95}" +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Targeting Roslyn 4.3", "Targeting Roslyn 4.3", "{DD607B22-936D-4AA0-BD21-BC4A12653D79}" EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "CommunityToolkit.Mvvm.SourceGenerators.Roslyn431.UnitTests", "tests\CommunityToolkit.Mvvm.SourceGenerators.Roslyn431.UnitTests\CommunityToolkit.Mvvm.SourceGenerators.Roslyn431.UnitTests.csproj", "{FE3EA695-EA0F-4E5F-9257-E059AAA23B10}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "CommunityToolkit.Mvvm.Roslyn43.UnitTests", "tests\CommunityToolkit.Mvvm.UnitTests\CommunityToolkit.Mvvm.Roslyn43.UnitTests.csproj", "{5B44F7F1-DCA2-4776-924E-A266F7BBF753}" EndProject -Project("{D954291E-2A0B-460D-934E-DC6B0785DB48}") = "CommunityToolkit.Mvvm.ExternalAssembly", "tests\CommunityToolkit.Mvvm.ExternalAssembly\CommunityToolkit.Mvvm.ExternalAssembly.shproj", "{E827A9CD-405F-43E4-84C7-68CC7E845CDC}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "CommunityToolkit.Mvvm.SourceGenerators.Roslyn43.UnitTests", "tests\CommunityToolkit.Mvvm.SourceGenerators.UnitTests\CommunityToolkit.Mvvm.SourceGenerators.Roslyn43.UnitTests.csproj", "{FE3EA695-EA0F-4E5F-9257-E059AAA23B10}" EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "CommunityToolkit.Mvvm.ExternalAssembly.Roslyn401", "tests\CommunityToolkit.Mvvm.ExternalAssembly.Roslyn401\CommunityToolkit.Mvvm.ExternalAssembly.Roslyn401.csproj", "{ECFE93AA-4B98-4292-B3FA-9430D513B4F9}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "CommunityToolkit.Mvvm.DisableINotifyPropertyChanging.Roslyn43.UnitTests", "tests\CommunityToolkit.Mvvm.DisableINotifyPropertyChanging.UnitTests\CommunityToolkit.Mvvm.DisableINotifyPropertyChanging.Roslyn43.UnitTests.csproj", "{C0F1421F-5375-459F-9CFB-9D851EF8AF58}" EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "CommunityToolkit.Mvvm.ExternalAssembly.Roslyn431", "tests\CommunityToolkit.Mvvm.ExternalAssembly.Roslyn431\CommunityToolkit.Mvvm.ExternalAssembly.Roslyn431.csproj", "{4FCD501C-1BB5-465C-AD19-356DAB6600C6}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "CommunityToolkit.Mvvm.ExternalAssembly.Roslyn43", "tests\CommunityToolkit.Mvvm.ExternalAssembly\CommunityToolkit.Mvvm.ExternalAssembly.Roslyn43.csproj", "{4FCD501C-1BB5-465C-AD19-356DAB6600C6}" EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU - Debug|ARM = Debug|ARM - Debug|ARM64 = Debug|ARM64 - Debug|x64 = Debug|x64 - Debug|x86 = Debug|x86 Release|Any CPU = Release|Any CPU - Release|ARM = Release|ARM - Release|ARM64 = Release|ARM64 - Release|x64 = Release|x64 - Release|x86 = Release|x86 EndGlobalSection GlobalSection(ProjectConfigurationPlatforms) = postSolution {6FE128A8-CEFA-4A61-A987-EC92DE6B538E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {6FE128A8-CEFA-4A61-A987-EC92DE6B538E}.Debug|Any CPU.Build.0 = Debug|Any CPU - {6FE128A8-CEFA-4A61-A987-EC92DE6B538E}.Debug|ARM.ActiveCfg = Debug|Any CPU - {6FE128A8-CEFA-4A61-A987-EC92DE6B538E}.Debug|ARM.Build.0 = Debug|Any CPU - {6FE128A8-CEFA-4A61-A987-EC92DE6B538E}.Debug|ARM64.ActiveCfg = Debug|Any CPU - {6FE128A8-CEFA-4A61-A987-EC92DE6B538E}.Debug|ARM64.Build.0 = Debug|Any CPU - {6FE128A8-CEFA-4A61-A987-EC92DE6B538E}.Debug|x64.ActiveCfg = Debug|Any CPU - {6FE128A8-CEFA-4A61-A987-EC92DE6B538E}.Debug|x64.Build.0 = Debug|Any CPU - {6FE128A8-CEFA-4A61-A987-EC92DE6B538E}.Debug|x86.ActiveCfg = Debug|Any CPU - {6FE128A8-CEFA-4A61-A987-EC92DE6B538E}.Debug|x86.Build.0 = Debug|Any CPU {6FE128A8-CEFA-4A61-A987-EC92DE6B538E}.Release|Any CPU.ActiveCfg = Release|Any CPU {6FE128A8-CEFA-4A61-A987-EC92DE6B538E}.Release|Any CPU.Build.0 = Release|Any CPU - {6FE128A8-CEFA-4A61-A987-EC92DE6B538E}.Release|ARM.ActiveCfg = Release|Any CPU - {6FE128A8-CEFA-4A61-A987-EC92DE6B538E}.Release|ARM.Build.0 = Release|Any CPU - {6FE128A8-CEFA-4A61-A987-EC92DE6B538E}.Release|ARM64.ActiveCfg = Release|Any CPU - {6FE128A8-CEFA-4A61-A987-EC92DE6B538E}.Release|ARM64.Build.0 = Release|Any CPU - {6FE128A8-CEFA-4A61-A987-EC92DE6B538E}.Release|x64.ActiveCfg = Release|Any CPU - {6FE128A8-CEFA-4A61-A987-EC92DE6B538E}.Release|x64.Build.0 = Release|Any CPU - {6FE128A8-CEFA-4A61-A987-EC92DE6B538E}.Release|x86.ActiveCfg = Release|Any CPU - {6FE128A8-CEFA-4A61-A987-EC92DE6B538E}.Release|x86.Build.0 = Release|Any CPU - {D82AE6E1-E612-434E-ACB2-363EE48738D3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {D82AE6E1-E612-434E-ACB2-363EE48738D3}.Debug|Any CPU.Build.0 = Debug|Any CPU - {D82AE6E1-E612-434E-ACB2-363EE48738D3}.Debug|ARM.ActiveCfg = Debug|Any CPU - {D82AE6E1-E612-434E-ACB2-363EE48738D3}.Debug|ARM.Build.0 = Debug|Any CPU - {D82AE6E1-E612-434E-ACB2-363EE48738D3}.Debug|ARM64.ActiveCfg = Debug|Any CPU - {D82AE6E1-E612-434E-ACB2-363EE48738D3}.Debug|ARM64.Build.0 = Debug|Any CPU - {D82AE6E1-E612-434E-ACB2-363EE48738D3}.Debug|x64.ActiveCfg = Debug|Any CPU - {D82AE6E1-E612-434E-ACB2-363EE48738D3}.Debug|x64.Build.0 = Debug|Any CPU - {D82AE6E1-E612-434E-ACB2-363EE48738D3}.Debug|x86.ActiveCfg = Debug|Any CPU - {D82AE6E1-E612-434E-ACB2-363EE48738D3}.Debug|x86.Build.0 = Debug|Any CPU - {D82AE6E1-E612-434E-ACB2-363EE48738D3}.Release|Any CPU.ActiveCfg = Release|Any CPU - {D82AE6E1-E612-434E-ACB2-363EE48738D3}.Release|Any CPU.Build.0 = Release|Any CPU - {D82AE6E1-E612-434E-ACB2-363EE48738D3}.Release|ARM.ActiveCfg = Release|Any CPU - {D82AE6E1-E612-434E-ACB2-363EE48738D3}.Release|ARM.Build.0 = Release|Any CPU - {D82AE6E1-E612-434E-ACB2-363EE48738D3}.Release|ARM64.ActiveCfg = Release|Any CPU - {D82AE6E1-E612-434E-ACB2-363EE48738D3}.Release|ARM64.Build.0 = Release|Any CPU - {D82AE6E1-E612-434E-ACB2-363EE48738D3}.Release|x64.ActiveCfg = Release|Any CPU - {D82AE6E1-E612-434E-ACB2-363EE48738D3}.Release|x64.Build.0 = Release|Any CPU - {D82AE6E1-E612-434E-ACB2-363EE48738D3}.Release|x86.ActiveCfg = Release|Any CPU - {D82AE6E1-E612-434E-ACB2-363EE48738D3}.Release|x86.Build.0 = Release|Any CPU - {7E30D48C-4CD8-47BE-B557-10A20391DCC4}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {7E30D48C-4CD8-47BE-B557-10A20391DCC4}.Debug|Any CPU.Build.0 = Debug|Any CPU - {7E30D48C-4CD8-47BE-B557-10A20391DCC4}.Debug|ARM.ActiveCfg = Debug|Any CPU - {7E30D48C-4CD8-47BE-B557-10A20391DCC4}.Debug|ARM.Build.0 = Debug|Any CPU - {7E30D48C-4CD8-47BE-B557-10A20391DCC4}.Debug|ARM64.ActiveCfg = Debug|Any CPU - {7E30D48C-4CD8-47BE-B557-10A20391DCC4}.Debug|ARM64.Build.0 = Debug|Any CPU - {7E30D48C-4CD8-47BE-B557-10A20391DCC4}.Debug|x64.ActiveCfg = Debug|Any CPU - {7E30D48C-4CD8-47BE-B557-10A20391DCC4}.Debug|x64.Build.0 = Debug|Any CPU - {7E30D48C-4CD8-47BE-B557-10A20391DCC4}.Debug|x86.ActiveCfg = Debug|Any CPU - {7E30D48C-4CD8-47BE-B557-10A20391DCC4}.Debug|x86.Build.0 = Debug|Any CPU - {7E30D48C-4CD8-47BE-B557-10A20391DCC4}.Release|Any CPU.ActiveCfg = Release|Any CPU - {7E30D48C-4CD8-47BE-B557-10A20391DCC4}.Release|Any CPU.Build.0 = Release|Any CPU - {7E30D48C-4CD8-47BE-B557-10A20391DCC4}.Release|ARM.ActiveCfg = Release|Any CPU - {7E30D48C-4CD8-47BE-B557-10A20391DCC4}.Release|ARM.Build.0 = Release|Any CPU - {7E30D48C-4CD8-47BE-B557-10A20391DCC4}.Release|ARM64.ActiveCfg = Release|Any CPU - {7E30D48C-4CD8-47BE-B557-10A20391DCC4}.Release|ARM64.Build.0 = Release|Any CPU - {7E30D48C-4CD8-47BE-B557-10A20391DCC4}.Release|x64.ActiveCfg = Release|Any CPU - {7E30D48C-4CD8-47BE-B557-10A20391DCC4}.Release|x64.Build.0 = Release|Any CPU - {7E30D48C-4CD8-47BE-B557-10A20391DCC4}.Release|x86.ActiveCfg = Release|Any CPU - {7E30D48C-4CD8-47BE-B557-10A20391DCC4}.Release|x86.Build.0 = Release|Any CPU - {D9BDBC68-3D0A-47FC-9C88-0BF769101644}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {D9BDBC68-3D0A-47FC-9C88-0BF769101644}.Debug|Any CPU.Build.0 = Debug|Any CPU - {D9BDBC68-3D0A-47FC-9C88-0BF769101644}.Debug|ARM.ActiveCfg = Debug|Any CPU - {D9BDBC68-3D0A-47FC-9C88-0BF769101644}.Debug|ARM.Build.0 = Debug|Any CPU - {D9BDBC68-3D0A-47FC-9C88-0BF769101644}.Debug|ARM64.ActiveCfg = Debug|Any CPU - {D9BDBC68-3D0A-47FC-9C88-0BF769101644}.Debug|ARM64.Build.0 = Debug|Any CPU - {D9BDBC68-3D0A-47FC-9C88-0BF769101644}.Debug|x64.ActiveCfg = Debug|Any CPU - {D9BDBC68-3D0A-47FC-9C88-0BF769101644}.Debug|x64.Build.0 = Debug|Any CPU - {D9BDBC68-3D0A-47FC-9C88-0BF769101644}.Debug|x86.ActiveCfg = Debug|Any CPU - {D9BDBC68-3D0A-47FC-9C88-0BF769101644}.Debug|x86.Build.0 = Debug|Any CPU - {D9BDBC68-3D0A-47FC-9C88-0BF769101644}.Release|Any CPU.ActiveCfg = Release|Any CPU - {D9BDBC68-3D0A-47FC-9C88-0BF769101644}.Release|Any CPU.Build.0 = Release|Any CPU - {D9BDBC68-3D0A-47FC-9C88-0BF769101644}.Release|ARM.ActiveCfg = Release|Any CPU - {D9BDBC68-3D0A-47FC-9C88-0BF769101644}.Release|ARM.Build.0 = Release|Any CPU - {D9BDBC68-3D0A-47FC-9C88-0BF769101644}.Release|ARM64.ActiveCfg = Release|Any CPU - {D9BDBC68-3D0A-47FC-9C88-0BF769101644}.Release|ARM64.Build.0 = Release|Any CPU - {D9BDBC68-3D0A-47FC-9C88-0BF769101644}.Release|x64.ActiveCfg = Release|Any CPU - {D9BDBC68-3D0A-47FC-9C88-0BF769101644}.Release|x64.Build.0 = Release|Any CPU - {D9BDBC68-3D0A-47FC-9C88-0BF769101644}.Release|x86.ActiveCfg = Release|Any CPU - {D9BDBC68-3D0A-47FC-9C88-0BF769101644}.Release|x86.Build.0 = Release|Any CPU {76F89522-CA28-458D-801D-947AB033A758}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {76F89522-CA28-458D-801D-947AB033A758}.Debug|Any CPU.Build.0 = Debug|Any CPU - {76F89522-CA28-458D-801D-947AB033A758}.Debug|ARM.ActiveCfg = Debug|Any CPU - {76F89522-CA28-458D-801D-947AB033A758}.Debug|ARM.Build.0 = Debug|Any CPU - {76F89522-CA28-458D-801D-947AB033A758}.Debug|ARM64.ActiveCfg = Debug|Any CPU - {76F89522-CA28-458D-801D-947AB033A758}.Debug|ARM64.Build.0 = Debug|Any CPU - {76F89522-CA28-458D-801D-947AB033A758}.Debug|x64.ActiveCfg = Debug|Any CPU - {76F89522-CA28-458D-801D-947AB033A758}.Debug|x64.Build.0 = Debug|Any CPU - {76F89522-CA28-458D-801D-947AB033A758}.Debug|x86.ActiveCfg = Debug|Any CPU - {76F89522-CA28-458D-801D-947AB033A758}.Debug|x86.Build.0 = Debug|Any CPU {76F89522-CA28-458D-801D-947AB033A758}.Release|Any CPU.ActiveCfg = Release|Any CPU {76F89522-CA28-458D-801D-947AB033A758}.Release|Any CPU.Build.0 = Release|Any CPU - {76F89522-CA28-458D-801D-947AB033A758}.Release|ARM.ActiveCfg = Release|Any CPU - {76F89522-CA28-458D-801D-947AB033A758}.Release|ARM.Build.0 = Release|Any CPU - {76F89522-CA28-458D-801D-947AB033A758}.Release|ARM64.ActiveCfg = Release|Any CPU - {76F89522-CA28-458D-801D-947AB033A758}.Release|ARM64.Build.0 = Release|Any CPU - {76F89522-CA28-458D-801D-947AB033A758}.Release|x64.ActiveCfg = Release|Any CPU - {76F89522-CA28-458D-801D-947AB033A758}.Release|x64.Build.0 = Release|Any CPU - {76F89522-CA28-458D-801D-947AB033A758}.Release|x86.ActiveCfg = Release|Any CPU - {76F89522-CA28-458D-801D-947AB033A758}.Release|x86.Build.0 = Release|Any CPU + {7E30D48C-4CD8-47BE-B557-10A20391DCC4}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {7E30D48C-4CD8-47BE-B557-10A20391DCC4}.Debug|Any CPU.Build.0 = Debug|Any CPU + {7E30D48C-4CD8-47BE-B557-10A20391DCC4}.Release|Any CPU.ActiveCfg = Release|Any CPU + {7E30D48C-4CD8-47BE-B557-10A20391DCC4}.Release|Any CPU.Build.0 = Release|Any CPU + {D82AE6E1-E612-434E-ACB2-363EE48738D3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {D82AE6E1-E612-434E-ACB2-363EE48738D3}.Debug|Any CPU.Build.0 = Debug|Any CPU + {D82AE6E1-E612-434E-ACB2-363EE48738D3}.Release|Any CPU.ActiveCfg = Release|Any CPU + {D82AE6E1-E612-434E-ACB2-363EE48738D3}.Release|Any CPU.Build.0 = Release|Any CPU {E24D1146-5AD8-498F-A518-4890D8BF4937}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {E24D1146-5AD8-498F-A518-4890D8BF4937}.Debug|Any CPU.Build.0 = Debug|Any CPU - {E24D1146-5AD8-498F-A518-4890D8BF4937}.Debug|ARM.ActiveCfg = Debug|Any CPU - {E24D1146-5AD8-498F-A518-4890D8BF4937}.Debug|ARM.Build.0 = Debug|Any CPU - {E24D1146-5AD8-498F-A518-4890D8BF4937}.Debug|ARM64.ActiveCfg = Debug|Any CPU - {E24D1146-5AD8-498F-A518-4890D8BF4937}.Debug|ARM64.Build.0 = Debug|Any CPU - {E24D1146-5AD8-498F-A518-4890D8BF4937}.Debug|x64.ActiveCfg = Debug|Any CPU - {E24D1146-5AD8-498F-A518-4890D8BF4937}.Debug|x64.Build.0 = Debug|Any CPU - {E24D1146-5AD8-498F-A518-4890D8BF4937}.Debug|x86.ActiveCfg = Debug|Any CPU - {E24D1146-5AD8-498F-A518-4890D8BF4937}.Debug|x86.Build.0 = Debug|Any CPU {E24D1146-5AD8-498F-A518-4890D8BF4937}.Release|Any CPU.ActiveCfg = Release|Any CPU {E24D1146-5AD8-498F-A518-4890D8BF4937}.Release|Any CPU.Build.0 = Release|Any CPU - {E24D1146-5AD8-498F-A518-4890D8BF4937}.Release|ARM.ActiveCfg = Release|Any CPU - {E24D1146-5AD8-498F-A518-4890D8BF4937}.Release|ARM.Build.0 = Release|Any CPU - {E24D1146-5AD8-498F-A518-4890D8BF4937}.Release|ARM64.ActiveCfg = Release|Any CPU - {E24D1146-5AD8-498F-A518-4890D8BF4937}.Release|ARM64.Build.0 = Release|Any CPU - {E24D1146-5AD8-498F-A518-4890D8BF4937}.Release|x64.ActiveCfg = Release|Any CPU - {E24D1146-5AD8-498F-A518-4890D8BF4937}.Release|x64.Build.0 = Release|Any CPU - {E24D1146-5AD8-498F-A518-4890D8BF4937}.Release|x86.ActiveCfg = Release|Any CPU - {E24D1146-5AD8-498F-A518-4890D8BF4937}.Release|x86.Build.0 = Release|Any CPU - {35E48D4D-6433-4B70-98A9-BA544921EE04}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {35E48D4D-6433-4B70-98A9-BA544921EE04}.Debug|Any CPU.Build.0 = Debug|Any CPU - {35E48D4D-6433-4B70-98A9-BA544921EE04}.Debug|ARM.ActiveCfg = Debug|Any CPU - {35E48D4D-6433-4B70-98A9-BA544921EE04}.Debug|ARM.Build.0 = Debug|Any CPU - {35E48D4D-6433-4B70-98A9-BA544921EE04}.Debug|ARM64.ActiveCfg = Debug|Any CPU - {35E48D4D-6433-4B70-98A9-BA544921EE04}.Debug|ARM64.Build.0 = Debug|Any CPU - {35E48D4D-6433-4B70-98A9-BA544921EE04}.Debug|x64.ActiveCfg = Debug|Any CPU - {35E48D4D-6433-4B70-98A9-BA544921EE04}.Debug|x64.Build.0 = Debug|Any CPU - {35E48D4D-6433-4B70-98A9-BA544921EE04}.Debug|x86.ActiveCfg = Debug|Any CPU - {35E48D4D-6433-4B70-98A9-BA544921EE04}.Debug|x86.Build.0 = Debug|Any CPU - {35E48D4D-6433-4B70-98A9-BA544921EE04}.Release|Any CPU.ActiveCfg = Release|Any CPU - {35E48D4D-6433-4B70-98A9-BA544921EE04}.Release|Any CPU.Build.0 = Release|Any CPU - {35E48D4D-6433-4B70-98A9-BA544921EE04}.Release|ARM.ActiveCfg = Release|Any CPU - {35E48D4D-6433-4B70-98A9-BA544921EE04}.Release|ARM.Build.0 = Release|Any CPU - {35E48D4D-6433-4B70-98A9-BA544921EE04}.Release|ARM64.ActiveCfg = Release|Any CPU - {35E48D4D-6433-4B70-98A9-BA544921EE04}.Release|ARM64.Build.0 = Release|Any CPU - {35E48D4D-6433-4B70-98A9-BA544921EE04}.Release|x64.ActiveCfg = Release|Any CPU - {35E48D4D-6433-4B70-98A9-BA544921EE04}.Release|x64.Build.0 = Release|Any CPU - {35E48D4D-6433-4B70-98A9-BA544921EE04}.Release|x86.ActiveCfg = Release|Any CPU - {35E48D4D-6433-4B70-98A9-BA544921EE04}.Release|x86.Build.0 = Release|Any CPU + {DF455C40-B18E-4890-8758-7CCCB5CA7052}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {DF455C40-B18E-4890-8758-7CCCB5CA7052}.Debug|Any CPU.Build.0 = Debug|Any CPU + {DF455C40-B18E-4890-8758-7CCCB5CA7052}.Release|Any CPU.ActiveCfg = Release|Any CPU + {DF455C40-B18E-4890-8758-7CCCB5CA7052}.Release|Any CPU.Build.0 = Release|Any CPU {17522D0B-CA70-40B6-AFD8-8B8D45E75D92}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {17522D0B-CA70-40B6-AFD8-8B8D45E75D92}.Debug|Any CPU.Build.0 = Debug|Any CPU - {17522D0B-CA70-40B6-AFD8-8B8D45E75D92}.Debug|ARM.ActiveCfg = Debug|Any CPU - {17522D0B-CA70-40B6-AFD8-8B8D45E75D92}.Debug|ARM.Build.0 = Debug|Any CPU - {17522D0B-CA70-40B6-AFD8-8B8D45E75D92}.Debug|ARM64.ActiveCfg = Debug|Any CPU - {17522D0B-CA70-40B6-AFD8-8B8D45E75D92}.Debug|ARM64.Build.0 = Debug|Any CPU - {17522D0B-CA70-40B6-AFD8-8B8D45E75D92}.Debug|x64.ActiveCfg = Debug|Any CPU - {17522D0B-CA70-40B6-AFD8-8B8D45E75D92}.Debug|x64.Build.0 = Debug|Any CPU - {17522D0B-CA70-40B6-AFD8-8B8D45E75D92}.Debug|x86.ActiveCfg = Debug|Any CPU - {17522D0B-CA70-40B6-AFD8-8B8D45E75D92}.Debug|x86.Build.0 = Debug|Any CPU {17522D0B-CA70-40B6-AFD8-8B8D45E75D92}.Release|Any CPU.ActiveCfg = Release|Any CPU {17522D0B-CA70-40B6-AFD8-8B8D45E75D92}.Release|Any CPU.Build.0 = Release|Any CPU - {17522D0B-CA70-40B6-AFD8-8B8D45E75D92}.Release|ARM.ActiveCfg = Release|Any CPU - {17522D0B-CA70-40B6-AFD8-8B8D45E75D92}.Release|ARM.Build.0 = Release|Any CPU - {17522D0B-CA70-40B6-AFD8-8B8D45E75D92}.Release|ARM64.ActiveCfg = Release|Any CPU - {17522D0B-CA70-40B6-AFD8-8B8D45E75D92}.Release|ARM64.Build.0 = Release|Any CPU - {17522D0B-CA70-40B6-AFD8-8B8D45E75D92}.Release|x64.ActiveCfg = Release|Any CPU - {17522D0B-CA70-40B6-AFD8-8B8D45E75D92}.Release|x64.Build.0 = Release|Any CPU - {17522D0B-CA70-40B6-AFD8-8B8D45E75D92}.Release|x86.ActiveCfg = Release|Any CPU - {17522D0B-CA70-40B6-AFD8-8B8D45E75D92}.Release|x86.Build.0 = Release|Any CPU - {9E09DA49-4389-4ECE-8B68-EBDB1221DA90}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {9E09DA49-4389-4ECE-8B68-EBDB1221DA90}.Debug|Any CPU.Build.0 = Debug|Any CPU - {9E09DA49-4389-4ECE-8B68-EBDB1221DA90}.Debug|ARM.ActiveCfg = Debug|Any CPU - {9E09DA49-4389-4ECE-8B68-EBDB1221DA90}.Debug|ARM.Build.0 = Debug|Any CPU - {9E09DA49-4389-4ECE-8B68-EBDB1221DA90}.Debug|ARM64.ActiveCfg = Debug|Any CPU - {9E09DA49-4389-4ECE-8B68-EBDB1221DA90}.Debug|ARM64.Build.0 = Debug|Any CPU - {9E09DA49-4389-4ECE-8B68-EBDB1221DA90}.Debug|x64.ActiveCfg = Debug|Any CPU - {9E09DA49-4389-4ECE-8B68-EBDB1221DA90}.Debug|x64.Build.0 = Debug|Any CPU - {9E09DA49-4389-4ECE-8B68-EBDB1221DA90}.Debug|x86.ActiveCfg = Debug|Any CPU - {9E09DA49-4389-4ECE-8B68-EBDB1221DA90}.Debug|x86.Build.0 = Debug|Any CPU - {9E09DA49-4389-4ECE-8B68-EBDB1221DA90}.Release|Any CPU.ActiveCfg = Release|Any CPU - {9E09DA49-4389-4ECE-8B68-EBDB1221DA90}.Release|Any CPU.Build.0 = Release|Any CPU - {9E09DA49-4389-4ECE-8B68-EBDB1221DA90}.Release|ARM.ActiveCfg = Release|Any CPU - {9E09DA49-4389-4ECE-8B68-EBDB1221DA90}.Release|ARM.Build.0 = Release|Any CPU - {9E09DA49-4389-4ECE-8B68-EBDB1221DA90}.Release|ARM64.ActiveCfg = Release|Any CPU - {9E09DA49-4389-4ECE-8B68-EBDB1221DA90}.Release|ARM64.Build.0 = Release|Any CPU - {9E09DA49-4389-4ECE-8B68-EBDB1221DA90}.Release|x64.ActiveCfg = Release|Any CPU - {9E09DA49-4389-4ECE-8B68-EBDB1221DA90}.Release|x64.Build.0 = Release|Any CPU - {9E09DA49-4389-4ECE-8B68-EBDB1221DA90}.Release|x86.ActiveCfg = Release|Any CPU - {9E09DA49-4389-4ECE-8B68-EBDB1221DA90}.Release|x86.Build.0 = Release|Any CPU + {35E48D4D-6433-4B70-98A9-BA544921EE04}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {35E48D4D-6433-4B70-98A9-BA544921EE04}.Debug|Any CPU.Build.0 = Debug|Any CPU + {35E48D4D-6433-4B70-98A9-BA544921EE04}.Release|Any CPU.ActiveCfg = Release|Any CPU + {35E48D4D-6433-4B70-98A9-BA544921EE04}.Release|Any CPU.Build.0 = Release|Any CPU + {D9BDBC68-3D0A-47FC-9C88-0BF769101644}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {D9BDBC68-3D0A-47FC-9C88-0BF769101644}.Debug|Any CPU.Build.0 = Debug|Any CPU + {D9BDBC68-3D0A-47FC-9C88-0BF769101644}.Release|Any CPU.ActiveCfg = Release|Any CPU + {D9BDBC68-3D0A-47FC-9C88-0BF769101644}.Release|Any CPU.Build.0 = Release|Any CPU {743D74BA-12AE-4639-AD77-B9DDA9C03255}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {743D74BA-12AE-4639-AD77-B9DDA9C03255}.Debug|Any CPU.Build.0 = Debug|Any CPU - {743D74BA-12AE-4639-AD77-B9DDA9C03255}.Debug|ARM.ActiveCfg = Debug|Any CPU - {743D74BA-12AE-4639-AD77-B9DDA9C03255}.Debug|ARM.Build.0 = Debug|Any CPU - {743D74BA-12AE-4639-AD77-B9DDA9C03255}.Debug|ARM64.ActiveCfg = Debug|Any CPU - {743D74BA-12AE-4639-AD77-B9DDA9C03255}.Debug|ARM64.Build.0 = Debug|Any CPU - {743D74BA-12AE-4639-AD77-B9DDA9C03255}.Debug|x64.ActiveCfg = Debug|Any CPU - {743D74BA-12AE-4639-AD77-B9DDA9C03255}.Debug|x64.Build.0 = Debug|Any CPU - {743D74BA-12AE-4639-AD77-B9DDA9C03255}.Debug|x86.ActiveCfg = Debug|Any CPU - {743D74BA-12AE-4639-AD77-B9DDA9C03255}.Debug|x86.Build.0 = Debug|Any CPU {743D74BA-12AE-4639-AD77-B9DDA9C03255}.Release|Any CPU.ActiveCfg = Release|Any CPU {743D74BA-12AE-4639-AD77-B9DDA9C03255}.Release|Any CPU.Build.0 = Release|Any CPU - {743D74BA-12AE-4639-AD77-B9DDA9C03255}.Release|ARM.ActiveCfg = Release|Any CPU - {743D74BA-12AE-4639-AD77-B9DDA9C03255}.Release|ARM.Build.0 = Release|Any CPU - {743D74BA-12AE-4639-AD77-B9DDA9C03255}.Release|ARM64.ActiveCfg = Release|Any CPU - {743D74BA-12AE-4639-AD77-B9DDA9C03255}.Release|ARM64.Build.0 = Release|Any CPU - {743D74BA-12AE-4639-AD77-B9DDA9C03255}.Release|x64.ActiveCfg = Release|Any CPU - {743D74BA-12AE-4639-AD77-B9DDA9C03255}.Release|x64.Build.0 = Release|Any CPU - {743D74BA-12AE-4639-AD77-B9DDA9C03255}.Release|x86.ActiveCfg = Release|Any CPU - {743D74BA-12AE-4639-AD77-B9DDA9C03255}.Release|x86.Build.0 = Release|Any CPU - {DF455C40-B18E-4890-8758-7CCCB5CA7052}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {DF455C40-B18E-4890-8758-7CCCB5CA7052}.Debug|Any CPU.Build.0 = Debug|Any CPU - {DF455C40-B18E-4890-8758-7CCCB5CA7052}.Debug|ARM.ActiveCfg = Debug|Any CPU - {DF455C40-B18E-4890-8758-7CCCB5CA7052}.Debug|ARM.Build.0 = Debug|Any CPU - {DF455C40-B18E-4890-8758-7CCCB5CA7052}.Debug|ARM64.ActiveCfg = Debug|Any CPU - {DF455C40-B18E-4890-8758-7CCCB5CA7052}.Debug|ARM64.Build.0 = Debug|Any CPU - {DF455C40-B18E-4890-8758-7CCCB5CA7052}.Debug|x64.ActiveCfg = Debug|Any CPU - {DF455C40-B18E-4890-8758-7CCCB5CA7052}.Debug|x64.Build.0 = Debug|Any CPU - {DF455C40-B18E-4890-8758-7CCCB5CA7052}.Debug|x86.ActiveCfg = Debug|Any CPU - {DF455C40-B18E-4890-8758-7CCCB5CA7052}.Debug|x86.Build.0 = Debug|Any CPU - {DF455C40-B18E-4890-8758-7CCCB5CA7052}.Release|Any CPU.ActiveCfg = Release|Any CPU - {DF455C40-B18E-4890-8758-7CCCB5CA7052}.Release|Any CPU.Build.0 = Release|Any CPU - {DF455C40-B18E-4890-8758-7CCCB5CA7052}.Release|ARM.ActiveCfg = Release|Any CPU - {DF455C40-B18E-4890-8758-7CCCB5CA7052}.Release|ARM.Build.0 = Release|Any CPU - {DF455C40-B18E-4890-8758-7CCCB5CA7052}.Release|ARM64.ActiveCfg = Release|Any CPU - {DF455C40-B18E-4890-8758-7CCCB5CA7052}.Release|ARM64.Build.0 = Release|Any CPU - {DF455C40-B18E-4890-8758-7CCCB5CA7052}.Release|x64.ActiveCfg = Release|Any CPU - {DF455C40-B18E-4890-8758-7CCCB5CA7052}.Release|x64.Build.0 = Release|Any CPU - {DF455C40-B18E-4890-8758-7CCCB5CA7052}.Release|x86.ActiveCfg = Release|Any CPU - {DF455C40-B18E-4890-8758-7CCCB5CA7052}.Release|x86.Build.0 = Release|Any CPU {AD9C3223-8E37-4FD4-A0D4-A45119551D3A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {AD9C3223-8E37-4FD4-A0D4-A45119551D3A}.Debug|Any CPU.Build.0 = Debug|Any CPU - {AD9C3223-8E37-4FD4-A0D4-A45119551D3A}.Debug|ARM.ActiveCfg = Debug|Any CPU - {AD9C3223-8E37-4FD4-A0D4-A45119551D3A}.Debug|ARM.Build.0 = Debug|Any CPU - {AD9C3223-8E37-4FD4-A0D4-A45119551D3A}.Debug|ARM64.ActiveCfg = Debug|Any CPU - {AD9C3223-8E37-4FD4-A0D4-A45119551D3A}.Debug|ARM64.Build.0 = Debug|Any CPU - {AD9C3223-8E37-4FD4-A0D4-A45119551D3A}.Debug|x64.ActiveCfg = Debug|Any CPU - {AD9C3223-8E37-4FD4-A0D4-A45119551D3A}.Debug|x64.Build.0 = Debug|Any CPU - {AD9C3223-8E37-4FD4-A0D4-A45119551D3A}.Debug|x86.ActiveCfg = Debug|Any CPU - {AD9C3223-8E37-4FD4-A0D4-A45119551D3A}.Debug|x86.Build.0 = Debug|Any CPU {AD9C3223-8E37-4FD4-A0D4-A45119551D3A}.Release|Any CPU.ActiveCfg = Release|Any CPU {AD9C3223-8E37-4FD4-A0D4-A45119551D3A}.Release|Any CPU.Build.0 = Release|Any CPU - {AD9C3223-8E37-4FD4-A0D4-A45119551D3A}.Release|ARM.ActiveCfg = Release|Any CPU - {AD9C3223-8E37-4FD4-A0D4-A45119551D3A}.Release|ARM.Build.0 = Release|Any CPU - {AD9C3223-8E37-4FD4-A0D4-A45119551D3A}.Release|ARM64.ActiveCfg = Release|Any CPU - {AD9C3223-8E37-4FD4-A0D4-A45119551D3A}.Release|ARM64.Build.0 = Release|Any CPU - {AD9C3223-8E37-4FD4-A0D4-A45119551D3A}.Release|x64.ActiveCfg = Release|Any CPU - {AD9C3223-8E37-4FD4-A0D4-A45119551D3A}.Release|x64.Build.0 = Release|Any CPU - {AD9C3223-8E37-4FD4-A0D4-A45119551D3A}.Release|x86.ActiveCfg = Release|Any CPU - {AD9C3223-8E37-4FD4-A0D4-A45119551D3A}.Release|x86.Build.0 = Release|Any CPU - {5B44F7F1-DCA2-4776-924E-A266F7BBF753}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {5B44F7F1-DCA2-4776-924E-A266F7BBF753}.Debug|Any CPU.Build.0 = Debug|Any CPU - {5B44F7F1-DCA2-4776-924E-A266F7BBF753}.Debug|ARM.ActiveCfg = Debug|Any CPU - {5B44F7F1-DCA2-4776-924E-A266F7BBF753}.Debug|ARM.Build.0 = Debug|Any CPU - {5B44F7F1-DCA2-4776-924E-A266F7BBF753}.Debug|ARM64.ActiveCfg = Debug|Any CPU - {5B44F7F1-DCA2-4776-924E-A266F7BBF753}.Debug|ARM64.Build.0 = Debug|Any CPU - {5B44F7F1-DCA2-4776-924E-A266F7BBF753}.Debug|x64.ActiveCfg = Debug|Any CPU - {5B44F7F1-DCA2-4776-924E-A266F7BBF753}.Debug|x64.Build.0 = Debug|Any CPU - {5B44F7F1-DCA2-4776-924E-A266F7BBF753}.Debug|x86.ActiveCfg = Debug|Any CPU - {5B44F7F1-DCA2-4776-924E-A266F7BBF753}.Debug|x86.Build.0 = Debug|Any CPU - {5B44F7F1-DCA2-4776-924E-A266F7BBF753}.Release|Any CPU.ActiveCfg = Release|Any CPU - {5B44F7F1-DCA2-4776-924E-A266F7BBF753}.Release|Any CPU.Build.0 = Release|Any CPU - {5B44F7F1-DCA2-4776-924E-A266F7BBF753}.Release|ARM.ActiveCfg = Release|Any CPU - {5B44F7F1-DCA2-4776-924E-A266F7BBF753}.Release|ARM.Build.0 = Release|Any CPU - {5B44F7F1-DCA2-4776-924E-A266F7BBF753}.Release|ARM64.ActiveCfg = Release|Any CPU - {5B44F7F1-DCA2-4776-924E-A266F7BBF753}.Release|ARM64.Build.0 = Release|Any CPU - {5B44F7F1-DCA2-4776-924E-A266F7BBF753}.Release|x64.ActiveCfg = Release|Any CPU - {5B44F7F1-DCA2-4776-924E-A266F7BBF753}.Release|x64.Build.0 = Release|Any CPU - {5B44F7F1-DCA2-4776-924E-A266F7BBF753}.Release|x86.ActiveCfg = Release|Any CPU - {5B44F7F1-DCA2-4776-924E-A266F7BBF753}.Release|x86.Build.0 = Release|Any CPU {F3799252-7A66-4533-89D8-B3C312052D95}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {F3799252-7A66-4533-89D8-B3C312052D95}.Debug|Any CPU.Build.0 = Debug|Any CPU - {F3799252-7A66-4533-89D8-B3C312052D95}.Debug|ARM.ActiveCfg = Debug|Any CPU - {F3799252-7A66-4533-89D8-B3C312052D95}.Debug|ARM.Build.0 = Debug|Any CPU - {F3799252-7A66-4533-89D8-B3C312052D95}.Debug|ARM64.ActiveCfg = Debug|Any CPU - {F3799252-7A66-4533-89D8-B3C312052D95}.Debug|ARM64.Build.0 = Debug|Any CPU - {F3799252-7A66-4533-89D8-B3C312052D95}.Debug|x64.ActiveCfg = Debug|Any CPU - {F3799252-7A66-4533-89D8-B3C312052D95}.Debug|x64.Build.0 = Debug|Any CPU - {F3799252-7A66-4533-89D8-B3C312052D95}.Debug|x86.ActiveCfg = Debug|Any CPU - {F3799252-7A66-4533-89D8-B3C312052D95}.Debug|x86.Build.0 = Debug|Any CPU {F3799252-7A66-4533-89D8-B3C312052D95}.Release|Any CPU.ActiveCfg = Release|Any CPU {F3799252-7A66-4533-89D8-B3C312052D95}.Release|Any CPU.Build.0 = Release|Any CPU - {F3799252-7A66-4533-89D8-B3C312052D95}.Release|ARM.ActiveCfg = Release|Any CPU - {F3799252-7A66-4533-89D8-B3C312052D95}.Release|ARM.Build.0 = Release|Any CPU - {F3799252-7A66-4533-89D8-B3C312052D95}.Release|ARM64.ActiveCfg = Release|Any CPU - {F3799252-7A66-4533-89D8-B3C312052D95}.Release|ARM64.Build.0 = Release|Any CPU - {F3799252-7A66-4533-89D8-B3C312052D95}.Release|x64.ActiveCfg = Release|Any CPU - {F3799252-7A66-4533-89D8-B3C312052D95}.Release|x64.Build.0 = Release|Any CPU - {F3799252-7A66-4533-89D8-B3C312052D95}.Release|x86.ActiveCfg = Release|Any CPU - {F3799252-7A66-4533-89D8-B3C312052D95}.Release|x86.Build.0 = Release|Any CPU - {FE3EA695-EA0F-4E5F-9257-E059AAA23B10}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {FE3EA695-EA0F-4E5F-9257-E059AAA23B10}.Debug|Any CPU.Build.0 = Debug|Any CPU - {FE3EA695-EA0F-4E5F-9257-E059AAA23B10}.Debug|ARM.ActiveCfg = Debug|Any CPU - {FE3EA695-EA0F-4E5F-9257-E059AAA23B10}.Debug|ARM.Build.0 = Debug|Any CPU - {FE3EA695-EA0F-4E5F-9257-E059AAA23B10}.Debug|ARM64.ActiveCfg = Debug|Any CPU - {FE3EA695-EA0F-4E5F-9257-E059AAA23B10}.Debug|ARM64.Build.0 = Debug|Any CPU - {FE3EA695-EA0F-4E5F-9257-E059AAA23B10}.Debug|x64.ActiveCfg = Debug|Any CPU - {FE3EA695-EA0F-4E5F-9257-E059AAA23B10}.Debug|x64.Build.0 = Debug|Any CPU - {FE3EA695-EA0F-4E5F-9257-E059AAA23B10}.Debug|x86.ActiveCfg = Debug|Any CPU - {FE3EA695-EA0F-4E5F-9257-E059AAA23B10}.Debug|x86.Build.0 = Debug|Any CPU - {FE3EA695-EA0F-4E5F-9257-E059AAA23B10}.Release|Any CPU.ActiveCfg = Release|Any CPU - {FE3EA695-EA0F-4E5F-9257-E059AAA23B10}.Release|Any CPU.Build.0 = Release|Any CPU - {FE3EA695-EA0F-4E5F-9257-E059AAA23B10}.Release|ARM.ActiveCfg = Release|Any CPU - {FE3EA695-EA0F-4E5F-9257-E059AAA23B10}.Release|ARM.Build.0 = Release|Any CPU - {FE3EA695-EA0F-4E5F-9257-E059AAA23B10}.Release|ARM64.ActiveCfg = Release|Any CPU - {FE3EA695-EA0F-4E5F-9257-E059AAA23B10}.Release|ARM64.Build.0 = Release|Any CPU - {FE3EA695-EA0F-4E5F-9257-E059AAA23B10}.Release|x64.ActiveCfg = Release|Any CPU - {FE3EA695-EA0F-4E5F-9257-E059AAA23B10}.Release|x64.Build.0 = Release|Any CPU - {FE3EA695-EA0F-4E5F-9257-E059AAA23B10}.Release|x86.ActiveCfg = Release|Any CPU - {FE3EA695-EA0F-4E5F-9257-E059AAA23B10}.Release|x86.Build.0 = Release|Any CPU + {9E09DA49-4389-4ECE-8B68-EBDB1221DA90}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {9E09DA49-4389-4ECE-8B68-EBDB1221DA90}.Debug|Any CPU.Build.0 = Debug|Any CPU + {9E09DA49-4389-4ECE-8B68-EBDB1221DA90}.Release|Any CPU.ActiveCfg = Release|Any CPU + {9E09DA49-4389-4ECE-8B68-EBDB1221DA90}.Release|Any CPU.Build.0 = Release|Any CPU {ECFE93AA-4B98-4292-B3FA-9430D513B4F9}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {ECFE93AA-4B98-4292-B3FA-9430D513B4F9}.Debug|Any CPU.Build.0 = Debug|Any CPU - {ECFE93AA-4B98-4292-B3FA-9430D513B4F9}.Debug|ARM.ActiveCfg = Debug|Any CPU - {ECFE93AA-4B98-4292-B3FA-9430D513B4F9}.Debug|ARM.Build.0 = Debug|Any CPU - {ECFE93AA-4B98-4292-B3FA-9430D513B4F9}.Debug|ARM64.ActiveCfg = Debug|Any CPU - {ECFE93AA-4B98-4292-B3FA-9430D513B4F9}.Debug|ARM64.Build.0 = Debug|Any CPU - {ECFE93AA-4B98-4292-B3FA-9430D513B4F9}.Debug|x64.ActiveCfg = Debug|Any CPU - {ECFE93AA-4B98-4292-B3FA-9430D513B4F9}.Debug|x64.Build.0 = Debug|Any CPU - {ECFE93AA-4B98-4292-B3FA-9430D513B4F9}.Debug|x86.ActiveCfg = Debug|Any CPU - {ECFE93AA-4B98-4292-B3FA-9430D513B4F9}.Debug|x86.Build.0 = Debug|Any CPU {ECFE93AA-4B98-4292-B3FA-9430D513B4F9}.Release|Any CPU.ActiveCfg = Release|Any CPU {ECFE93AA-4B98-4292-B3FA-9430D513B4F9}.Release|Any CPU.Build.0 = Release|Any CPU - {ECFE93AA-4B98-4292-B3FA-9430D513B4F9}.Release|ARM.ActiveCfg = Release|Any CPU - {ECFE93AA-4B98-4292-B3FA-9430D513B4F9}.Release|ARM.Build.0 = Release|Any CPU - {ECFE93AA-4B98-4292-B3FA-9430D513B4F9}.Release|ARM64.ActiveCfg = Release|Any CPU - {ECFE93AA-4B98-4292-B3FA-9430D513B4F9}.Release|ARM64.Build.0 = Release|Any CPU - {ECFE93AA-4B98-4292-B3FA-9430D513B4F9}.Release|x64.ActiveCfg = Release|Any CPU - {ECFE93AA-4B98-4292-B3FA-9430D513B4F9}.Release|x64.Build.0 = Release|Any CPU - {ECFE93AA-4B98-4292-B3FA-9430D513B4F9}.Release|x86.ActiveCfg = Release|Any CPU - {ECFE93AA-4B98-4292-B3FA-9430D513B4F9}.Release|x86.Build.0 = Release|Any CPU + {5B44F7F1-DCA2-4776-924E-A266F7BBF753}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {5B44F7F1-DCA2-4776-924E-A266F7BBF753}.Debug|Any CPU.Build.0 = Debug|Any CPU + {5B44F7F1-DCA2-4776-924E-A266F7BBF753}.Release|Any CPU.ActiveCfg = Release|Any CPU + {5B44F7F1-DCA2-4776-924E-A266F7BBF753}.Release|Any CPU.Build.0 = Release|Any CPU + {FE3EA695-EA0F-4E5F-9257-E059AAA23B10}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {FE3EA695-EA0F-4E5F-9257-E059AAA23B10}.Debug|Any CPU.Build.0 = Debug|Any CPU + {FE3EA695-EA0F-4E5F-9257-E059AAA23B10}.Release|Any CPU.ActiveCfg = Release|Any CPU + {FE3EA695-EA0F-4E5F-9257-E059AAA23B10}.Release|Any CPU.Build.0 = Release|Any CPU + {C0F1421F-5375-459F-9CFB-9D851EF8AF58}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {C0F1421F-5375-459F-9CFB-9D851EF8AF58}.Debug|Any CPU.Build.0 = Debug|Any CPU + {C0F1421F-5375-459F-9CFB-9D851EF8AF58}.Release|Any CPU.ActiveCfg = Release|Any CPU + {C0F1421F-5375-459F-9CFB-9D851EF8AF58}.Release|Any CPU.Build.0 = Release|Any CPU {4FCD501C-1BB5-465C-AD19-356DAB6600C6}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {4FCD501C-1BB5-465C-AD19-356DAB6600C6}.Debug|Any CPU.Build.0 = Debug|Any CPU - {4FCD501C-1BB5-465C-AD19-356DAB6600C6}.Debug|ARM.ActiveCfg = Debug|Any CPU - {4FCD501C-1BB5-465C-AD19-356DAB6600C6}.Debug|ARM.Build.0 = Debug|Any CPU - {4FCD501C-1BB5-465C-AD19-356DAB6600C6}.Debug|ARM64.ActiveCfg = Debug|Any CPU - {4FCD501C-1BB5-465C-AD19-356DAB6600C6}.Debug|ARM64.Build.0 = Debug|Any CPU - {4FCD501C-1BB5-465C-AD19-356DAB6600C6}.Debug|x64.ActiveCfg = Debug|Any CPU - {4FCD501C-1BB5-465C-AD19-356DAB6600C6}.Debug|x64.Build.0 = Debug|Any CPU - {4FCD501C-1BB5-465C-AD19-356DAB6600C6}.Debug|x86.ActiveCfg = Debug|Any CPU - {4FCD501C-1BB5-465C-AD19-356DAB6600C6}.Debug|x86.Build.0 = Debug|Any CPU {4FCD501C-1BB5-465C-AD19-356DAB6600C6}.Release|Any CPU.ActiveCfg = Release|Any CPU {4FCD501C-1BB5-465C-AD19-356DAB6600C6}.Release|Any CPU.Build.0 = Release|Any CPU - {4FCD501C-1BB5-465C-AD19-356DAB6600C6}.Release|ARM.ActiveCfg = Release|Any CPU - {4FCD501C-1BB5-465C-AD19-356DAB6600C6}.Release|ARM.Build.0 = Release|Any CPU - {4FCD501C-1BB5-465C-AD19-356DAB6600C6}.Release|ARM64.ActiveCfg = Release|Any CPU - {4FCD501C-1BB5-465C-AD19-356DAB6600C6}.Release|ARM64.Build.0 = Release|Any CPU - {4FCD501C-1BB5-465C-AD19-356DAB6600C6}.Release|x64.ActiveCfg = Release|Any CPU - {4FCD501C-1BB5-465C-AD19-356DAB6600C6}.Release|x64.Build.0 = Release|Any CPU - {4FCD501C-1BB5-465C-AD19-356DAB6600C6}.Release|x86.ActiveCfg = Release|Any CPU - {4FCD501C-1BB5-465C-AD19-356DAB6600C6}.Release|x86.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE EndGlobalSection GlobalSection(NestedProjects) = preSolution - {D9BDBC68-3D0A-47FC-9C88-0BF769101644} = {B30036C4-D514-4E5B-A323-587A061772CE} + {CD16E790-7B7B-411E-9CE7-768E759CC22D} = {CFA75BE0-5A44-45DE-8114-426A605B062B} {88C6FFBE-322D-4CEA-842B-B2CB281D357D} = {CFA75BE0-5A44-45DE-8114-426A605B062B} - {35E48D4D-6433-4B70-98A9-BA544921EE04} = {B30036C4-D514-4E5B-A323-587A061772CE} + {6FE128A8-CEFA-4A61-A987-EC92DE6B538E} = {9C3C9461-25D3-437B-B942-AF449AAA3E94} + {76F89522-CA28-458D-801D-947AB033A758} = {9C3C9461-25D3-437B-B942-AF449AAA3E94} + {7E30D48C-4CD8-47BE-B557-10A20391DCC4} = {9C3C9461-25D3-437B-B942-AF449AAA3E94} + {D82AE6E1-E612-434E-ACB2-363EE48738D3} = {9C3C9461-25D3-437B-B942-AF449AAA3E94} + {E24D1146-5AD8-498F-A518-4890D8BF4937} = {9C3C9461-25D3-437B-B942-AF449AAA3E94} + {DF455C40-B18E-4890-8758-7CCCB5CA7052} = {9C3C9461-25D3-437B-B942-AF449AAA3E94} {17522D0B-CA70-40B6-AFD8-8B8D45E75D92} = {B30036C4-D514-4E5B-A323-587A061772CE} - {CD16E790-7B7B-411E-9CE7-768E759CC22D} = {CFA75BE0-5A44-45DE-8114-426A605B062B} + {35E48D4D-6433-4B70-98A9-BA544921EE04} = {B30036C4-D514-4E5B-A323-587A061772CE} + {D9BDBC68-3D0A-47FC-9C88-0BF769101644} = {B30036C4-D514-4E5B-A323-587A061772CE} + {743D74BA-12AE-4639-AD77-B9DDA9C03255} = {B30036C4-D514-4E5B-A323-587A061772CE} {6640D447-C28D-4DBB-91F4-3ADCE0CA64AD} = {B30036C4-D514-4E5B-A323-587A061772CE} + {AD9C3223-8E37-4FD4-A0D4-A45119551D3A} = {6640D447-C28D-4DBB-91F4-3ADCE0CA64AD} + {F3799252-7A66-4533-89D8-B3C312052D95} = {6640D447-C28D-4DBB-91F4-3ADCE0CA64AD} {9E09DA49-4389-4ECE-8B68-EBDB1221DA90} = {6640D447-C28D-4DBB-91F4-3ADCE0CA64AD} - {743D74BA-12AE-4639-AD77-B9DDA9C03255} = {B30036C4-D514-4E5B-A323-587A061772CE} - {B8DCD82E-B53B-4249-AD4E-F9B99ACB9334} = {B30036C4-D514-4E5B-A323-587A061772CE} - {AD9C3223-8E37-4FD4-A0D4-A45119551D3A} = {B30036C4-D514-4E5B-A323-587A061772CE} - {5B44F7F1-DCA2-4776-924E-A266F7BBF753} = {B30036C4-D514-4E5B-A323-587A061772CE} - {FB59CE88-7732-4A63-B5BD-AC5681B7DA1A} = {B30036C4-D514-4E5B-A323-587A061772CE} - {F3799252-7A66-4533-89D8-B3C312052D95} = {B30036C4-D514-4E5B-A323-587A061772CE} - {FE3EA695-EA0F-4E5F-9257-E059AAA23B10} = {B30036C4-D514-4E5B-A323-587A061772CE} - {E827A9CD-405F-43E4-84C7-68CC7E845CDC} = {B30036C4-D514-4E5B-A323-587A061772CE} - {ECFE93AA-4B98-4292-B3FA-9430D513B4F9} = {B30036C4-D514-4E5B-A323-587A061772CE} - {4FCD501C-1BB5-465C-AD19-356DAB6600C6} = {B30036C4-D514-4E5B-A323-587A061772CE} + {ECFE93AA-4B98-4292-B3FA-9430D513B4F9} = {6640D447-C28D-4DBB-91F4-3ADCE0CA64AD} + {DD607B22-936D-4AA0-BD21-BC4A12653D79} = {B30036C4-D514-4E5B-A323-587A061772CE} + {5B44F7F1-DCA2-4776-924E-A266F7BBF753} = {DD607B22-936D-4AA0-BD21-BC4A12653D79} + {FE3EA695-EA0F-4E5F-9257-E059AAA23B10} = {DD607B22-936D-4AA0-BD21-BC4A12653D79} + {C0F1421F-5375-459F-9CFB-9D851EF8AF58} = {DD607B22-936D-4AA0-BD21-BC4A12653D79} + {4FCD501C-1BB5-465C-AD19-356DAB6600C6} = {DD607B22-936D-4AA0-BD21-BC4A12653D79} EndGlobalSection GlobalSection(ExtensibilityGlobals) = postSolution SolutionGuid = {5403B0C4-F244-4F73-A35C-FE664D0F4345} EndGlobalSection - GlobalSection(SharedMSBuildProjectFiles) = preSolution - tests\CommunityToolkit.Mvvm.ExternalAssembly\CommunityToolkit.Mvvm.ExternalAssembly.projitems*{4fcd501c-1bb5-465c-ad19-356dab6600c6}*SharedItemsImports = 5 - tests\CommunityToolkit.Mvvm.UnitTests\CommunityToolkit.Mvvm.UnitTests.projitems*{5b44f7f1-dca2-4776-924e-a266f7bbf753}*SharedItemsImports = 5 - src\CommunityToolkit.Mvvm.SourceGenerators\CommunityToolkit.Mvvm.SourceGenerators.projitems*{5e7f1212-a54b-40ca-98c5-1ff5cd1a1638}*SharedItemsImports = 13 - tests\CommunityToolkit.Mvvm.UnitTests\CommunityToolkit.Mvvm.UnitTests.projitems*{ad9c3223-8e37-4fd4-a0d4-a45119551d3a}*SharedItemsImports = 5 - tests\CommunityToolkit.Mvvm.UnitTests\CommunityToolkit.Mvvm.UnitTests.projitems*{b8dcd82e-b53b-4249-ad4e-f9b99acb9334}*SharedItemsImports = 13 - src\CommunityToolkit.Mvvm.SourceGenerators\CommunityToolkit.Mvvm.SourceGenerators.projitems*{df455c40-b18e-4890-8758-7cccb5ca7052}*SharedItemsImports = 5 - src\CommunityToolkit.Mvvm.SourceGenerators\CommunityToolkit.Mvvm.SourceGenerators.projitems*{e24d1146-5ad8-498f-a518-4890d8bf4937}*SharedItemsImports = 5 - tests\CommunityToolkit.Mvvm.ExternalAssembly\CommunityToolkit.Mvvm.ExternalAssembly.projitems*{e827a9cd-405f-43e4-84c7-68cc7e845cdc}*SharedItemsImports = 13 - tests\CommunityToolkit.Mvvm.ExternalAssembly\CommunityToolkit.Mvvm.ExternalAssembly.projitems*{ecfe93aa-4b98-4292-b3fa-9430d513b4f9}*SharedItemsImports = 5 - tests\CommunityToolkit.Mvvm.SourceGenerators.UnitTests\CommunityToolkit.Mvvm.SourceGenerators.UnitTests.projitems*{f3799252-7a66-4533-89d8-b3c312052d95}*SharedItemsImports = 5 - tests\CommunityToolkit.Mvvm.SourceGenerators.UnitTests\CommunityToolkit.Mvvm.SourceGenerators.UnitTests.projitems*{fb59ce88-7732-4a63-b5bd-ac5681b7da1a}*SharedItemsImports = 13 - tests\CommunityToolkit.Mvvm.SourceGenerators.UnitTests\CommunityToolkit.Mvvm.SourceGenerators.UnitTests.projitems*{fe3ea695-ea0f-4e5f-9257-e059aaa23b10}*SharedItemsImports = 5 - EndGlobalSection EndGlobal diff --git a/Directory.Build.rsp b/Directory.Build.rsp new file mode 100644 index 000000000..1dd5ed52c --- /dev/null +++ b/Directory.Build.rsp @@ -0,0 +1,5 @@ +-NoLogo +-MaxCPUCount +-NodeReuse:True +-Verbosity:Normal +-ConsoleLoggerParameters:ForceNoAlign \ No newline at end of file diff --git a/eng/Toolkit.Common.props b/eng/Toolkit.Common.props index 6456ab2d9..4ac649892 100644 --- a/eng/Toolkit.Common.props +++ b/eng/Toolkit.Common.props @@ -48,4 +48,15 @@ $(TF_BUILD) + + + True + Roslyn + + 4.0;4.1;4.2;4.3;4.4;4.5 + + + + + \ No newline at end of file diff --git a/eng/Toolkit.Common.targets b/eng/Toolkit.Common.targets index 0de2ec957..95f728e3f 100644 --- a/eng/Toolkit.Common.targets +++ b/eng/Toolkit.Common.targets @@ -17,4 +17,20 @@ + + + + + + $(DefineConstants);@(_ImplicitDefineConstant) + $(FinalDefineConstants),@(_ImplicitDefineConstant->'%(Identity)=-1', ',') + + + \ No newline at end of file diff --git a/eng/Toolkit.CompilerTargeting.props b/eng/Toolkit.CompilerTargeting.props new file mode 100644 index 000000000..9212201bc --- /dev/null +++ b/eng/Toolkit.CompilerTargeting.props @@ -0,0 +1,59 @@ + + + + + + + <_ShortCompilerIdentifier>$(TargetCompilerIdentifier.ToLowerInvariant()) + + + <_CompilerNameInProjectNameIndex>$(MSBuildProjectName.IndexOf($(TargetCompilerIdentifier))) + <_ShortCompilerVersion Condition="$(_CompilerNameInProjectNameIndex) != -1">$(MSBuildProjectName.Substring($([MSBuild]::Add($(_CompilerNameInProjectNameIndex), $(TargetCompilerIdentifier.Length))), 2)) + + + $(_ShortCompilerVersion[0]).$(_ShortCompilerVersion[1]) + + + 4.0 + + + $(_ShortCompilerIdentifier)$(TargetCompilerVersion) + + + + + $(MSBuildProjectName.Replace('.$(TargetCompilerIdentifier)$(_ShortCompilerVersion)', '')) + $(ProjectName) + $(ProjectName) + + + + + $([System.IO.Path]::Combine('obj', '$(TargetCompiler)')) + + + + + $(MSBuildThisFileDirectory)Toolkit.CompilerTargeting.targets + + + \ No newline at end of file diff --git a/eng/Toolkit.CompilerTargeting.targets b/eng/Toolkit.CompilerTargeting.targets new file mode 100644 index 000000000..3a1d95340 --- /dev/null +++ b/eng/Toolkit.CompilerTargeting.targets @@ -0,0 +1,63 @@ + + + + $([System.IO.Path]::Combine('$(BaseOutputPath)', 'TestResults')) + + + + + + + $(OutputPath.Replace('$(TargetFramework)', '$(TargetFramework)-$(TargetCompiler)')) + $(IntermediateOutputPath.Replace('$(TargetFramework)', '$(TargetFramework)-$(TargetCompiler)')) + $(DocumentationFile.Replace('$(TargetFramework)', '$(TargetFramework)-$(TargetCompiler)')) + $([System.IO.Path]::Combine('$(VSTestResultsDirectory)', '$(TargetCompiler)')) + $(PublishDir.Replace('$(TargetFramework)', '$(TargetFramework)-$(TargetCompiler)')) + + + + + + + <_ImplicitCompilerIdentifierDefine>$(TargetCompilerIdentifier.ToUpperInvariant()) + + <_EnableImplicitMultiVersionDefines Condition="'$(SupportedCompilerVersions)' != '' AND $(SupportedCompilerVersions.Contains(';'))" >true + + <_ImplicitCompilerVersionDefine Condition="'$(_ShortCompilerVersion)' != '' AND '$(_EnableImplicitMultiVersionDefines)' != 'true'">$(_ImplicitCompilerIdentifierDefine)_$(TargetCompilerVersion.Replace('.', '_')) + + + + + + <_ImplicitDefineConstant Include="$(_ImplicitCompilerIdentifierDefine)" /> + <_ImplicitDefineConstant Include="$(_ImplicitCompilerVersionDefine)" Condition="'$(_ImplicitCompilerVersionDefine)' != ''" /> + + <_SupportedCompilerVersion Include="$(SupportedCompilerVersions)" Condition="'$(_EnableImplicitMultiVersionDefines)' == 'true'" /> + + + + + + + + + + <_ImplicitCompilerVersionDefine Include="@(TargetCompilerVersion->Replace('.', '_')->'$(_ImplicitCompilerIdentifierDefine)_%(Identity)_OR_GREATER')" /> + <_ImplicitDefineConstant Include="@(_ImplicitCompilerVersionDefine)" /> + + + + \ No newline at end of file diff --git a/src/CommunityToolkit.Mvvm.SourceGenerators.Roslyn401/CommunityToolkit.Mvvm.SourceGenerators.Roslyn401.csproj b/src/CommunityToolkit.Mvvm.SourceGenerators.Roslyn401/CommunityToolkit.Mvvm.SourceGenerators.Roslyn401.csproj deleted file mode 100644 index d19620f52..000000000 --- a/src/CommunityToolkit.Mvvm.SourceGenerators.Roslyn401/CommunityToolkit.Mvvm.SourceGenerators.Roslyn401.csproj +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/src/CommunityToolkit.Mvvm.SourceGenerators.Roslyn431/CommunityToolkit.Mvvm.SourceGenerators.Roslyn431.csproj b/src/CommunityToolkit.Mvvm.SourceGenerators.Roslyn431/CommunityToolkit.Mvvm.SourceGenerators.Roslyn431.csproj deleted file mode 100644 index 3cea30b35..000000000 --- a/src/CommunityToolkit.Mvvm.SourceGenerators.Roslyn431/CommunityToolkit.Mvvm.SourceGenerators.Roslyn431.csproj +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - diff --git a/src/CommunityToolkit.Mvvm.SourceGenerators/CommunityToolkit.Mvvm.SourceGenerators.Roslyn40.csproj b/src/CommunityToolkit.Mvvm.SourceGenerators/CommunityToolkit.Mvvm.SourceGenerators.Roslyn40.csproj new file mode 100644 index 000000000..78fd2bbe8 --- /dev/null +++ b/src/CommunityToolkit.Mvvm.SourceGenerators/CommunityToolkit.Mvvm.SourceGenerators.Roslyn40.csproj @@ -0,0 +1,26 @@ + + + + false + netstandard2.0 + + + + + + PreserveNewest + + %(Filename)%(Extension) + + + + + + + + + + + + + \ No newline at end of file diff --git a/src/CommunityToolkit.Mvvm.SourceGenerators/CommunityToolkit.Mvvm.SourceGenerators.Roslyn43.csproj b/src/CommunityToolkit.Mvvm.SourceGenerators/CommunityToolkit.Mvvm.SourceGenerators.Roslyn43.csproj new file mode 100644 index 000000000..0c748da9a --- /dev/null +++ b/src/CommunityToolkit.Mvvm.SourceGenerators/CommunityToolkit.Mvvm.SourceGenerators.Roslyn43.csproj @@ -0,0 +1,26 @@ + + + + false + netstandard2.0 + + + + + + PreserveNewest + + %(Filename)%(Extension) + + + + + + + + + + + + + \ No newline at end of file diff --git a/src/CommunityToolkit.Mvvm.SourceGenerators/CommunityToolkit.Mvvm.SourceGenerators.projitems b/src/CommunityToolkit.Mvvm.SourceGenerators/CommunityToolkit.Mvvm.SourceGenerators.projitems deleted file mode 100644 index 405e84cfd..000000000 --- a/src/CommunityToolkit.Mvvm.SourceGenerators/CommunityToolkit.Mvvm.SourceGenerators.projitems +++ /dev/null @@ -1,86 +0,0 @@ - - - - $(MSBuildAllProjects);$(MSBuildThisFileFullPath) - true - 5e7f1212-a54b-40ca-98c5-1ff5cd1a1638 - - - CommunityToolkit.Mvvm.SourceGenerators - - - - PreserveNewest - INotifyPropertyChanged.cs - - - PreserveNewest - ObservableObject.cs - - - PreserveNewest - ObservableRecipient.cs - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/src/CommunityToolkit.Mvvm.SourceGenerators/CommunityToolkit.Mvvm.SourceGenerators.props b/src/CommunityToolkit.Mvvm.SourceGenerators/CommunityToolkit.Mvvm.SourceGenerators.props deleted file mode 100644 index c3130e015..000000000 --- a/src/CommunityToolkit.Mvvm.SourceGenerators/CommunityToolkit.Mvvm.SourceGenerators.props +++ /dev/null @@ -1,38 +0,0 @@ - - - - netstandard2.0 - false - - - - - - - $(MSBuildProjectName.Substring(0, $([MSBuild]::Subtract($(MSBuildProjectName.Length), 10)))) - - - $(MSBuildProjectName.Substring($([MSBuild]::Subtract($(MSBuildProjectName.Length), 3)), 1)) - $(MSBuildProjectName.Substring($([MSBuild]::Subtract($(MSBuildProjectName.Length), 2)), 1)) - $(MSBuildProjectName.Substring($([MSBuild]::Subtract($(MSBuildProjectName.Length), 1)), 1)) - $(MvvmToolkitSourceGeneratorRoslynMajorVersion).$(MvvmToolkitSourceGeneratorRoslynMinorVersion).$(MvvmToolkitSourceGeneratorRoslynPatchVersion) - - - $(DefineConstants);ROSLYN_4_3_1_OR_GREATER - - - - - - - \ No newline at end of file diff --git a/src/CommunityToolkit.Mvvm.SourceGenerators/CommunityToolkit.Mvvm.SourceGenerators.shproj b/src/CommunityToolkit.Mvvm.SourceGenerators/CommunityToolkit.Mvvm.SourceGenerators.shproj deleted file mode 100644 index a9dfb1cf5..000000000 --- a/src/CommunityToolkit.Mvvm.SourceGenerators/CommunityToolkit.Mvvm.SourceGenerators.shproj +++ /dev/null @@ -1,13 +0,0 @@ - - - - 5e7f1212-a54b-40ca-98c5-1ff5cd1a1638 - 14.0 - - - - - - - - diff --git a/src/CommunityToolkit.Mvvm.SourceGenerators/Extensions/ISymbolExtensions.cs b/src/CommunityToolkit.Mvvm.SourceGenerators/Extensions/ISymbolExtensions.cs index a54073fd1..3c870e57e 100644 --- a/src/CommunityToolkit.Mvvm.SourceGenerators/Extensions/ISymbolExtensions.cs +++ b/src/CommunityToolkit.Mvvm.SourceGenerators/Extensions/ISymbolExtensions.cs @@ -3,7 +3,7 @@ // See the LICENSE file in the project root for more information. using System.Collections.Immutable; -#if !ROSLYN_4_3_1_OR_GREATER +#if !ROSLYN_4_3_OR_GREATER using System.Diagnostics.CodeAnalysis; #endif using Microsoft.CodeAnalysis; @@ -67,7 +67,7 @@ public static bool HasAttributeWithFullyQualifiedMetadataName(this ISymbol symbo return false; } -#if !ROSLYN_4_3_1_OR_GREATER +#if !ROSLYN_4_3_OR_GREATER /// /// Tries to get an attribute with the specified fully qualified metadata name. /// diff --git a/src/CommunityToolkit.Mvvm.SourceGenerators/Polyfills/GeneratorAttributeSyntaxContext.cs b/src/CommunityToolkit.Mvvm.SourceGenerators/Polyfills/GeneratorAttributeSyntaxContext.cs index 0f75fdf40..16a19f571 100644 --- a/src/CommunityToolkit.Mvvm.SourceGenerators/Polyfills/GeneratorAttributeSyntaxContext.cs +++ b/src/CommunityToolkit.Mvvm.SourceGenerators/Polyfills/GeneratorAttributeSyntaxContext.cs @@ -2,7 +2,7 @@ // The .NET Foundation licenses this file to you under the MIT license. // See the LICENSE file in the project root for more information. -#if !ROSLYN_4_3_1_OR_GREATER +#if !ROSLYN_4_3_OR_GREATER using System.Collections.Immutable; diff --git a/src/CommunityToolkit.Mvvm.SourceGenerators/Polyfills/SyntaxValueProviderExtensions.cs b/src/CommunityToolkit.Mvvm.SourceGenerators/Polyfills/SyntaxValueProviderExtensions.cs index 44a949823..474da134e 100644 --- a/src/CommunityToolkit.Mvvm.SourceGenerators/Polyfills/SyntaxValueProviderExtensions.cs +++ b/src/CommunityToolkit.Mvvm.SourceGenerators/Polyfills/SyntaxValueProviderExtensions.cs @@ -2,7 +2,7 @@ // The .NET Foundation licenses this file to you under the MIT license. // See the LICENSE file in the project root for more information. -#if !ROSLYN_4_3_1_OR_GREATER +#if !ROSLYN_4_3_OR_GREATER using System.Threading; using System; diff --git a/src/CommunityToolkit.Mvvm/CommunityToolkit.Mvvm.csproj b/src/CommunityToolkit.Mvvm/CommunityToolkit.Mvvm.csproj index 43adfb763..55e1fae7d 100644 --- a/src/CommunityToolkit.Mvvm/CommunityToolkit.Mvvm.csproj +++ b/src/CommunityToolkit.Mvvm/CommunityToolkit.Mvvm.csproj @@ -36,8 +36,8 @@ - - + + @@ -74,8 +74,8 @@ Pack the source generator to the right package folders (each matching the target Roslyn version). Roslyn will automatically load the highest version compatible with Roslyn's version in the SDK. --> - - + + \ No newline at end of file diff --git a/src/Directory.Build.props b/src/Directory.Build.props index f3c2112ae..5d99804e5 100644 --- a/src/Directory.Build.props +++ b/src/Directory.Build.props @@ -1,4 +1,5 @@ + @@ -8,4 +9,5 @@ build; analyzers + \ No newline at end of file diff --git a/src/Directory.Build.targets b/src/Directory.Build.targets index 36dde4ce7..6b83bf1fd 100644 --- a/src/Directory.Build.targets +++ b/src/Directory.Build.targets @@ -1,9 +1,9 @@ - + - + NETSTANDARD2_1_OR_GREATER @@ -52,4 +52,5 @@ + \ No newline at end of file diff --git a/tests/CommunityToolkit.Mvvm.DisableINotifyPropertyChanging.UnitTests/CommunityToolkit.Mvvm.DisableINotifyPropertyChanging.UnitTests.csproj b/tests/CommunityToolkit.Mvvm.DisableINotifyPropertyChanging.UnitTests/CommunityToolkit.Mvvm.DisableINotifyPropertyChanging.Roslyn40.UnitTests.csproj similarity index 76% rename from tests/CommunityToolkit.Mvvm.DisableINotifyPropertyChanging.UnitTests/CommunityToolkit.Mvvm.DisableINotifyPropertyChanging.UnitTests.csproj rename to tests/CommunityToolkit.Mvvm.DisableINotifyPropertyChanging.UnitTests/CommunityToolkit.Mvvm.DisableINotifyPropertyChanging.Roslyn40.UnitTests.csproj index 4a949f099..f8b90340c 100644 --- a/tests/CommunityToolkit.Mvvm.DisableINotifyPropertyChanging.UnitTests/CommunityToolkit.Mvvm.DisableINotifyPropertyChanging.UnitTests.csproj +++ b/tests/CommunityToolkit.Mvvm.DisableINotifyPropertyChanging.UnitTests/CommunityToolkit.Mvvm.DisableINotifyPropertyChanging.Roslyn40.UnitTests.csproj @@ -12,7 +12,7 @@ - + \ No newline at end of file diff --git a/tests/CommunityToolkit.Mvvm.DisableINotifyPropertyChanging.UnitTests/CommunityToolkit.Mvvm.DisableINotifyPropertyChanging.Roslyn43.UnitTests.csproj b/tests/CommunityToolkit.Mvvm.DisableINotifyPropertyChanging.UnitTests/CommunityToolkit.Mvvm.DisableINotifyPropertyChanging.Roslyn43.UnitTests.csproj new file mode 100644 index 000000000..7f95d8779 --- /dev/null +++ b/tests/CommunityToolkit.Mvvm.DisableINotifyPropertyChanging.UnitTests/CommunityToolkit.Mvvm.DisableINotifyPropertyChanging.Roslyn43.UnitTests.csproj @@ -0,0 +1,18 @@ + + + + net472;net6.0;net7.0 + + + + + + + + + + + + + + \ No newline at end of file diff --git a/tests/CommunityToolkit.Mvvm.ExternalAssembly.Roslyn401/CommunityToolkit.Mvvm.ExternalAssembly.Roslyn401.csproj b/tests/CommunityToolkit.Mvvm.ExternalAssembly/CommunityToolkit.Mvvm.ExternalAssembly.Roslyn40.csproj similarity index 67% rename from tests/CommunityToolkit.Mvvm.ExternalAssembly.Roslyn401/CommunityToolkit.Mvvm.ExternalAssembly.Roslyn401.csproj rename to tests/CommunityToolkit.Mvvm.ExternalAssembly/CommunityToolkit.Mvvm.ExternalAssembly.Roslyn40.csproj index ee36d9f08..347c2e1da 100644 --- a/tests/CommunityToolkit.Mvvm.ExternalAssembly.Roslyn401/CommunityToolkit.Mvvm.ExternalAssembly.Roslyn401.csproj +++ b/tests/CommunityToolkit.Mvvm.ExternalAssembly/CommunityToolkit.Mvvm.ExternalAssembly.Roslyn40.csproj @@ -14,9 +14,7 @@ - + - - \ No newline at end of file diff --git a/tests/CommunityToolkit.Mvvm.ExternalAssembly.Roslyn431/CommunityToolkit.Mvvm.ExternalAssembly.Roslyn431.csproj b/tests/CommunityToolkit.Mvvm.ExternalAssembly/CommunityToolkit.Mvvm.ExternalAssembly.Roslyn43.csproj similarity index 59% rename from tests/CommunityToolkit.Mvvm.ExternalAssembly.Roslyn431/CommunityToolkit.Mvvm.ExternalAssembly.Roslyn431.csproj rename to tests/CommunityToolkit.Mvvm.ExternalAssembly/CommunityToolkit.Mvvm.ExternalAssembly.Roslyn43.csproj index 164e42e50..71e4b4afb 100644 --- a/tests/CommunityToolkit.Mvvm.ExternalAssembly.Roslyn431/CommunityToolkit.Mvvm.ExternalAssembly.Roslyn431.csproj +++ b/tests/CommunityToolkit.Mvvm.ExternalAssembly/CommunityToolkit.Mvvm.ExternalAssembly.Roslyn43.csproj @@ -4,6 +4,8 @@ netstandard2.0 + false false @@ -12,9 +14,7 @@ - + - - \ No newline at end of file diff --git a/tests/CommunityToolkit.Mvvm.ExternalAssembly/CommunityToolkit.Mvvm.ExternalAssembly.projitems b/tests/CommunityToolkit.Mvvm.ExternalAssembly/CommunityToolkit.Mvvm.ExternalAssembly.projitems deleted file mode 100644 index c4ecf6dc4..000000000 --- a/tests/CommunityToolkit.Mvvm.ExternalAssembly/CommunityToolkit.Mvvm.ExternalAssembly.projitems +++ /dev/null @@ -1,16 +0,0 @@ - - - - $(MSBuildAllProjects);$(MSBuildThisFileFullPath) - true - e827a9cd-405f-43e4-84c7-68cc7e845cdc - - - CommunityToolkit.Mvvm.ExternalAssembly - - - - - - - \ No newline at end of file diff --git a/tests/CommunityToolkit.Mvvm.ExternalAssembly/CommunityToolkit.Mvvm.ExternalAssembly.shproj b/tests/CommunityToolkit.Mvvm.ExternalAssembly/CommunityToolkit.Mvvm.ExternalAssembly.shproj deleted file mode 100644 index fd605fe42..000000000 --- a/tests/CommunityToolkit.Mvvm.ExternalAssembly/CommunityToolkit.Mvvm.ExternalAssembly.shproj +++ /dev/null @@ -1,13 +0,0 @@ - - - - e827a9cd-405f-43e4-84c7-68cc7e845cdc - 14.0 - - - - - - - - diff --git a/tests/CommunityToolkit.Mvvm.SourceGenerators.Roslyn401.UnitTests/CommunityToolkit.Mvvm.SourceGenerators.Roslyn401.UnitTests.csproj b/tests/CommunityToolkit.Mvvm.SourceGenerators.UnitTests/CommunityToolkit.Mvvm.SourceGenerators.Roslyn40.UnitTests.csproj similarity index 73% rename from tests/CommunityToolkit.Mvvm.SourceGenerators.Roslyn401.UnitTests/CommunityToolkit.Mvvm.SourceGenerators.Roslyn401.UnitTests.csproj rename to tests/CommunityToolkit.Mvvm.SourceGenerators.UnitTests/CommunityToolkit.Mvvm.SourceGenerators.Roslyn40.UnitTests.csproj index 8bfbf73a2..9f5ab2a53 100644 --- a/tests/CommunityToolkit.Mvvm.SourceGenerators.Roslyn401.UnitTests/CommunityToolkit.Mvvm.SourceGenerators.Roslyn401.UnitTests.csproj +++ b/tests/CommunityToolkit.Mvvm.SourceGenerators.UnitTests/CommunityToolkit.Mvvm.SourceGenerators.Roslyn40.UnitTests.csproj @@ -6,7 +6,7 @@ - + @@ -14,9 +14,7 @@ - + - - \ No newline at end of file diff --git a/tests/CommunityToolkit.Mvvm.SourceGenerators.Roslyn431.UnitTests/CommunityToolkit.Mvvm.SourceGenerators.Roslyn431.UnitTests.csproj b/tests/CommunityToolkit.Mvvm.SourceGenerators.UnitTests/CommunityToolkit.Mvvm.SourceGenerators.Roslyn43.UnitTests.csproj similarity index 76% rename from tests/CommunityToolkit.Mvvm.SourceGenerators.Roslyn431.UnitTests/CommunityToolkit.Mvvm.SourceGenerators.Roslyn431.UnitTests.csproj rename to tests/CommunityToolkit.Mvvm.SourceGenerators.UnitTests/CommunityToolkit.Mvvm.SourceGenerators.Roslyn43.UnitTests.csproj index f8974ac8f..6d981fc10 100644 --- a/tests/CommunityToolkit.Mvvm.SourceGenerators.Roslyn431.UnitTests/CommunityToolkit.Mvvm.SourceGenerators.Roslyn431.UnitTests.csproj +++ b/tests/CommunityToolkit.Mvvm.SourceGenerators.UnitTests/CommunityToolkit.Mvvm.SourceGenerators.Roslyn43.UnitTests.csproj @@ -14,9 +14,7 @@ - + - - \ No newline at end of file diff --git a/tests/CommunityToolkit.Mvvm.SourceGenerators.UnitTests/CommunityToolkit.Mvvm.SourceGenerators.UnitTests.projitems b/tests/CommunityToolkit.Mvvm.SourceGenerators.UnitTests/CommunityToolkit.Mvvm.SourceGenerators.UnitTests.projitems deleted file mode 100644 index ab60a1c18..000000000 --- a/tests/CommunityToolkit.Mvvm.SourceGenerators.UnitTests/CommunityToolkit.Mvvm.SourceGenerators.UnitTests.projitems +++ /dev/null @@ -1,15 +0,0 @@ - - - - $(MSBuildAllProjects);$(MSBuildThisFileFullPath) - true - fb59ce88-7732-4a63-b5bd-ac5681b7da1a - - - CommunityToolkit.Mvvm.SourceGenerators.UnitTests - - - - - - \ No newline at end of file diff --git a/tests/CommunityToolkit.Mvvm.SourceGenerators.UnitTests/CommunityToolkit.Mvvm.SourceGenerators.UnitTests.shproj b/tests/CommunityToolkit.Mvvm.SourceGenerators.UnitTests/CommunityToolkit.Mvvm.SourceGenerators.UnitTests.shproj deleted file mode 100644 index 5e904f534..000000000 --- a/tests/CommunityToolkit.Mvvm.SourceGenerators.UnitTests/CommunityToolkit.Mvvm.SourceGenerators.UnitTests.shproj +++ /dev/null @@ -1,13 +0,0 @@ - - - - fb59ce88-7732-4a63-b5bd-ac5681b7da1a - 14.0 - - - - - - - - diff --git a/tests/CommunityToolkit.Mvvm.Roslyn401.UnitTests/CommunityToolkit.Mvvm.Roslyn401.UnitTests.csproj b/tests/CommunityToolkit.Mvvm.UnitTests/CommunityToolkit.Mvvm.Roslyn40.UnitTests.csproj similarity index 71% rename from tests/CommunityToolkit.Mvvm.Roslyn401.UnitTests/CommunityToolkit.Mvvm.Roslyn401.UnitTests.csproj rename to tests/CommunityToolkit.Mvvm.UnitTests/CommunityToolkit.Mvvm.Roslyn40.UnitTests.csproj index b4e7b7bba..af3630ff0 100644 --- a/tests/CommunityToolkit.Mvvm.Roslyn401.UnitTests/CommunityToolkit.Mvvm.Roslyn401.UnitTests.csproj +++ b/tests/CommunityToolkit.Mvvm.UnitTests/CommunityToolkit.Mvvm.Roslyn40.UnitTests.csproj @@ -15,11 +15,9 @@ - + - + - - \ No newline at end of file diff --git a/tests/CommunityToolkit.Mvvm.Roslyn431.UnitTests/CommunityToolkit.Mvvm.Roslyn431.UnitTests.csproj b/tests/CommunityToolkit.Mvvm.UnitTests/CommunityToolkit.Mvvm.Roslyn43.UnitTests.csproj similarity index 71% rename from tests/CommunityToolkit.Mvvm.Roslyn431.UnitTests/CommunityToolkit.Mvvm.Roslyn431.UnitTests.csproj rename to tests/CommunityToolkit.Mvvm.UnitTests/CommunityToolkit.Mvvm.Roslyn43.UnitTests.csproj index f3dad9cb7..cb8ca4274 100644 --- a/tests/CommunityToolkit.Mvvm.Roslyn431.UnitTests/CommunityToolkit.Mvvm.Roslyn431.UnitTests.csproj +++ b/tests/CommunityToolkit.Mvvm.UnitTests/CommunityToolkit.Mvvm.Roslyn43.UnitTests.csproj @@ -15,11 +15,9 @@ - + - + - - \ No newline at end of file diff --git a/tests/CommunityToolkit.Mvvm.UnitTests/CommunityToolkit.Mvvm.UnitTests.projitems b/tests/CommunityToolkit.Mvvm.UnitTests/CommunityToolkit.Mvvm.UnitTests.projitems deleted file mode 100644 index 3089c9db3..000000000 --- a/tests/CommunityToolkit.Mvvm.UnitTests/CommunityToolkit.Mvvm.UnitTests.projitems +++ /dev/null @@ -1,43 +0,0 @@ - - - - $(MSBuildAllProjects);$(MSBuildThisFileFullPath) - true - b8dcd82e-b53b-4249-ad4e-f9b99acb9334 - - - CommunityToolkit.Mvvm.UnitTests - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/tests/CommunityToolkit.Mvvm.UnitTests/CommunityToolkit.Mvvm.UnitTests.shproj b/tests/CommunityToolkit.Mvvm.UnitTests/CommunityToolkit.Mvvm.UnitTests.shproj deleted file mode 100644 index b16b0e5e2..000000000 --- a/tests/CommunityToolkit.Mvvm.UnitTests/CommunityToolkit.Mvvm.UnitTests.shproj +++ /dev/null @@ -1,13 +0,0 @@ - - - - b8dcd82e-b53b-4249-ad4e-f9b99acb9334 - 14.0 - - - - - - - - From b16081e6cbae6fcbe50d33c06fb05b8ca11e05fd Mon Sep 17 00:00:00 2001 From: Nirmal Guru Date: Thu, 29 Jul 2021 09:06:50 +0530 Subject: [PATCH 03/13] Move MSBuild logic into new files - Move the T4 MSBuild logic to a new file. - Move Public Key to a new file 'toolkit.spk'. - Move MSBuild logic to near-by `Directory.Build.{props|targets}` files. --- CommunityToolkit.sln | 6 +++ Directory.Build.props | 17 ------- eng/Toolkit.Common.props | 25 ++-------- eng/Toolkit.Common.targets | 14 +++++- eng/Toolkit.TextTemplates.targets | 50 +++++++++++++++++++ eng/toolkit.spk | 1 + .../CommunityToolkit.Diagnostics.csproj | 47 +---------------- src/Directory.Build.props | 8 +++ .../CommunityToolkit.Common.UnitTests.csproj | 6 --- ...munityToolkit.Diagnostics.UnitTests.csproj | 6 --- ...tyToolkit.HighPerformance.UnitTests.csproj | 6 --- ...PropertyChanging.Roslyn40.UnitTests.csproj | 6 --- ...PropertyChanging.Roslyn43.UnitTests.csproj | 6 --- ...lkit.Mvvm.ExternalAssembly.Roslyn40.csproj | 8 --- ...lkit.Mvvm.ExternalAssembly.Roslyn43.csproj | 8 --- ...ityToolkit.Mvvm.Internals.UnitTests.csproj | 6 --- ...SourceGenerators.Roslyn40.UnitTests.csproj | 3 -- ...SourceGenerators.Roslyn43.UnitTests.csproj | 3 -- ...nityToolkit.Mvvm.Roslyn40.UnitTests.csproj | 3 -- ...nityToolkit.Mvvm.Roslyn43.UnitTests.csproj | 3 -- tests/Directory.Build.props | 16 ++++++ tests/Directory.Build.targets | 12 +++++ 22 files changed, 110 insertions(+), 150 deletions(-) create mode 100644 eng/Toolkit.TextTemplates.targets create mode 100644 eng/toolkit.spk create mode 100644 tests/Directory.Build.props create mode 100644 tests/Directory.Build.targets diff --git a/CommunityToolkit.sln b/CommunityToolkit.sln index bf3bbb9a4..4e59f868f 100644 --- a/CommunityToolkit.sln +++ b/CommunityToolkit.sln @@ -23,6 +23,8 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Build", "Build", "{CD16E790 eng\Toolkit.Common.targets = eng\Toolkit.Common.targets eng\Toolkit.CompilerTargeting.props = eng\Toolkit.CompilerTargeting.props eng\Toolkit.CompilerTargeting.targets = eng\Toolkit.CompilerTargeting.targets + eng\toolkit.spk = eng\toolkit.spk + eng\Toolkit.TextTemplates.targets = eng\Toolkit.TextTemplates.targets EndProjectSection EndProject Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Docs", "Docs", "{88C6FFBE-322D-4CEA-842B-B2CB281D357D}" @@ -53,6 +55,10 @@ EndProject Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "CommunityToolkit.Mvvm.SourceGenerators.Roslyn43", "src\CommunityToolkit.Mvvm.SourceGenerators\CommunityToolkit.Mvvm.SourceGenerators.Roslyn43.csproj", "{DF455C40-B18E-4890-8758-7CCCB5CA7052}" EndProject Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Tests", "Tests", "{B30036C4-D514-4E5B-A323-587A061772CE}" + ProjectSection(SolutionItems) = preProject + tests\Directory.Build.props = tests\Directory.Build.props + tests\Directory.Build.targets = tests\Directory.Build.targets + EndProjectSection EndProject Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "CommunityToolkit.Common.UnitTests", "tests\CommunityToolkit.Common.UnitTests\CommunityToolkit.Common.UnitTests.csproj", "{17522D0B-CA70-40B6-AFD8-8B8D45E75D92}" EndProject diff --git a/Directory.Build.props b/Directory.Build.props index 022a4a7aa..3896f9371 100644 --- a/Directory.Build.props +++ b/Directory.Build.props @@ -7,23 +7,6 @@ - - - - true - $(RepositoryDirectory)bin\nupkg - true - - - - - false - false - $(NoWarn);CS8002;SA0001 - - - - diff --git a/eng/Toolkit.Common.props b/eng/Toolkit.Common.props index 4ac649892..d11f9b0b6 100644 --- a/eng/Toolkit.Common.props +++ b/eng/Toolkit.Common.props @@ -1,18 +1,5 @@ - - Microsoft - Microsoft - .NET Community Toolkit - dotnet;Community;Toolkit - MIT - true - (c) .NET Foundation and Contributors. All rights reserved. - https://github.com/CommunityToolkit/dotnet - https://github.com/CommunityToolkit/dotnet/releases - Icon.png - - true @@ -33,19 +20,13 @@ true $(MSBuildThisFileDirectory)toolkit.snk - 002400000480000094000000060200000024000052534131000400000100010041753AF735AE6140C9508567666C51C6AB929806ADB0D210694B30AB142A060237BC741F9682E7D8D4310364B4BBA4EE89CC9D3D5CE7E5583587E8EA44DCA09977996582875E71FB54FA7B170798D853D5D8010B07219633BDB761D01AC924DA44576D6180CDCEAE537973982BB461C541541D58417A3794E34F45E6F2D129E2 - - - - $(MSBuildProjectName.Contains('Test')) - False - True + $(MSBuildThisFileDirectory)toolkit.spk + $([System.IO.File]::ReadAllText($(AssemblySignPublicKeyFile))) - true - true $(TF_BUILD) + $(ContinuousIntegrationBuild) diff --git a/eng/Toolkit.Common.targets b/eng/Toolkit.Common.targets index 95f728e3f..7ce087aae 100644 --- a/eng/Toolkit.Common.targets +++ b/eng/Toolkit.Common.targets @@ -1,12 +1,24 @@ + + Microsoft + Microsoft + .NET Community Toolkit + .NET;Community;Toolkit;dotnet + MIT + true + (c) .NET Foundation and Contributors. All rights reserved. + https://github.com/CommunityToolkit/dotnet + https://github.com/CommunityToolkit/dotnet/releases + Icon.png + + $(Product) Asset - $(CommonTags);.NET $(CommonTags);$(PackageTags) $(CommonTags) diff --git a/eng/Toolkit.TextTemplates.targets b/eng/Toolkit.TextTemplates.targets new file mode 100644 index 000000000..7c574924d --- /dev/null +++ b/eng/Toolkit.TextTemplates.targets @@ -0,0 +1,50 @@ + + + + + TextTemplatingFileGenerator + Guard.Comparable.Numeric.g.cs + + + TextTemplatingFileGenerator + Guard.Collection.g.cs + + + TextTemplatingFileGenerator + ThrowHelper.Collection.g.cs + + + TextTemplatingFileGenerator + TypeInfo.g.cs + + + + + + + + + + + True + True + Guard.Comparable.Numeric.tt + + + True + True + Guard.Collection.tt + + + True + True + ThrowHelper.Collection.tt + + + True + True + TypeInfo.ttinclude + + + + \ No newline at end of file diff --git a/eng/toolkit.spk b/eng/toolkit.spk new file mode 100644 index 000000000..174f6f557 --- /dev/null +++ b/eng/toolkit.spk @@ -0,0 +1 @@ +002400000480000094000000060200000024000052534131000400000100010041753AF735AE6140C9508567666C51C6AB929806ADB0D210694B30AB142A060237BC741F9682E7D8D4310364B4BBA4EE89CC9D3D5CE7E5583587E8EA44DCA09977996582875E71FB54FA7B170798D853D5D8010B07219633BDB761D01AC924DA44576D6180CDCEAE537973982BB461C541541D58417A3794E34F45E6F2D129E2 \ No newline at end of file diff --git a/src/CommunityToolkit.Diagnostics/CommunityToolkit.Diagnostics.csproj b/src/CommunityToolkit.Diagnostics/CommunityToolkit.Diagnostics.csproj index 6cd510f16..7ce8a118b 100644 --- a/src/CommunityToolkit.Diagnostics/CommunityToolkit.Diagnostics.csproj +++ b/src/CommunityToolkit.Diagnostics/CommunityToolkit.Diagnostics.csproj @@ -43,51 +43,6 @@ - - - TextTemplatingFileGenerator - Guard.Comparable.Numeric.g.cs - - - TextTemplatingFileGenerator - Guard.Collection.g.cs - - - TextTemplatingFileGenerator - ThrowHelper.Collection.g.cs - - - TextTemplatingFileGenerator - TypeInfo.g.cs - - - - - - - - - - - True - True - Guard.Comparable.Numeric.tt - - - True - True - Guard.Collection.tt - - - True - True - ThrowHelper.Collection.tt - - - True - True - TypeInfo.ttinclude - - + \ No newline at end of file diff --git a/src/Directory.Build.props b/src/Directory.Build.props index 5d99804e5..ad499bb2b 100644 --- a/src/Directory.Build.props +++ b/src/Directory.Build.props @@ -2,6 +2,14 @@ + + true + true + true + $(RepositoryDirectory)bin\nupkg + true + + diff --git a/tests/CommunityToolkit.Common.UnitTests/CommunityToolkit.Common.UnitTests.csproj b/tests/CommunityToolkit.Common.UnitTests/CommunityToolkit.Common.UnitTests.csproj index 3436db962..56e9ee2f4 100644 --- a/tests/CommunityToolkit.Common.UnitTests/CommunityToolkit.Common.UnitTests.csproj +++ b/tests/CommunityToolkit.Common.UnitTests/CommunityToolkit.Common.UnitTests.csproj @@ -4,12 +4,6 @@ net472;net6.0;net7.0 - - - - - - diff --git a/tests/CommunityToolkit.Diagnostics.UnitTests/CommunityToolkit.Diagnostics.UnitTests.csproj b/tests/CommunityToolkit.Diagnostics.UnitTests/CommunityToolkit.Diagnostics.UnitTests.csproj index c1f33bdb7..fe56e0c58 100644 --- a/tests/CommunityToolkit.Diagnostics.UnitTests/CommunityToolkit.Diagnostics.UnitTests.csproj +++ b/tests/CommunityToolkit.Diagnostics.UnitTests/CommunityToolkit.Diagnostics.UnitTests.csproj @@ -4,12 +4,6 @@ net472;net6.0;net7.0 - - - - - - diff --git a/tests/CommunityToolkit.HighPerformance.UnitTests/CommunityToolkit.HighPerformance.UnitTests.csproj b/tests/CommunityToolkit.HighPerformance.UnitTests/CommunityToolkit.HighPerformance.UnitTests.csproj index cd84ec4af..6023352ec 100644 --- a/tests/CommunityToolkit.HighPerformance.UnitTests/CommunityToolkit.HighPerformance.UnitTests.csproj +++ b/tests/CommunityToolkit.HighPerformance.UnitTests/CommunityToolkit.HighPerformance.UnitTests.csproj @@ -10,10 +10,4 @@ - - - - - - \ No newline at end of file diff --git a/tests/CommunityToolkit.Mvvm.DisableINotifyPropertyChanging.UnitTests/CommunityToolkit.Mvvm.DisableINotifyPropertyChanging.Roslyn40.UnitTests.csproj b/tests/CommunityToolkit.Mvvm.DisableINotifyPropertyChanging.UnitTests/CommunityToolkit.Mvvm.DisableINotifyPropertyChanging.Roslyn40.UnitTests.csproj index f8b90340c..64df56981 100644 --- a/tests/CommunityToolkit.Mvvm.DisableINotifyPropertyChanging.UnitTests/CommunityToolkit.Mvvm.DisableINotifyPropertyChanging.Roslyn40.UnitTests.csproj +++ b/tests/CommunityToolkit.Mvvm.DisableINotifyPropertyChanging.UnitTests/CommunityToolkit.Mvvm.DisableINotifyPropertyChanging.Roslyn40.UnitTests.csproj @@ -4,12 +4,6 @@ net472;net6.0;net7.0 - - - - - - diff --git a/tests/CommunityToolkit.Mvvm.DisableINotifyPropertyChanging.UnitTests/CommunityToolkit.Mvvm.DisableINotifyPropertyChanging.Roslyn43.UnitTests.csproj b/tests/CommunityToolkit.Mvvm.DisableINotifyPropertyChanging.UnitTests/CommunityToolkit.Mvvm.DisableINotifyPropertyChanging.Roslyn43.UnitTests.csproj index 7f95d8779..149dc3330 100644 --- a/tests/CommunityToolkit.Mvvm.DisableINotifyPropertyChanging.UnitTests/CommunityToolkit.Mvvm.DisableINotifyPropertyChanging.Roslyn43.UnitTests.csproj +++ b/tests/CommunityToolkit.Mvvm.DisableINotifyPropertyChanging.UnitTests/CommunityToolkit.Mvvm.DisableINotifyPropertyChanging.Roslyn43.UnitTests.csproj @@ -4,12 +4,6 @@ net472;net6.0;net7.0 - - - - - - diff --git a/tests/CommunityToolkit.Mvvm.ExternalAssembly/CommunityToolkit.Mvvm.ExternalAssembly.Roslyn40.csproj b/tests/CommunityToolkit.Mvvm.ExternalAssembly/CommunityToolkit.Mvvm.ExternalAssembly.Roslyn40.csproj index 347c2e1da..b1725de1d 100644 --- a/tests/CommunityToolkit.Mvvm.ExternalAssembly/CommunityToolkit.Mvvm.ExternalAssembly.Roslyn40.csproj +++ b/tests/CommunityToolkit.Mvvm.ExternalAssembly/CommunityToolkit.Mvvm.ExternalAssembly.Roslyn40.csproj @@ -4,14 +4,6 @@ netstandard2.0 - - - false - false - $(NoWarn);CS8002;SA0001 - - diff --git a/tests/CommunityToolkit.Mvvm.ExternalAssembly/CommunityToolkit.Mvvm.ExternalAssembly.Roslyn43.csproj b/tests/CommunityToolkit.Mvvm.ExternalAssembly/CommunityToolkit.Mvvm.ExternalAssembly.Roslyn43.csproj index 71e4b4afb..74e79ac63 100644 --- a/tests/CommunityToolkit.Mvvm.ExternalAssembly/CommunityToolkit.Mvvm.ExternalAssembly.Roslyn43.csproj +++ b/tests/CommunityToolkit.Mvvm.ExternalAssembly/CommunityToolkit.Mvvm.ExternalAssembly.Roslyn43.csproj @@ -4,14 +4,6 @@ netstandard2.0 - - - false - false - $(NoWarn);CS8002;SA0001 - - diff --git a/tests/CommunityToolkit.Mvvm.Internals.UnitTests/CommunityToolkit.Mvvm.Internals.UnitTests.csproj b/tests/CommunityToolkit.Mvvm.Internals.UnitTests/CommunityToolkit.Mvvm.Internals.UnitTests.csproj index a1cecde7e..a16e385e0 100644 --- a/tests/CommunityToolkit.Mvvm.Internals.UnitTests/CommunityToolkit.Mvvm.Internals.UnitTests.csproj +++ b/tests/CommunityToolkit.Mvvm.Internals.UnitTests/CommunityToolkit.Mvvm.Internals.UnitTests.csproj @@ -4,12 +4,6 @@ net472;net6.0;net7.0 - - - - - - diff --git a/tests/CommunityToolkit.Mvvm.SourceGenerators.UnitTests/CommunityToolkit.Mvvm.SourceGenerators.Roslyn40.UnitTests.csproj b/tests/CommunityToolkit.Mvvm.SourceGenerators.UnitTests/CommunityToolkit.Mvvm.SourceGenerators.Roslyn40.UnitTests.csproj index 9f5ab2a53..471d4585d 100644 --- a/tests/CommunityToolkit.Mvvm.SourceGenerators.UnitTests/CommunityToolkit.Mvvm.SourceGenerators.Roslyn40.UnitTests.csproj +++ b/tests/CommunityToolkit.Mvvm.SourceGenerators.UnitTests/CommunityToolkit.Mvvm.SourceGenerators.Roslyn40.UnitTests.csproj @@ -7,9 +7,6 @@ - - - diff --git a/tests/CommunityToolkit.Mvvm.SourceGenerators.UnitTests/CommunityToolkit.Mvvm.SourceGenerators.Roslyn43.UnitTests.csproj b/tests/CommunityToolkit.Mvvm.SourceGenerators.UnitTests/CommunityToolkit.Mvvm.SourceGenerators.Roslyn43.UnitTests.csproj index 6d981fc10..942869ff8 100644 --- a/tests/CommunityToolkit.Mvvm.SourceGenerators.UnitTests/CommunityToolkit.Mvvm.SourceGenerators.Roslyn43.UnitTests.csproj +++ b/tests/CommunityToolkit.Mvvm.SourceGenerators.UnitTests/CommunityToolkit.Mvvm.SourceGenerators.Roslyn43.UnitTests.csproj @@ -7,9 +7,6 @@ - - - diff --git a/tests/CommunityToolkit.Mvvm.UnitTests/CommunityToolkit.Mvvm.Roslyn40.UnitTests.csproj b/tests/CommunityToolkit.Mvvm.UnitTests/CommunityToolkit.Mvvm.Roslyn40.UnitTests.csproj index af3630ff0..aed1be285 100644 --- a/tests/CommunityToolkit.Mvvm.UnitTests/CommunityToolkit.Mvvm.Roslyn40.UnitTests.csproj +++ b/tests/CommunityToolkit.Mvvm.UnitTests/CommunityToolkit.Mvvm.Roslyn40.UnitTests.csproj @@ -7,9 +7,6 @@ - - - diff --git a/tests/CommunityToolkit.Mvvm.UnitTests/CommunityToolkit.Mvvm.Roslyn43.UnitTests.csproj b/tests/CommunityToolkit.Mvvm.UnitTests/CommunityToolkit.Mvvm.Roslyn43.UnitTests.csproj index cb8ca4274..bc96ba07e 100644 --- a/tests/CommunityToolkit.Mvvm.UnitTests/CommunityToolkit.Mvvm.Roslyn43.UnitTests.csproj +++ b/tests/CommunityToolkit.Mvvm.UnitTests/CommunityToolkit.Mvvm.Roslyn43.UnitTests.csproj @@ -7,9 +7,6 @@ - - - diff --git a/tests/Directory.Build.props b/tests/Directory.Build.props new file mode 100644 index 000000000..55ce96af9 --- /dev/null +++ b/tests/Directory.Build.props @@ -0,0 +1,16 @@ + + + + + + false + false + $(NoWarn);CS8002;SA0001 + + + + true + false + + + \ No newline at end of file diff --git a/tests/Directory.Build.targets b/tests/Directory.Build.targets new file mode 100644 index 000000000..07296256b --- /dev/null +++ b/tests/Directory.Build.targets @@ -0,0 +1,12 @@ + + + + + + + + + + + + \ No newline at end of file From 6e020e5006de11170dba2fd93b14433e9a768b06 Mon Sep 17 00:00:00 2001 From: Nirmal Guru Date: Thu, 29 Jul 2021 09:18:27 +0530 Subject: [PATCH 04/13] 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. --- eng/Toolkit.Common.props | 17 +++-- eng/Toolkit.Common.targets | 9 +-- eng/Toolkit.TextTemplates.targets | 10 +-- .../CommunityToolkit.Diagnostics.csproj | 24 +++---- .../CommunityToolkit.HighPerformance.csproj | 28 ++++---- .../CommunityToolkit.Mvvm.csproj | 68 ++++++++++--------- .../CommunityToolkit.Mvvm.targets | 35 +++++----- ...PropertyChanging.Roslyn40.UnitTests.csproj | 3 +- ...PropertyChanging.Roslyn43.UnitTests.csproj | 3 +- ...lkit.Mvvm.ExternalAssembly.Roslyn40.csproj | 3 +- ...lkit.Mvvm.ExternalAssembly.Roslyn43.csproj | 3 +- ...SourceGenerators.Roslyn40.UnitTests.csproj | 8 +-- ...SourceGenerators.Roslyn43.UnitTests.csproj | 8 +-- ...nityToolkit.Mvvm.Roslyn40.UnitTests.csproj | 13 ++-- ...nityToolkit.Mvvm.Roslyn43.UnitTests.csproj | 13 ++-- 15 files changed, 127 insertions(+), 118 deletions(-) diff --git a/eng/Toolkit.Common.props b/eng/Toolkit.Common.props index d11f9b0b6..dba58301a 100644 --- a/eng/Toolkit.Common.props +++ b/eng/Toolkit.Common.props @@ -2,18 +2,22 @@ true + $(TF_BUILD) + $(ContinuousIntegrationBuild) - true + Enable 11.0 - enable + true + - + --> + $(NoWarn);CS8500 @@ -24,11 +28,6 @@ $([System.IO.File]::ReadAllText($(AssemblySignPublicKeyFile))) - - $(TF_BUILD) - $(ContinuousIntegrationBuild) - - True diff --git a/eng/Toolkit.Common.targets b/eng/Toolkit.Common.targets index 7ce087aae..51dcd077e 100644 --- a/eng/Toolkit.Common.targets +++ b/eng/Toolkit.Common.targets @@ -16,17 +16,14 @@ $(Product) Asset - - - $(CommonTags);$(PackageTags) $(CommonTags) - - - + + + + + + + TextTemplatingFileGenerator @@ -19,11 +24,6 @@ - - - - - True diff --git a/src/CommunityToolkit.Diagnostics/CommunityToolkit.Diagnostics.csproj b/src/CommunityToolkit.Diagnostics/CommunityToolkit.Diagnostics.csproj index 7ce8a118b..6f474d053 100644 --- a/src/CommunityToolkit.Diagnostics/CommunityToolkit.Diagnostics.csproj +++ b/src/CommunityToolkit.Diagnostics/CommunityToolkit.Diagnostics.csproj @@ -14,6 +14,18 @@ Diagnostics;Guard;ThrowHelper;TypeInfo;Extensions;Helpers + + + + System.Diagnostics.CodeAnalysis.DoesNotReturnAttribute; + System.Diagnostics.CodeAnalysis.DoesNotReturnIfAttribute; + System.Diagnostics.CodeAnalysis.NotNullAttribute; + System.Diagnostics.StackTraceHiddenAttribute; + System.Runtime.CompilerServices.CallerArgumentExpressionAttribute; + System.Runtime.CompilerServices.SkipLocalsInitAttribute; + + + @@ -31,18 +43,6 @@ - - - - System.Diagnostics.CodeAnalysis.DoesNotReturnAttribute; - System.Diagnostics.CodeAnalysis.DoesNotReturnIfAttribute; - System.Diagnostics.CodeAnalysis.NotNullAttribute; - System.Diagnostics.StackTraceHiddenAttribute; - System.Runtime.CompilerServices.CallerArgumentExpressionAttribute; - System.Runtime.CompilerServices.SkipLocalsInitAttribute; - - - \ No newline at end of file diff --git a/src/CommunityToolkit.HighPerformance/CommunityToolkit.HighPerformance.csproj b/src/CommunityToolkit.HighPerformance/CommunityToolkit.HighPerformance.csproj index 1639b330d..d9dcb3d35 100644 --- a/src/CommunityToolkit.HighPerformance/CommunityToolkit.HighPerformance.csproj +++ b/src/CommunityToolkit.HighPerformance/CommunityToolkit.HighPerformance.csproj @@ -25,9 +25,23 @@ Parallel;Performance;Unsafe;Span;Memory;String;StringPool;Array;Stream;Buffer;Extensions;Helpers + + + + System.Diagnostics.CodeAnalysis.NotNullAttribute; + System.Diagnostics.CodeAnalysis.NotNullWhenAttribute; + System.Runtime.CompilerServices.SkipLocalsInitAttribute; + + + + + + + + @@ -35,11 +49,6 @@ - - - - - @@ -50,13 +59,4 @@ - - - - System.Diagnostics.CodeAnalysis.NotNullAttribute; - System.Diagnostics.CodeAnalysis.NotNullWhenAttribute; - System.Runtime.CompilerServices.SkipLocalsInitAttribute; - - - \ No newline at end of file diff --git a/src/CommunityToolkit.Mvvm/CommunityToolkit.Mvvm.csproj b/src/CommunityToolkit.Mvvm/CommunityToolkit.Mvvm.csproj index 55e1fae7d..63858e173 100644 --- a/src/CommunityToolkit.Mvvm/CommunityToolkit.Mvvm.csproj +++ b/src/CommunityToolkit.Mvvm/CommunityToolkit.Mvvm.csproj @@ -20,6 +20,39 @@ MVVM;Toolkit;MVVMToolkit;INotifyPropertyChanged;Observable;IOC;DI;Dependency Injection;Object Messaging;Extensions;Helpers + + + + System.Diagnostics.CodeAnalysis.DoesNotReturnAttribute; + System.Diagnostics.CodeAnalysis.MaybeNullWhenAttribute; + System.Diagnostics.CodeAnalysis.MemberNotNullAttribute; + System.Diagnostics.CodeAnalysis.NotNullAttribute; + System.Diagnostics.CodeAnalysis.NotNullIfNotNullAttribute; + System.Diagnostics.CodeAnalysis.NotNullWhenAttribute; + System.Diagnostics.CodeAnalysis.RequiresUnreferencedCodeAttribute; + System.Diagnostics.CodeAnalysis.UnconditionalSuppressMessageAttribute; + System.Runtime.CompilerServices.CallerArgumentExpressionAttribute; + System.Runtime.CompilerServices.IsExternalInit; + System.Runtime.CompilerServices.SkipLocalsInitAttribute; + + + + + + + + + + + + + + + + @@ -40,40 +73,11 @@ - - - - - - - - - System.Diagnostics.CodeAnalysis.DoesNotReturnAttribute; - System.Diagnostics.CodeAnalysis.MaybeNullWhenAttribute; - System.Diagnostics.CodeAnalysis.MemberNotNullAttribute; - System.Diagnostics.CodeAnalysis.NotNullAttribute; - System.Diagnostics.CodeAnalysis.NotNullIfNotNullAttribute; - System.Diagnostics.CodeAnalysis.NotNullWhenAttribute; - System.Diagnostics.CodeAnalysis.RequiresUnreferencedCodeAttribute; - System.Diagnostics.CodeAnalysis.UnconditionalSuppressMessageAttribute; - System.Runtime.CompilerServices.CallerArgumentExpressionAttribute; - System.Runtime.CompilerServices.IsExternalInit; - System.Runtime.CompilerServices.SkipLocalsInitAttribute; - - - - - - - - - - - - + --> + diff --git a/src/CommunityToolkit.Mvvm/CommunityToolkit.Mvvm.targets b/src/CommunityToolkit.Mvvm/CommunityToolkit.Mvvm.targets index c2fd56e39..f43ff5760 100644 --- a/src/CommunityToolkit.Mvvm/CommunityToolkit.Mvvm.targets +++ b/src/CommunityToolkit.Mvvm/CommunityToolkit.Mvvm.targets @@ -13,16 +13,17 @@ AfterTargets="ResolvePackageDependenciesForBuild;ResolveNuGetPackageAssets" DependsOnTargets="MVVMToolkitGatherAnalyzers"> - + - @(MVVMToolkitCurrentCompilerAssemblyIdentity->'%(Version)') @@ -35,38 +36,40 @@ - + - + --> roslyn4.3 roslyn4.0 - - - + --> + diff --git a/tests/CommunityToolkit.Mvvm.DisableINotifyPropertyChanging.UnitTests/CommunityToolkit.Mvvm.DisableINotifyPropertyChanging.Roslyn40.UnitTests.csproj b/tests/CommunityToolkit.Mvvm.DisableINotifyPropertyChanging.UnitTests/CommunityToolkit.Mvvm.DisableINotifyPropertyChanging.Roslyn40.UnitTests.csproj index 64df56981..4fed6163d 100644 --- a/tests/CommunityToolkit.Mvvm.DisableINotifyPropertyChanging.UnitTests/CommunityToolkit.Mvvm.DisableINotifyPropertyChanging.Roslyn40.UnitTests.csproj +++ b/tests/CommunityToolkit.Mvvm.DisableINotifyPropertyChanging.UnitTests/CommunityToolkit.Mvvm.DisableINotifyPropertyChanging.Roslyn40.UnitTests.csproj @@ -6,7 +6,8 @@ - + \ No newline at end of file diff --git a/tests/CommunityToolkit.Mvvm.DisableINotifyPropertyChanging.UnitTests/CommunityToolkit.Mvvm.DisableINotifyPropertyChanging.Roslyn43.UnitTests.csproj b/tests/CommunityToolkit.Mvvm.DisableINotifyPropertyChanging.UnitTests/CommunityToolkit.Mvvm.DisableINotifyPropertyChanging.Roslyn43.UnitTests.csproj index 149dc3330..876022414 100644 --- a/tests/CommunityToolkit.Mvvm.DisableINotifyPropertyChanging.UnitTests/CommunityToolkit.Mvvm.DisableINotifyPropertyChanging.Roslyn43.UnitTests.csproj +++ b/tests/CommunityToolkit.Mvvm.DisableINotifyPropertyChanging.UnitTests/CommunityToolkit.Mvvm.DisableINotifyPropertyChanging.Roslyn43.UnitTests.csproj @@ -6,7 +6,8 @@ - + \ No newline at end of file diff --git a/tests/CommunityToolkit.Mvvm.ExternalAssembly/CommunityToolkit.Mvvm.ExternalAssembly.Roslyn40.csproj b/tests/CommunityToolkit.Mvvm.ExternalAssembly/CommunityToolkit.Mvvm.ExternalAssembly.Roslyn40.csproj index b1725de1d..35e52c80e 100644 --- a/tests/CommunityToolkit.Mvvm.ExternalAssembly/CommunityToolkit.Mvvm.ExternalAssembly.Roslyn40.csproj +++ b/tests/CommunityToolkit.Mvvm.ExternalAssembly/CommunityToolkit.Mvvm.ExternalAssembly.Roslyn40.csproj @@ -6,7 +6,8 @@ - + \ No newline at end of file diff --git a/tests/CommunityToolkit.Mvvm.ExternalAssembly/CommunityToolkit.Mvvm.ExternalAssembly.Roslyn43.csproj b/tests/CommunityToolkit.Mvvm.ExternalAssembly/CommunityToolkit.Mvvm.ExternalAssembly.Roslyn43.csproj index 74e79ac63..d9216fdf9 100644 --- a/tests/CommunityToolkit.Mvvm.ExternalAssembly/CommunityToolkit.Mvvm.ExternalAssembly.Roslyn43.csproj +++ b/tests/CommunityToolkit.Mvvm.ExternalAssembly/CommunityToolkit.Mvvm.ExternalAssembly.Roslyn43.csproj @@ -6,7 +6,8 @@ - + \ No newline at end of file diff --git a/tests/CommunityToolkit.Mvvm.SourceGenerators.UnitTests/CommunityToolkit.Mvvm.SourceGenerators.Roslyn40.UnitTests.csproj b/tests/CommunityToolkit.Mvvm.SourceGenerators.UnitTests/CommunityToolkit.Mvvm.SourceGenerators.Roslyn40.UnitTests.csproj index 471d4585d..cacc84300 100644 --- a/tests/CommunityToolkit.Mvvm.SourceGenerators.UnitTests/CommunityToolkit.Mvvm.SourceGenerators.Roslyn40.UnitTests.csproj +++ b/tests/CommunityToolkit.Mvvm.SourceGenerators.UnitTests/CommunityToolkit.Mvvm.SourceGenerators.Roslyn40.UnitTests.csproj @@ -5,13 +5,13 @@ - - + + - - + + \ No newline at end of file diff --git a/tests/CommunityToolkit.Mvvm.SourceGenerators.UnitTests/CommunityToolkit.Mvvm.SourceGenerators.Roslyn43.UnitTests.csproj b/tests/CommunityToolkit.Mvvm.SourceGenerators.UnitTests/CommunityToolkit.Mvvm.SourceGenerators.Roslyn43.UnitTests.csproj index 942869ff8..3c8d75b42 100644 --- a/tests/CommunityToolkit.Mvvm.SourceGenerators.UnitTests/CommunityToolkit.Mvvm.SourceGenerators.Roslyn43.UnitTests.csproj +++ b/tests/CommunityToolkit.Mvvm.SourceGenerators.UnitTests/CommunityToolkit.Mvvm.SourceGenerators.Roslyn43.UnitTests.csproj @@ -5,13 +5,13 @@ - - + + - - + + \ No newline at end of file diff --git a/tests/CommunityToolkit.Mvvm.UnitTests/CommunityToolkit.Mvvm.Roslyn40.UnitTests.csproj b/tests/CommunityToolkit.Mvvm.UnitTests/CommunityToolkit.Mvvm.Roslyn40.UnitTests.csproj index aed1be285..1fd4912be 100644 --- a/tests/CommunityToolkit.Mvvm.UnitTests/CommunityToolkit.Mvvm.Roslyn40.UnitTests.csproj +++ b/tests/CommunityToolkit.Mvvm.UnitTests/CommunityToolkit.Mvvm.Roslyn40.UnitTests.csproj @@ -6,15 +6,16 @@ - - - + + + - - - + + + \ No newline at end of file diff --git a/tests/CommunityToolkit.Mvvm.UnitTests/CommunityToolkit.Mvvm.Roslyn43.UnitTests.csproj b/tests/CommunityToolkit.Mvvm.UnitTests/CommunityToolkit.Mvvm.Roslyn43.UnitTests.csproj index bc96ba07e..da70b4faf 100644 --- a/tests/CommunityToolkit.Mvvm.UnitTests/CommunityToolkit.Mvvm.Roslyn43.UnitTests.csproj +++ b/tests/CommunityToolkit.Mvvm.UnitTests/CommunityToolkit.Mvvm.Roslyn43.UnitTests.csproj @@ -6,15 +6,16 @@ - - - + + + - - - + + + \ No newline at end of file From 86a5e254575f8b376d60455808ecf7756474d83b Mon Sep 17 00:00:00 2001 From: Nirmal Guru Date: Thu, 29 Jul 2021 09:36:45 +0530 Subject: [PATCH 05/13] Simplify MSBuild logic in project files - Add necessary guard to check for pack. - Remove redundant properties and values. - Remove and adjust quotes in property functions. - Use wildcards to generalize and reduce items declared. --- CommunityToolkit.sln | 1 + Directory.Build.props | 2 +- eng/AssemblyInfo.Shared.cs | 16 ++++++ eng/Toolkit.Common.targets | 12 +++- eng/Toolkit.TextTemplates.targets | 35 ++---------- .../CommunityToolkit.HighPerformance.csproj | 2 +- .../CommunityToolkit.Mvvm.csproj | 2 +- .../CommunityToolkit.Mvvm.targets | 48 ++++++++-------- src/Directory.Build.props | 7 +-- src/Directory.Build.targets | 57 ++++--------------- tests/Directory.Build.props | 2 +- tests/Directory.Build.targets | 2 +- 12 files changed, 71 insertions(+), 115 deletions(-) create mode 100644 eng/AssemblyInfo.Shared.cs diff --git a/CommunityToolkit.sln b/CommunityToolkit.sln index 4e59f868f..013b42969 100644 --- a/CommunityToolkit.sln +++ b/CommunityToolkit.sln @@ -17,6 +17,7 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Root", "Root", "{CFA75BE0-5 EndProject Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Build", "Build", "{CD16E790-7B7B-411E-9CE7-768E759CC22D}" ProjectSection(SolutionItems) = preProject + eng\AssemblyInfo.Shared.cs = eng\AssemblyInfo.Shared.cs eng\Sign-Package.ps1 = eng\Sign-Package.ps1 eng\SignClientSettings.json = eng\SignClientSettings.json eng\Toolkit.Common.props = eng\Toolkit.Common.props diff --git a/Directory.Build.props b/Directory.Build.props index 3896f9371..ff806bb95 100644 --- a/Directory.Build.props +++ b/Directory.Build.props @@ -19,7 +19,7 @@ true - $(AllowedOutputExtensionsInPackageBuildOutputFolder);.pdb + .pdb diff --git a/eng/AssemblyInfo.Shared.cs b/eng/AssemblyInfo.Shared.cs new file mode 100644 index 000000000..db0396925 --- /dev/null +++ b/eng/AssemblyInfo.Shared.cs @@ -0,0 +1,16 @@ +// Licensed to the .NET Foundation under one or more agreements. +// The .NET Foundation licenses this file to you under the MIT license. +// See the LICENSE file in the project root for more information. + +// This file contains assembly and module attributes that is shared across projects. +// Include it in `Directory.Build.targets` near to all projects that need this file. + +using System.Runtime.CompilerServices; + +/* + Using `[module: SkipLocalsInit]` suppresses the .init flag for local variables for the entire module. + This doesn't affect the correctness of the methods in this assembly, as none of them are relying on + JIT ensuring that all local memory is zeroed out to work. Doing this can provide some minor + performance benefits, depending on the workload. +*/ +[module: SkipLocalsInit] diff --git a/eng/Toolkit.Common.targets b/eng/Toolkit.Common.targets index 51dcd077e..fe9c21020 100644 --- a/eng/Toolkit.Common.targets +++ b/eng/Toolkit.Common.targets @@ -1,6 +1,6 @@ - + Microsoft Microsoft .NET Community Toolkit @@ -13,19 +13,25 @@ Icon.png - + $(Product) Asset $(CommonTags);$(PackageTags) $(CommonTags) - + + + + <_ToolkitTargetFrameworkVersion>$([MSBuild]::GetTargetFrameworkVersion($(TargetFramework))) + <_NET_6_OR_GREATER>$([MSBuild]::VersionGreaterThanOrEquals($(_ToolkitTargetFrameworkVersion), '6.0')) + + - + diff --git a/src/CommunityToolkit.Mvvm/CommunityToolkit.Mvvm.csproj b/src/CommunityToolkit.Mvvm/CommunityToolkit.Mvvm.csproj index 63858e173..6a6bb18d3 100644 --- a/src/CommunityToolkit.Mvvm/CommunityToolkit.Mvvm.csproj +++ b/src/CommunityToolkit.Mvvm/CommunityToolkit.Mvvm.csproj @@ -39,7 +39,7 @@ - + - + - + - + DependsOnTargets="MVVMToolkit_GatherAnalyzers"> - - + + - @(MVVMToolkitCurrentCompilerAssemblyIdentity->'%(Version)') + @(MVVMToolkit_CurrentCompilerAssemblyIdentity->%(Version)) - - true + + true - - + + - + - + DependsOnTargets="MVVMToolkit_RemoveAnalyzers_WhenRoslynVersionIsNotSupported"> - roslyn4.3 - roslyn4.0 + roslyn4.3 + roslyn4.0 - + - + DependsOnTargets="MVVMToolkit_GatherAnalyzers"> - + diff --git a/src/Directory.Build.props b/src/Directory.Build.props index ad499bb2b..96b5b700b 100644 --- a/src/Directory.Build.props +++ b/src/Directory.Build.props @@ -1,6 +1,6 @@ - + true @@ -12,10 +12,7 @@ - - all - build; analyzers - + \ No newline at end of file diff --git a/src/Directory.Build.targets b/src/Directory.Build.targets index 6b83bf1fd..035d9e42c 100644 --- a/src/Directory.Build.targets +++ b/src/Directory.Build.targets @@ -1,56 +1,19 @@ - + - - - NETSTANDARD2_1_OR_GREATER - - - - - true + true + true + NETSTANDARD2_1_OR_GREATER - - - $(IntermediateOutputPath)$(MSBuildProjectName).SkipLocalsInit.g.cs - - -// This code was generated by a tool. -// -// Changes to this file may cause incorrect behavior and will be lost if -// the code is regenerated. -// -//------------------------------------------------------------------------------ - -[module: global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]]]> - - - - - - - + + + - - - - - + + + \ No newline at end of file diff --git a/tests/Directory.Build.props b/tests/Directory.Build.props index 55ce96af9..9c91d9c2c 100644 --- a/tests/Directory.Build.props +++ b/tests/Directory.Build.props @@ -1,6 +1,6 @@ - + false diff --git a/tests/Directory.Build.targets b/tests/Directory.Build.targets index 07296256b..e7f220069 100644 --- a/tests/Directory.Build.targets +++ b/tests/Directory.Build.targets @@ -1,6 +1,6 @@ - + From 4b567ec7a4a2fa5855da80655985307014480030 Mon Sep 17 00:00:00 2001 From: Nirmal Guru Date: Sat, 31 Jul 2021 08:31:12 +0530 Subject: [PATCH 06/13] Add, Update and Format build Comments - Remove redundant comments. - Add missing comments on certain code blocks. - Format code in comments with proper quote style. --- Directory.Build.targets | 5 ++++ eng/Toolkit.Common.props | 6 ++-- eng/Toolkit.Common.targets | 1 - eng/Toolkit.TextTemplates.targets | 4 ++- .../CommunityToolkit.Diagnostics.csproj | 4 +++ ...lkit.Mvvm.SourceGenerators.Roslyn40.csproj | 5 ++++ ...lkit.Mvvm.SourceGenerators.Roslyn43.csproj | 5 ++++ .../CommunityToolkit.Mvvm.csproj | 14 ++++++--- .../CommunityToolkit.Mvvm.targets | 29 +++++++++++-------- src/Directory.Build.props | 1 + src/Directory.Build.targets | 4 +++ tests/Directory.Build.props | 6 ++++ 12 files changed, 63 insertions(+), 21 deletions(-) diff --git a/Directory.Build.targets b/Directory.Build.targets index df33e0f2c..7c46a1073 100644 --- a/Directory.Build.targets +++ b/Directory.Build.targets @@ -2,6 +2,11 @@ + diff --git a/eng/Toolkit.Common.props b/eng/Toolkit.Common.props index dba58301a..f40105f48 100644 --- a/eng/Toolkit.Common.props +++ b/eng/Toolkit.Common.props @@ -13,9 +13,9 @@ $(NoWarn);CS8500 diff --git a/eng/Toolkit.Common.targets b/eng/Toolkit.Common.targets index fe9c21020..bce42789f 100644 --- a/eng/Toolkit.Common.targets +++ b/eng/Toolkit.Common.targets @@ -14,7 +14,6 @@ - $(Product) Asset $(CommonTags);$(PackageTags) $(CommonTags) diff --git a/eng/Toolkit.TextTemplates.targets b/eng/Toolkit.TextTemplates.targets index 0df023483..abf76ca3d 100644 --- a/eng/Toolkit.TextTemplates.targets +++ b/eng/Toolkit.TextTemplates.targets @@ -1,10 +1,11 @@ - + + TextTemplatingFileGenerator @@ -12,6 +13,7 @@ + True diff --git a/src/CommunityToolkit.Diagnostics/CommunityToolkit.Diagnostics.csproj b/src/CommunityToolkit.Diagnostics/CommunityToolkit.Diagnostics.csproj index 6f474d053..c90690c1d 100644 --- a/src/CommunityToolkit.Diagnostics/CommunityToolkit.Diagnostics.csproj +++ b/src/CommunityToolkit.Diagnostics/CommunityToolkit.Diagnostics.csproj @@ -43,6 +43,10 @@ + \ No newline at end of file diff --git a/src/CommunityToolkit.Mvvm.SourceGenerators/CommunityToolkit.Mvvm.SourceGenerators.Roslyn40.csproj b/src/CommunityToolkit.Mvvm.SourceGenerators/CommunityToolkit.Mvvm.SourceGenerators.Roslyn40.csproj index 78fd2bbe8..51b69d2bb 100644 --- a/src/CommunityToolkit.Mvvm.SourceGenerators/CommunityToolkit.Mvvm.SourceGenerators.Roslyn40.csproj +++ b/src/CommunityToolkit.Mvvm.SourceGenerators/CommunityToolkit.Mvvm.SourceGenerators.Roslyn40.csproj @@ -5,6 +5,7 @@ netstandard2.0 + @@ -14,6 +15,10 @@ + diff --git a/src/CommunityToolkit.Mvvm.SourceGenerators/CommunityToolkit.Mvvm.SourceGenerators.Roslyn43.csproj b/src/CommunityToolkit.Mvvm.SourceGenerators/CommunityToolkit.Mvvm.SourceGenerators.Roslyn43.csproj index 0c748da9a..158dea734 100644 --- a/src/CommunityToolkit.Mvvm.SourceGenerators/CommunityToolkit.Mvvm.SourceGenerators.Roslyn43.csproj +++ b/src/CommunityToolkit.Mvvm.SourceGenerators/CommunityToolkit.Mvvm.SourceGenerators.Roslyn43.csproj @@ -5,6 +5,7 @@ netstandard2.0 + @@ -14,6 +15,10 @@ + diff --git a/src/CommunityToolkit.Mvvm/CommunityToolkit.Mvvm.csproj b/src/CommunityToolkit.Mvvm/CommunityToolkit.Mvvm.csproj index 6a6bb18d3..dc25cee46 100644 --- a/src/CommunityToolkit.Mvvm/CommunityToolkit.Mvvm.csproj +++ b/src/CommunityToolkit.Mvvm/CommunityToolkit.Mvvm.csproj @@ -43,8 +43,8 @@ @@ -74,8 +74,14 @@ diff --git a/src/CommunityToolkit.Mvvm/CommunityToolkit.Mvvm.targets b/src/CommunityToolkit.Mvvm/CommunityToolkit.Mvvm.targets index 4fbd2279f..ff1a51895 100644 --- a/src/CommunityToolkit.Mvvm/CommunityToolkit.Mvvm.targets +++ b/src/CommunityToolkit.Mvvm/CommunityToolkit.Mvvm.targets @@ -1,6 +1,6 @@ - + @@ -14,9 +14,9 @@ DependsOnTargets="MVVMToolkit_GatherAnalyzers"> @@ -24,10 +24,10 @@ - + @(MVVMToolkit_CurrentCompilerAssemblyIdentity->%(Version)) - + true @@ -45,7 +45,7 @@ - + + true true diff --git a/src/Directory.Build.targets b/src/Directory.Build.targets index 035d9e42c..fa0bd7f59 100644 --- a/src/Directory.Build.targets +++ b/src/Directory.Build.targets @@ -2,12 +2,16 @@ + + true true + NETSTANDARD2_1_OR_GREATER + diff --git a/tests/Directory.Build.props b/tests/Directory.Build.props index 9c91d9c2c..673d90b15 100644 --- a/tests/Directory.Build.props +++ b/tests/Directory.Build.props @@ -2,6 +2,11 @@ + false false @@ -10,6 +15,7 @@ true + false From 2ea91021906743c171069cd5f6462097d020a7d8 Mon Sep 17 00:00:00 2001 From: Nirmal Guru Date: Sat, 31 Jul 2021 08:37:12 +0530 Subject: [PATCH 07/13] Add Labels to some Property groups Some property groups have conditions that also self-explain their purpose. So, Add labels to bare property groups only to differentiate among themselves. Then, when contributors add any additional properties, they'll know where to put them. --- eng/Toolkit.Common.props | 6 +++--- src/Directory.Build.props | 2 +- tests/Directory.Build.props | 4 ++-- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/eng/Toolkit.Common.props b/eng/Toolkit.Common.props index f40105f48..d272cf8c5 100644 --- a/eng/Toolkit.Common.props +++ b/eng/Toolkit.Common.props @@ -1,12 +1,12 @@ - + true $(TF_BUILD) $(ContinuousIntegrationBuild) - + Enable 11.0 true @@ -21,7 +21,7 @@ $(NoWarn);CS8500 - + true $(MSBuildThisFileDirectory)toolkit.snk $(MSBuildThisFileDirectory)toolkit.spk diff --git a/src/Directory.Build.props b/src/Directory.Build.props index a42e218b6..53d8ecf51 100644 --- a/src/Directory.Build.props +++ b/src/Directory.Build.props @@ -3,7 +3,7 @@ - + true true true diff --git a/tests/Directory.Build.props b/tests/Directory.Build.props index 673d90b15..61cc2f1b9 100644 --- a/tests/Directory.Build.props +++ b/tests/Directory.Build.props @@ -7,13 +7,13 @@ This also includes non-test projects as well. But if it's required then override the following properties only within those projects. --> - + false false $(NoWarn);CS8002;SA0001 - + true false From 1aa9a9dd17063973365f4ea742ae236f337c7cec Mon Sep 17 00:00:00 2001 From: Nirmal Guru Date: Tue, 14 Sep 2021 09:00:04 +0530 Subject: [PATCH 08/13] Always include common files in the NuGet package When the '$(IncludeContentInPack)' property is false, files specified via '@(None)', '@(Content)' items are excluded from the NuGet package. Adding '@(PackageFile)' items directly to '%(_PackageFiles)' item via the following target ensures that they will always be included in the package. So, Use '%(PackageFile)' item to always include files in the package. By default, they are included in the root of the package but can be overridden via '%(PackageFile.TargetPath)' metadata. --- eng/Toolkit.Common.props | 3 ++ eng/Toolkit.Common.targets | 9 ++-- eng/Toolkit.CompilerTargeting.props | 7 +++ eng/Toolkit.Packaging.props | 16 +++++++ eng/Toolkit.Packaging.targets | 48 +++++++++++++++++++ .../CommunityToolkit.Mvvm.csproj | 26 ++++++---- 6 files changed, 96 insertions(+), 13 deletions(-) create mode 100644 eng/Toolkit.Packaging.props create mode 100644 eng/Toolkit.Packaging.targets diff --git a/eng/Toolkit.Common.props b/eng/Toolkit.Common.props index d272cf8c5..4b4e78887 100644 --- a/eng/Toolkit.Common.props +++ b/eng/Toolkit.Common.props @@ -39,4 +39,7 @@ + + + \ No newline at end of file diff --git a/eng/Toolkit.Common.targets b/eng/Toolkit.Common.targets index bce42789f..6b6c530a9 100644 --- a/eng/Toolkit.Common.targets +++ b/eng/Toolkit.Common.targets @@ -20,9 +20,9 @@ - - - + + + @@ -47,4 +47,7 @@ + + + \ No newline at end of file diff --git a/eng/Toolkit.CompilerTargeting.props b/eng/Toolkit.CompilerTargeting.props index 9212201bc..70a4f60d3 100644 --- a/eng/Toolkit.CompilerTargeting.props +++ b/eng/Toolkit.CompilerTargeting.props @@ -39,6 +39,13 @@ $(_ShortCompilerIdentifier)$(TargetCompilerVersion) + + + cs + fs + vb + + $(MSBuildProjectName.Replace('.$(TargetCompilerIdentifier)$(_ShortCompilerVersion)', '')) diff --git a/eng/Toolkit.Packaging.props b/eng/Toolkit.Packaging.props new file mode 100644 index 000000000..88acb5206 --- /dev/null +++ b/eng/Toolkit.Packaging.props @@ -0,0 +1,16 @@ + + + + + + False + \ + + + + + + + + + \ No newline at end of file diff --git a/eng/Toolkit.Packaging.targets b/eng/Toolkit.Packaging.targets new file mode 100644 index 000000000..5aff461d9 --- /dev/null +++ b/eng/Toolkit.Packaging.targets @@ -0,0 +1,48 @@ + + + + + _AddGlobalPackageFilesToNuGetPack;$(GenerateNuSpecDependsOn) + _AddPackageFilesPerTargetFrameworkToNuGetPack + + + + + + <_PackageFiles Include="@(PackageFile)" Exclude="@(PackageFile->WithMetadataValue('IsSpecific', 'true'))" Condition="'%(PackageFile.Pack)' != 'false'"> + %(PackageFile.TargetPath) + + + + + + + + + + + %(PackageFile.TargetPath) + + + + + + + + \ No newline at end of file diff --git a/src/CommunityToolkit.Mvvm/CommunityToolkit.Mvvm.csproj b/src/CommunityToolkit.Mvvm/CommunityToolkit.Mvvm.csproj index dc25cee46..84871f345 100644 --- a/src/CommunityToolkit.Mvvm/CommunityToolkit.Mvvm.csproj +++ b/src/CommunityToolkit.Mvvm/CommunityToolkit.Mvvm.csproj @@ -46,11 +46,9 @@ Include a custom targets file to check the compiler version required for the source generator. It needs Roslyn 4.x and including the targets in .NET 6+ is not needed as it guarantees the same. --> - - - - - + + + @@ -68,9 +66,13 @@ - - - + + + + + - - + + + + \ No newline at end of file From c92591dbe5b10009aac9092a04c59d2920df3281 Mon Sep 17 00:00:00 2001 From: Nirmal Guru Date: Wed, 24 Mar 2021 08:22:00 +0530 Subject: [PATCH 09/13] Dynamically Pack MVVM SourceGen project outputs Previously, static output path to the MVVM SourceGen assembly was used to pack the MVVM project. This leads to error when OutputPath was updated dynamically when testing or in forks. So, here, we'll update the build so that the SourceGen build outputs will be dynamically packed. --- eng/Toolkit.Common.props | 3 -- eng/Toolkit.Common.targets | 3 -- eng/Toolkit.CustomAfterCommon.targets | 9 ++++ eng/Toolkit.GetBuildOutputs.targets | 53 +++++++++++++++++++ eng/Toolkit.Packaging.targets | 42 ++++++++++++++- .../CommunityToolkit.Mvvm.csproj | 22 +++----- src/Directory.Build.props | 8 +++ src/Directory.Build.targets | 3 ++ 8 files changed, 120 insertions(+), 23 deletions(-) create mode 100644 eng/Toolkit.CustomAfterCommon.targets create mode 100644 eng/Toolkit.GetBuildOutputs.targets diff --git a/eng/Toolkit.Common.props b/eng/Toolkit.Common.props index 4b4e78887..d272cf8c5 100644 --- a/eng/Toolkit.Common.props +++ b/eng/Toolkit.Common.props @@ -39,7 +39,4 @@ - - - \ No newline at end of file diff --git a/eng/Toolkit.Common.targets b/eng/Toolkit.Common.targets index 6b6c530a9..e82e4b835 100644 --- a/eng/Toolkit.Common.targets +++ b/eng/Toolkit.Common.targets @@ -47,7 +47,4 @@ - - - \ No newline at end of file diff --git a/eng/Toolkit.CustomAfterCommon.targets b/eng/Toolkit.CustomAfterCommon.targets new file mode 100644 index 000000000..a46ddbd8c --- /dev/null +++ b/eng/Toolkit.CustomAfterCommon.targets @@ -0,0 +1,9 @@ + + + + + + \ No newline at end of file diff --git a/eng/Toolkit.GetBuildOutputs.targets b/eng/Toolkit.GetBuildOutputs.targets new file mode 100644 index 000000000..f360dffdb --- /dev/null +++ b/eng/Toolkit.GetBuildOutputs.targets @@ -0,0 +1,53 @@ + + + + + <_GetBuildOutputsDependsOn>BuiltProjectOutputGroup;DocumentationProjectOutputGroup + <_GetBuildOutputsDependsOn Condition="'$(IncludeSymbols)' != 'false'">$(_GetBuildOutputsDependsOn);DebugSymbolsProjectOutputGroup + <_GetBuildOutputsDependsOn Condition="'$(IncludeSatelliteAssemblies)' != 'false'">$(_GetBuildOutputsDependsOn);SatelliteDllsProjectOutputGroup + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/eng/Toolkit.Packaging.targets b/eng/Toolkit.Packaging.targets index 5aff461d9..ae47b37d5 100644 --- a/eng/Toolkit.Packaging.targets +++ b/eng/Toolkit.Packaging.targets @@ -5,10 +5,16 @@ Use 'TargetsForTfmSpecificContentInPackage' extensibility point to include custom TFM-specific assets in the package. --> - _AddGlobalPackageFilesToNuGetPack;$(GenerateNuSpecDependsOn) + _GetNonReferencingProjectBuildOutputs;_AddGlobalPackageFilesToNuGetPack;$(GenerateNuSpecDependsOn) _AddPackageFilesPerTargetFrameworkToNuGetPack + + + + + + + + + + + + + + + + + $([System.IO.Path]::Combine('analyzers', 'dotnet', '%(TargetCompiler)', '%(TargetLanguage)')) + $([System.IO.Path]::Combine('tools', '%(TargetFramework)')) + + + + \ No newline at end of file diff --git a/src/CommunityToolkit.Mvvm/CommunityToolkit.Mvvm.csproj b/src/CommunityToolkit.Mvvm/CommunityToolkit.Mvvm.csproj index 84871f345..bdeb15f04 100644 --- a/src/CommunityToolkit.Mvvm/CommunityToolkit.Mvvm.csproj +++ b/src/CommunityToolkit.Mvvm/CommunityToolkit.Mvvm.csproj @@ -76,22 +76,12 @@ - - - - - - + + true + \ No newline at end of file diff --git a/src/Directory.Build.props b/src/Directory.Build.props index 53d8ecf51..8023415b2 100644 --- a/src/Directory.Build.props +++ b/src/Directory.Build.props @@ -16,4 +16,12 @@ + + + $(BuildToolsDirectory)Toolkit.CustomAfterCommon.targets + + + + + \ No newline at end of file diff --git a/src/Directory.Build.targets b/src/Directory.Build.targets index fa0bd7f59..e2ca0d23b 100644 --- a/src/Directory.Build.targets +++ b/src/Directory.Build.targets @@ -20,4 +20,7 @@ + + + \ No newline at end of file From 9b508f8bc2f708dc453e9177fcacc34683432091 Mon Sep 17 00:00:00 2001 From: Nirmal Guru Date: Fri, 11 Nov 2022 11:11:12 +0530 Subject: [PATCH 10/13] Fix Item update in Pack logic due to MSBuild regression - MSBuild Item update logic within target broke during 17.3-17.4! Previous logic referencing direct Item names worked fine before, but now needs a proxy/temporary item in order to process the includes. Same with the undefined Metadata, previously it returned empty string for items with the metadata undefined but now throws error. This may be correct behavior for items under target but this difference hinders sharing logic within and out of targets. This has a side-effect of needing to specify fully qualified name "%(Item.Metadata)" which makes it verbose. --- eng/Toolkit.GetBuildOutputs.targets | 4 ++-- eng/Toolkit.Packaging.targets | 8 +++++--- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/eng/Toolkit.GetBuildOutputs.targets b/eng/Toolkit.GetBuildOutputs.targets index f360dffdb..25aa00415 100644 --- a/eng/Toolkit.GetBuildOutputs.targets +++ b/eng/Toolkit.GetBuildOutputs.targets @@ -28,10 +28,10 @@ - - + + diff --git a/eng/Toolkit.Packaging.targets b/eng/Toolkit.Packaging.targets index ae47b37d5..6491b60c4 100644 --- a/eng/Toolkit.Packaging.targets +++ b/eng/Toolkit.Packaging.targets @@ -78,10 +78,12 @@ - + <_NonReferencingProjectPackageFile Include="@(NonReferencingProjectBuildOutput->ClearMetadata())"> $([System.IO.Path]::Combine('analyzers', 'dotnet', '%(TargetCompiler)', '%(TargetLanguage)')) - $([System.IO.Path]::Combine('tools', '%(TargetFramework)')) - + $([System.IO.Path]::Combine('tools', '%(TargetFramework)')) + + + <_NonReferencingProjectPackageFile Remove="@(_NonReferencingProjectPackageFile)" /> From 49860412118dea240d7a3551fe2aefed57070636 Mon Sep 17 00:00:00 2001 From: Nirmal Guru Date: Sat, 31 Jul 2021 10:10:10 +0530 Subject: [PATCH 11/13] Use Repository Root path for all the things The new Output paths point to... Build : `build\{bin,obj}` Pack : `packages` Publish : `publish` Restore : `build\ext` Test : `build\TestResults` with-in the repository root directory. --- .gitignore | 5 +++++ Directory.Build.props | 2 ++ Directory.Solution.props | 7 ++++++ azure-pipelines.yml | 6 +++--- eng/Toolkit.Common.props | 31 +++++++++++++++++++++++++++ eng/Toolkit.Common.targets | 5 +++++ eng/Toolkit.CompilerTargeting.props | 2 +- eng/Toolkit.CompilerTargeting.targets | 2 +- src/Directory.Build.props | 1 - 9 files changed, 55 insertions(+), 6 deletions(-) create mode 100644 Directory.Solution.props diff --git a/.gitignore b/.gitignore index 84ce9d618..e2b04e560 100644 --- a/.gitignore +++ b/.gitignore @@ -8,6 +8,11 @@ *.userosscache *.sln.docstates +# Working folders +[Bb]uild/ +[Pp]ublish/ +[Pp]ackages/ + # Build results [Bb]in/ [Oo]bj/ diff --git a/Directory.Build.props b/Directory.Build.props index ff806bb95..fe83f82f1 100644 --- a/Directory.Build.props +++ b/Directory.Build.props @@ -1,5 +1,7 @@ + + $(MSBuildThisFileDirectory) $(RepositoryDirectory)eng\ diff --git a/Directory.Solution.props b/Directory.Solution.props new file mode 100644 index 000000000..21aaf500b --- /dev/null +++ b/Directory.Solution.props @@ -0,0 +1,7 @@ + + + + True + + + \ No newline at end of file diff --git a/azure-pipelines.yml b/azure-pipelines.yml index 28e2b003d..6719cc15d 100644 --- a/azure-pipelines.yml +++ b/azure-pipelines.yml @@ -70,7 +70,7 @@ jobs: displayName: Publish test results inputs: testResultsFormat: VSTest - testResultsFiles: '**/TestResults/VSTestResults*.trx' + testResultsFiles: build/*/TestResults/VSTestResults*.trx condition: always() # Pack solution @@ -83,10 +83,10 @@ jobs: env: SignClientUser: $(SignClientUser) SignClientSecret: $(SignClientSecret) - ArtifactDirectory: bin/nupkg + ArtifactDirectory: packages condition: and(succeeded(), ne(variables['Build.Reason'], 'PullRequest'), ne(variables['SignClientUser'], ''), ne(variables['SignClientSecret'], '')) # Publish build artifacts - - publish: bin/nupkg + - publish: packages artifact: Packages displayName: Publish package artifacts diff --git a/eng/Toolkit.Common.props b/eng/Toolkit.Common.props index d272cf8c5..b2c79c3b2 100644 --- a/eng/Toolkit.Common.props +++ b/eng/Toolkit.Common.props @@ -28,6 +28,22 @@ $([System.IO.File]::ReadAllText($(AssemblySignPublicKeyFile))) + + + $(RepositoryDirectory)build\ + + $(RepositoryDirectory)publish\ + + $(BuildDir)ext\ + + $(RepositoryDirectory)build\ + $(RepositoryDirectory)packages\ + + + + $(MSBuildProjectName.Replace('CommunityToolkit.', '')) + + True @@ -39,4 +55,19 @@ + + + $(BuildDir)$(ProjectDirName)\ + $(BuildDir)bin\ + $(BuildDir)obj\ + + $(BuildDir)ext\ + $(MSBuildProjectExtensionsPath)$(TargetCompiler)\ + $(MSBuildProjectExtensionsPath) + + $(PublishDir)$(ProjectDirName)\ + + $(BuildDir)TestResults\ + + \ No newline at end of file diff --git a/eng/Toolkit.Common.targets b/eng/Toolkit.Common.targets index e82e4b835..7e8d803b5 100644 --- a/eng/Toolkit.Common.targets +++ b/eng/Toolkit.Common.targets @@ -19,6 +19,11 @@ $(CommonTags) + + + $(BuildDir)**;$(PublishDir)**;$(DefaultItemExcludes) + + diff --git a/eng/Toolkit.CompilerTargeting.props b/eng/Toolkit.CompilerTargeting.props index 70a4f60d3..d39964538 100644 --- a/eng/Toolkit.CompilerTargeting.props +++ b/eng/Toolkit.CompilerTargeting.props @@ -55,7 +55,7 @@ - $([System.IO.Path]::Combine('obj', '$(TargetCompiler)')) + $(ProjectDirName.Replace('.$(TargetCompilerIdentifier)$(_ShortCompilerVersion)', '')) diff --git a/eng/Toolkit.CompilerTargeting.targets b/eng/Toolkit.CompilerTargeting.targets index 3a1d95340..fcfe0338e 100644 --- a/eng/Toolkit.CompilerTargeting.targets +++ b/eng/Toolkit.CompilerTargeting.targets @@ -1,7 +1,7 @@ - $([System.IO.Path]::Combine('$(BaseOutputPath)', 'TestResults')) + $([System.IO.Path]::Combine('$(BaseOutputPath)', 'TestResults')) diff --git a/src/Directory.Build.props b/src/Directory.Build.props index 8023415b2..16dbe9389 100644 --- a/src/Directory.Build.props +++ b/src/Directory.Build.props @@ -7,7 +7,6 @@ true true true - $(RepositoryDirectory)bin\nupkg true From a09e743448a12b37f6564f17fa6d1254bce21804 Mon Sep 17 00:00:00 2001 From: Nirmal Guru Date: Sat, 31 Jul 2021 11:11:11 +0530 Subject: [PATCH 12/13] Manage Dependencies centrally Manage Packages Centrally using NuGet's CPVM feature. This uses `Directory.Packages.props` to store the package versions in one file. --- Directory.Build.props | 4 +- Directory.Packages.props | 47 +++++++++++++++++++ Directory.Solution.props | 1 + .../CommunityToolkit.Diagnostics.csproj | 4 +- .../CommunityToolkit.HighPerformance.csproj | 10 ++-- ...lkit.Mvvm.SourceGenerators.Roslyn40.csproj | 2 +- ...lkit.Mvvm.SourceGenerators.Roslyn43.csproj | 2 +- .../CommunityToolkit.Mvvm.csproj | 12 ++--- src/Directory.Build.props | 2 +- ...SourceGenerators.Roslyn40.UnitTests.csproj | 4 +- ...SourceGenerators.Roslyn43.UnitTests.csproj | 4 +- ...nityToolkit.Mvvm.Roslyn40.UnitTests.csproj | 6 +-- ...nityToolkit.Mvvm.Roslyn43.UnitTests.csproj | 6 +-- tests/Directory.Build.targets | 6 +-- 14 files changed, 79 insertions(+), 31 deletions(-) create mode 100644 Directory.Packages.props diff --git a/Directory.Build.props b/Directory.Build.props index fe83f82f1..fedcf4924 100644 --- a/Directory.Build.props +++ b/Directory.Build.props @@ -10,7 +10,7 @@ - + @@ -24,7 +24,7 @@ .pdb - + diff --git a/Directory.Packages.props b/Directory.Packages.props new file mode 100644 index 000000000..f32ff7828 --- /dev/null +++ b/Directory.Packages.props @@ -0,0 +1,47 @@ + + + + 2.0.3 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/Directory.Solution.props b/Directory.Solution.props index 21aaf500b..c5c2f2c15 100644 --- a/Directory.Solution.props +++ b/Directory.Solution.props @@ -1,6 +1,7 @@ + True True diff --git a/src/CommunityToolkit.Diagnostics/CommunityToolkit.Diagnostics.csproj b/src/CommunityToolkit.Diagnostics/CommunityToolkit.Diagnostics.csproj index c90690c1d..f567acc4c 100644 --- a/src/CommunityToolkit.Diagnostics/CommunityToolkit.Diagnostics.csproj +++ b/src/CommunityToolkit.Diagnostics/CommunityToolkit.Diagnostics.csproj @@ -31,14 +31,14 @@ - + - + diff --git a/src/CommunityToolkit.HighPerformance/CommunityToolkit.HighPerformance.csproj b/src/CommunityToolkit.HighPerformance/CommunityToolkit.HighPerformance.csproj index 6a270dd13..0e7c33900 100644 --- a/src/CommunityToolkit.HighPerformance/CommunityToolkit.HighPerformance.csproj +++ b/src/CommunityToolkit.HighPerformance/CommunityToolkit.HighPerformance.csproj @@ -44,17 +44,17 @@ - - - - + + + + - + diff --git a/src/CommunityToolkit.Mvvm.SourceGenerators/CommunityToolkit.Mvvm.SourceGenerators.Roslyn40.csproj b/src/CommunityToolkit.Mvvm.SourceGenerators/CommunityToolkit.Mvvm.SourceGenerators.Roslyn40.csproj index 51b69d2bb..469d1de1d 100644 --- a/src/CommunityToolkit.Mvvm.SourceGenerators/CommunityToolkit.Mvvm.SourceGenerators.Roslyn40.csproj +++ b/src/CommunityToolkit.Mvvm.SourceGenerators/CommunityToolkit.Mvvm.SourceGenerators.Roslyn40.csproj @@ -25,7 +25,7 @@ - + \ No newline at end of file diff --git a/src/CommunityToolkit.Mvvm.SourceGenerators/CommunityToolkit.Mvvm.SourceGenerators.Roslyn43.csproj b/src/CommunityToolkit.Mvvm.SourceGenerators/CommunityToolkit.Mvvm.SourceGenerators.Roslyn43.csproj index 158dea734..b713efb10 100644 --- a/src/CommunityToolkit.Mvvm.SourceGenerators/CommunityToolkit.Mvvm.SourceGenerators.Roslyn43.csproj +++ b/src/CommunityToolkit.Mvvm.SourceGenerators/CommunityToolkit.Mvvm.SourceGenerators.Roslyn43.csproj @@ -25,7 +25,7 @@ - + \ No newline at end of file diff --git a/src/CommunityToolkit.Mvvm/CommunityToolkit.Mvvm.csproj b/src/CommunityToolkit.Mvvm/CommunityToolkit.Mvvm.csproj index bdeb15f04..82cec042e 100644 --- a/src/CommunityToolkit.Mvvm/CommunityToolkit.Mvvm.csproj +++ b/src/CommunityToolkit.Mvvm/CommunityToolkit.Mvvm.csproj @@ -53,16 +53,16 @@ - - - - + + + + - - + + diff --git a/src/Directory.Build.props b/src/Directory.Build.props index 16dbe9389..16a1b7303 100644 --- a/src/Directory.Build.props +++ b/src/Directory.Build.props @@ -12,7 +12,7 @@ - + diff --git a/tests/CommunityToolkit.Mvvm.SourceGenerators.UnitTests/CommunityToolkit.Mvvm.SourceGenerators.Roslyn40.UnitTests.csproj b/tests/CommunityToolkit.Mvvm.SourceGenerators.UnitTests/CommunityToolkit.Mvvm.SourceGenerators.Roslyn40.UnitTests.csproj index cacc84300..ab4a64e81 100644 --- a/tests/CommunityToolkit.Mvvm.SourceGenerators.UnitTests/CommunityToolkit.Mvvm.SourceGenerators.Roslyn40.UnitTests.csproj +++ b/tests/CommunityToolkit.Mvvm.SourceGenerators.UnitTests/CommunityToolkit.Mvvm.SourceGenerators.Roslyn40.UnitTests.csproj @@ -10,8 +10,8 @@ - - + + \ No newline at end of file diff --git a/tests/CommunityToolkit.Mvvm.SourceGenerators.UnitTests/CommunityToolkit.Mvvm.SourceGenerators.Roslyn43.UnitTests.csproj b/tests/CommunityToolkit.Mvvm.SourceGenerators.UnitTests/CommunityToolkit.Mvvm.SourceGenerators.Roslyn43.UnitTests.csproj index 3c8d75b42..1a68de66a 100644 --- a/tests/CommunityToolkit.Mvvm.SourceGenerators.UnitTests/CommunityToolkit.Mvvm.SourceGenerators.Roslyn43.UnitTests.csproj +++ b/tests/CommunityToolkit.Mvvm.SourceGenerators.UnitTests/CommunityToolkit.Mvvm.SourceGenerators.Roslyn43.UnitTests.csproj @@ -10,8 +10,8 @@ - - + + \ No newline at end of file diff --git a/tests/CommunityToolkit.Mvvm.UnitTests/CommunityToolkit.Mvvm.Roslyn40.UnitTests.csproj b/tests/CommunityToolkit.Mvvm.UnitTests/CommunityToolkit.Mvvm.Roslyn40.UnitTests.csproj index 1fd4912be..dfa143b8e 100644 --- a/tests/CommunityToolkit.Mvvm.UnitTests/CommunityToolkit.Mvvm.Roslyn40.UnitTests.csproj +++ b/tests/CommunityToolkit.Mvvm.UnitTests/CommunityToolkit.Mvvm.Roslyn40.UnitTests.csproj @@ -13,9 +13,9 @@ - - - + + + \ No newline at end of file diff --git a/tests/CommunityToolkit.Mvvm.UnitTests/CommunityToolkit.Mvvm.Roslyn43.UnitTests.csproj b/tests/CommunityToolkit.Mvvm.UnitTests/CommunityToolkit.Mvvm.Roslyn43.UnitTests.csproj index da70b4faf..137dc620e 100644 --- a/tests/CommunityToolkit.Mvvm.UnitTests/CommunityToolkit.Mvvm.Roslyn43.UnitTests.csproj +++ b/tests/CommunityToolkit.Mvvm.UnitTests/CommunityToolkit.Mvvm.Roslyn43.UnitTests.csproj @@ -13,9 +13,9 @@ - - - + + + \ No newline at end of file diff --git a/tests/Directory.Build.targets b/tests/Directory.Build.targets index e7f220069..c4206928b 100644 --- a/tests/Directory.Build.targets +++ b/tests/Directory.Build.targets @@ -4,9 +4,9 @@ - - - + + + \ No newline at end of file From 3bdae22953ca5e0fcca8326b49baad3cd3985c73 Mon Sep 17 00:00:00 2001 From: Nirmal Guru Date: Sat, 31 Jul 2021 11:11:22 +0530 Subject: [PATCH 13/13] Use recommended Compiler options - Features: Strict Setting this ensures that we won't fall into compiler bugs when using latest features. - LangVersion: Latest Setting this ensures that we always compile against latest version against the using SDK. --- eng/Toolkit.Common.props | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/eng/Toolkit.Common.props b/eng/Toolkit.Common.props index b2c79c3b2..5cb0d4525 100644 --- a/eng/Toolkit.Common.props +++ b/eng/Toolkit.Common.props @@ -7,8 +7,9 @@ + Strict Enable - 11.0 + Latest true