1
0
Fork 0
mirror of https://github.com/VSadov/Satori.git synced 2025-06-09 09:34:49 +09:00

Multi-target Json and Logger Source Generators between Roslyn v3.11 and v4.0 (#58446)

* Multi-target LoggerMessageGenerator between Roslyn v3.11 and v4.0

* Include a .targets file in NuGet packages which will select the correct analyzer assembly depending on which Roslyn version will be used to compile.

* Multi-target JsonSourceGenerator between Roslyn v3.11 and v4.0

* Fix restore

* Update NuGet package MSBuild logic to detect when SupportsRoslynComponentVersioning is not available, and use the lowest analyzer available.

* Handle non-SDK projects by running after ResolveNuGetPackageAssets

* Respond to PR feedback

- Name .cs and .csproj files with Roslyn in the name
- Upgrade to Roslyn 3.11 so IsExplicitlyNamedTupleElement API is available
- Fix some references to the test projects
- Fix incremental pack of the analyzer targets
This commit is contained in:
Eric Erhardt 2021-09-13 21:05:45 -06:00 committed by GitHub
parent 88eb71e6a2
commit 9035d94a50
Signed by: github
GPG key ID: 4AEE18F83AFDEB23
58 changed files with 536 additions and 275 deletions

View file

@ -0,0 +1,31 @@
<Project>
<Target Name="_{TargetPrefix}GatherAnalyzers">
<ItemGroup>
<_{TargetPrefix}Analyzer Include="@(Analyzer)" Condition="'%(Analyzer.NuGetPackageId)' == '{NuGetPackageId}'" />
</ItemGroup>
</Target>
<Target Name="_{TargetPrefix}AnalyzerMultiTargeting"
Condition="'$(SupportsRoslynComponentVersioning)' != 'true'"
AfterTargets="ResolvePackageDependenciesForBuild;ResolveNuGetPackageAssets"
DependsOnTargets="_{TargetPrefix}GatherAnalyzers">
<ItemGroup>
<!-- Remove our analyzers targeting roslyn4.x -->
<Analyzer Remove="@(_{TargetPrefix}Analyzer)"
Condition="$([System.String]::Copy('%(_{TargetPrefix}Analyzer.Identity)').IndexOf('roslyn4')) &gt;= 0"/>
</ItemGroup>
</Target>
<Target Name="_{TargetPrefix}RemoveAnalyzers"
Condition="'$({DisableSourceGeneratorPropertyName})' == 'true'"
AfterTargets="ResolvePackageDependenciesForBuild;ResolveNuGetPackageAssets"
DependsOnTargets="_{TargetPrefix}GatherAnalyzers">
<!-- Remove all our analyzers -->
<ItemGroup>
<Analyzer Remove="@(_{TargetPrefix}Analyzer)" />
</ItemGroup>
</Target>
</Project>

View file

@ -40,7 +40,8 @@
<ProjectServicingConfiguration Include="Microsoft.NETCore.App.Ref" PatchVersion="0" />
</ItemGroup>
<PropertyGroup>
<!-- For source generator support we are targeting the latest version of Roslyn for now, until we can support multi-targeting -->
<!-- For source generator support we need to target multiple versions of Rolsyn in order to be able to run on older versions of Roslyn -->
<MicrosoftCodeAnalysisCSharpWorkspacesVersion_3_11>3.11.0</MicrosoftCodeAnalysisCSharpWorkspacesVersion_3_11>
<MicrosoftCodeAnalysisCSharpWorkspacesVersion>4.0.0-3.final</MicrosoftCodeAnalysisCSharpWorkspacesVersion>
<MicrosoftCodeAnalysisVersion>4.0.0-3.final</MicrosoftCodeAnalysisVersion>
</PropertyGroup>

View file

@ -132,6 +132,41 @@
</ItemGroup>
</Target>
<PropertyGroup>
<_MultiTargetRoslynComponentTargetsTemplate>$(MSBuildThisFileDirectory)MultiTargetRoslynComponent.targets.template</_MultiTargetRoslynComponentTargetsTemplate>
<MultiTargetRoslynComponentTargetsFileIntermediatePath>$(IntermediateOutputPath)MultiTargetRoslynComponent.targets</MultiTargetRoslynComponentTargetsFileIntermediatePath>
<IncludeMultiTargetRoslynComponentTargets Condition="'$(IncludeMultiTargetRoslynComponentTargets)' == ''">true</IncludeMultiTargetRoslynComponentTargets>
</PropertyGroup>
<!-- In packages that contain Analyzers, include a .targets file that will select the correct analyzer. -->
<Target Name="IncludeMultiTargetRoslynComponentTargetsInPackage"
AfterTargets="IncludeAnalyzersInPackage"
Condition="'@(AnalyzerReference)' != '' and '$(IncludeMultiTargetRoslynComponentTargets)' == 'true'"
DependsOnTargets="GenerateMultiTargetRoslynComponentTargetsFile">
<ItemGroup>
<Content Include="$(MultiTargetRoslynComponentTargetsFileIntermediatePath)"
PackagePath="build\$(PackageId).targets"
Pack="True" />
</ItemGroup>
</Target>
<Target Name="GenerateMultiTargetRoslynComponentTargetsFile"
Inputs="$(MSBuildProjectFullPath);_MultiTargetRoslynComponentTargetsTemplate"
Outputs="$(MultiTargetRoslynComponentTargetsFileIntermediatePath)">
<PropertyGroup>
<_MultiTargetRoslynComponentTargetPrefix>$(PackageId.Replace('.', '_'))</_MultiTargetRoslynComponentTargetPrefix>
<_MultiTargetRoslynComponentDisableSourceGeneratorPropertyName>Disable$(PackageId.Replace('.', ''))SourceGenerator</_MultiTargetRoslynComponentDisableSourceGeneratorPropertyName>
<_MultiTargetRoslynComponentDisableSourceGeneratorPropertyName>$(_MultiTargetRoslynComponentDisableSourceGeneratorPropertyName.Replace('Abstractions', ''))</_MultiTargetRoslynComponentDisableSourceGeneratorPropertyName>
</PropertyGroup>
<WriteLinesToFile File="$(MultiTargetRoslynComponentTargetsFileIntermediatePath)"
Lines="$([System.IO.File]::ReadAllText('$(_MultiTargetRoslynComponentTargetsTemplate)')
.Replace('{TargetPrefix}', '$(_MultiTargetRoslynComponentTargetPrefix)')
.Replace('{NuGetPackageId}', '$(PackageId)')
.Replace('{DisableSourceGeneratorPropertyName}', '$(_MultiTargetRoslynComponentDisableSourceGeneratorPropertyName)'))"
Overwrite="true" />
</Target>
<!-- Include a netstandard compat error if the project targets both .NETStandard and
.NETCoreApp. This prohibits users to consume packages on an older .NETCoreApp version
than the minimum supported one. -->

View file

@ -141,7 +141,11 @@ namespace SourceGenerators.Tests
/// Runs a Roslyn generator over a set of source files.
/// </summary>
public static async Task<(ImmutableArray<Diagnostic>, ImmutableArray<GeneratedSourceResult>)> RunGenerator(
#if ROSLYN4_0_OR_GREATER
IIncrementalGenerator generator,
#else
ISourceGenerator generator,
#endif
IEnumerable<Assembly>? references,
IEnumerable<string> sources,
bool includeBaseReferences = true,
@ -155,9 +159,14 @@ namespace SourceGenerators.Tests
Compilation? comp = await proj!.GetCompilationAsync(CancellationToken.None).ConfigureAwait(false);
#if ROSLYN4_0_OR_GREATER
// workaround https://github.com/dotnet/roslyn/pull/55866. We can remove "LangVersion=Preview" when we get a Roslyn build with that change.
CSharpParseOptions options = CSharpParseOptions.Default.WithLanguageVersion(LanguageVersion.Preview);
CSharpGeneratorDriver cgd = CSharpGeneratorDriver.Create(new[] { generator.AsSourceGenerator() }, parseOptions: options);
#else
CSharpGeneratorDriver cgd = CSharpGeneratorDriver.Create(new[] { generator });
#endif
GeneratorDriver gd = cgd.RunGenerators(comp!, cancellationToken);
GeneratorDriverRunResult r = gd.GetRunResult();

View file

@ -260,6 +260,7 @@
Returns="@(_AnalyzerPackFile)">
<PropertyGroup>
<_analyzerPath>analyzers/dotnet</_analyzerPath>
<_analyzerPath Condition="'$(AnalyzerRoslynVersion)' != ''">$(_analyzerPath)/roslyn$(AnalyzerRoslynVersion)</_analyzerPath>
<_analyzerPath Condition="'$(AnalyzerLanguage)' != ''">$(_analyzerPath)/$(AnalyzerLanguage)</_analyzerPath>
</PropertyGroup>
<ItemGroup>

View file

@ -23,8 +23,6 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.Extensions.Depend
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.Extensions.DependencyInjection", "..\Microsoft.Extensions.DependencyInjection\src\Microsoft.Extensions.DependencyInjection.csproj", "{78971B06-2519-45B7-B761-C8A30C168EBE}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.Extensions.Logging.Generators", "..\Microsoft.Extensions.Logging.Abstractions\gen\Microsoft.Extensions.Logging.Generators.csproj", "{727A5FD3-0146-4E1E-81B6-E71D0C1A055E}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.Extensions.Logging.Abstractions", "..\Microsoft.Extensions.Logging.Abstractions\ref\Microsoft.Extensions.Logging.Abstractions.csproj", "{BDC4E2D9-627A-4DE2-BF31-A95351C1CB7C}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.Extensions.Logging.Abstractions", "..\Microsoft.Extensions.Logging.Abstractions\src\Microsoft.Extensions.Logging.Abstractions.csproj", "{C76753D0-F564-45E9-AA60-A846EFE0A414}"
@ -101,10 +99,6 @@ Global
{78971B06-2519-45B7-B761-C8A30C168EBE}.Debug|Any CPU.Build.0 = Debug|Any CPU
{78971B06-2519-45B7-B761-C8A30C168EBE}.Release|Any CPU.ActiveCfg = Release|Any CPU
{78971B06-2519-45B7-B761-C8A30C168EBE}.Release|Any CPU.Build.0 = Release|Any CPU
{727A5FD3-0146-4E1E-81B6-E71D0C1A055E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{727A5FD3-0146-4E1E-81B6-E71D0C1A055E}.Debug|Any CPU.Build.0 = Debug|Any CPU
{727A5FD3-0146-4E1E-81B6-E71D0C1A055E}.Release|Any CPU.ActiveCfg = Release|Any CPU
{727A5FD3-0146-4E1E-81B6-E71D0C1A055E}.Release|Any CPU.Build.0 = Release|Any CPU
{BDC4E2D9-627A-4DE2-BF31-A95351C1CB7C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{BDC4E2D9-627A-4DE2-BF31-A95351C1CB7C}.Debug|Any CPU.Build.0 = Debug|Any CPU
{BDC4E2D9-627A-4DE2-BF31-A95351C1CB7C}.Release|Any CPU.ActiveCfg = Release|Any CPU
@ -158,7 +152,6 @@ Global
{CD3D6F5B-0500-4035-A60A-592A2E231011} = {67719AA1-52DC-4E35-B6F7-2F53A50B913A}
{9A8C0B86-1CA3-4FFE-86FC-9EF0A733BEC0} = {67719AA1-52DC-4E35-B6F7-2F53A50B913A}
{78971B06-2519-45B7-B761-C8A30C168EBE} = {67719AA1-52DC-4E35-B6F7-2F53A50B913A}
{727A5FD3-0146-4E1E-81B6-E71D0C1A055E} = {67719AA1-52DC-4E35-B6F7-2F53A50B913A}
{C76753D0-F564-45E9-AA60-A846EFE0A414} = {67719AA1-52DC-4E35-B6F7-2F53A50B913A}
{5A9310B4-82AB-46F8-83C1-72D21A6A761F} = {67719AA1-52DC-4E35-B6F7-2F53A50B913A}
{DA43AA92-35BA-4B84-BAA2-C3BB56C8BB3B} = {67719AA1-52DC-4E35-B6F7-2F53A50B913A}

View file

@ -51,8 +51,6 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "System.Text.Encodings.Web",
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "System.Text.Encodings.Web", "..\System.Text.Encodings.Web\src\System.Text.Encodings.Web.csproj", "{BD19B1E7-CAFF-4009-874A-760D5A466E28}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "System.Text.Json.SourceGeneration", "..\System.Text.Json\gen\System.Text.Json.SourceGeneration.csproj", "{160C3D6B-D90A-40B1-A695-81DB79EB24C4}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "System.Text.Json", "..\System.Text.Json\ref\System.Text.Json.csproj", "{6EB2865B-C9F6-4F9B-82DA-4C577587B577}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "System.Text.Json", "..\System.Text.Json\src\System.Text.Json.csproj", "{A49023C8-173A-4B8F-84B3-2FF37FE8344A}"
@ -173,10 +171,6 @@ Global
{BD19B1E7-CAFF-4009-874A-760D5A466E28}.Debug|Any CPU.Build.0 = Debug|Any CPU
{BD19B1E7-CAFF-4009-874A-760D5A466E28}.Release|Any CPU.ActiveCfg = Release|Any CPU
{BD19B1E7-CAFF-4009-874A-760D5A466E28}.Release|Any CPU.Build.0 = Release|Any CPU
{160C3D6B-D90A-40B1-A695-81DB79EB24C4}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{160C3D6B-D90A-40B1-A695-81DB79EB24C4}.Debug|Any CPU.Build.0 = Debug|Any CPU
{160C3D6B-D90A-40B1-A695-81DB79EB24C4}.Release|Any CPU.ActiveCfg = Release|Any CPU
{160C3D6B-D90A-40B1-A695-81DB79EB24C4}.Release|Any CPU.Build.0 = Release|Any CPU
{6EB2865B-C9F6-4F9B-82DA-4C577587B577}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{6EB2865B-C9F6-4F9B-82DA-4C577587B577}.Debug|Any CPU.Build.0 = Debug|Any CPU
{6EB2865B-C9F6-4F9B-82DA-4C577587B577}.Release|Any CPU.ActiveCfg = Release|Any CPU
@ -217,7 +211,6 @@ Global
{B1723D4C-15E3-4A39-8976-C3E1740E5F00} = {1789A282-9C08-40AB-9FD0-0FB1FAB99621}
{7517D0A0-5596-48B7-96EF-CB24DAD72675} = {1789A282-9C08-40AB-9FD0-0FB1FAB99621}
{BD19B1E7-CAFF-4009-874A-760D5A466E28} = {1789A282-9C08-40AB-9FD0-0FB1FAB99621}
{160C3D6B-D90A-40B1-A695-81DB79EB24C4} = {1789A282-9C08-40AB-9FD0-0FB1FAB99621}
{A49023C8-173A-4B8F-84B3-2FF37FE8344A} = {1789A282-9C08-40AB-9FD0-0FB1FAB99621}
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution

View file

@ -51,8 +51,6 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "System.Text.Encodings.Web",
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "System.Text.Encodings.Web", "..\System.Text.Encodings.Web\src\System.Text.Encodings.Web.csproj", "{1555B38A-E9CB-4734-AAB1-59CFB833A06D}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "System.Text.Json.SourceGeneration", "..\System.Text.Json\gen\System.Text.Json.SourceGeneration.csproj", "{30EBBE93-80FC-442D-ADC6-D0BB0A8CFA76}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "System.Text.Json", "..\System.Text.Json\ref\System.Text.Json.csproj", "{705F880D-3E27-4ACA-87CC-808BB7DDA610}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "System.Text.Json", "..\System.Text.Json\src\System.Text.Json.csproj", "{82700778-D9AD-4B9D-8A1C-CDC1A19E4D54}"
@ -173,10 +171,6 @@ Global
{1555B38A-E9CB-4734-AAB1-59CFB833A06D}.Debug|Any CPU.Build.0 = Debug|Any CPU
{1555B38A-E9CB-4734-AAB1-59CFB833A06D}.Release|Any CPU.ActiveCfg = Release|Any CPU
{1555B38A-E9CB-4734-AAB1-59CFB833A06D}.Release|Any CPU.Build.0 = Release|Any CPU
{30EBBE93-80FC-442D-ADC6-D0BB0A8CFA76}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{30EBBE93-80FC-442D-ADC6-D0BB0A8CFA76}.Debug|Any CPU.Build.0 = Debug|Any CPU
{30EBBE93-80FC-442D-ADC6-D0BB0A8CFA76}.Release|Any CPU.ActiveCfg = Release|Any CPU
{30EBBE93-80FC-442D-ADC6-D0BB0A8CFA76}.Release|Any CPU.Build.0 = Release|Any CPU
{705F880D-3E27-4ACA-87CC-808BB7DDA610}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{705F880D-3E27-4ACA-87CC-808BB7DDA610}.Debug|Any CPU.Build.0 = Debug|Any CPU
{705F880D-3E27-4ACA-87CC-808BB7DDA610}.Release|Any CPU.ActiveCfg = Release|Any CPU
@ -217,7 +211,6 @@ Global
{BD85452C-1434-40FF-8A2C-36BF135A22FE} = {B5EF5DDD-EB92-414C-B9D2-826BA6CECCBF}
{1EF04395-4D84-43F1-BD99-7F6D6C3D70BB} = {B5EF5DDD-EB92-414C-B9D2-826BA6CECCBF}
{1555B38A-E9CB-4734-AAB1-59CFB833A06D} = {B5EF5DDD-EB92-414C-B9D2-826BA6CECCBF}
{30EBBE93-80FC-442D-ADC6-D0BB0A8CFA76} = {B5EF5DDD-EB92-414C-B9D2-826BA6CECCBF}
{82700778-D9AD-4B9D-8A1C-CDC1A19E4D54} = {B5EF5DDD-EB92-414C-B9D2-826BA6CECCBF}
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution

View file

@ -97,8 +97,6 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "System.Text.Encodings.Web",
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "System.Text.Encodings.Web", "..\System.Text.Encodings.Web\src\System.Text.Encodings.Web.csproj", "{23F4102D-67BD-4865-BB19-195C47945733}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "System.Text.Json.SourceGeneration", "..\System.Text.Json\gen\System.Text.Json.SourceGeneration.csproj", "{634542E9-CF9A-4BD2-BC36-71D12BEF2B36}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "System.Text.Json", "..\System.Text.Json\ref\System.Text.Json.csproj", "{CFDBC0E2-792D-4F88-8AB5-978DF8E2167D}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "System.Text.Json", "..\System.Text.Json\src\System.Text.Json.csproj", "{41234DB5-1F3A-4E4A-8BD9-4A277C249666}"
@ -315,10 +313,6 @@ Global
{23F4102D-67BD-4865-BB19-195C47945733}.Debug|Any CPU.Build.0 = Debug|Any CPU
{23F4102D-67BD-4865-BB19-195C47945733}.Release|Any CPU.ActiveCfg = Release|Any CPU
{23F4102D-67BD-4865-BB19-195C47945733}.Release|Any CPU.Build.0 = Release|Any CPU
{634542E9-CF9A-4BD2-BC36-71D12BEF2B36}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{634542E9-CF9A-4BD2-BC36-71D12BEF2B36}.Debug|Any CPU.Build.0 = Debug|Any CPU
{634542E9-CF9A-4BD2-BC36-71D12BEF2B36}.Release|Any CPU.ActiveCfg = Release|Any CPU
{634542E9-CF9A-4BD2-BC36-71D12BEF2B36}.Release|Any CPU.Build.0 = Release|Any CPU
{CFDBC0E2-792D-4F88-8AB5-978DF8E2167D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{CFDBC0E2-792D-4F88-8AB5-978DF8E2167D}.Debug|Any CPU.Build.0 = Debug|Any CPU
{CFDBC0E2-792D-4F88-8AB5-978DF8E2167D}.Release|Any CPU.ActiveCfg = Release|Any CPU
@ -391,7 +385,6 @@ Global
{BAA953EF-6529-4F2C-8F89-C76A05258677} = {76107BEB-02C0-4A83-9631-B226340752A7}
{6CCBE9AB-E620-4616-9B80-1F9D3E722B87} = {76107BEB-02C0-4A83-9631-B226340752A7}
{23F4102D-67BD-4865-BB19-195C47945733} = {76107BEB-02C0-4A83-9631-B226340752A7}
{634542E9-CF9A-4BD2-BC36-71D12BEF2B36} = {76107BEB-02C0-4A83-9631-B226340752A7}
{41234DB5-1F3A-4E4A-8BD9-4A277C249666} = {76107BEB-02C0-4A83-9631-B226340752A7}
{7CFEB13D-63D5-42A7-868C-CE1D0049EAF0} = {76107BEB-02C0-4A83-9631-B226340752A7}
EndGlobalSection

View file

@ -21,8 +21,6 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "System.Text.Encodings.Web",
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "System.Text.Encodings.Web", "..\System.Text.Encodings.Web\src\System.Text.Encodings.Web.csproj", "{7902A0CA-E94D-4C96-A112-455A1E5E2390}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "System.Text.Json.SourceGeneration", "..\System.Text.Json\gen\System.Text.Json.SourceGeneration.csproj", "{6699E51A-8DC5-4DBA-A06B-B4A04144E4FA}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "System.Text.Json", "..\System.Text.Json\ref\System.Text.Json.csproj", "{8E212A9D-391B-4EFA-943D-7D104A9D3D7E}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "System.Text.Json", "..\System.Text.Json\src\System.Text.Json.csproj", "{FA7201FE-097D-4197-BDEC-329986814D8D}"
@ -83,10 +81,6 @@ Global
{7902A0CA-E94D-4C96-A112-455A1E5E2390}.Debug|Any CPU.Build.0 = Debug|Any CPU
{7902A0CA-E94D-4C96-A112-455A1E5E2390}.Release|Any CPU.ActiveCfg = Release|Any CPU
{7902A0CA-E94D-4C96-A112-455A1E5E2390}.Release|Any CPU.Build.0 = Release|Any CPU
{6699E51A-8DC5-4DBA-A06B-B4A04144E4FA}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{6699E51A-8DC5-4DBA-A06B-B4A04144E4FA}.Debug|Any CPU.Build.0 = Debug|Any CPU
{6699E51A-8DC5-4DBA-A06B-B4A04144E4FA}.Release|Any CPU.ActiveCfg = Release|Any CPU
{6699E51A-8DC5-4DBA-A06B-B4A04144E4FA}.Release|Any CPU.Build.0 = Release|Any CPU
{8E212A9D-391B-4EFA-943D-7D104A9D3D7E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{8E212A9D-391B-4EFA-943D-7D104A9D3D7E}.Debug|Any CPU.Build.0 = Debug|Any CPU
{8E212A9D-391B-4EFA-943D-7D104A9D3D7E}.Release|Any CPU.ActiveCfg = Release|Any CPU
@ -112,7 +106,6 @@ Global
{5C580568-6072-4F27-B5C6-FA04556E3B98} = {5725D7DF-DC33-47D2-90C9-D8736C579E77}
{4A28B457-D950-486B-B59B-A4C977A733B1} = {5725D7DF-DC33-47D2-90C9-D8736C579E77}
{7902A0CA-E94D-4C96-A112-455A1E5E2390} = {5725D7DF-DC33-47D2-90C9-D8736C579E77}
{6699E51A-8DC5-4DBA-A06B-B4A04144E4FA} = {5725D7DF-DC33-47D2-90C9-D8736C579E77}
{FA7201FE-097D-4197-BDEC-329986814D8D} = {5725D7DF-DC33-47D2-90C9-D8736C579E77}
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution

View file

@ -71,8 +71,6 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.Extensions.Hostin
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.Extensions.Hosting", "..\Microsoft.Extensions.Hosting\src\Microsoft.Extensions.Hosting.csproj", "{AFC1BDAA-7E40-4118-BB80-F8057752A600}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.Extensions.Logging.Generators", "..\Microsoft.Extensions.Logging.Abstractions\gen\Microsoft.Extensions.Logging.Generators.csproj", "{21A8F1A2-DB8F-40BB-8B41-34FFBFF678BE}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.Extensions.Logging.Abstractions", "..\Microsoft.Extensions.Logging.Abstractions\ref\Microsoft.Extensions.Logging.Abstractions.csproj", "{860B845B-929F-4442-AED1-1F4186DBF497}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.Extensions.Logging.Abstractions", "..\Microsoft.Extensions.Logging.Abstractions\src\Microsoft.Extensions.Logging.Abstractions.csproj", "{A0AF82AE-ED18-4EEB-AD9A-B44017510F0C}"
@ -135,8 +133,6 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "System.Text.Encodings.Web",
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "System.Text.Encodings.Web", "..\System.Text.Encodings.Web\src\System.Text.Encodings.Web.csproj", "{47A3CDB0-8252-4536-B61F-C2E10F6EC2B9}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "System.Text.Json.SourceGeneration", "..\System.Text.Json\gen\System.Text.Json.SourceGeneration.csproj", "{CA49BE02-D809-4F18-8E0B-54FA365429E3}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "System.Text.Json", "..\System.Text.Json\ref\System.Text.Json.csproj", "{AA2CD494-414F-42BF-9C68-7822DEB09255}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "System.Text.Json", "..\System.Text.Json\src\System.Text.Json.csproj", "{25474DE2-4D3D-4950-BDA7-CF6FE3CCD940}"
@ -299,10 +295,6 @@ Global
{AFC1BDAA-7E40-4118-BB80-F8057752A600}.Debug|Any CPU.Build.0 = Debug|Any CPU
{AFC1BDAA-7E40-4118-BB80-F8057752A600}.Release|Any CPU.ActiveCfg = Release|Any CPU
{AFC1BDAA-7E40-4118-BB80-F8057752A600}.Release|Any CPU.Build.0 = Release|Any CPU
{21A8F1A2-DB8F-40BB-8B41-34FFBFF678BE}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{21A8F1A2-DB8F-40BB-8B41-34FFBFF678BE}.Debug|Any CPU.Build.0 = Debug|Any CPU
{21A8F1A2-DB8F-40BB-8B41-34FFBFF678BE}.Release|Any CPU.ActiveCfg = Release|Any CPU
{21A8F1A2-DB8F-40BB-8B41-34FFBFF678BE}.Release|Any CPU.Build.0 = Release|Any CPU
{860B845B-929F-4442-AED1-1F4186DBF497}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{860B845B-929F-4442-AED1-1F4186DBF497}.Debug|Any CPU.Build.0 = Debug|Any CPU
{860B845B-929F-4442-AED1-1F4186DBF497}.Release|Any CPU.ActiveCfg = Release|Any CPU
@ -427,10 +419,6 @@ Global
{47A3CDB0-8252-4536-B61F-C2E10F6EC2B9}.Debug|Any CPU.Build.0 = Debug|Any CPU
{47A3CDB0-8252-4536-B61F-C2E10F6EC2B9}.Release|Any CPU.ActiveCfg = Release|Any CPU
{47A3CDB0-8252-4536-B61F-C2E10F6EC2B9}.Release|Any CPU.Build.0 = Release|Any CPU
{CA49BE02-D809-4F18-8E0B-54FA365429E3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{CA49BE02-D809-4F18-8E0B-54FA365429E3}.Debug|Any CPU.Build.0 = Debug|Any CPU
{CA49BE02-D809-4F18-8E0B-54FA365429E3}.Release|Any CPU.ActiveCfg = Release|Any CPU
{CA49BE02-D809-4F18-8E0B-54FA365429E3}.Release|Any CPU.Build.0 = Release|Any CPU
{AA2CD494-414F-42BF-9C68-7822DEB09255}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{AA2CD494-414F-42BF-9C68-7822DEB09255}.Debug|Any CPU.Build.0 = Debug|Any CPU
{AA2CD494-414F-42BF-9C68-7822DEB09255}.Release|Any CPU.ActiveCfg = Release|Any CPU
@ -502,7 +490,6 @@ Global
{4B72FC27-F786-44B4-88DF-996D478873B8} = {192FD259-E55F-40C5-82EE-9E924EA6C3CB}
{CFF29AA4-794A-416B-BF4C-FD2A442FB83F} = {192FD259-E55F-40C5-82EE-9E924EA6C3CB}
{AFC1BDAA-7E40-4118-BB80-F8057752A600} = {192FD259-E55F-40C5-82EE-9E924EA6C3CB}
{21A8F1A2-DB8F-40BB-8B41-34FFBFF678BE} = {192FD259-E55F-40C5-82EE-9E924EA6C3CB}
{A0AF82AE-ED18-4EEB-AD9A-B44017510F0C} = {192FD259-E55F-40C5-82EE-9E924EA6C3CB}
{D61B6530-0055-4DFE-85D1-58BEDFC7AA2F} = {192FD259-E55F-40C5-82EE-9E924EA6C3CB}
{509B5AB4-8F9F-4856-811F-7C8E727BF2E6} = {192FD259-E55F-40C5-82EE-9E924EA6C3CB}
@ -518,7 +505,6 @@ Global
{578661A4-C136-4533-819E-AF3352F79953} = {192FD259-E55F-40C5-82EE-9E924EA6C3CB}
{E1053E73-AB5D-4593-8E00-7E048C314A28} = {192FD259-E55F-40C5-82EE-9E924EA6C3CB}
{47A3CDB0-8252-4536-B61F-C2E10F6EC2B9} = {192FD259-E55F-40C5-82EE-9E924EA6C3CB}
{CA49BE02-D809-4F18-8E0B-54FA365429E3} = {192FD259-E55F-40C5-82EE-9E924EA6C3CB}
{25474DE2-4D3D-4950-BDA7-CF6FE3CCD940} = {192FD259-E55F-40C5-82EE-9E924EA6C3CB}
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution

View file

@ -67,8 +67,6 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.Extensions.Hostin
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.Extensions.Hosting", "..\Microsoft.Extensions.Hosting\src\Microsoft.Extensions.Hosting.csproj", "{36FAE390-EAAE-4193-98E7-34F10D3FA8E1}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.Extensions.Logging.Generators", "..\Microsoft.Extensions.Logging.Abstractions\gen\Microsoft.Extensions.Logging.Generators.csproj", "{9CECED3B-385A-4C54-9E07-74E8341EB52D}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.Extensions.Logging.Abstractions", "..\Microsoft.Extensions.Logging.Abstractions\ref\Microsoft.Extensions.Logging.Abstractions.csproj", "{723957C4-C433-4B6D-BF0C-28AE36AEDDBD}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.Extensions.Logging.Abstractions", "..\Microsoft.Extensions.Logging.Abstractions\src\Microsoft.Extensions.Logging.Abstractions.csproj", "{E5F61C36-FB9B-4DA7-96C0-056FBEADBB53}"
@ -135,8 +133,6 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "System.Text.Encodings.Web",
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "System.Text.Encodings.Web", "..\System.Text.Encodings.Web\src\System.Text.Encodings.Web.csproj", "{2D8B86CE-7A3A-45F0-9127-AE6CDCEC6EA5}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "System.Text.Json.SourceGeneration", "..\System.Text.Json\gen\System.Text.Json.SourceGeneration.csproj", "{CC36DF9A-6602-47D9-B44B-C2D2C33A80D0}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "System.Text.Json", "..\System.Text.Json\ref\System.Text.Json.csproj", "{35F7F32D-B404-46B3-8FCE-CFEBEC7114C3}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "System.Text.Json", "..\System.Text.Json\src\System.Text.Json.csproj", "{C50BBD27-2445-4DF4-9A1D-C7919D016BBC}"
@ -289,10 +285,6 @@ Global
{36FAE390-EAAE-4193-98E7-34F10D3FA8E1}.Debug|Any CPU.Build.0 = Debug|Any CPU
{36FAE390-EAAE-4193-98E7-34F10D3FA8E1}.Release|Any CPU.ActiveCfg = Release|Any CPU
{36FAE390-EAAE-4193-98E7-34F10D3FA8E1}.Release|Any CPU.Build.0 = Release|Any CPU
{9CECED3B-385A-4C54-9E07-74E8341EB52D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{9CECED3B-385A-4C54-9E07-74E8341EB52D}.Debug|Any CPU.Build.0 = Debug|Any CPU
{9CECED3B-385A-4C54-9E07-74E8341EB52D}.Release|Any CPU.ActiveCfg = Release|Any CPU
{9CECED3B-385A-4C54-9E07-74E8341EB52D}.Release|Any CPU.Build.0 = Release|Any CPU
{723957C4-C433-4B6D-BF0C-28AE36AEDDBD}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{723957C4-C433-4B6D-BF0C-28AE36AEDDBD}.Debug|Any CPU.Build.0 = Debug|Any CPU
{723957C4-C433-4B6D-BF0C-28AE36AEDDBD}.Release|Any CPU.ActiveCfg = Release|Any CPU
@ -425,10 +417,6 @@ Global
{2D8B86CE-7A3A-45F0-9127-AE6CDCEC6EA5}.Debug|Any CPU.Build.0 = Debug|Any CPU
{2D8B86CE-7A3A-45F0-9127-AE6CDCEC6EA5}.Release|Any CPU.ActiveCfg = Release|Any CPU
{2D8B86CE-7A3A-45F0-9127-AE6CDCEC6EA5}.Release|Any CPU.Build.0 = Release|Any CPU
{CC36DF9A-6602-47D9-B44B-C2D2C33A80D0}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{CC36DF9A-6602-47D9-B44B-C2D2C33A80D0}.Debug|Any CPU.Build.0 = Debug|Any CPU
{CC36DF9A-6602-47D9-B44B-C2D2C33A80D0}.Release|Any CPU.ActiveCfg = Release|Any CPU
{CC36DF9A-6602-47D9-B44B-C2D2C33A80D0}.Release|Any CPU.Build.0 = Release|Any CPU
{35F7F32D-B404-46B3-8FCE-CFEBEC7114C3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{35F7F32D-B404-46B3-8FCE-CFEBEC7114C3}.Debug|Any CPU.Build.0 = Debug|Any CPU
{35F7F32D-B404-46B3-8FCE-CFEBEC7114C3}.Release|Any CPU.ActiveCfg = Release|Any CPU
@ -499,7 +487,6 @@ Global
{FB7C602E-3ED6-472A-85BD-420B61BA293D} = {76933DF1-12AA-4B5B-8863-EF38F10B1EC9}
{89A6E38E-1118-4FC6-957D-17751DAD8EAF} = {76933DF1-12AA-4B5B-8863-EF38F10B1EC9}
{36FAE390-EAAE-4193-98E7-34F10D3FA8E1} = {76933DF1-12AA-4B5B-8863-EF38F10B1EC9}
{9CECED3B-385A-4C54-9E07-74E8341EB52D} = {76933DF1-12AA-4B5B-8863-EF38F10B1EC9}
{E5F61C36-FB9B-4DA7-96C0-056FBEADBB53} = {76933DF1-12AA-4B5B-8863-EF38F10B1EC9}
{B0D60DB8-2A4A-4B8B-83DF-A1C66BDD0982} = {76933DF1-12AA-4B5B-8863-EF38F10B1EC9}
{C573763D-C24C-4222-AAF0-66B0C2260EB4} = {76933DF1-12AA-4B5B-8863-EF38F10B1EC9}
@ -516,7 +503,6 @@ Global
{78706510-4F89-4896-8E29-723C8F4B90AF} = {76933DF1-12AA-4B5B-8863-EF38F10B1EC9}
{3636C4FF-4BBD-4BB8-B60B-E62F2C429EA4} = {76933DF1-12AA-4B5B-8863-EF38F10B1EC9}
{2D8B86CE-7A3A-45F0-9127-AE6CDCEC6EA5} = {76933DF1-12AA-4B5B-8863-EF38F10B1EC9}
{CC36DF9A-6602-47D9-B44B-C2D2C33A80D0} = {76933DF1-12AA-4B5B-8863-EF38F10B1EC9}
{C50BBD27-2445-4DF4-9A1D-C7919D016BBC} = {76933DF1-12AA-4B5B-8863-EF38F10B1EC9}
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution

View file

@ -71,8 +71,6 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.Extensions.Hostin
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.Extensions.Hosting.Unit.Tests", "tests\UnitTests\Microsoft.Extensions.Hosting.Unit.Tests.csproj", "{33C3D8F0-297F-4471-92B0-F4E8717F10E3}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.Extensions.Logging.Generators", "..\Microsoft.Extensions.Logging.Abstractions\gen\Microsoft.Extensions.Logging.Generators.csproj", "{FBF0B5C9-CD20-4B8A-83B4-6281A2EEBC45}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.Extensions.Logging.Abstractions", "..\Microsoft.Extensions.Logging.Abstractions\ref\Microsoft.Extensions.Logging.Abstractions.csproj", "{42E1BF94-6FE0-4017-9702-55913BD95EDE}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.Extensions.Logging.Abstractions", "..\Microsoft.Extensions.Logging.Abstractions\src\Microsoft.Extensions.Logging.Abstractions.csproj", "{8845E6FF-94B2-4994-A8F4-DF30844A2168}"
@ -135,8 +133,6 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "System.Text.Encodings.Web",
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "System.Text.Encodings.Web", "..\System.Text.Encodings.Web\src\System.Text.Encodings.Web.csproj", "{B41AA17B-5129-41CC-8EA4-250B80BABF87}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "System.Text.Json.SourceGeneration", "..\System.Text.Json\gen\System.Text.Json.SourceGeneration.csproj", "{631AE96F-2615-4D38-B3BB-0D98777C4667}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "System.Text.Json", "..\System.Text.Json\ref\System.Text.Json.csproj", "{1E3D79D4-51D6-46C6-BF0F-DF51A47C5952}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "System.Text.Json", "..\System.Text.Json\src\System.Text.Json.csproj", "{0813853E-8C78-429A-B01A-3FB2EF1898F8}"
@ -299,10 +295,6 @@ Global
{33C3D8F0-297F-4471-92B0-F4E8717F10E3}.Debug|Any CPU.Build.0 = Debug|Any CPU
{33C3D8F0-297F-4471-92B0-F4E8717F10E3}.Release|Any CPU.ActiveCfg = Release|Any CPU
{33C3D8F0-297F-4471-92B0-F4E8717F10E3}.Release|Any CPU.Build.0 = Release|Any CPU
{FBF0B5C9-CD20-4B8A-83B4-6281A2EEBC45}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{FBF0B5C9-CD20-4B8A-83B4-6281A2EEBC45}.Debug|Any CPU.Build.0 = Debug|Any CPU
{FBF0B5C9-CD20-4B8A-83B4-6281A2EEBC45}.Release|Any CPU.ActiveCfg = Release|Any CPU
{FBF0B5C9-CD20-4B8A-83B4-6281A2EEBC45}.Release|Any CPU.Build.0 = Release|Any CPU
{42E1BF94-6FE0-4017-9702-55913BD95EDE}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{42E1BF94-6FE0-4017-9702-55913BD95EDE}.Debug|Any CPU.Build.0 = Debug|Any CPU
{42E1BF94-6FE0-4017-9702-55913BD95EDE}.Release|Any CPU.ActiveCfg = Release|Any CPU
@ -427,10 +419,6 @@ Global
{B41AA17B-5129-41CC-8EA4-250B80BABF87}.Debug|Any CPU.Build.0 = Debug|Any CPU
{B41AA17B-5129-41CC-8EA4-250B80BABF87}.Release|Any CPU.ActiveCfg = Release|Any CPU
{B41AA17B-5129-41CC-8EA4-250B80BABF87}.Release|Any CPU.Build.0 = Release|Any CPU
{631AE96F-2615-4D38-B3BB-0D98777C4667}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{631AE96F-2615-4D38-B3BB-0D98777C4667}.Debug|Any CPU.Build.0 = Debug|Any CPU
{631AE96F-2615-4D38-B3BB-0D98777C4667}.Release|Any CPU.ActiveCfg = Release|Any CPU
{631AE96F-2615-4D38-B3BB-0D98777C4667}.Release|Any CPU.Build.0 = Release|Any CPU
{1E3D79D4-51D6-46C6-BF0F-DF51A47C5952}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{1E3D79D4-51D6-46C6-BF0F-DF51A47C5952}.Debug|Any CPU.Build.0 = Debug|Any CPU
{1E3D79D4-51D6-46C6-BF0F-DF51A47C5952}.Release|Any CPU.ActiveCfg = Release|Any CPU
@ -502,7 +490,6 @@ Global
{9C06E60B-2D45-4284-B7C8-7AE6D8194CE0} = {59A29BF0-B76B-41F8-A733-E2A0847AB992}
{973CE6DA-B55D-4E55-88D5-53BE69D44410} = {59A29BF0-B76B-41F8-A733-E2A0847AB992}
{F5CF1FC4-8F56-49BD-BFC2-5AD42AE6302D} = {59A29BF0-B76B-41F8-A733-E2A0847AB992}
{FBF0B5C9-CD20-4B8A-83B4-6281A2EEBC45} = {59A29BF0-B76B-41F8-A733-E2A0847AB992}
{8845E6FF-94B2-4994-A8F4-DF30844A2168} = {59A29BF0-B76B-41F8-A733-E2A0847AB992}
{99C8FB58-8718-4E76-AEFA-3C42F2F729B1} = {59A29BF0-B76B-41F8-A733-E2A0847AB992}
{F3230087-28E2-4ADF-A7D1-D48C5D9CFFE9} = {59A29BF0-B76B-41F8-A733-E2A0847AB992}
@ -518,7 +505,6 @@ Global
{4ED9C0A9-C1EF-47ED-99F8-74B7411C971B} = {59A29BF0-B76B-41F8-A733-E2A0847AB992}
{A9EFBE7D-6AE1-4F05-B9C5-2586835ADC4D} = {59A29BF0-B76B-41F8-A733-E2A0847AB992}
{B41AA17B-5129-41CC-8EA4-250B80BABF87} = {59A29BF0-B76B-41F8-A733-E2A0847AB992}
{631AE96F-2615-4D38-B3BB-0D98777C4667} = {59A29BF0-B76B-41F8-A733-E2A0847AB992}
{0813853E-8C78-429A-B01A-3FB2EF1898F8} = {59A29BF0-B76B-41F8-A733-E2A0847AB992}
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution

View file

@ -19,8 +19,6 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.Extensions.Http",
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.Extensions.Http.Tests", "tests\Microsoft.Extensions.Http.Tests\Microsoft.Extensions.Http.Tests.csproj", "{58A1E42E-5DA1-452A-B39C-A1819171970A}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.Extensions.Logging.Generators", "..\Microsoft.Extensions.Logging.Abstractions\gen\Microsoft.Extensions.Logging.Generators.csproj", "{3DD4EF0E-36D5-48BD-8F8A-1D7DAF74EC25}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.Extensions.Logging.Abstractions", "..\Microsoft.Extensions.Logging.Abstractions\ref\Microsoft.Extensions.Logging.Abstractions.csproj", "{85615392-9242-4CAF-A0FE-A439FF615462}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.Extensions.Logging.Abstractions", "..\Microsoft.Extensions.Logging.Abstractions\src\Microsoft.Extensions.Logging.Abstractions.csproj", "{BAFF07C7-1F5F-4706-B7D7-9D5D309CBFE2}"
@ -97,10 +95,6 @@ Global
{58A1E42E-5DA1-452A-B39C-A1819171970A}.Debug|Any CPU.Build.0 = Debug|Any CPU
{58A1E42E-5DA1-452A-B39C-A1819171970A}.Release|Any CPU.ActiveCfg = Release|Any CPU
{58A1E42E-5DA1-452A-B39C-A1819171970A}.Release|Any CPU.Build.0 = Release|Any CPU
{3DD4EF0E-36D5-48BD-8F8A-1D7DAF74EC25}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{3DD4EF0E-36D5-48BD-8F8A-1D7DAF74EC25}.Debug|Any CPU.Build.0 = Debug|Any CPU
{3DD4EF0E-36D5-48BD-8F8A-1D7DAF74EC25}.Release|Any CPU.ActiveCfg = Release|Any CPU
{3DD4EF0E-36D5-48BD-8F8A-1D7DAF74EC25}.Release|Any CPU.Build.0 = Release|Any CPU
{85615392-9242-4CAF-A0FE-A439FF615462}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{85615392-9242-4CAF-A0FE-A439FF615462}.Debug|Any CPU.Build.0 = Debug|Any CPU
{85615392-9242-4CAF-A0FE-A439FF615462}.Release|Any CPU.ActiveCfg = Release|Any CPU
@ -170,7 +164,6 @@ Global
{A0EBE0C7-F63B-477C-BDE5-6B57AB9DB540} = {96EA71C4-C73B-4C6C-AA06-05635B20A2DC}
{B792E72A-0513-4359-B754-D0372610DDCE} = {96EA71C4-C73B-4C6C-AA06-05635B20A2DC}
{1236A517-6B61-4A62-9495-1C945EDA4D12} = {96EA71C4-C73B-4C6C-AA06-05635B20A2DC}
{3DD4EF0E-36D5-48BD-8F8A-1D7DAF74EC25} = {96EA71C4-C73B-4C6C-AA06-05635B20A2DC}
{BAFF07C7-1F5F-4706-B7D7-9D5D309CBFE2} = {96EA71C4-C73B-4C6C-AA06-05635B20A2DC}
{65079F8F-0653-4474-B105-551A9B6F102B} = {96EA71C4-C73B-4C6C-AA06-05635B20A2DC}
{A12B92C6-071A-4C61-8934-371DBB240873} = {96EA71C4-C73B-4C6C-AA06-05635B20A2DC}

View file

@ -1,13 +1,11 @@
Microsoft Visual Studio Solution File, Format Version 12.00
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "TestUtilities", "..\Common\tests\TestUtilities\TestUtilities.csproj", "{79CE8C7E-A4AF-413C-A54D-86F17073559C}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.Extensions.Logging.Generators", "gen\Microsoft.Extensions.Logging.Generators.csproj", "{1CB925AD-09DA-4734-BA05-619A00E5B448}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.Extensions.Logging.Abstractions", "ref\Microsoft.Extensions.Logging.Abstractions.csproj", "{7F536552-0E2A-4642-B7CF-863727C2F9CD}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.Extensions.Logging.Abstractions", "src\Microsoft.Extensions.Logging.Abstractions.csproj", "{75C579F7-F20B-41F1-8CAF-641DE7ADA4EE}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.Extensions.Logging.Generators.Tests", "tests\Microsoft.Extensions.Logging.Generators.Tests\Microsoft.Extensions.Logging.Generators.Tests.csproj", "{1CB869A7-2EEC-4A53-9C33-DF9E0C75825B}"
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.Extensions.Logging.Generators.Roslyn4.0.Tests", "tests\Microsoft.Extensions.Logging.Generators.Tests\Microsoft.Extensions.Logging.Generators.Roslyn4.0.Tests.csproj", "{1CB869A7-2EEC-4A53-9C33-DF9E0C75825B}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "System.Runtime.CompilerServices.Unsafe", "..\System.Runtime.CompilerServices.Unsafe\ref\System.Runtime.CompilerServices.Unsafe.csproj", "{DAA1349E-960E-49EB-81F3-FF4F99D8A325}"
EndProject
@ -19,6 +17,12 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "src", "src", "{548DF5F7-790
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "ref", "ref", "{7631380A-FB73-4241-9987-0891A21E9769}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.Extensions.Logging.Generators.Roslyn4.0", "gen\Microsoft.Extensions.Logging.Generators.Roslyn4.0.csproj", "{A5439E79-96D6-4F02-8DD0-23DFF979851D}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.Extensions.Logging.Generators.Roslyn3.11", "gen\Microsoft.Extensions.Logging.Generators.Roslyn3.11.csproj", "{1491B9C9-955D-4DB0-B1D5-70137A78EAAE}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.Extensions.Logging.Generators.Roslyn3.11.Tests", "tests\Microsoft.Extensions.Logging.Generators.Tests\Microsoft.Extensions.Logging.Generators.Roslyn3.11.Tests.csproj", "{C333EC5A-F386-4A01-AE20-12D499551304}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
@ -29,10 +33,6 @@ Global
{79CE8C7E-A4AF-413C-A54D-86F17073559C}.Debug|Any CPU.Build.0 = Debug|Any CPU
{79CE8C7E-A4AF-413C-A54D-86F17073559C}.Release|Any CPU.ActiveCfg = Release|Any CPU
{79CE8C7E-A4AF-413C-A54D-86F17073559C}.Release|Any CPU.Build.0 = Release|Any CPU
{1CB925AD-09DA-4734-BA05-619A00E5B448}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{1CB925AD-09DA-4734-BA05-619A00E5B448}.Debug|Any CPU.Build.0 = Debug|Any CPU
{1CB925AD-09DA-4734-BA05-619A00E5B448}.Release|Any CPU.ActiveCfg = Release|Any CPU
{1CB925AD-09DA-4734-BA05-619A00E5B448}.Release|Any CPU.Build.0 = Release|Any CPU
{7F536552-0E2A-4642-B7CF-863727C2F9CD}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{7F536552-0E2A-4642-B7CF-863727C2F9CD}.Debug|Any CPU.Build.0 = Debug|Any CPU
{7F536552-0E2A-4642-B7CF-863727C2F9CD}.Release|Any CPU.ActiveCfg = Release|Any CPU
@ -53,18 +53,32 @@ Global
{F8CF3192-B902-4631-972A-C405FDECC48D}.Debug|Any CPU.Build.0 = Debug|Any CPU
{F8CF3192-B902-4631-972A-C405FDECC48D}.Release|Any CPU.ActiveCfg = Release|Any CPU
{F8CF3192-B902-4631-972A-C405FDECC48D}.Release|Any CPU.Build.0 = Release|Any CPU
{A5439E79-96D6-4F02-8DD0-23DFF979851D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{A5439E79-96D6-4F02-8DD0-23DFF979851D}.Debug|Any CPU.Build.0 = Debug|Any CPU
{A5439E79-96D6-4F02-8DD0-23DFF979851D}.Release|Any CPU.ActiveCfg = Release|Any CPU
{A5439E79-96D6-4F02-8DD0-23DFF979851D}.Release|Any CPU.Build.0 = Release|Any CPU
{1491B9C9-955D-4DB0-B1D5-70137A78EAAE}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{1491B9C9-955D-4DB0-B1D5-70137A78EAAE}.Debug|Any CPU.Build.0 = Debug|Any CPU
{1491B9C9-955D-4DB0-B1D5-70137A78EAAE}.Release|Any CPU.ActiveCfg = Release|Any CPU
{1491B9C9-955D-4DB0-B1D5-70137A78EAAE}.Release|Any CPU.Build.0 = Release|Any CPU
{C333EC5A-F386-4A01-AE20-12D499551304}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{C333EC5A-F386-4A01-AE20-12D499551304}.Debug|Any CPU.Build.0 = Debug|Any CPU
{C333EC5A-F386-4A01-AE20-12D499551304}.Release|Any CPU.ActiveCfg = Release|Any CPU
{C333EC5A-F386-4A01-AE20-12D499551304}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
GlobalSection(NestedProjects) = preSolution
{79CE8C7E-A4AF-413C-A54D-86F17073559C} = {4DE63935-DCA9-4D63-9C1F-AAE79C89CA8B}
{1CB869A7-2EEC-4A53-9C33-DF9E0C75825B} = {4DE63935-DCA9-4D63-9C1F-AAE79C89CA8B}
{1CB925AD-09DA-4734-BA05-619A00E5B448} = {548DF5F7-790C-4A1C-89EB-BD904CA1BA86}
{75C579F7-F20B-41F1-8CAF-641DE7ADA4EE} = {548DF5F7-790C-4A1C-89EB-BD904CA1BA86}
{F8CF3192-B902-4631-972A-C405FDECC48D} = {548DF5F7-790C-4A1C-89EB-BD904CA1BA86}
{7F536552-0E2A-4642-B7CF-863727C2F9CD} = {7631380A-FB73-4241-9987-0891A21E9769}
{75C579F7-F20B-41F1-8CAF-641DE7ADA4EE} = {548DF5F7-790C-4A1C-89EB-BD904CA1BA86}
{1CB869A7-2EEC-4A53-9C33-DF9E0C75825B} = {4DE63935-DCA9-4D63-9C1F-AAE79C89CA8B}
{DAA1349E-960E-49EB-81F3-FF4F99D8A325} = {7631380A-FB73-4241-9987-0891A21E9769}
{F8CF3192-B902-4631-972A-C405FDECC48D} = {548DF5F7-790C-4A1C-89EB-BD904CA1BA86}
{A5439E79-96D6-4F02-8DD0-23DFF979851D} = {548DF5F7-790C-4A1C-89EB-BD904CA1BA86}
{1491B9C9-955D-4DB0-B1D5-70137A78EAAE} = {548DF5F7-790C-4A1C-89EB-BD904CA1BA86}
{C333EC5A-F386-4A01-AE20-12D499551304} = {4DE63935-DCA9-4D63-9C1F-AAE79C89CA8B}
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {450DA749-CBDC-4BDC-950F-8A491CF59D49}

View file

@ -437,12 +437,20 @@ namespace Microsoft.Extensions.Logging.Generators
// determine the namespace the class is declared in, if any
SyntaxNode? potentialNamespaceParent = classDec.Parent;
while (potentialNamespaceParent != null &&
potentialNamespaceParent is not NamespaceDeclarationSyntax &&
potentialNamespaceParent is not FileScopedNamespaceDeclarationSyntax)
potentialNamespaceParent is not NamespaceDeclarationSyntax
#if ROSLYN4_0_OR_GREATER
&& potentialNamespaceParent is not FileScopedNamespaceDeclarationSyntax
#endif
)
{
potentialNamespaceParent = potentialNamespaceParent.Parent;
}
#if ROSLYN4_0_OR_GREATER
if (potentialNamespaceParent is BaseNamespaceDeclarationSyntax namespaceParent)
#else
if (potentialNamespaceParent is NamespaceDeclarationSyntax namespaceParent)
#endif
{
nspace = namespaceParent.Name.ToString();
while (true)

View file

@ -0,0 +1,63 @@
// Licensed to the .NET Foundation under one or more agreements.
// The .NET Foundation licenses this file to you under the MIT license.
using System.Collections.Generic;
using System.Text;
using Microsoft.CodeAnalysis;
using Microsoft.CodeAnalysis.CSharp.Syntax;
using Microsoft.CodeAnalysis.Text;
[assembly: System.Resources.NeutralResourcesLanguage("en-us")]
namespace Microsoft.Extensions.Logging.Generators
{
[Generator]
public partial class LoggerMessageGenerator : ISourceGenerator
{
public void Initialize(GeneratorInitializationContext context)
{
context.RegisterForSyntaxNotifications(SyntaxContextReceiver.Create);
}
public void Execute(GeneratorExecutionContext context)
{
if (context.SyntaxContextReceiver is not SyntaxContextReceiver receiver || receiver.ClassDeclarations.Count == 0)
{
// nothing to do yet
return;
}
var p = new Parser(context.Compilation, context.ReportDiagnostic, context.CancellationToken);
IReadOnlyList<LoggerClass> logClasses = p.GetLogClasses(receiver.ClassDeclarations);
if (logClasses.Count > 0)
{
var e = new Emitter();
string result = e.Emit(logClasses, context.CancellationToken);
context.AddSource("LoggerMessage.g.cs", SourceText.From(result, Encoding.UTF8));
}
}
private sealed class SyntaxContextReceiver : ISyntaxContextReceiver
{
internal static ISyntaxContextReceiver Create()
{
return new SyntaxContextReceiver();
}
public HashSet<ClassDeclarationSyntax> ClassDeclarations { get; } = new();
public void OnVisitSyntaxNode(GeneratorSyntaxContext context)
{
if (Parser.IsSyntaxTargetForGeneration(context.Node))
{
ClassDeclarationSyntax classSyntax = Parser.GetSemanticTargetForGeneration(context);
if (classSyntax != null)
{
ClassDeclarations.Add(classSyntax);
}
}
}
}
}
}

View file

@ -1,13 +1,9 @@
// Licensed to the .NET Foundation under one or more agreements.
// The .NET Foundation licenses this file to you under the MIT license.
using System;
using System.Collections.Generic;
using System.Collections.Immutable;
using System.Diagnostics.CodeAnalysis;
using System.Diagnostics.Tracing;
using System.Linq;
using System.Runtime.CompilerServices;
using System.Text;
using Microsoft.CodeAnalysis;
using Microsoft.CodeAnalysis.CSharp.Syntax;

View file

@ -0,0 +1,14 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<AnalyzerRoslynVersion>3.11</AnalyzerRoslynVersion>
<RoslynApiVersion>$(MicrosoftCodeAnalysisCSharpWorkspacesVersion_3_11)</RoslynApiVersion>
</PropertyGroup>
<Import Project="Microsoft.Extensions.Logging.Generators.targets" />
<ItemGroup>
<Compile Remove="LoggerMessageGenerator.Roslyn4.0.cs" />
</ItemGroup>
</Project>

View file

@ -0,0 +1,15 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<AnalyzerRoslynVersion>4.0</AnalyzerRoslynVersion>
<RoslynApiVersion>$(MicrosoftCodeAnalysisCSharpWorkspacesVersion)</RoslynApiVersion>
<DefineConstants>$(DefineConstants);ROSLYN4_0_OR_GREATER</DefineConstants>
</PropertyGroup>
<Import Project="Microsoft.Extensions.Logging.Generators.targets" />
<ItemGroup>
<Compile Remove="LoggerMessageGenerator.Roslyn3.11.cs" />
</ItemGroup>
</Project>

View file

@ -1,7 +1,11 @@
<Project Sdk="Microsoft.NET.Sdk">
<Project>
<PropertyGroup>
<TargetFrameworks>netstandard2.0</TargetFrameworks>
<AssemblyName>$(MSBuildThisFileName)</AssemblyName>
<RootNamespace>$(MSBuildThisFileName)</RootNamespace>
<StringResourcesClassName>SR</StringResourcesClassName>
<StringResourcesName>FxResources.$(RootNamespace).$(StringResourcesClassName)</StringResourcesName>
<Nullable>enable</Nullable>
<EnableDefaultItems>true</EnableDefaultItems>
<EnableDefaultEmbeddedResourceItems>false</EnableDefaultEmbeddedResourceItems>
@ -12,7 +16,7 @@
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Microsoft.CodeAnalysis.CSharp.Workspaces" Version="$(MicrosoftCodeAnalysisCSharpWorkspacesVersion)" PrivateAssets="all" />
<PackageReference Include="Microsoft.CodeAnalysis.CSharp.Workspaces" Version="$(RoslynApiVersion)" PrivateAssets="all" />
<PackageReference Include="Microsoft.DotNet.Build.Tasks.Packaging" Version="$(MicrosoftDotNetBuildTasksPackagingVersion)" PrivateAssets="all" />
</ItemGroup>

View file

@ -35,8 +35,9 @@ Microsoft.Extensions.Logging.Abstractions.NullLogger</PackageDescription>
<PackageReference Include="System.Memory" Version="$(SystemMemoryVersion)" />
</ItemGroup>
<ItemGroup>
<AnalyzerReference Include="..\gen\Microsoft.Extensions.Logging.Generators.csproj" />
<ItemGroup>
<AnalyzerReference Include="..\gen\Microsoft.Extensions.Logging.Generators.Roslyn3.11.csproj" />
<AnalyzerReference Include="..\gen\Microsoft.Extensions.Logging.Generators.Roslyn4.0.csproj" />
</ItemGroup>
</Project>

View file

@ -147,6 +147,7 @@ namespace Microsoft.Extensions.Logging.Generators.Tests.TestClasses
await VerifyAgainstBaselineUsingFile("TestWithNestedClass.generated.txt", testSourceCode);
}
#if ROSLYN4_0_OR_GREATER
[Fact]
public async Task TestBaseline_TestWithFileScopedNamespace_Success()
{
@ -160,6 +161,7 @@ internal static partial class TestWithDefaultValues
}";
await VerifyAgainstBaselineUsingFile("TestWithDefaultValues.generated.txt", testSourceCode);
}
#endif
private async Task VerifyAgainstBaselineUsingFile(string filename, string testSourceCode)
{

View file

@ -350,6 +350,7 @@ namespace Microsoft.Extensions.Logging.Generators.Tests
Assert.Empty(diagnostics);
}
#if ROSLYN4_0_OR_GREATER
[Fact]
public async Task FileScopedNamespaceOK()
{
@ -367,6 +368,7 @@ namespace Microsoft.Extensions.Logging.Generators.Tests
Assert.Empty(diagnostics);
}
#endif
[Theory]
[InlineData("false")]

View file

@ -0,0 +1,13 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<RoslynApiVersion>$(MicrosoftCodeAnalysisCSharpWorkspacesVersion_3_11)</RoslynApiVersion>
</PropertyGroup>
<Import Project="Microsoft.Extensions.Logging.Generators.targets"/>
<ItemGroup>
<ProjectReference Include="..\..\gen\Microsoft.Extensions.Logging.Generators.Roslyn3.11.csproj" OutputItemType="Analyzer" ReferenceOutputAssembly="true" />
</ItemGroup>
</Project>

View file

@ -0,0 +1,14 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<RoslynApiVersion>$(MicrosoftCodeAnalysisCSharpWorkspacesVersion)</RoslynApiVersion>
<DefineConstants>$(DefineConstants);ROSLYN4_0_OR_GREATER</DefineConstants>
</PropertyGroup>
<Import Project="Microsoft.Extensions.Logging.Generators.targets"/>
<ItemGroup>
<ProjectReference Include="..\..\gen\Microsoft.Extensions.Logging.Generators.Roslyn4.0.csproj" OutputItemType="Analyzer" ReferenceOutputAssembly="true" />
</ItemGroup>
</Project>

View file

@ -1,4 +1,4 @@
<Project Sdk="Microsoft.NET.Sdk">
<Project>
<PropertyGroup>
<TargetFrameworks>$(NetCoreAppCurrent)</TargetFrameworks>
@ -14,9 +14,8 @@
<ItemGroup>
<ProjectReference Include="$(LibrariesProjectRoot)Microsoft.Extensions.Logging.Abstractions\src\Microsoft.Extensions.Logging.Abstractions.csproj" />
<PackageReference Include="Microsoft.CodeAnalysis" Version="$(MicrosoftCodeAnalysisVersion)" />
<PackageReference Include="Microsoft.CodeAnalysis" Version="$(RoslynApiVersion)" />
<PackageReference Include="SQLitePCLRaw.bundle_green" Version="$(SQLitePCLRawbundle_greenVersion)" />
<ProjectReference Include="..\..\gen\Microsoft.Extensions.Logging.Generators.csproj" OutputItemType="Analyzer" ReferenceOutputAssembly="true" />
</ItemGroup>
<ItemGroup>

View file

@ -23,8 +23,6 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.Extensions.Depend
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.Extensions.DependencyInjection", "..\Microsoft.Extensions.DependencyInjection\src\Microsoft.Extensions.DependencyInjection.csproj", "{788150B7-B822-4466-A1DC-C875449DE449}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.Extensions.Logging.Generators", "..\Microsoft.Extensions.Logging.Abstractions\gen\Microsoft.Extensions.Logging.Generators.csproj", "{6D6D8484-D8D0-4FCA-B6FA-B665C629D78F}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.Extensions.Logging.Abstractions", "..\Microsoft.Extensions.Logging.Abstractions\ref\Microsoft.Extensions.Logging.Abstractions.csproj", "{C4F75024-EA9D-46C5-B2D9-CAE8FC5EFF38}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.Extensions.Logging.Abstractions", "..\Microsoft.Extensions.Logging.Abstractions\src\Microsoft.Extensions.Logging.Abstractions.csproj", "{E7035B72-0180-437E-A696-1F0CD8921279}"
@ -115,10 +113,6 @@ Global
{788150B7-B822-4466-A1DC-C875449DE449}.Debug|Any CPU.Build.0 = Debug|Any CPU
{788150B7-B822-4466-A1DC-C875449DE449}.Release|Any CPU.ActiveCfg = Release|Any CPU
{788150B7-B822-4466-A1DC-C875449DE449}.Release|Any CPU.Build.0 = Release|Any CPU
{6D6D8484-D8D0-4FCA-B6FA-B665C629D78F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{6D6D8484-D8D0-4FCA-B6FA-B665C629D78F}.Debug|Any CPU.Build.0 = Debug|Any CPU
{6D6D8484-D8D0-4FCA-B6FA-B665C629D78F}.Release|Any CPU.ActiveCfg = Release|Any CPU
{6D6D8484-D8D0-4FCA-B6FA-B665C629D78F}.Release|Any CPU.Build.0 = Release|Any CPU
{C4F75024-EA9D-46C5-B2D9-CAE8FC5EFF38}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{C4F75024-EA9D-46C5-B2D9-CAE8FC5EFF38}.Debug|Any CPU.Build.0 = Debug|Any CPU
{C4F75024-EA9D-46C5-B2D9-CAE8FC5EFF38}.Release|Any CPU.ActiveCfg = Release|Any CPU
@ -208,7 +202,6 @@ Global
{71755B81-EF5C-4C36-A278-60D69ECCC158} = {ED0ADAC4-705C-421A-A8D2-69CFFFCF734B}
{36176FF1-8C33-494D-A496-1D7E0DCFCD86} = {ED0ADAC4-705C-421A-A8D2-69CFFFCF734B}
{788150B7-B822-4466-A1DC-C875449DE449} = {ED0ADAC4-705C-421A-A8D2-69CFFFCF734B}
{6D6D8484-D8D0-4FCA-B6FA-B665C629D78F} = {ED0ADAC4-705C-421A-A8D2-69CFFFCF734B}
{E7035B72-0180-437E-A696-1F0CD8921279} = {ED0ADAC4-705C-421A-A8D2-69CFFFCF734B}
{B3829B05-AA4A-4A0D-B076-D0C3031C9D33} = {ED0ADAC4-705C-421A-A8D2-69CFFFCF734B}
{BBCC241D-0980-4735-8187-229D37ADC0E5} = {ED0ADAC4-705C-421A-A8D2-69CFFFCF734B}

View file

@ -25,8 +25,6 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.Extensions.Depend
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.Extensions.DependencyInjection", "..\Microsoft.Extensions.DependencyInjection\src\Microsoft.Extensions.DependencyInjection.csproj", "{2E4D0EB0-E34B-4D47-A7F1-E35C696066E8}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.Extensions.Logging.Generators", "..\Microsoft.Extensions.Logging.Abstractions\gen\Microsoft.Extensions.Logging.Generators.csproj", "{D902BAF8-7431-4017-BD56-F4EABE38D7F9}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.Extensions.Logging.Abstractions", "..\Microsoft.Extensions.Logging.Abstractions\ref\Microsoft.Extensions.Logging.Abstractions.csproj", "{9BCECFDA-BF6E-4BD8-BFE2-A25C61F57874}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.Extensions.Logging.Abstractions", "..\Microsoft.Extensions.Logging.Abstractions\src\Microsoft.Extensions.Logging.Abstractions.csproj", "{6A02D298-6899-4DD0-BFF4-40702BC30BCD}"
@ -69,8 +67,6 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "System.Text.Encodings.Web",
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "System.Text.Encodings.Web", "..\System.Text.Encodings.Web\src\System.Text.Encodings.Web.csproj", "{BF5E5B5A-AC50-4FF1-AADB-0DFC1AA8E429}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "System.Text.Json.SourceGeneration", "..\System.Text.Json\gen\System.Text.Json.SourceGeneration.csproj", "{AD117F41-062A-4158-A17D-3375820A53FA}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "System.Text.Json", "..\System.Text.Json\ref\System.Text.Json.csproj", "{8C8B3A3F-A9C1-4E72-BA3F-DE8A8FE5B040}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "System.Text.Json", "..\System.Text.Json\src\System.Text.Json.csproj", "{C9F3D8F9-8646-432E-82FC-2E4E8411CFFE}"
@ -139,10 +135,6 @@ Global
{2E4D0EB0-E34B-4D47-A7F1-E35C696066E8}.Debug|Any CPU.Build.0 = Debug|Any CPU
{2E4D0EB0-E34B-4D47-A7F1-E35C696066E8}.Release|Any CPU.ActiveCfg = Release|Any CPU
{2E4D0EB0-E34B-4D47-A7F1-E35C696066E8}.Release|Any CPU.Build.0 = Release|Any CPU
{D902BAF8-7431-4017-BD56-F4EABE38D7F9}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{D902BAF8-7431-4017-BD56-F4EABE38D7F9}.Debug|Any CPU.Build.0 = Debug|Any CPU
{D902BAF8-7431-4017-BD56-F4EABE38D7F9}.Release|Any CPU.ActiveCfg = Release|Any CPU
{D902BAF8-7431-4017-BD56-F4EABE38D7F9}.Release|Any CPU.Build.0 = Release|Any CPU
{9BCECFDA-BF6E-4BD8-BFE2-A25C61F57874}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{9BCECFDA-BF6E-4BD8-BFE2-A25C61F57874}.Debug|Any CPU.Build.0 = Debug|Any CPU
{9BCECFDA-BF6E-4BD8-BFE2-A25C61F57874}.Release|Any CPU.ActiveCfg = Release|Any CPU
@ -227,10 +219,6 @@ Global
{BF5E5B5A-AC50-4FF1-AADB-0DFC1AA8E429}.Debug|Any CPU.Build.0 = Debug|Any CPU
{BF5E5B5A-AC50-4FF1-AADB-0DFC1AA8E429}.Release|Any CPU.ActiveCfg = Release|Any CPU
{BF5E5B5A-AC50-4FF1-AADB-0DFC1AA8E429}.Release|Any CPU.Build.0 = Release|Any CPU
{AD117F41-062A-4158-A17D-3375820A53FA}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{AD117F41-062A-4158-A17D-3375820A53FA}.Debug|Any CPU.Build.0 = Debug|Any CPU
{AD117F41-062A-4158-A17D-3375820A53FA}.Release|Any CPU.ActiveCfg = Release|Any CPU
{AD117F41-062A-4158-A17D-3375820A53FA}.Release|Any CPU.Build.0 = Release|Any CPU
{8C8B3A3F-A9C1-4E72-BA3F-DE8A8FE5B040}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{8C8B3A3F-A9C1-4E72-BA3F-DE8A8FE5B040}.Debug|Any CPU.Build.0 = Debug|Any CPU
{8C8B3A3F-A9C1-4E72-BA3F-DE8A8FE5B040}.Release|Any CPU.ActiveCfg = Release|Any CPU
@ -269,7 +257,6 @@ Global
{EF05AB17-527F-40BC-B4D1-AAE510267F4E} = {F3BAE0A3-1AF5-4F38-ADBE-6FEC99664322}
{1F272F82-E9D1-454A-8E3C-6BEAF02219D4} = {F3BAE0A3-1AF5-4F38-ADBE-6FEC99664322}
{2E4D0EB0-E34B-4D47-A7F1-E35C696066E8} = {F3BAE0A3-1AF5-4F38-ADBE-6FEC99664322}
{D902BAF8-7431-4017-BD56-F4EABE38D7F9} = {F3BAE0A3-1AF5-4F38-ADBE-6FEC99664322}
{6A02D298-6899-4DD0-BFF4-40702BC30BCD} = {F3BAE0A3-1AF5-4F38-ADBE-6FEC99664322}
{E09FB553-28C4-4C1C-8E86-CFAB3374A656} = {F3BAE0A3-1AF5-4F38-ADBE-6FEC99664322}
{974792E2-0311-446A-BABF-18B3A8DDDEC5} = {F3BAE0A3-1AF5-4F38-ADBE-6FEC99664322}
@ -280,7 +267,6 @@ Global
{5DCD1587-CC45-4105-8FFE-E4A43C60DA8D} = {F3BAE0A3-1AF5-4F38-ADBE-6FEC99664322}
{EB05EC17-2C21-47EC-A39D-90ABBA053318} = {F3BAE0A3-1AF5-4F38-ADBE-6FEC99664322}
{BF5E5B5A-AC50-4FF1-AADB-0DFC1AA8E429} = {F3BAE0A3-1AF5-4F38-ADBE-6FEC99664322}
{AD117F41-062A-4158-A17D-3375820A53FA} = {F3BAE0A3-1AF5-4F38-ADBE-6FEC99664322}
{C9F3D8F9-8646-432E-82FC-2E4E8411CFFE} = {F3BAE0A3-1AF5-4F38-ADBE-6FEC99664322}
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution

View file

@ -11,8 +11,6 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.Extensions.Depend
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.Extensions.DependencyInjection", "..\Microsoft.Extensions.DependencyInjection\src\Microsoft.Extensions.DependencyInjection.csproj", "{850FBE78-DE29-480D-B4EE-6D260B0341B4}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.Extensions.Logging.Generators", "..\Microsoft.Extensions.Logging.Abstractions\gen\Microsoft.Extensions.Logging.Generators.csproj", "{3FB47333-590F-417A-832D-83CD81BAA4E1}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.Extensions.Logging.Abstractions", "..\Microsoft.Extensions.Logging.Abstractions\ref\Microsoft.Extensions.Logging.Abstractions.csproj", "{16E075F3-372C-4A98-BDAF-FF615B8A9855}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.Extensions.Logging.Abstractions", "..\Microsoft.Extensions.Logging.Abstractions\src\Microsoft.Extensions.Logging.Abstractions.csproj", "{3DDCFBB7-A438-46BB-9094-A1A39060DD2A}"
@ -75,10 +73,6 @@ Global
{850FBE78-DE29-480D-B4EE-6D260B0341B4}.Debug|Any CPU.Build.0 = Debug|Any CPU
{850FBE78-DE29-480D-B4EE-6D260B0341B4}.Release|Any CPU.ActiveCfg = Release|Any CPU
{850FBE78-DE29-480D-B4EE-6D260B0341B4}.Release|Any CPU.Build.0 = Release|Any CPU
{3FB47333-590F-417A-832D-83CD81BAA4E1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{3FB47333-590F-417A-832D-83CD81BAA4E1}.Debug|Any CPU.Build.0 = Debug|Any CPU
{3FB47333-590F-417A-832D-83CD81BAA4E1}.Release|Any CPU.ActiveCfg = Release|Any CPU
{3FB47333-590F-417A-832D-83CD81BAA4E1}.Release|Any CPU.Build.0 = Release|Any CPU
{16E075F3-372C-4A98-BDAF-FF615B8A9855}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{16E075F3-372C-4A98-BDAF-FF615B8A9855}.Debug|Any CPU.Build.0 = Debug|Any CPU
{16E075F3-372C-4A98-BDAF-FF615B8A9855}.Release|Any CPU.ActiveCfg = Release|Any CPU
@ -153,7 +147,6 @@ Global
{544BBE63-3650-42E0-AD83-B613907BE753} = {FC2F4F53-DFE7-4A0B-A85C-D266FDD51526}
{5B4734D0-7CF9-4F4B-B27A-FAED72A81C71} = {FC2F4F53-DFE7-4A0B-A85C-D266FDD51526}
{850FBE78-DE29-480D-B4EE-6D260B0341B4} = {FC2F4F53-DFE7-4A0B-A85C-D266FDD51526}
{3FB47333-590F-417A-832D-83CD81BAA4E1} = {FC2F4F53-DFE7-4A0B-A85C-D266FDD51526}
{3DDCFBB7-A438-46BB-9094-A1A39060DD2A} = {FC2F4F53-DFE7-4A0B-A85C-D266FDD51526}
{81AB6F03-2FF8-4F0F-AB21-B80A6C345DC1} = {FC2F4F53-DFE7-4A0B-A85C-D266FDD51526}
{7B89700F-897A-4CE8-B789-C9F915631845} = {FC2F4F53-DFE7-4A0B-A85C-D266FDD51526}

View file

@ -11,8 +11,6 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.Extensions.Depend
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.Extensions.DependencyInjection", "..\Microsoft.Extensions.DependencyInjection\src\Microsoft.Extensions.DependencyInjection.csproj", "{62D0B220-DABD-4C56-A0E2-640D74465328}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.Extensions.Logging.Generators", "..\Microsoft.Extensions.Logging.Abstractions\gen\Microsoft.Extensions.Logging.Generators.csproj", "{AF5C6565-09EE-4E1F-A146-72785C0FF66F}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.Extensions.Logging.Abstractions", "..\Microsoft.Extensions.Logging.Abstractions\ref\Microsoft.Extensions.Logging.Abstractions.csproj", "{B1BE2665-7E3F-46FB-BCE1-774D5984F76C}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.Extensions.Logging.Abstractions", "..\Microsoft.Extensions.Logging.Abstractions\src\Microsoft.Extensions.Logging.Abstractions.csproj", "{6C2850C7-56F0-4DCF-BFBF-4365DE2FC439}"
@ -87,10 +85,6 @@ Global
{62D0B220-DABD-4C56-A0E2-640D74465328}.Debug|Any CPU.Build.0 = Debug|Any CPU
{62D0B220-DABD-4C56-A0E2-640D74465328}.Release|Any CPU.ActiveCfg = Release|Any CPU
{62D0B220-DABD-4C56-A0E2-640D74465328}.Release|Any CPU.Build.0 = Release|Any CPU
{AF5C6565-09EE-4E1F-A146-72785C0FF66F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{AF5C6565-09EE-4E1F-A146-72785C0FF66F}.Debug|Any CPU.Build.0 = Debug|Any CPU
{AF5C6565-09EE-4E1F-A146-72785C0FF66F}.Release|Any CPU.ActiveCfg = Release|Any CPU
{AF5C6565-09EE-4E1F-A146-72785C0FF66F}.Release|Any CPU.Build.0 = Release|Any CPU
{B1BE2665-7E3F-46FB-BCE1-774D5984F76C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{B1BE2665-7E3F-46FB-BCE1-774D5984F76C}.Debug|Any CPU.Build.0 = Debug|Any CPU
{B1BE2665-7E3F-46FB-BCE1-774D5984F76C}.Release|Any CPU.ActiveCfg = Release|Any CPU
@ -193,7 +187,6 @@ Global
{B67E21A5-9B87-46DB-99A1-F04074CBE466} = {FD104C22-7ECA-47DD-8877-26AC1E0E5ECC}
{A21DEE4B-F49B-4A19-95AC-7589757B8962} = {FD104C22-7ECA-47DD-8877-26AC1E0E5ECC}
{62D0B220-DABD-4C56-A0E2-640D74465328} = {FD104C22-7ECA-47DD-8877-26AC1E0E5ECC}
{AF5C6565-09EE-4E1F-A146-72785C0FF66F} = {FD104C22-7ECA-47DD-8877-26AC1E0E5ECC}
{6C2850C7-56F0-4DCF-BFBF-4365DE2FC439} = {FD104C22-7ECA-47DD-8877-26AC1E0E5ECC}
{5EA9057E-5887-4BDB-8785-A752D96D89F9} = {FD104C22-7ECA-47DD-8877-26AC1E0E5ECC}
{515F097D-9FFB-4728-8B9E-18CFA6916AD3} = {FD104C22-7ECA-47DD-8877-26AC1E0E5ECC}

View file

@ -13,8 +13,6 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.Extensions.Depend
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.Extensions.DependencyInjection", "..\Microsoft.Extensions.DependencyInjection\src\Microsoft.Extensions.DependencyInjection.csproj", "{7834A5FC-A39B-4435-9D8C-2EEABFFA7A84}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.Extensions.Logging.Generators", "..\Microsoft.Extensions.Logging.Abstractions\gen\Microsoft.Extensions.Logging.Generators.csproj", "{0C1BD2DA-FA39-458E-8BCB-0D73231C43D3}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.Extensions.Logging.Abstractions", "..\Microsoft.Extensions.Logging.Abstractions\ref\Microsoft.Extensions.Logging.Abstractions.csproj", "{F5B4A3CF-03B5-40A2-BE78-DA6230270113}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.Extensions.Logging.Abstractions", "..\Microsoft.Extensions.Logging.Abstractions\src\Microsoft.Extensions.Logging.Abstractions.csproj", "{F4A703F8-3D69-4113-A86F-9AD908086092}"
@ -49,8 +47,6 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "System.Text.Encodings.Web",
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "System.Text.Encodings.Web", "..\System.Text.Encodings.Web\src\System.Text.Encodings.Web.csproj", "{50CC33E5-CB2C-4CFB-9CDE-BBD41B30FB86}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "System.Text.Json.SourceGeneration", "..\System.Text.Json\gen\System.Text.Json.SourceGeneration.csproj", "{4BF31DFE-A930-499C-B696-BB1958C08089}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "System.Text.Json", "..\System.Text.Json\ref\System.Text.Json.csproj", "{3E80E645-8642-4944-9B45-0F317A8D2E58}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "System.Text.Json", "..\System.Text.Json\src\System.Text.Json.csproj", "{5A956452-F322-4C4F-8689-D2B425764293}"
@ -95,10 +91,6 @@ Global
{7834A5FC-A39B-4435-9D8C-2EEABFFA7A84}.Debug|Any CPU.Build.0 = Debug|Any CPU
{7834A5FC-A39B-4435-9D8C-2EEABFFA7A84}.Release|Any CPU.ActiveCfg = Release|Any CPU
{7834A5FC-A39B-4435-9D8C-2EEABFFA7A84}.Release|Any CPU.Build.0 = Release|Any CPU
{0C1BD2DA-FA39-458E-8BCB-0D73231C43D3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{0C1BD2DA-FA39-458E-8BCB-0D73231C43D3}.Debug|Any CPU.Build.0 = Debug|Any CPU
{0C1BD2DA-FA39-458E-8BCB-0D73231C43D3}.Release|Any CPU.ActiveCfg = Release|Any CPU
{0C1BD2DA-FA39-458E-8BCB-0D73231C43D3}.Release|Any CPU.Build.0 = Release|Any CPU
{F5B4A3CF-03B5-40A2-BE78-DA6230270113}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{F5B4A3CF-03B5-40A2-BE78-DA6230270113}.Debug|Any CPU.Build.0 = Debug|Any CPU
{F5B4A3CF-03B5-40A2-BE78-DA6230270113}.Release|Any CPU.ActiveCfg = Release|Any CPU
@ -167,10 +159,6 @@ Global
{50CC33E5-CB2C-4CFB-9CDE-BBD41B30FB86}.Debug|Any CPU.Build.0 = Debug|Any CPU
{50CC33E5-CB2C-4CFB-9CDE-BBD41B30FB86}.Release|Any CPU.ActiveCfg = Release|Any CPU
{50CC33E5-CB2C-4CFB-9CDE-BBD41B30FB86}.Release|Any CPU.Build.0 = Release|Any CPU
{4BF31DFE-A930-499C-B696-BB1958C08089}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{4BF31DFE-A930-499C-B696-BB1958C08089}.Debug|Any CPU.Build.0 = Debug|Any CPU
{4BF31DFE-A930-499C-B696-BB1958C08089}.Release|Any CPU.ActiveCfg = Release|Any CPU
{4BF31DFE-A930-499C-B696-BB1958C08089}.Release|Any CPU.Build.0 = Release|Any CPU
{3E80E645-8642-4944-9B45-0F317A8D2E58}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{3E80E645-8642-4944-9B45-0F317A8D2E58}.Debug|Any CPU.Build.0 = Debug|Any CPU
{3E80E645-8642-4944-9B45-0F317A8D2E58}.Release|Any CPU.ActiveCfg = Release|Any CPU
@ -201,7 +189,6 @@ Global
{9B5DD499-7FE6-4E35-8084-EAF9D0E4CFDE} = {887BF6A4-CB22-4DF4-8E24-A1B267161ECB}
{AD133460-B832-44BE-BF0A-A699A77FA718} = {887BF6A4-CB22-4DF4-8E24-A1B267161ECB}
{7834A5FC-A39B-4435-9D8C-2EEABFFA7A84} = {887BF6A4-CB22-4DF4-8E24-A1B267161ECB}
{0C1BD2DA-FA39-458E-8BCB-0D73231C43D3} = {887BF6A4-CB22-4DF4-8E24-A1B267161ECB}
{F4A703F8-3D69-4113-A86F-9AD908086092} = {887BF6A4-CB22-4DF4-8E24-A1B267161ECB}
{85D5D364-5D5F-4D9F-A6DA-1EF4C9E5503F} = {887BF6A4-CB22-4DF4-8E24-A1B267161ECB}
{4B621745-2446-4A51-96C1-E1F9D4FCE1E3} = {887BF6A4-CB22-4DF4-8E24-A1B267161ECB}
@ -210,7 +197,6 @@ Global
{23F45D4C-4E33-4334-A5BF-D34E24165E0B} = {887BF6A4-CB22-4DF4-8E24-A1B267161ECB}
{9A16DEC0-1F88-4335-95B3-D7923FEB5283} = {887BF6A4-CB22-4DF4-8E24-A1B267161ECB}
{50CC33E5-CB2C-4CFB-9CDE-BBD41B30FB86} = {887BF6A4-CB22-4DF4-8E24-A1B267161ECB}
{4BF31DFE-A930-499C-B696-BB1958C08089} = {887BF6A4-CB22-4DF4-8E24-A1B267161ECB}
{5A956452-F322-4C4F-8689-D2B425764293} = {887BF6A4-CB22-4DF4-8E24-A1B267161ECB}
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution

View file

@ -11,8 +11,6 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.Extensions.Depend
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.Extensions.DependencyInjection", "..\Microsoft.Extensions.DependencyInjection\src\Microsoft.Extensions.DependencyInjection.csproj", "{A64CC82B-B781-4469-B009-49A43A0A2A96}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.Extensions.Logging.Generators", "..\Microsoft.Extensions.Logging.Abstractions\gen\Microsoft.Extensions.Logging.Generators.csproj", "{F4DE0466-D21E-4CAF-9307-999478A64D5B}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.Extensions.Logging.Abstractions", "..\Microsoft.Extensions.Logging.Abstractions\ref\Microsoft.Extensions.Logging.Abstractions.csproj", "{367922CE-A24E-4977-89BE-D1F2F678F8B2}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.Extensions.Logging.Abstractions", "..\Microsoft.Extensions.Logging.Abstractions\src\Microsoft.Extensions.Logging.Abstractions.csproj", "{F63AB9DB-6E62-4FEC-BA06-E146615C08AC}"
@ -75,10 +73,6 @@ Global
{A64CC82B-B781-4469-B009-49A43A0A2A96}.Debug|Any CPU.Build.0 = Debug|Any CPU
{A64CC82B-B781-4469-B009-49A43A0A2A96}.Release|Any CPU.ActiveCfg = Release|Any CPU
{A64CC82B-B781-4469-B009-49A43A0A2A96}.Release|Any CPU.Build.0 = Release|Any CPU
{F4DE0466-D21E-4CAF-9307-999478A64D5B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{F4DE0466-D21E-4CAF-9307-999478A64D5B}.Debug|Any CPU.Build.0 = Debug|Any CPU
{F4DE0466-D21E-4CAF-9307-999478A64D5B}.Release|Any CPU.ActiveCfg = Release|Any CPU
{F4DE0466-D21E-4CAF-9307-999478A64D5B}.Release|Any CPU.Build.0 = Release|Any CPU
{367922CE-A24E-4977-89BE-D1F2F678F8B2}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{367922CE-A24E-4977-89BE-D1F2F678F8B2}.Debug|Any CPU.Build.0 = Debug|Any CPU
{367922CE-A24E-4977-89BE-D1F2F678F8B2}.Release|Any CPU.ActiveCfg = Release|Any CPU
@ -153,7 +147,6 @@ Global
{1B7B708C-F860-478E-B3D4-1CB70E71A440} = {DFF3B3E7-DC70-46BC-8EDC-DC73CD69F7FC}
{A9250A96-9B27-46C5-A043-11F67D63B128} = {DFF3B3E7-DC70-46BC-8EDC-DC73CD69F7FC}
{A64CC82B-B781-4469-B009-49A43A0A2A96} = {DFF3B3E7-DC70-46BC-8EDC-DC73CD69F7FC}
{F4DE0466-D21E-4CAF-9307-999478A64D5B} = {DFF3B3E7-DC70-46BC-8EDC-DC73CD69F7FC}
{F63AB9DB-6E62-4FEC-BA06-E146615C08AC} = {DFF3B3E7-DC70-46BC-8EDC-DC73CD69F7FC}
{BC92BF65-8FA0-49C0-911F-426F21090774} = {DFF3B3E7-DC70-46BC-8EDC-DC73CD69F7FC}
{C0A5172A-162E-4CD8-B4E4-C8AE137EBC64} = {DFF3B3E7-DC70-46BC-8EDC-DC73CD69F7FC}

View file

@ -45,8 +45,6 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.Extensions.FileSy
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.Extensions.FileSystemGlobbing", "..\Microsoft.Extensions.FileSystemGlobbing\src\Microsoft.Extensions.FileSystemGlobbing.csproj", "{7C562B37-19E5-44BE-85D5-15FFA9FAEF5A}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.Extensions.Logging.Generators", "..\Microsoft.Extensions.Logging.Abstractions\gen\Microsoft.Extensions.Logging.Generators.csproj", "{56A5DED2-47C2-4938-931E-B896A6BDDA0D}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.Extensions.Logging.Abstractions", "..\Microsoft.Extensions.Logging.Abstractions\ref\Microsoft.Extensions.Logging.Abstractions.csproj", "{5CC86773-7762-4FB7-9B6E-F4002F286AD4}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.Extensions.Logging.Abstractions", "..\Microsoft.Extensions.Logging.Abstractions\src\Microsoft.Extensions.Logging.Abstractions.csproj", "{4BEF5648-8DBF-4E16-B6E6-6F80694E140D}"
@ -113,8 +111,6 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "System.Text.Encodings.Web",
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "System.Text.Encodings.Web", "..\System.Text.Encodings.Web\src\System.Text.Encodings.Web.csproj", "{B5B30447-25D0-42C0-920A-092247C95664}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "System.Text.Json.SourceGeneration", "..\System.Text.Json\gen\System.Text.Json.SourceGeneration.csproj", "{B4313086-0B16-4A80-BA04-964F64745DC2}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "System.Text.Json", "..\System.Text.Json\ref\System.Text.Json.csproj", "{BB1EF0C4-822E-4476-8872-8620EA665C35}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "System.Text.Json", "..\System.Text.Json\src\System.Text.Json.csproj", "{34C22E86-B0A3-457D-B8D9-7CF47AAF2570}"
@ -225,10 +221,6 @@ Global
{7C562B37-19E5-44BE-85D5-15FFA9FAEF5A}.Debug|Any CPU.Build.0 = Debug|Any CPU
{7C562B37-19E5-44BE-85D5-15FFA9FAEF5A}.Release|Any CPU.ActiveCfg = Release|Any CPU
{7C562B37-19E5-44BE-85D5-15FFA9FAEF5A}.Release|Any CPU.Build.0 = Release|Any CPU
{56A5DED2-47C2-4938-931E-B896A6BDDA0D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{56A5DED2-47C2-4938-931E-B896A6BDDA0D}.Debug|Any CPU.Build.0 = Debug|Any CPU
{56A5DED2-47C2-4938-931E-B896A6BDDA0D}.Release|Any CPU.ActiveCfg = Release|Any CPU
{56A5DED2-47C2-4938-931E-B896A6BDDA0D}.Release|Any CPU.Build.0 = Release|Any CPU
{5CC86773-7762-4FB7-9B6E-F4002F286AD4}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{5CC86773-7762-4FB7-9B6E-F4002F286AD4}.Debug|Any CPU.Build.0 = Debug|Any CPU
{5CC86773-7762-4FB7-9B6E-F4002F286AD4}.Release|Any CPU.ActiveCfg = Release|Any CPU
@ -361,10 +353,6 @@ Global
{B5B30447-25D0-42C0-920A-092247C95664}.Debug|Any CPU.Build.0 = Debug|Any CPU
{B5B30447-25D0-42C0-920A-092247C95664}.Release|Any CPU.ActiveCfg = Release|Any CPU
{B5B30447-25D0-42C0-920A-092247C95664}.Release|Any CPU.Build.0 = Release|Any CPU
{B4313086-0B16-4A80-BA04-964F64745DC2}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{B4313086-0B16-4A80-BA04-964F64745DC2}.Debug|Any CPU.Build.0 = Debug|Any CPU
{B4313086-0B16-4A80-BA04-964F64745DC2}.Release|Any CPU.ActiveCfg = Release|Any CPU
{B4313086-0B16-4A80-BA04-964F64745DC2}.Release|Any CPU.Build.0 = Release|Any CPU
{BB1EF0C4-822E-4476-8872-8620EA665C35}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{BB1EF0C4-822E-4476-8872-8620EA665C35}.Debug|Any CPU.Build.0 = Debug|Any CPU
{BB1EF0C4-822E-4476-8872-8620EA665C35}.Release|Any CPU.ActiveCfg = Release|Any CPU
@ -425,7 +413,6 @@ Global
{31E317F8-F766-4EC3-8101-2D92CDB407CD} = {D8928AB2-2939-4421-90C5-56B789BF93E5}
{5F0CF40F-D54D-4101-94EA-8FE7F9C843CB} = {D8928AB2-2939-4421-90C5-56B789BF93E5}
{7C562B37-19E5-44BE-85D5-15FFA9FAEF5A} = {D8928AB2-2939-4421-90C5-56B789BF93E5}
{56A5DED2-47C2-4938-931E-B896A6BDDA0D} = {D8928AB2-2939-4421-90C5-56B789BF93E5}
{4BEF5648-8DBF-4E16-B6E6-6F80694E140D} = {D8928AB2-2939-4421-90C5-56B789BF93E5}
{9D96B3BD-B371-4E44-A43F-50B8EEBEC889} = {D8928AB2-2939-4421-90C5-56B789BF93E5}
{F700E4AF-073D-4C1D-A8C2-84E744EBC374} = {D8928AB2-2939-4421-90C5-56B789BF93E5}
@ -441,7 +428,6 @@ Global
{425C299F-7D53-49EC-92D0-22B77BEA12D2} = {D8928AB2-2939-4421-90C5-56B789BF93E5}
{04BA3E3C-6979-4792-B19E-C797AD607F42} = {D8928AB2-2939-4421-90C5-56B789BF93E5}
{B5B30447-25D0-42C0-920A-092247C95664} = {D8928AB2-2939-4421-90C5-56B789BF93E5}
{B4313086-0B16-4A80-BA04-964F64745DC2} = {D8928AB2-2939-4421-90C5-56B789BF93E5}
{34C22E86-B0A3-457D-B8D9-7CF47AAF2570} = {D8928AB2-2939-4421-90C5-56B789BF93E5}
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution

View file

@ -65,8 +65,6 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.Extensions.Hostin
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.Extensions.Hosting", "..\Microsoft.Extensions.Hosting\src\Microsoft.Extensions.Hosting.csproj", "{6AD51705-102E-4E9D-B62E-6BF19025F3A7}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.Extensions.Logging.Generators", "..\Microsoft.Extensions.Logging.Abstractions\gen\Microsoft.Extensions.Logging.Generators.csproj", "{0641221C-4409-4805-8CA4-4023809D5AD1}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.Extensions.Logging.Abstractions", "..\Microsoft.Extensions.Logging.Abstractions\ref\Microsoft.Extensions.Logging.Abstractions.csproj", "{EFFB59C1-CAF4-4347-B996-4C773E1AFAA8}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.Extensions.Logging.Abstractions", "..\Microsoft.Extensions.Logging.Abstractions\src\Microsoft.Extensions.Logging.Abstractions.csproj", "{56D37CB2-68A3-42D3-AA0E-416813ABAD8B}"
@ -135,8 +133,6 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "System.Text.Encodings.Web",
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "System.Text.Encodings.Web", "..\System.Text.Encodings.Web\src\System.Text.Encodings.Web.csproj", "{59D31D62-3BF9-4F4A-9FF7-3A61F297F714}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "System.Text.Json.SourceGeneration", "..\System.Text.Json\gen\System.Text.Json.SourceGeneration.csproj", "{850A0E3B-1C09-40EF-8F3E-D61D93663C4E}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "System.Text.Json", "..\System.Text.Json\ref\System.Text.Json.csproj", "{6E2398EA-A64A-4493-A79B-63D2F072A690}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "System.Text.Json", "..\System.Text.Json\src\System.Text.Json.csproj", "{D7CEC738-5D2D-4FCB-9268-9650EB01BF31}"
@ -287,10 +283,6 @@ Global
{6AD51705-102E-4E9D-B62E-6BF19025F3A7}.Debug|Any CPU.Build.0 = Debug|Any CPU
{6AD51705-102E-4E9D-B62E-6BF19025F3A7}.Release|Any CPU.ActiveCfg = Release|Any CPU
{6AD51705-102E-4E9D-B62E-6BF19025F3A7}.Release|Any CPU.Build.0 = Release|Any CPU
{0641221C-4409-4805-8CA4-4023809D5AD1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{0641221C-4409-4805-8CA4-4023809D5AD1}.Debug|Any CPU.Build.0 = Debug|Any CPU
{0641221C-4409-4805-8CA4-4023809D5AD1}.Release|Any CPU.ActiveCfg = Release|Any CPU
{0641221C-4409-4805-8CA4-4023809D5AD1}.Release|Any CPU.Build.0 = Release|Any CPU
{EFFB59C1-CAF4-4347-B996-4C773E1AFAA8}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{EFFB59C1-CAF4-4347-B996-4C773E1AFAA8}.Debug|Any CPU.Build.0 = Debug|Any CPU
{EFFB59C1-CAF4-4347-B996-4C773E1AFAA8}.Release|Any CPU.ActiveCfg = Release|Any CPU
@ -427,10 +419,6 @@ Global
{59D31D62-3BF9-4F4A-9FF7-3A61F297F714}.Debug|Any CPU.Build.0 = Debug|Any CPU
{59D31D62-3BF9-4F4A-9FF7-3A61F297F714}.Release|Any CPU.ActiveCfg = Release|Any CPU
{59D31D62-3BF9-4F4A-9FF7-3A61F297F714}.Release|Any CPU.Build.0 = Release|Any CPU
{850A0E3B-1C09-40EF-8F3E-D61D93663C4E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{850A0E3B-1C09-40EF-8F3E-D61D93663C4E}.Debug|Any CPU.Build.0 = Debug|Any CPU
{850A0E3B-1C09-40EF-8F3E-D61D93663C4E}.Release|Any CPU.ActiveCfg = Release|Any CPU
{850A0E3B-1C09-40EF-8F3E-D61D93663C4E}.Release|Any CPU.Build.0 = Release|Any CPU
{6E2398EA-A64A-4493-A79B-63D2F072A690}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{6E2398EA-A64A-4493-A79B-63D2F072A690}.Debug|Any CPU.Build.0 = Debug|Any CPU
{6E2398EA-A64A-4493-A79B-63D2F072A690}.Release|Any CPU.ActiveCfg = Release|Any CPU
@ -501,7 +489,6 @@ Global
{36D778AF-5EC3-433F-B03D-EB244DB3C227} = {7028EE0A-D314-4F48-91CA-51A1633BC3F4}
{D0932BA0-70BF-4A98-9A30-ED563AB2BFB9} = {7028EE0A-D314-4F48-91CA-51A1633BC3F4}
{6AD51705-102E-4E9D-B62E-6BF19025F3A7} = {7028EE0A-D314-4F48-91CA-51A1633BC3F4}
{0641221C-4409-4805-8CA4-4023809D5AD1} = {7028EE0A-D314-4F48-91CA-51A1633BC3F4}
{56D37CB2-68A3-42D3-AA0E-416813ABAD8B} = {7028EE0A-D314-4F48-91CA-51A1633BC3F4}
{9EBA168F-239A-46C4-8614-E1D3DB25DD0E} = {7028EE0A-D314-4F48-91CA-51A1633BC3F4}
{47B5D904-4787-49E3-9894-31F8B7BE6755} = {7028EE0A-D314-4F48-91CA-51A1633BC3F4}
@ -518,7 +505,6 @@ Global
{9175023F-6982-45CD-B360-C4FC1E145B25} = {7028EE0A-D314-4F48-91CA-51A1633BC3F4}
{8E7256F3-ACCF-4576-B091-CC8ADC60C33E} = {7028EE0A-D314-4F48-91CA-51A1633BC3F4}
{59D31D62-3BF9-4F4A-9FF7-3A61F297F714} = {7028EE0A-D314-4F48-91CA-51A1633BC3F4}
{850A0E3B-1C09-40EF-8F3E-D61D93663C4E} = {7028EE0A-D314-4F48-91CA-51A1633BC3F4}
{D7CEC738-5D2D-4FCB-9268-9650EB01BF31} = {7028EE0A-D314-4F48-91CA-51A1633BC3F4}
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution

View file

@ -1,4 +1,4 @@
<Project Sdk="Microsoft.Build.NoTargets">
<Project Sdk="Microsoft.Build.NoTargets">
<PropertyGroup>
<TargetFramework>$(NetCoreAppCurrent)</TargetFramework>
<IsShipping>false</IsShipping>
@ -20,6 +20,7 @@
<ProjectReference Include="@(AspNetCoreAppLibrary->'$(LibrariesProjectRoot)%(Identity)\src\%(Identity).csproj');
$(LibrariesProjectRoot)System.Net.Quic\src\System.Net.Quic.csproj" PrivateAssets="all" Pack="true" Private="true" IncludeReferenceAssemblyInPackage="true" />
<!-- TODO: Find a better way to include source generators without hardcoding them. -->
<AnalyzerReference Include="$(LibrariesProjectRoot)Microsoft.Extensions.Logging.Abstractions\gen\Microsoft.Extensions.Logging.Generators.csproj" />
<!-- Only include the 4.0 version in the ref pack, since targeting net6.0 requires Roslyn 4.0 -->
<AnalyzerReference Include="$(LibrariesProjectRoot)Microsoft.Extensions.Logging.Abstractions\gen\Microsoft.Extensions.Logging.Generators.Roslyn4.0.csproj" />
</ItemGroup>
</Project>

View file

@ -19,8 +19,6 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "System.Text.Encodings.Web",
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "System.Text.Encodings.Web", "..\System.Text.Encodings.Web\src\System.Text.Encodings.Web.csproj", "{0DE5E7DA-0AE0-4CF2-95AB-1E476FD68C5C}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "System.Text.Json.SourceGeneration", "..\System.Text.Json\gen\System.Text.Json.SourceGeneration.csproj", "{9F2EC2C8-6E28-404A-8087-7A0518624EC6}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "System.Text.Json", "..\System.Text.Json\ref\System.Text.Json.csproj", "{1D93DCD8-BF67-4FB5-A25A-7837F230B173}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "System.Text.Json", "..\System.Text.Json\src\System.Text.Json.csproj", "{6A2B5C68-14C3-4989-8530-D51A138C72AE}"
@ -77,10 +75,6 @@ Global
{0DE5E7DA-0AE0-4CF2-95AB-1E476FD68C5C}.Debug|Any CPU.Build.0 = Debug|Any CPU
{0DE5E7DA-0AE0-4CF2-95AB-1E476FD68C5C}.Release|Any CPU.ActiveCfg = Release|Any CPU
{0DE5E7DA-0AE0-4CF2-95AB-1E476FD68C5C}.Release|Any CPU.Build.0 = Release|Any CPU
{9F2EC2C8-6E28-404A-8087-7A0518624EC6}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{9F2EC2C8-6E28-404A-8087-7A0518624EC6}.Debug|Any CPU.Build.0 = Debug|Any CPU
{9F2EC2C8-6E28-404A-8087-7A0518624EC6}.Release|Any CPU.ActiveCfg = Release|Any CPU
{9F2EC2C8-6E28-404A-8087-7A0518624EC6}.Release|Any CPU.Build.0 = Release|Any CPU
{1D93DCD8-BF67-4FB5-A25A-7837F230B173}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{1D93DCD8-BF67-4FB5-A25A-7837F230B173}.Debug|Any CPU.Build.0 = Debug|Any CPU
{1D93DCD8-BF67-4FB5-A25A-7837F230B173}.Release|Any CPU.ActiveCfg = Release|Any CPU
@ -105,7 +99,6 @@ Global
{ACDB56AF-7B9F-4762-9764-D6FF09118D09} = {D908DCBE-EFA4-4CCA-9A1C-AEB48D59C504}
{E17B915A-81CA-44D8-818E-512B65609475} = {D908DCBE-EFA4-4CCA-9A1C-AEB48D59C504}
{0DE5E7DA-0AE0-4CF2-95AB-1E476FD68C5C} = {D908DCBE-EFA4-4CCA-9A1C-AEB48D59C504}
{9F2EC2C8-6E28-404A-8087-7A0518624EC6} = {D908DCBE-EFA4-4CCA-9A1C-AEB48D59C504}
{6A2B5C68-14C3-4989-8530-D51A138C72AE} = {D908DCBE-EFA4-4CCA-9A1C-AEB48D59C504}
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution

View file

@ -25,8 +25,6 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "System.Text.Encodings.Web",
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "System.Text.Encodings.Web", "..\System.Text.Encodings.Web\src\System.Text.Encodings.Web.csproj", "{FEBE9C47-A00B-40B2-A85B-74ECE2F8B80A}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "System.Text.Json.SourceGeneration", "..\System.Text.Json\gen\System.Text.Json.SourceGeneration.csproj", "{D120D5A7-69D9-44A2-B7F7-EE0E48CC0238}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "System.Text.Json", "..\System.Text.Json\ref\System.Text.Json.csproj", "{EA992513-9CA4-4DEB-B0EE-A8FD0252B451}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "System.Text.Json", "..\System.Text.Json\src\System.Text.Json.csproj", "{BC7D3412-DBCB-4863-8BF8-41899E32608C}"
@ -95,10 +93,6 @@ Global
{FEBE9C47-A00B-40B2-A85B-74ECE2F8B80A}.Debug|Any CPU.Build.0 = Debug|Any CPU
{FEBE9C47-A00B-40B2-A85B-74ECE2F8B80A}.Release|Any CPU.ActiveCfg = Release|Any CPU
{FEBE9C47-A00B-40B2-A85B-74ECE2F8B80A}.Release|Any CPU.Build.0 = Release|Any CPU
{D120D5A7-69D9-44A2-B7F7-EE0E48CC0238}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{D120D5A7-69D9-44A2-B7F7-EE0E48CC0238}.Debug|Any CPU.Build.0 = Debug|Any CPU
{D120D5A7-69D9-44A2-B7F7-EE0E48CC0238}.Release|Any CPU.ActiveCfg = Release|Any CPU
{D120D5A7-69D9-44A2-B7F7-EE0E48CC0238}.Release|Any CPU.Build.0 = Release|Any CPU
{EA992513-9CA4-4DEB-B0EE-A8FD0252B451}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{EA992513-9CA4-4DEB-B0EE-A8FD0252B451}.Debug|Any CPU.Build.0 = Debug|Any CPU
{EA992513-9CA4-4DEB-B0EE-A8FD0252B451}.Release|Any CPU.ActiveCfg = Release|Any CPU
@ -126,7 +120,6 @@ Global
{7DC969DA-8BD3-4E64-88E8-26AFE65BFF7E} = {2A66925D-3658-46BE-A730-5BF70D8D5B90}
{3EEB6FCC-2592-4879-ADDD-0FDC7AEB7BC1} = {2A66925D-3658-46BE-A730-5BF70D8D5B90}
{FEBE9C47-A00B-40B2-A85B-74ECE2F8B80A} = {2A66925D-3658-46BE-A730-5BF70D8D5B90}
{D120D5A7-69D9-44A2-B7F7-EE0E48CC0238} = {2A66925D-3658-46BE-A730-5BF70D8D5B90}
{BC7D3412-DBCB-4863-8BF8-41899E32608C} = {2A66925D-3658-46BE-A730-5BF70D8D5B90}
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution

View file

@ -27,6 +27,6 @@
<ProjectReference Include="..\..\src\System.Net.Http.Json.csproj" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="$(LibrariesProjectRoot)System.Text.Json\gen\System.Text.Json.SourceGeneration.csproj" OutputItemType="Analyzer" ReferenceOutputAssembly="false" />
<ProjectReference Include="$(LibrariesProjectRoot)System.Text.Json\gen\System.Text.Json.SourceGeneration.Roslyn4.0.csproj" OutputItemType="Analyzer" ReferenceOutputAssembly="false" />
</ItemGroup>
</Project>

View file

@ -33,8 +33,6 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "System.Text.Encodings.Web",
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "System.Text.Encodings.Web", "..\System.Text.Encodings.Web\src\System.Text.Encodings.Web.csproj", "{BACC5257-6CA8-45C7-970F-C8D501DA59AB}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "System.Text.Json.SourceGeneration", "..\System.Text.Json\gen\System.Text.Json.SourceGeneration.csproj", "{302F00AD-85F1-4DE9-B100-41F8EAB93B7C}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "System.Text.Json", "..\System.Text.Json\ref\System.Text.Json.csproj", "{8ABBBDC5-48A1-43BA-A629-AE58C35318AA}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "System.Text.Json", "..\System.Text.Json\src\System.Text.Json.csproj", "{E470810A-BAF2-4B3C-92CB-72007B7F1B6A}"
@ -119,10 +117,6 @@ Global
{BACC5257-6CA8-45C7-970F-C8D501DA59AB}.Debug|Any CPU.Build.0 = Debug|Any CPU
{BACC5257-6CA8-45C7-970F-C8D501DA59AB}.Release|Any CPU.ActiveCfg = Release|Any CPU
{BACC5257-6CA8-45C7-970F-C8D501DA59AB}.Release|Any CPU.Build.0 = Release|Any CPU
{302F00AD-85F1-4DE9-B100-41F8EAB93B7C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{302F00AD-85F1-4DE9-B100-41F8EAB93B7C}.Debug|Any CPU.Build.0 = Debug|Any CPU
{302F00AD-85F1-4DE9-B100-41F8EAB93B7C}.Release|Any CPU.ActiveCfg = Release|Any CPU
{302F00AD-85F1-4DE9-B100-41F8EAB93B7C}.Release|Any CPU.Build.0 = Release|Any CPU
{8ABBBDC5-48A1-43BA-A629-AE58C35318AA}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{8ABBBDC5-48A1-43BA-A629-AE58C35318AA}.Debug|Any CPU.Build.0 = Debug|Any CPU
{8ABBBDC5-48A1-43BA-A629-AE58C35318AA}.Release|Any CPU.ActiveCfg = Release|Any CPU
@ -154,7 +148,6 @@ Global
{DE2A69CC-4962-4BF6-A714-41A87A6C045B} = {49E09973-383D-4AD6-9D88-B93A02031607}
{28C24BF8-8E08-485F-8EEE-817EB847774C} = {49E09973-383D-4AD6-9D88-B93A02031607}
{BACC5257-6CA8-45C7-970F-C8D501DA59AB} = {49E09973-383D-4AD6-9D88-B93A02031607}
{302F00AD-85F1-4DE9-B100-41F8EAB93B7C} = {49E09973-383D-4AD6-9D88-B93A02031607}
{E470810A-BAF2-4B3C-92CB-72007B7F1B6A} = {49E09973-383D-4AD6-9D88-B93A02031607}
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution

View file

@ -21,7 +21,7 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "System.Text.Encodings.Web",
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "System.Text.Encodings.Web", "..\System.Text.Encodings.Web\src\System.Text.Encodings.Web.csproj", "{9BCCDA15-8907-4AE3-8871-2F17775DDE4C}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "System.Text.Json.SourceGeneration", "gen\System.Text.Json.SourceGeneration.csproj", "{6485EED4-C313-4551-9865-8ADCED603629}"
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "System.Text.Json.SourceGeneration.Roslyn4.0", "gen\System.Text.Json.SourceGeneration.Roslyn4.0.csproj", "{6485EED4-C313-4551-9865-8ADCED603629}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "System.Text.Json", "ref\System.Text.Json.csproj", "{7015E94D-D20D-48C8-86D7-6A996BE99E0E}"
EndProject
@ -29,9 +29,9 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "System.Text.Json", "src\Sys
EndProject
Project("{F2A71F9B-5D33-465A-A702-920D77279786}") = "System.Text.Json.FSharp.Tests", "tests\System.Text.Json.FSharp.Tests\System.Text.Json.FSharp.Tests.fsproj", "{5720BF06-2031-4AD8-B9B4-31A01E27ABB8}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "System.Text.Json.SourceGeneration.Tests", "tests\System.Text.Json.SourceGeneration.Tests\System.Text.Json.SourceGeneration.Tests.csproj", "{33599A6C-F340-4E1B-9B4D-CB8946C22140}"
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "System.Text.Json.SourceGeneration.Roslyn4.0.Tests", "tests\System.Text.Json.SourceGeneration.Tests\System.Text.Json.SourceGeneration.Roslyn4.0.Tests.csproj", "{33599A6C-F340-4E1B-9B4D-CB8946C22140}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "System.Text.Json.SourceGeneration.Unit.Tests", "tests\System.Text.Json.SourceGeneration.Unit.Tests\System.Text.Json.SourceGeneration.Unit.Tests.csproj", "{F6A18EB5-A8CC-4A39-9E85-5FA226019C3D}"
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "System.Text.Json.SourceGeneration.Roslyn4.0.Unit.Tests", "tests\System.Text.Json.SourceGeneration.Unit.Tests\System.Text.Json.SourceGeneration.Roslyn4.0.Unit.Tests.csproj", "{F6A18EB5-A8CC-4A39-9E85-5FA226019C3D}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "System.Text.Json.Tests", "tests\System.Text.Json.Tests\System.Text.Json.Tests.csproj", "{A0178BAA-A1AF-4C69-8E4A-A700A2723DDC}"
EndProject
@ -41,6 +41,12 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "ref", "ref", "{0371C5D8-D5F
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "src", "src", "{E49881A9-09F6-442F-9E1D-6D87F5F837F1}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "System.Text.Json.SourceGeneration.Roslyn3.11", "gen\System.Text.Json.SourceGeneration.Roslyn3.11.csproj", "{04AEB008-EE4F-44DE-A361-2DBD2D0FD6A4}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "System.Text.Json.SourceGeneration.Roslyn3.11.Unit.Tests", "tests\System.Text.Json.SourceGeneration.Unit.Tests\System.Text.Json.SourceGeneration.Roslyn3.11.Unit.Tests.csproj", "{256A4653-4287-44B3-BDEF-67FC1522ED2F}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "System.Text.Json.SourceGeneration.Roslyn3.11.Tests", "tests\System.Text.Json.SourceGeneration.Tests\System.Text.Json.SourceGeneration.Roslyn3.11.Tests.csproj", "{66AD4B7E-CF15-4A8F-8BF8-7E1BC6176D07}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
@ -119,29 +125,44 @@ Global
{A0178BAA-A1AF-4C69-8E4A-A700A2723DDC}.Debug|Any CPU.Build.0 = Debug|Any CPU
{A0178BAA-A1AF-4C69-8E4A-A700A2723DDC}.Release|Any CPU.ActiveCfg = Release|Any CPU
{A0178BAA-A1AF-4C69-8E4A-A700A2723DDC}.Release|Any CPU.Build.0 = Release|Any CPU
{04AEB008-EE4F-44DE-A361-2DBD2D0FD6A4}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{04AEB008-EE4F-44DE-A361-2DBD2D0FD6A4}.Debug|Any CPU.Build.0 = Debug|Any CPU
{04AEB008-EE4F-44DE-A361-2DBD2D0FD6A4}.Release|Any CPU.ActiveCfg = Release|Any CPU
{04AEB008-EE4F-44DE-A361-2DBD2D0FD6A4}.Release|Any CPU.Build.0 = Release|Any CPU
{256A4653-4287-44B3-BDEF-67FC1522ED2F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{256A4653-4287-44B3-BDEF-67FC1522ED2F}.Debug|Any CPU.Build.0 = Debug|Any CPU
{256A4653-4287-44B3-BDEF-67FC1522ED2F}.Release|Any CPU.ActiveCfg = Release|Any CPU
{256A4653-4287-44B3-BDEF-67FC1522ED2F}.Release|Any CPU.Build.0 = Release|Any CPU
{66AD4B7E-CF15-4A8F-8BF8-7E1BC6176D07}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{66AD4B7E-CF15-4A8F-8BF8-7E1BC6176D07}.Debug|Any CPU.Build.0 = Debug|Any CPU
{66AD4B7E-CF15-4A8F-8BF8-7E1BC6176D07}.Release|Any CPU.ActiveCfg = Release|Any CPU
{66AD4B7E-CF15-4A8F-8BF8-7E1BC6176D07}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
GlobalSection(NestedProjects) = preSolution
{102945CA-3736-4B2C-8E68-242A0B247F2B} = {E07C6980-EB71-4D19-A80A-7BEB80B635B1}
{73D5739C-E382-4E22-A7D3-B82705C58C74} = {0371C5D8-D5F5-4747-9810-D91D71D8C0E4}
{E9AA0AEB-AEAE-4B28-8D4D-17A6D7C89D17} = {E49881A9-09F6-442F-9E1D-6D87F5F837F1}
{BE27618A-2916-4269-9AD5-6BC5EDC32B30} = {0371C5D8-D5F5-4747-9810-D91D71D8C0E4}
{1C8262DB-7355-40A8-A2EC-4EED7363134A} = {E49881A9-09F6-442F-9E1D-6D87F5F837F1}
{4774F56D-16A8-4ABB-8C73-5F57609F1773} = {0371C5D8-D5F5-4747-9810-D91D71D8C0E4}
{D05FD93A-BC51-466E-BD56-3F3D6BBE6B06} = {E49881A9-09F6-442F-9E1D-6D87F5F837F1}
{E2077991-EB83-471C-B17F-72F569FFCE6D} = {0371C5D8-D5F5-4747-9810-D91D71D8C0E4}
{7909EB27-0D6E-46E6-B9F9-8A1EFD557018} = {E49881A9-09F6-442F-9E1D-6D87F5F837F1}
{C56337BB-8CBC-4EE5-AB4D-8BB0A922813E} = {0371C5D8-D5F5-4747-9810-D91D71D8C0E4}
{9BCCDA15-8907-4AE3-8871-2F17775DDE4C} = {E49881A9-09F6-442F-9E1D-6D87F5F837F1}
{6485EED4-C313-4551-9865-8ADCED603629} = {E49881A9-09F6-442F-9E1D-6D87F5F837F1}
{7015E94D-D20D-48C8-86D7-6A996BE99E0E} = {0371C5D8-D5F5-4747-9810-D91D71D8C0E4}
{1285FF43-F491-4BE0-B92C-37DA689CBD4B} = {E49881A9-09F6-442F-9E1D-6D87F5F837F1}
{5720BF06-2031-4AD8-B9B4-31A01E27ABB8} = {E07C6980-EB71-4D19-A80A-7BEB80B635B1}
{33599A6C-F340-4E1B-9B4D-CB8946C22140} = {E07C6980-EB71-4D19-A80A-7BEB80B635B1}
{F6A18EB5-A8CC-4A39-9E85-5FA226019C3D} = {E07C6980-EB71-4D19-A80A-7BEB80B635B1}
{A0178BAA-A1AF-4C69-8E4A-A700A2723DDC} = {E07C6980-EB71-4D19-A80A-7BEB80B635B1}
{73D5739C-E382-4E22-A7D3-B82705C58C74} = {0371C5D8-D5F5-4747-9810-D91D71D8C0E4}
{BE27618A-2916-4269-9AD5-6BC5EDC32B30} = {0371C5D8-D5F5-4747-9810-D91D71D8C0E4}
{4774F56D-16A8-4ABB-8C73-5F57609F1773} = {0371C5D8-D5F5-4747-9810-D91D71D8C0E4}
{E2077991-EB83-471C-B17F-72F569FFCE6D} = {0371C5D8-D5F5-4747-9810-D91D71D8C0E4}
{C56337BB-8CBC-4EE5-AB4D-8BB0A922813E} = {0371C5D8-D5F5-4747-9810-D91D71D8C0E4}
{7015E94D-D20D-48C8-86D7-6A996BE99E0E} = {0371C5D8-D5F5-4747-9810-D91D71D8C0E4}
{E9AA0AEB-AEAE-4B28-8D4D-17A6D7C89D17} = {E49881A9-09F6-442F-9E1D-6D87F5F837F1}
{1C8262DB-7355-40A8-A2EC-4EED7363134A} = {E49881A9-09F6-442F-9E1D-6D87F5F837F1}
{D05FD93A-BC51-466E-BD56-3F3D6BBE6B06} = {E49881A9-09F6-442F-9E1D-6D87F5F837F1}
{7909EB27-0D6E-46E6-B9F9-8A1EFD557018} = {E49881A9-09F6-442F-9E1D-6D87F5F837F1}
{9BCCDA15-8907-4AE3-8871-2F17775DDE4C} = {E49881A9-09F6-442F-9E1D-6D87F5F837F1}
{6485EED4-C313-4551-9865-8ADCED603629} = {E49881A9-09F6-442F-9E1D-6D87F5F837F1}
{1285FF43-F491-4BE0-B92C-37DA689CBD4B} = {E49881A9-09F6-442F-9E1D-6D87F5F837F1}
{04AEB008-EE4F-44DE-A361-2DBD2D0FD6A4} = {E49881A9-09F6-442F-9E1D-6D87F5F837F1}
{256A4653-4287-44B3-BDEF-67FC1522ED2F} = {E07C6980-EB71-4D19-A80A-7BEB80B635B1}
{66AD4B7E-CF15-4A8F-8BF8-7E1BC6176D07} = {E07C6980-EB71-4D19-A80A-7BEB80B635B1}
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {5868B757-D821-41FC-952E-2113A0519506}

View file

@ -81,17 +81,17 @@ namespace System.Text.Json.SourceGeneration
defaultSeverity: DiagnosticSeverity.Warning,
isEnabledByDefault: true);
private readonly SourceProductionContext _sourceProductionContext;
private readonly JsonSourceGenerationContext _sourceGenerationContext;
private ContextGenerationSpec _currentContext = null!;
private readonly SourceGenerationSpec _generationSpec = null!;
private readonly SourceGenerationSpec _generationSpec;
private readonly HashSet<string> _emittedPropertyFileNames = new();
public Emitter(in SourceProductionContext sourceProductionContext, SourceGenerationSpec generationSpec)
public Emitter(in JsonSourceGenerationContext sourceGenerationContext, SourceGenerationSpec generationSpec)
{
_sourceProductionContext = sourceProductionContext;
_sourceGenerationContext = sourceGenerationContext;
_generationSpec = generationSpec;
}
@ -179,7 +179,7 @@ namespace {@namespace}
sb.AppendLine("}");
}
_sourceProductionContext.AddSource(fileName, SourceText.From(sb.ToString(), Encoding.UTF8));
_sourceGenerationContext.AddSource(fileName, SourceText.From(sb.ToString(), Encoding.UTF8));
}
private void GenerateTypeInfo(TypeGenerationSpec typeGenerationSpec)
@ -267,7 +267,7 @@ namespace {@namespace}
break;
case ClassType.TypeUnsupportedBySourceGen:
{
_sourceProductionContext.ReportDiagnostic(
_sourceGenerationContext.ReportDiagnostic(
Diagnostic.Create(TypeNotSupported, Location.None, new string[] { typeGenerationSpec.TypeRef }));
return;
}
@ -286,7 +286,7 @@ namespace {@namespace}
}
else
{
_sourceProductionContext.ReportDiagnostic(Diagnostic.Create(DuplicateTypeName, Location.None, new string[] { typeGenerationSpec.TypeInfoPropertyName }));
_sourceGenerationContext.ReportDiagnostic(Diagnostic.Create(DuplicateTypeName, Location.None, new string[] { typeGenerationSpec.TypeInfoPropertyName }));
}
}

View file

@ -45,7 +45,7 @@ namespace System.Text.Json.SourceGeneration
private const string DictionaryTypeRef = "global::System.Collections.Generic.Dictionary";
private readonly Compilation _compilation;
private readonly SourceProductionContext _sourceProductionContext;
private readonly JsonSourceGenerationContext _sourceGenerationContext;
private readonly MetadataLoadContextInternal _metadataLoadContext;
private readonly Type _ilistOfTType;
@ -155,10 +155,10 @@ namespace System.Text.Json.SourceGeneration
defaultSeverity: DiagnosticSeverity.Warning,
isEnabledByDefault: true);
public Parser(Compilation compilation, in SourceProductionContext sourceProductionContext)
public Parser(Compilation compilation, in JsonSourceGenerationContext sourceGenerationContext)
{
_compilation = compilation;
_sourceProductionContext = sourceProductionContext;
_sourceGenerationContext = sourceGenerationContext;
_metadataLoadContext = new MetadataLoadContextInternal(_compilation);
_ilistOfTType = _metadataLoadContext.Resolve(SpecialType.System_Collections_Generic_IList_T);
@ -208,7 +208,7 @@ namespace System.Text.Json.SourceGeneration
PopulateKnownTypes();
}
public SourceGenerationSpec? GetGenerationSpec(ImmutableArray<ClassDeclarationSyntax> classDeclarationSyntaxList)
public SourceGenerationSpec? GetGenerationSpec(IEnumerable<ClassDeclarationSyntax> classDeclarationSyntaxList)
{
Compilation compilation = _compilation;
INamedTypeSymbol jsonSerializerContextSymbol = compilation.GetBestTypeByMetadataName(JsonSerializerContextFullName);
@ -268,7 +268,7 @@ namespace System.Text.Json.SourceGeneration
if (!TryGetClassDeclarationList(contextTypeSymbol, out List<string> classDeclarationList))
{
// Class or one of its containing types is not partial so we can't add to it.
_sourceProductionContext.ReportDiagnostic(Diagnostic.Create(ContextClassesMustBePartial, Location.None, new string[] { contextTypeSymbol.Name }));
_sourceGenerationContext.ReportDiagnostic(Diagnostic.Create(ContextClassesMustBePartial, Location.None, new string[] { contextTypeSymbol.Name }));
continue;
}
@ -864,7 +864,7 @@ namespace System.Text.Json.SourceGeneration
if (!type.TryGetDeserializationConstructor(useDefaultCtorInAnnotatedStructs, out ConstructorInfo? constructor))
{
classType = ClassType.TypeUnsupportedBySourceGen;
_sourceProductionContext.ReportDiagnostic(Diagnostic.Create(MultipleJsonConstructorAttribute, Location.None, new string[] { $"{type}" }));
_sourceGenerationContext.ReportDiagnostic(Diagnostic.Create(MultipleJsonConstructorAttribute, Location.None, new string[] { $"{type}" }));
}
else
{
@ -959,13 +959,13 @@ namespace System.Text.Json.SourceGeneration
{
if (dataExtensionPropGenSpec != null)
{
_sourceProductionContext.ReportDiagnostic(Diagnostic.Create(MultipleJsonExtensionDataAttribute, Location.None, new string[] { type.Name }));
_sourceGenerationContext.ReportDiagnostic(Diagnostic.Create(MultipleJsonExtensionDataAttribute, Location.None, new string[] { type.Name }));
}
Type propType = spec.TypeGenerationSpec.Type;
if (!IsValidDataExtensionPropertyType(propType))
{
_sourceProductionContext.ReportDiagnostic(Diagnostic.Create(DataExtensionPropertyInvalid, Location.None, new string[] { type.Name, spec.ClrName }));
_sourceGenerationContext.ReportDiagnostic(Diagnostic.Create(DataExtensionPropertyInvalid, Location.None, new string[] { type.Name, spec.ClrName }));
}
dataExtensionPropGenSpec = GetOrAddTypeGenerationSpec(propType, generationMode);
@ -974,13 +974,13 @@ namespace System.Text.Json.SourceGeneration
if (!hasEncounteredInitOnlyProperties && spec.CanUseSetter && spec.IsInitOnlySetter)
{
_sourceProductionContext.ReportDiagnostic(Diagnostic.Create(InitOnlyPropertyDeserializationNotSupported, Location.None, new string[] { type.Name }));
_sourceGenerationContext.ReportDiagnostic(Diagnostic.Create(InitOnlyPropertyDeserializationNotSupported, Location.None, new string[] { type.Name }));
hasEncounteredInitOnlyProperties = true;
}
if (spec.HasJsonInclude && (!spec.CanUseGetter || !spec.CanUseSetter || !spec.IsPublic))
{
_sourceProductionContext.ReportDiagnostic(Diagnostic.Create(InaccessibleJsonIncludePropertiesNotSupported, Location.None, new string[] { type.Name, spec.ClrName }));
_sourceGenerationContext.ReportDiagnostic(Diagnostic.Create(InaccessibleJsonIncludePropertiesNotSupported, Location.None, new string[] { type.Name, spec.ClrName }));
}
}
}

View file

@ -0,0 +1,106 @@
// Licensed to the .NET Foundation under one or more agreements.
// The .NET Foundation licenses this file to you under the MIT license.
//#define LAUNCH_DEBUGGER
using System.Collections.Generic;
using System.Collections.Immutable;
using System.Diagnostics;
using System.Linq;
using System.Reflection;
using System.Text.Json.Reflection;
using Microsoft.CodeAnalysis;
using Microsoft.CodeAnalysis.CSharp;
using Microsoft.CodeAnalysis.CSharp.Syntax;
using Microsoft.CodeAnalysis.Text;
namespace System.Text.Json.SourceGeneration
{
/// <summary>
/// Generates source code to optimize serialization and deserialization with JsonSerializer.
/// </summary>
[Generator]
public sealed partial class JsonSourceGenerator : ISourceGenerator
{
/// <summary>
/// Registers a syntax resolver to receive compilation units.
/// </summary>
/// <param name="context"></param>
public void Initialize(GeneratorInitializationContext context)
{
context.RegisterForSyntaxNotifications(() => new SyntaxContextReceiver());
}
/// <summary>
/// Generates source code to optimize serialization and deserialization with JsonSerializer.
/// </summary>
/// <param name="executionContext"></param>
public void Execute(GeneratorExecutionContext executionContext)
{
#if LAUNCH_DEBUGGER
if (!Diagnostics.Debugger.IsAttached)
{
Diagnostics.Debugger.Launch();
}
#endif
if (executionContext.SyntaxContextReceiver is not SyntaxContextReceiver receiver || receiver.ClassDeclarationSyntaxList == null)
{
// nothing to do yet
return;
}
JsonSourceGenerationContext context = new JsonSourceGenerationContext(executionContext);
Parser parser = new(executionContext.Compilation, context);
SourceGenerationSpec? spec = parser.GetGenerationSpec(receiver.ClassDeclarationSyntaxList);
if (spec != null)
{
_rootTypes = spec.ContextGenerationSpecList[0].RootSerializableTypes;
Emitter emitter = new(context, spec);
emitter.Emit();
}
}
private sealed class SyntaxContextReceiver : ISyntaxContextReceiver
{
public List<ClassDeclarationSyntax>? ClassDeclarationSyntaxList { get; private set; }
public void OnVisitSyntaxNode(GeneratorSyntaxContext context)
{
if (Parser.IsSyntaxTargetForGeneration(context.Node))
{
ClassDeclarationSyntax classSyntax = Parser.GetSemanticTargetForGeneration(context);
if (classSyntax != null)
{
(ClassDeclarationSyntaxList ??= new List<ClassDeclarationSyntax>()).Add(classSyntax);
}
}
}
}
/// <summary>
/// Helper for unit tests.
/// </summary>
public Dictionary<string, Type>? GetSerializableTypes() => _rootTypes?.ToDictionary(p => p.Type.FullName, p => p.Type);
private List<TypeGenerationSpec>? _rootTypes;
}
internal readonly struct JsonSourceGenerationContext
{
private readonly GeneratorExecutionContext _context;
public JsonSourceGenerationContext(GeneratorExecutionContext context)
{
_context = context;
}
public void ReportDiagnostic(Diagnostic diagnostic)
{
_context.ReportDiagnostic(diagnostic);
}
public void AddSource(string hintName, SourceText sourceText)
{
_context.AddSource(hintName, sourceText);
}
}
}

View file

@ -11,6 +11,7 @@ using System.Text.Json.Reflection;
using Microsoft.CodeAnalysis;
using Microsoft.CodeAnalysis.CSharp;
using Microsoft.CodeAnalysis.CSharp.Syntax;
using Microsoft.CodeAnalysis.Text;
namespace System.Text.Json.SourceGeneration
{
@ -32,7 +33,7 @@ namespace System.Text.Json.SourceGeneration
context.RegisterSourceOutput(compilationAndClasses, (spc, source) => Execute(source.Item1, source.Item2, spc));
}
private void Execute(Compilation compilation, ImmutableArray<ClassDeclarationSyntax> contextClasses, SourceProductionContext context)
private void Execute(Compilation compilation, ImmutableArray<ClassDeclarationSyntax> contextClasses, SourceProductionContext sourceProductionContext)
{
#if LAUNCH_DEBUGGER
if (!Diagnostics.Debugger.IsAttached)
@ -45,6 +46,7 @@ namespace System.Text.Json.SourceGeneration
return;
}
JsonSourceGenerationContext context = new JsonSourceGenerationContext(sourceProductionContext);
Parser parser = new(compilation, context);
SourceGenerationSpec? spec = parser.GetGenerationSpec(contextClasses);
if (spec != null)
@ -62,4 +64,24 @@ namespace System.Text.Json.SourceGeneration
public Dictionary<string, Type>? GetSerializableTypes() => _rootTypes?.ToDictionary(p => p.Type.FullName, p => p.Type);
private List<TypeGenerationSpec>? _rootTypes;
}
internal readonly struct JsonSourceGenerationContext
{
private readonly SourceProductionContext _context;
public JsonSourceGenerationContext(SourceProductionContext context)
{
_context = context;
}
public void ReportDiagnostic(Diagnostic diagnostic)
{
_context.ReportDiagnostic(diagnostic);
}
public void AddSource(string hintName, SourceText sourceText)
{
_context.AddSource(hintName, sourceText);
}
}
}

View file

@ -0,0 +1,14 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<AnalyzerRoslynVersion>3.11</AnalyzerRoslynVersion>
<RoslynApiVersion>$(MicrosoftCodeAnalysisCSharpWorkspacesVersion_3_11)</RoslynApiVersion>
</PropertyGroup>
<Import Project="System.Text.Json.SourceGeneration.targets" />
<ItemGroup>
<Compile Include="JsonSourceGenerator.Roslyn3.11.cs" />
</ItemGroup>
</Project>

View file

@ -0,0 +1,16 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<IsNETCoreAppAnalyzer>true</IsNETCoreAppAnalyzer>
<AnalyzerRoslynVersion>4.0</AnalyzerRoslynVersion>
<RoslynApiVersion>$(MicrosoftCodeAnalysisCSharpWorkspacesVersion)</RoslynApiVersion>
<DefineConstants>$(DefineConstants);ROSLYN4_0_OR_GREATER</DefineConstants>
</PropertyGroup>
<Import Project="System.Text.Json.SourceGeneration.targets" />
<ItemGroup>
<Compile Include="JsonSourceGenerator.Roslyn4.0.cs" />
</ItemGroup>
</Project>

View file

@ -1,13 +1,16 @@
<Project Sdk="Microsoft.NET.Sdk">
<Project>
<PropertyGroup>
<TargetFrameworks>netstandard2.0</TargetFrameworks>
<AssemblyName>$(MSBuildThisFileName)</AssemblyName>
<RootNamespace>$(MSBuildThisFileName)</RootNamespace>
<StringResourcesClassName>SR</StringResourcesClassName>
<StringResourcesName>FxResources.$(RootNamespace).$(StringResourcesClassName)</StringResourcesName>
<CLSCompliant>false</CLSCompliant>
<Nullable>enable</Nullable>
<!-- Suppress warning: XML comment has cref attribute that could not be resolved -->
<NoWarn>CS1574</NoWarn>
<EnableDefaultEmbeddedResourceItems>false</EnableDefaultEmbeddedResourceItems>
<UsingToolXliff>true</UsingToolXliff>
<IsNETCoreAppAnalyzer>true</IsNETCoreAppAnalyzer>
<AnalyzerLanguage>cs</AnalyzerLanguage>
</PropertyGroup>
@ -17,10 +20,8 @@
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Microsoft.CodeAnalysis.CSharp.Workspaces" Version="$(MicrosoftCodeAnalysisCSharpWorkspacesVersion)" PrivateAssets="all" />
<PackageReference Include="Microsoft.CodeAnalysis.CSharp.Workspaces" Version="$(RoslynApiVersion)" PrivateAssets="all" />
<PackageReference Include="Microsoft.DotNet.Build.Tasks.Packaging" Version="$(MicrosoftDotNetBuildTasksPackagingVersion)" PrivateAssets="all" />
<PackageDestination Include="analyzers\dotnet\cs" />
</ItemGroup>
<ItemGroup>
@ -41,7 +42,6 @@
<Compile Include="ClassType.cs" />
<Compile Include="CollectionType.cs" />
<Compile Include="JsonConstants.cs" />
<Compile Include="JsonSourceGenerator.cs" />
<Compile Include="JsonSourceGenerator.Emitter.cs" />
<Compile Include="JsonSourceGenerator.Parser.cs" />
<Compile Include="ObjectConstructionStrategy.cs" />

View file

@ -348,6 +348,7 @@ System.Text.Json.Utf8JsonReader</PackageDescription>
<ProjectReference Include="$(LibrariesProjectRoot)Microsoft.Bcl.AsyncInterfaces\src\Microsoft.Bcl.AsyncInterfaces.csproj" />
</ItemGroup>
<ItemGroup>
<AnalyzerReference Include="..\gen\System.Text.Json.SourceGeneration.csproj" />
<AnalyzerReference Include="..\gen\System.Text.Json.SourceGeneration.Roslyn3.11.csproj" />
<AnalyzerReference Include="..\gen\System.Text.Json.SourceGeneration.Roslyn4.0.csproj" />
</ItemGroup>
</Project>

View file

@ -0,0 +1,8 @@
<Project Sdk="Microsoft.NET.Sdk">
<Import Project="System.Text.Json.SourceGeneration.Tests.targets" />
<ItemGroup>
<ProjectReference Include="..\..\gen\System.Text.Json.SourceGeneration.Roslyn3.11.csproj" OutputItemType="Analyzer" ReferenceOutputAssembly="false" />
</ItemGroup>
</Project>

View file

@ -0,0 +1,8 @@
<Project Sdk="Microsoft.NET.Sdk">
<Import Project="System.Text.Json.SourceGeneration.Tests.targets" />
<ItemGroup>
<ProjectReference Include="..\..\gen\System.Text.Json.SourceGeneration.Roslyn4.0.csproj" OutputItemType="Analyzer" ReferenceOutputAssembly="false" />
</ItemGroup>
</Project>

View file

@ -1,4 +1,4 @@
<Project Sdk="Microsoft.NET.Sdk">
<Project>
<PropertyGroup>
<TargetFrameworks>$(NetCoreAppCurrent);$(NetFrameworkCurrent)</TargetFrameworks>
<EmitCompilerGeneratedFiles>true</EmitCompilerGeneratedFiles>
@ -13,10 +13,6 @@
<DefineConstants>$(DefineConstants);BUILDING_SOURCE_GENERATOR_TESTS</DefineConstants>
</PropertyGroup>
<ItemGroup>
<ProjectReference Include="..\..\gen\System.Text.Json.SourceGeneration.csproj" OutputItemType="Analyzer" ReferenceOutputAssembly="false" />
</ItemGroup>
<ItemGroup>
<Compile Include="..\Common\CollectionTests\CollectionTests.AsyncEnumerable.cs" Link="CommonTest\System\Text\Json\Tests\Serialization\CollectionTests\CollectionTests.AsyncEnumerable.cs" />
<Compile Include="..\Common\CollectionTests\CollectionTests.Concurrent.cs" Link="CommonTest\System\Text\Json\Tests\Serialization\CollectionTests\CollectionTests.Concurrent.cs" />

View file

@ -67,14 +67,24 @@ namespace System.Text.Json.SourceGeneration.UnitTests
);
}
private static GeneratorDriver CreateDriver(Compilation compilation, IIncrementalGenerator[] generators)
=> CSharpGeneratorDriver.Create(
public static Compilation RunGenerators(
Compilation compilation,
out ImmutableArray<Diagnostic> diagnostics,
#if ROSLYN4_0_OR_GREATER
params IIncrementalGenerator[] generators)
{
CSharpGeneratorDriver driver = CSharpGeneratorDriver.Create(
generators: generators.Select(g => g.AsSourceGenerator()),
parseOptions: s_parseOptions);
public static Compilation RunGenerators(Compilation compilation, out ImmutableArray<Diagnostic> diagnostics, params IIncrementalGenerator[] generators)
#else
params ISourceGenerator[] generators)
{
CreateDriver(compilation, generators).RunGeneratorsAndUpdateCompilation(compilation, out Compilation outCompilation, out diagnostics);
CSharpGeneratorDriver driver = CSharpGeneratorDriver.Create(
generators: generators,
parseOptions: s_parseOptions);
#endif
driver.RunGeneratorsAndUpdateCompilation(compilation, out Compilation outCompilation, out diagnostics);
return outCompilation;
}

View file

@ -0,0 +1,11 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<RoslynApiVersion>$(MicrosoftCodeAnalysisCSharpWorkspacesVersion_3_11)</RoslynApiVersion>
</PropertyGroup>
<Import Project="System.Text.Json.SourceGeneration.Unit.Tests.targets" />
<ItemGroup>
<ProjectReference Include="..\..\gen\System.Text.Json.SourceGeneration.Roslyn3.11.csproj" />
</ItemGroup>
</Project>

View file

@ -0,0 +1,12 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<RoslynApiVersion>$(MicrosoftCodeAnalysisCSharpWorkspacesVersion)</RoslynApiVersion>
<DefineConstants>$(DefineConstants);ROSLYN4_0_OR_GREATER</DefineConstants>
</PropertyGroup>
<Import Project="System.Text.Json.SourceGeneration.Unit.Tests.targets" />
<ItemGroup>
<ProjectReference Include="..\..\gen\System.Text.Json.SourceGeneration.Roslyn4.0.csproj" />
</ItemGroup>
</Project>

View file

@ -1,14 +1,13 @@
<Project Sdk="Microsoft.NET.Sdk">
<Project>
<PropertyGroup>
<TargetFrameworks>$(NetCoreAppCurrent);$(NetFrameworkCurrent)</TargetFrameworks>
<EmitCompilerGeneratedFiles>true</EmitCompilerGeneratedFiles>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Microsoft.CodeAnalysis" Version="$(MicrosoftCodeAnalysisVersion)" />
<PackageReference Include="Microsoft.CodeAnalysis" Version="$(RoslynApiVersion)" />
<ProjectReference Include="..\..\src\System.Text.Json.csproj" />
<ProjectReference Include="..\..\gen\System.Text.Json.SourceGeneration.csproj" />
</ItemGroup>
<ItemGroup>

View file

@ -216,6 +216,6 @@
<ProjectReference Include="..\..\src\System.Text.Json.csproj" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\..\gen\System.Text.Json.SourceGeneration.csproj" OutputItemType="Analyzer" ReferenceOutputAssembly="false" />
<ProjectReference Include="..\..\gen\System.Text.Json.SourceGeneration.Roslyn4.0.csproj" OutputItemType="Analyzer" ReferenceOutputAssembly="false" />
</ItemGroup>
</Project>

View file

@ -15,7 +15,8 @@
<ItemGroup Condition="'$(TargetsMobile)' == 'true' and '$(TargetOS)' != 'Browser'">
<!-- Microsoft.CodeAnalysis.* assemblies missing in the virtual file system for Browser and the bundle for the mobile platforms -->
<ProjectExclusions Include="$(MSBuildThisFileDirectory)Microsoft.Extensions.Logging\tests\Microsoft.Extensions.Logging.Generators.Tests\Microsoft.Extensions.Logging.Generators.Tests.csproj" />
<ProjectExclusions Include="$(MSBuildThisFileDirectory)Microsoft.Extensions.Logging\tests\Microsoft.Extensions.Logging.Generators.Tests\Microsoft.Extensions.Logging.Generators.Roslyn3.11.Tests.csproj" />
<ProjectExclusions Include="$(MSBuildThisFileDirectory)Microsoft.Extensions.Logging\tests\Microsoft.Extensions.Logging.Generators.Tests\Microsoft.Extensions.Logging.Generators.Roslyn4.0.Tests.csproj" />
</ItemGroup>
<!-- Projects that don't support code coverage measurement. -->
@ -168,7 +169,8 @@
<ProjectExclusions Include="$(MSBuildThisFileDirectory)System.Threading.Tasks.Dataflow\tests\System.Threading.Tasks.Dataflow.Tests.csproj" />
<!-- Crash https://github.com/dotnet/runtime/issues/56085 -->
<ProjectExclusions Include="$(MSBuildThisFileDirectory)System.Text.Json/tests/System.Text.Json.SourceGeneration.Tests/System.Text.Json.SourceGeneration.Tests.csproj" />
<ProjectExclusions Include="$(MSBuildThisFileDirectory)System.Text.Json/tests/System.Text.Json.SourceGeneration.Tests/System.Text.Json.SourceGeneration.Roslyn3.11.Tests.csproj" />
<ProjectExclusions Include="$(MSBuildThisFileDirectory)System.Text.Json/tests/System.Text.Json.SourceGeneration.Tests/System.Text.Json.SourceGeneration.Roslyn4.0.Tests.csproj" />
</ItemGroup>
<ItemGroup Condition="('$(TargetOS)' == 'iOS' or '$(TargetOS)' == 'iOSSimulator' or '$(TargetOS)' == 'tvOS' or '$(TargetOS)' == 'tvOSSimulator') and '$(RunDisablediOSTests)' != 'true'">
@ -199,7 +201,8 @@
<ProjectExclusions Include="$(MSBuildThisFileDirectory)System.Net.WebSockets.Client\tests\wasm\System.Net.WebSockets.Client.Wasm.Tests.csproj" />
<!-- https://github.com/dotnet/runtime/issues/58226 -->
<ProjectExclusions Include="$(MSBuildThisFileDirectory)System.Text.Json\tests\System.Text.Json.SourceGeneration.Unit.Tests\System.Text.Json.SourceGeneration.Unit.Tests.csproj" />
<ProjectExclusions Include="$(MSBuildThisFileDirectory)System.Text.Json\tests\System.Text.Json.SourceGeneration.Unit.Tests\System.Text.Json.SourceGeneration.Roslyn3.11.Unit.Tests.csproj" />
<ProjectExclusions Include="$(MSBuildThisFileDirectory)System.Text.Json\tests\System.Text.Json.SourceGeneration.Unit.Tests\System.Text.Json.SourceGeneration.Roslyn4.0.Unit.Tests.csproj" />
</ItemGroup>
<!-- Aggressive Trimming related failures -->