diff --git a/.gitignore b/.gitignore
index 45cc92d1..e2b04e56 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/
@@ -28,14 +33,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 +57,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 +104,7 @@ StyleCopReport.xml
*.tlog
*.vspscc
*.vssscc
-.builds
+*.builds
*.pidb
*.svclog
*.scc
@@ -177,7 +186,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/CommunityToolkit.sln b/CommunityToolkit.sln
new file mode 100644
index 00000000..013b4296
--- /dev/null
+++ b/CommunityToolkit.sln
@@ -0,0 +1,201 @@
+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio Version 17
+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
+ .gitignore = .gitignore
+ .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("{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
+ 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}"
+ ProjectSection(SolutionItems) = preProject
+ Code-of-Conduct.md = Code-of-Conduct.md
+ Contributing.md = Contributing.md
+ License.md = License.md
+ ReadMe.md = ReadMe.md
+ 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.HighPerformance", "src\CommunityToolkit.HighPerformance\CommunityToolkit.HighPerformance.csproj", "{7E30D48C-4CD8-47BE-B557-10A20391DCC4}"
+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.Mvvm.SourceGenerators.Roslyn40", "src\CommunityToolkit.Mvvm.SourceGenerators\CommunityToolkit.Mvvm.SourceGenerators.Roslyn40.csproj", "{E24D1146-5AD8-498F-A518-4890D8BF4937}"
+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
+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("{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("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Targeting Roslyn 4.0", "Targeting Roslyn 4.0", "{6640D447-C28D-4DBB-91F4-3ADCE0CA64AD}"
+EndProject
+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.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.DisableINotifyPropertyChanging.Roslyn40.UnitTests", "tests\CommunityToolkit.Mvvm.DisableINotifyPropertyChanging.UnitTests\CommunityToolkit.Mvvm.DisableINotifyPropertyChanging.Roslyn40.UnitTests.csproj", "{9E09DA49-4389-4ECE-8B68-EBDB1221DA90}"
+EndProject
+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("{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.Roslyn43.UnitTests", "tests\CommunityToolkit.Mvvm.UnitTests\CommunityToolkit.Mvvm.Roslyn43.UnitTests.csproj", "{5B44F7F1-DCA2-4776-924E-A266F7BBF753}"
+EndProject
+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.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.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
+ Release|Any CPU = Release|Any CPU
+ 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}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {6FE128A8-CEFA-4A61-A987-EC92DE6B538E}.Release|Any CPU.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}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {76F89522-CA28-458D-801D-947AB033A758}.Release|Any CPU.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}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {E24D1146-5AD8-498F-A518-4890D8BF4937}.Release|Any CPU.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}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {17522D0B-CA70-40B6-AFD8-8B8D45E75D92}.Release|Any CPU.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}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {743D74BA-12AE-4639-AD77-B9DDA9C03255}.Release|Any CPU.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}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {AD9C3223-8E37-4FD4-A0D4-A45119551D3A}.Release|Any CPU.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}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {F3799252-7A66-4533-89D8-B3C312052D95}.Release|Any CPU.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}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {ECFE93AA-4B98-4292-B3FA-9430D513B4F9}.Release|Any CPU.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}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {4FCD501C-1BB5-465C-AD19-356DAB6600C6}.Release|Any CPU.Build.0 = Release|Any CPU
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+ GlobalSection(NestedProjects) = preSolution
+ {CD16E790-7B7B-411E-9CE7-768E759CC22D} = {CFA75BE0-5A44-45DE-8114-426A605B062B}
+ {88C6FFBE-322D-4CEA-842B-B2CB281D357D} = {CFA75BE0-5A44-45DE-8114-426A605B062B}
+ {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}
+ {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}
+ {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
+EndGlobal
diff --git a/Directory.Build.props b/Directory.Build.props
index 37e8c342..fedcf492 100644
--- a/Directory.Build.props
+++ b/Directory.Build.props
@@ -1,31 +1,16 @@
+
+
$(MSBuildThisFileDirectory)
- $(RepositoryDirectory)build\
+ $(RepositoryDirectory)eng\
-
-
-
-
-
- true
- $(RepositoryDirectory)bin\nupkg
- true
-
-
-
-
- false
- false
- $(NoWarn);CS8002;SA0001
-
-
-
+
-
+
@@ -36,10 +21,10 @@
true
- $(AllowedOutputExtensionsInPackageBuildOutputFolder);.pdb
+ .pdb
-
+
diff --git a/Directory.Build.rsp b/Directory.Build.rsp
new file mode 100644
index 00000000..1dd5ed52
--- /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/Directory.Build.targets b/Directory.Build.targets
index c51d83ac..7c46a107 100644
--- a/Directory.Build.targets
+++ b/Directory.Build.targets
@@ -1,7 +1,12 @@
-
+
+
diff --git a/Directory.Packages.props b/Directory.Packages.props
new file mode 100644
index 00000000..f32ff782
--- /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
new file mode 100644
index 00000000..c5c2f2c1
--- /dev/null
+++ b/Directory.Solution.props
@@ -0,0 +1,8 @@
+
+
+
+ True
+ True
+
+
+
\ No newline at end of file
diff --git a/README.md b/ReadMe.md
similarity index 98%
rename from README.md
rename to ReadMe.md
index e1d670d7..6476895d 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 ea8b9da1..1010bb50 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 4738052b..6719cc15 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
@@ -78,15 +78,15 @@ jobs:
displayName: Pack solution
# Sign packages
- - pwsh: build/Sign-Package.ps1
+ - pwsh: eng/Sign-Package.ps1
displayName: Authenticode sign packages
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/build/Community.Toolkit.Common.props b/build/Community.Toolkit.Common.props
deleted file mode 100644
index a43ae645..00000000
--- a/build/Community.Toolkit.Common.props
+++ /dev/null
@@ -1,52 +0,0 @@
-
-
-
- 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
- https://raw.githubusercontent.com/CommunityToolkit/dotnet/main/build/nuget.png
-
-
-
- true
-
-
-
- true
- 11.0
- enable
-
-
- $(NoWarn);CS8500
-
-
-
- true
- $(RepositoryDirectory)toolkit.snk
- 002400000480000094000000060200000024000052534131000400000100010041753AF735AE6140C9508567666C51C6AB929806ADB0D210694B30AB142A060237BC741F9682E7D8D4310364B4BBA4EE89CC9D3D5CE7E5583587E8EA44DCA09977996582875E71FB54FA7B170798D853D5D8010B07219633BDB761D01AC924DA44576D6180CDCEAE537973982BB461C541541D58417A3794E34F45E6F2D129E2
-
-
-
- $(MSBuildProjectName.Contains('Test'))
- False
- True
-
-
-
- true
- true
- $(TF_BUILD)
-
-
-
\ No newline at end of file
diff --git a/build/Community.Toolkit.Common.targets b/build/Community.Toolkit.Common.targets
deleted file mode 100644
index f34ab2ab..00000000
--- a/build/Community.Toolkit.Common.targets
+++ /dev/null
@@ -1,20 +0,0 @@
-
-
-
-
- $(Product) Asset
-
-
-
- $(CommonTags);.NET
- $(CommonTags);$(PackageTags)
- $(CommonTags)
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/dotnet Community Toolkit.sln b/dotnet Community Toolkit.sln
deleted file mode 100644
index 8e1b6174..00000000
--- a/dotnet Community Toolkit.sln
+++ /dev/null
@@ -1,478 +0,0 @@
-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}"
- ProjectSection(SolutionItems) = preProject
- .editorconfig = .editorconfig
- .gitattributes = .gitattributes
- .gitignore = .gitignore
- .runsettings = .runsettings
- 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
-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}"
-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
- Contributing.md = Contributing.md
- License.md = License.md
- README.md = README.md
- ThirdPartyNotices.txt = ThirdPartyNotices.txt
- EndProjectSection
-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}"
-EndProject
-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.Common.UnitTests", "tests\CommunityToolkit.Common.UnitTests\CommunityToolkit.Common.UnitTests.csproj", "{17522D0B-CA70-40B6-AFD8-8B8D45E75D92}"
-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
- EndProjectSection
-EndProject
-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Configuration", "Configuration", "{6640D447-C28D-4DBB-91F4-3ADCE0CA64AD}"
-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}"
-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}"
-EndProject
-Project("{D954291E-2A0B-460D-934E-DC6B0785DB48}") = "CommunityToolkit.Mvvm.SourceGenerators", "src\CommunityToolkit.Mvvm.SourceGenerators\CommunityToolkit.Mvvm.SourceGenerators.shproj", "{5E7F1212-A54B-40CA-98C5-1FF5CD1A1638}"
-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}"
-EndProject
-Project("{D954291E-2A0B-460D-934E-DC6B0785DB48}") = "CommunityToolkit.Mvvm.UnitTests", "tests\CommunityToolkit.Mvvm.UnitTests\CommunityToolkit.Mvvm.UnitTests.shproj", "{B8DCD82E-B53B-4249-AD4E-F9B99ACB9334}"
-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}"
-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}"
-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}"
-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}"
-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}"
-EndProject
-Project("{D954291E-2A0B-460D-934E-DC6B0785DB48}") = "CommunityToolkit.Mvvm.ExternalAssembly", "tests\CommunityToolkit.Mvvm.ExternalAssembly\CommunityToolkit.Mvvm.ExternalAssembly.shproj", "{E827A9CD-405F-43E4-84C7-68CC7E845CDC}"
-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}"
-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}"
-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
- {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
- {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
- {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
- {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
- {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}
- {88C6FFBE-322D-4CEA-842B-B2CB281D357D} = {CFA75BE0-5A44-45DE-8114-426A605B062B}
- {35E48D4D-6433-4B70-98A9-BA544921EE04} = {B30036C4-D514-4E5B-A323-587A061772CE}
- {17522D0B-CA70-40B6-AFD8-8B8D45E75D92} = {B30036C4-D514-4E5B-A323-587A061772CE}
- {CD16E790-7B7B-411E-9CE7-768E759CC22D} = {CFA75BE0-5A44-45DE-8114-426A605B062B}
- {6640D447-C28D-4DBB-91F4-3ADCE0CA64AD} = {B30036C4-D514-4E5B-A323-587A061772CE}
- {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}
- 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/eng/AssemblyInfo.Shared.cs b/eng/AssemblyInfo.Shared.cs
new file mode 100644
index 00000000..db039692
--- /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/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/eng/Toolkit.Common.props b/eng/Toolkit.Common.props
new file mode 100644
index 00000000..5cb0d452
--- /dev/null
+++ b/eng/Toolkit.Common.props
@@ -0,0 +1,74 @@
+
+
+
+ true
+ $(TF_BUILD)
+ $(ContinuousIntegrationBuild)
+
+
+
+ Strict
+ Enable
+ Latest
+ true
+
+
+
+
+ $(NoWarn);CS8500
+
+
+
+ true
+ $(MSBuildThisFileDirectory)toolkit.snk
+ $(MSBuildThisFileDirectory)toolkit.spk
+ $([System.IO.File]::ReadAllText($(AssemblySignPublicKeyFile)))
+
+
+
+
+ $(RepositoryDirectory)build\
+
+ $(RepositoryDirectory)publish\
+
+ $(BuildDir)ext\
+
+ $(RepositoryDirectory)build\
+ $(RepositoryDirectory)packages\
+
+
+
+ $(MSBuildProjectName.Replace('CommunityToolkit.', ''))
+
+
+
+
+ True
+ Roslyn
+
+ 4.0;4.1;4.2;4.3;4.4;4.5
+
+
+
+
+
+
+
+ $(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
new file mode 100644
index 00000000..7e8d803b
--- /dev/null
+++ b/eng/Toolkit.Common.targets
@@ -0,0 +1,55 @@
+
+
+
+ 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);$(PackageTags)
+ $(CommonTags)
+
+
+
+
+ $(BuildDir)**;$(PublishDir)**;$(DefaultItemExcludes)
+
+
+
+
+
+
+
+
+
+
+ <_ToolkitTargetFrameworkVersion>$([MSBuild]::GetTargetFrameworkVersion($(TargetFramework)))
+ <_NET_6_OR_GREATER>$([MSBuild]::VersionGreaterThanOrEquals($(_ToolkitTargetFrameworkVersion), '6.0'))
+
+
+
+
+
+
+
+ $(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 00000000..d3996453
--- /dev/null
+++ b/eng/Toolkit.CompilerTargeting.props
@@ -0,0 +1,66 @@
+
+
+
+
+
+
+ <_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)
+
+
+
+
+ cs
+ fs
+ vb
+
+
+
+
+ $(MSBuildProjectName.Replace('.$(TargetCompilerIdentifier)$(_ShortCompilerVersion)', ''))
+ $(ProjectName)
+ $(ProjectName)
+
+
+
+
+ $(ProjectDirName.Replace('.$(TargetCompilerIdentifier)$(_ShortCompilerVersion)', ''))
+
+
+
+
+ $(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 00000000..fcfe0338
--- /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/eng/Toolkit.CustomAfterCommon.targets b/eng/Toolkit.CustomAfterCommon.targets
new file mode 100644
index 00000000..a46ddbd8
--- /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 00000000..25aa0041
--- /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.props b/eng/Toolkit.Packaging.props
new file mode 100644
index 00000000..88acb520
--- /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 00000000..6491b60c
--- /dev/null
+++ b/eng/Toolkit.Packaging.targets
@@ -0,0 +1,90 @@
+
+
+
+
+ _GetNonReferencingProjectBuildOutputs;_AddGlobalPackageFilesToNuGetPack;$(GenerateNuSpecDependsOn)
+ _AddPackageFilesPerTargetFrameworkToNuGetPack
+
+
+
+
+
+
+
+ <_PackageFiles Include="@(PackageFile)" Exclude="@(PackageFile->WithMetadataValue('IsSpecific', 'true'))" Condition="'%(PackageFile.Pack)' != 'false'">
+ %(PackageFile.TargetPath)
+
+
+
+
+
+
+
+
+
+
+ %(PackageFile.TargetPath)
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <_NonReferencingProjectPackageFile Include="@(NonReferencingProjectBuildOutput->ClearMetadata())">
+ $([System.IO.Path]::Combine('analyzers', 'dotnet', '%(TargetCompiler)', '%(TargetLanguage)'))
+ $([System.IO.Path]::Combine('tools', '%(TargetFramework)'))
+
+
+ <_NonReferencingProjectPackageFile Remove="@(_NonReferencingProjectPackageFile)" />
+
+
+
+
\ No newline at end of file
diff --git a/eng/Toolkit.TextTemplates.targets b/eng/Toolkit.TextTemplates.targets
new file mode 100644
index 00000000..abf76ca3
--- /dev/null
+++ b/eng/Toolkit.TextTemplates.targets
@@ -0,0 +1,25 @@
+
+
+
+
+
+
+
+
+
+
+ TextTemplatingFileGenerator
+ %(Filename).g.cs
+
+
+
+
+
+
+ True
+ True
+ $([System.IO.Path]::ChangeExtension(%(Filename), '.tt'))
+
+
+
+
\ No newline at end of file
diff --git a/toolkit.snk b/eng/toolkit.snk
similarity index 100%
rename from toolkit.snk
rename to eng/toolkit.snk
diff --git a/eng/toolkit.spk b/eng/toolkit.spk
new file mode 100644
index 00000000..174f6f55
--- /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 6cd510f1..f567acc4 100644
--- a/src/CommunityToolkit.Diagnostics/CommunityToolkit.Diagnostics.csproj
+++ b/src/CommunityToolkit.Diagnostics/CommunityToolkit.Diagnostics.csproj
@@ -14,80 +14,39 @@
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;
+
+
+
-
+
-
+
-
-
-
- System.Diagnostics.CodeAnalysis.DoesNotReturnAttribute;
- System.Diagnostics.CodeAnalysis.DoesNotReturnIfAttribute;
- System.Diagnostics.CodeAnalysis.NotNullAttribute;
- System.Diagnostics.StackTraceHiddenAttribute;
- System.Runtime.CompilerServices.CallerArgumentExpressionAttribute;
- System.Runtime.CompilerServices.SkipLocalsInitAttribute;
-
-
-
-
-
- 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/CommunityToolkit.HighPerformance/CommunityToolkit.HighPerformance.csproj b/src/CommunityToolkit.HighPerformance/CommunityToolkit.HighPerformance.csproj
index 1639b330..0e7c3390 100644
--- a/src/CommunityToolkit.HighPerformance/CommunityToolkit.HighPerformance.csproj
+++ b/src/CommunityToolkit.HighPerformance/CommunityToolkit.HighPerformance.csproj
@@ -25,38 +25,38 @@
Parallel;Performance;Unsafe;Span;Memory;String;StringPool;Array;Stream;Buffer;Extensions;Helpers
+
+
+
+ System.Diagnostics.CodeAnalysis.NotNullAttribute;
+ System.Diagnostics.CodeAnalysis.NotNullWhenAttribute;
+ System.Runtime.CompilerServices.SkipLocalsInitAttribute;
+
+
+
-
+
-
-
-
-
+
-
+
-
+
+
+
+
-
+
-
-
-
- System.Diagnostics.CodeAnalysis.NotNullAttribute;
- System.Diagnostics.CodeAnalysis.NotNullWhenAttribute;
- System.Runtime.CompilerServices.SkipLocalsInitAttribute;
-
-
-
\ 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 d19620f5..00000000
--- 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 3cea30b3..00000000
--- 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 00000000..469d1de1
--- /dev/null
+++ b/src/CommunityToolkit.Mvvm.SourceGenerators/CommunityToolkit.Mvvm.SourceGenerators.Roslyn40.csproj
@@ -0,0 +1,31 @@
+
+
+
+ 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 00000000..b713efb1
--- /dev/null
+++ b/src/CommunityToolkit.Mvvm.SourceGenerators/CommunityToolkit.Mvvm.SourceGenerators.Roslyn43.csproj
@@ -0,0 +1,31 @@
+
+
+
+ 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 405e84cf..00000000
--- 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 c3130e01..00000000
--- 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 a9dfb1cf..00000000
--- 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 a54073fd..3c870e57 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 0f75fdf4..16a19f57 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 44a94982..474da134 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 43adfb76..82cec042 100644
--- a/src/CommunityToolkit.Mvvm/CommunityToolkit.Mvvm.csproj
+++ b/src/CommunityToolkit.Mvvm/CommunityToolkit.Mvvm.csproj
@@ -20,31 +20,6 @@
MVVM;Toolkit;MVVMToolkit;INotifyPropertyChanged;Observable;IOC;DI;Dependency Injection;Object Messaging;Extensions;Helpers
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
@@ -62,20 +37,51 @@
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
+
+
+
+
+
-
-
-
+
+
+
+
+
+
+
+
+ true
+
+
\ No newline at end of file
diff --git a/src/CommunityToolkit.Mvvm/CommunityToolkit.Mvvm.targets b/src/CommunityToolkit.Mvvm/CommunityToolkit.Mvvm.targets
index c2fd56e3..ff1a5189 100644
--- a/src/CommunityToolkit.Mvvm/CommunityToolkit.Mvvm.targets
+++ b/src/CommunityToolkit.Mvvm/CommunityToolkit.Mvvm.targets
@@ -1,85 +1,93 @@
-
-
+
+
-
+
-
+ DependsOnTargets="MVVMToolkit_GatherAnalyzers">
-
-
-
+
+
+
+
+ @(MVVMToolkit_CurrentCompilerAssemblyIdentity->%(Version))
-
- @(MVVMToolkitCurrentCompilerAssemblyIdentity->'%(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 f3c2112a..16a1b730 100644
--- a/src/Directory.Build.props
+++ b/src/Directory.Build.props
@@ -1,11 +1,26 @@
-
+
+
+
+
+
+ true
+ true
+ true
+ true
+
-
- all
- build; analyzers
-
+
+
+
+
+ $(BuildToolsDirectory)Toolkit.CustomAfterCommon.targets
+
+
+
+
+
\ No newline at end of file
diff --git a/src/Directory.Build.targets b/src/Directory.Build.targets
index 36dde4ce..e2ca0d23 100644
--- a/src/Directory.Build.targets
+++ b/src/Directory.Build.targets
@@ -1,55 +1,26 @@
-
-
-
-
- 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/CommunityToolkit.Common.UnitTests/CommunityToolkit.Common.UnitTests.csproj b/tests/CommunityToolkit.Common.UnitTests/CommunityToolkit.Common.UnitTests.csproj
index 3436db96..56e9ee2f 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 c1f33bdb..fe56e0c5 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 cd84ec4a..6023352e 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
new file mode 100644
index 00000000..4fed6163
--- /dev/null
+++ b/tests/CommunityToolkit.Mvvm.DisableINotifyPropertyChanging.UnitTests/CommunityToolkit.Mvvm.DisableINotifyPropertyChanging.Roslyn40.UnitTests.csproj
@@ -0,0 +1,13 @@
+
+
+
+ net472;net6.0;net7.0
+
+
+
+
+
+
+
+
\ 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 00000000..87602241
--- /dev/null
+++ b/tests/CommunityToolkit.Mvvm.DisableINotifyPropertyChanging.UnitTests/CommunityToolkit.Mvvm.DisableINotifyPropertyChanging.Roslyn43.UnitTests.csproj
@@ -0,0 +1,13 @@
+
+
+
+ net472;net6.0;net7.0
+
+
+
+
+
+
+
+
\ 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.UnitTests.csproj
deleted file mode 100644
index 4a949f09..00000000
--- a/tests/CommunityToolkit.Mvvm.DisableINotifyPropertyChanging.UnitTests/CommunityToolkit.Mvvm.DisableINotifyPropertyChanging.UnitTests.csproj
+++ /dev/null
@@ -1,18 +0,0 @@
-
-
-
- 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.Roslyn401/CommunityToolkit.Mvvm.ExternalAssembly.Roslyn401.csproj
deleted file mode 100644
index ee36d9f0..00000000
--- a/tests/CommunityToolkit.Mvvm.ExternalAssembly.Roslyn401/CommunityToolkit.Mvvm.ExternalAssembly.Roslyn401.csproj
+++ /dev/null
@@ -1,22 +0,0 @@
-
-
-
- netstandard2.0
-
-
-
-
- false
- false
- $(NoWarn);CS8002;SA0001
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/tests/CommunityToolkit.Mvvm.ExternalAssembly.Roslyn431/CommunityToolkit.Mvvm.ExternalAssembly.Roslyn431.csproj b/tests/CommunityToolkit.Mvvm.ExternalAssembly.Roslyn431/CommunityToolkit.Mvvm.ExternalAssembly.Roslyn431.csproj
deleted file mode 100644
index 164e42e5..00000000
--- a/tests/CommunityToolkit.Mvvm.ExternalAssembly.Roslyn431/CommunityToolkit.Mvvm.ExternalAssembly.Roslyn431.csproj
+++ /dev/null
@@ -1,20 +0,0 @@
-
-
-
- netstandard2.0
-
-
-
- false
- false
- $(NoWarn);CS8002;SA0001
-
-
-
-
-
-
-
-
-
-
\ 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
new file mode 100644
index 00000000..35e52c80
--- /dev/null
+++ b/tests/CommunityToolkit.Mvvm.ExternalAssembly/CommunityToolkit.Mvvm.ExternalAssembly.Roslyn40.csproj
@@ -0,0 +1,13 @@
+
+
+
+ netstandard2.0
+
+
+
+
+
+
+
+
\ 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
new file mode 100644
index 00000000..d9216fdf
--- /dev/null
+++ b/tests/CommunityToolkit.Mvvm.ExternalAssembly/CommunityToolkit.Mvvm.ExternalAssembly.Roslyn43.csproj
@@ -0,0 +1,13 @@
+
+
+
+ netstandard2.0
+
+
+
+
+
+
+
+
\ 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 c4ecf6dc..00000000
--- 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 fd605fe4..00000000
--- 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.Internals.UnitTests/CommunityToolkit.Mvvm.Internals.UnitTests.csproj b/tests/CommunityToolkit.Mvvm.Internals.UnitTests/CommunityToolkit.Mvvm.Internals.UnitTests.csproj
index a1cecde7..a16e385e 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.Roslyn401.UnitTests/CommunityToolkit.Mvvm.Roslyn401.UnitTests.csproj b/tests/CommunityToolkit.Mvvm.Roslyn401.UnitTests/CommunityToolkit.Mvvm.Roslyn401.UnitTests.csproj
deleted file mode 100644
index b4e7b7bb..00000000
--- a/tests/CommunityToolkit.Mvvm.Roslyn401.UnitTests/CommunityToolkit.Mvvm.Roslyn401.UnitTests.csproj
+++ /dev/null
@@ -1,25 +0,0 @@
-
-
-
- net472;net6.0;net7.0
- true
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/tests/CommunityToolkit.Mvvm.Roslyn431.UnitTests/CommunityToolkit.Mvvm.Roslyn431.UnitTests.csproj b/tests/CommunityToolkit.Mvvm.Roslyn431.UnitTests/CommunityToolkit.Mvvm.Roslyn431.UnitTests.csproj
deleted file mode 100644
index f3dad9cb..00000000
--- a/tests/CommunityToolkit.Mvvm.Roslyn431.UnitTests/CommunityToolkit.Mvvm.Roslyn431.UnitTests.csproj
+++ /dev/null
@@ -1,25 +0,0 @@
-
-
-
- net472;net6.0;net7.0
- true
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/tests/CommunityToolkit.Mvvm.SourceGenerators.Roslyn401.UnitTests/CommunityToolkit.Mvvm.SourceGenerators.Roslyn401.UnitTests.csproj b/tests/CommunityToolkit.Mvvm.SourceGenerators.Roslyn401.UnitTests/CommunityToolkit.Mvvm.SourceGenerators.Roslyn401.UnitTests.csproj
deleted file mode 100644
index 8bfbf73a..00000000
--- a/tests/CommunityToolkit.Mvvm.SourceGenerators.Roslyn401.UnitTests/CommunityToolkit.Mvvm.SourceGenerators.Roslyn401.UnitTests.csproj
+++ /dev/null
@@ -1,22 +0,0 @@
-
-
-
- net472;net6.0;net7.0
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ 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.Roslyn431.UnitTests/CommunityToolkit.Mvvm.SourceGenerators.Roslyn431.UnitTests.csproj
deleted file mode 100644
index f8974ac8..00000000
--- a/tests/CommunityToolkit.Mvvm.SourceGenerators.Roslyn431.UnitTests/CommunityToolkit.Mvvm.SourceGenerators.Roslyn431.UnitTests.csproj
+++ /dev/null
@@ -1,22 +0,0 @@
-
-
-
- net472;net6.0;net7.0
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ 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
new file mode 100644
index 00000000..ab4a64e8
--- /dev/null
+++ b/tests/CommunityToolkit.Mvvm.SourceGenerators.UnitTests/CommunityToolkit.Mvvm.SourceGenerators.Roslyn40.UnitTests.csproj
@@ -0,0 +1,17 @@
+
+
+
+ net472;net6.0;net7.0
+
+
+
+
+
+
+
+
+
+
+
+
+
\ 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
new file mode 100644
index 00000000..1a68de66
--- /dev/null
+++ b/tests/CommunityToolkit.Mvvm.SourceGenerators.UnitTests/CommunityToolkit.Mvvm.SourceGenerators.Roslyn43.UnitTests.csproj
@@ -0,0 +1,17 @@
+
+
+
+ net472;net6.0;net7.0
+
+
+
+
+
+
+
+
+
+
+
+
+
\ 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 ab60a1c1..00000000
--- 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 5e904f53..00000000
--- 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.UnitTests/CommunityToolkit.Mvvm.Roslyn40.UnitTests.csproj b/tests/CommunityToolkit.Mvvm.UnitTests/CommunityToolkit.Mvvm.Roslyn40.UnitTests.csproj
new file mode 100644
index 00000000..dfa143b8
--- /dev/null
+++ b/tests/CommunityToolkit.Mvvm.UnitTests/CommunityToolkit.Mvvm.Roslyn40.UnitTests.csproj
@@ -0,0 +1,21 @@
+
+
+
+ net472;net6.0;net7.0
+ true
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ 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
new file mode 100644
index 00000000..137dc620
--- /dev/null
+++ b/tests/CommunityToolkit.Mvvm.UnitTests/CommunityToolkit.Mvvm.Roslyn43.UnitTests.csproj
@@ -0,0 +1,21 @@
+
+
+
+ net472;net6.0;net7.0
+ true
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ 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 3089c9db..00000000
--- 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 b16b0e5e..00000000
--- a/tests/CommunityToolkit.Mvvm.UnitTests/CommunityToolkit.Mvvm.UnitTests.shproj
+++ /dev/null
@@ -1,13 +0,0 @@
-
-
-
- b8dcd82e-b53b-4249-ad4e-f9b99acb9334
- 14.0
-
-
-
-
-
-
-
-
diff --git a/tests/Directory.Build.props b/tests/Directory.Build.props
new file mode 100644
index 00000000..61cc2f1b
--- /dev/null
+++ b/tests/Directory.Build.props
@@ -0,0 +1,22 @@
+
+
+
+
+
+
+ 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 00000000..c4206928
--- /dev/null
+++ b/tests/Directory.Build.targets
@@ -0,0 +1,12 @@
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file