1
0
Fork 0
mirror of https://github.com/VSadov/Satori.git synced 2025-06-08 11:37:04 +09:00

Add NetFramework Configurations to OOB packages (#39099)

* Porting new netfx configurations for packages

* Add Netfx configurations to Microsoft.Extensions and missing System packages

* Making sure net461 configurations build against targeting pack assembly versions

* Undo changes to add netfx configurations on reference projects that don't ship in their package

* Fix issue with M.E.FP.P package by removing NetStandard.Library metapackage dependency

* Fix issues with depending on higher version than the one available in net461

* Disable UTF8String verifyClosure on package

* Undo changes to Microsoft.XmlSerializer.Generator

* Update src/libraries/Microsoft.Extensions.FileProviders.Physical/src/Microsoft.Extensions.FileProviders.Physical.csproj

Co-authored-by: Eric StJohn <ericstj@microsoft.com>

Co-authored-by: Eric StJohn <ericstj@microsoft.com>
This commit is contained in:
Jose Perez Rodriguez 2020-07-14 21:59:55 -07:00 committed by GitHub
parent ff98a5d39d
commit b7c4cb71fe
Signed by: github
GPG key ID: 4AEE18F83AFDEB23
95 changed files with 652 additions and 169 deletions

View file

@ -1,12 +1,16 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFrameworks>netstandard2.0</TargetFrameworks>
<TargetFrameworks>netstandard2.0;net461;$(NetFrameworkCurrent)</TargetFrameworks>
<ExcludeCurrentFullFrameworkFromPackage>true</ExcludeCurrentFullFrameworkFromPackage>
<EnableDefaultItems>true</EnableDefaultItems>
</PropertyGroup>
<ItemGroup>
<Reference Include="Microsoft.Extensions.Primitives" />
</ItemGroup>
<ItemGroup Condition="$(TargetFramework.StartsWith('net4'))">
<Reference Include="mscorlib" />
</ItemGroup>
</Project>

View file

@ -1,7 +1,8 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFrameworks>netstandard2.0</TargetFrameworks>
<TargetFrameworks>netstandard2.0;net461;$(NetFrameworkCurrent)</TargetFrameworks>
<ExcludeCurrentFullFrameworkFromPackage>true</ExcludeCurrentFullFrameworkFromPackage>
<EnableDefaultItems>true</EnableDefaultItems>
</PropertyGroup>
@ -13,4 +14,9 @@
<Reference Include="Microsoft.Extensions.Primitives" />
</ItemGroup>
<ItemGroup Condition="$(TargetFramework.StartsWith('net4'))">
<Reference Include="mscorlib" />
<Reference Include="System.Core" />
</ItemGroup>
</Project>

View file

@ -1,7 +1,8 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFrameworks>netstandard2.0</TargetFrameworks>
<TargetFrameworks>netstandard2.0;net461;$(NetFrameworkCurrent)</TargetFrameworks>
<ExcludeCurrentFullFrameworkFromPackage>true</ExcludeCurrentFullFrameworkFromPackage>
</PropertyGroup>
<ItemGroup>
@ -12,4 +13,11 @@
<Reference Include="Microsoft.Extensions.Primitives" />
</ItemGroup>
<ItemGroup Condition="$(TargetFramework.StartsWith('net4'))">
<Reference Include="mscorlib" />
<Reference Include="System" />
<Reference Include="System.Core" />
<Reference Include="System.ValueTuple" />
</ItemGroup>
</Project>

View file

@ -1,7 +1,8 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFrameworks>netstandard2.0</TargetFrameworks>
<TargetFrameworks>netstandard2.0;net461;$(NetFrameworkCurrent)</TargetFrameworks>
<ExcludeCurrentFullFrameworkFromPackage>true</ExcludeCurrentFullFrameworkFromPackage>
<EnableDefaultItems>true</EnableDefaultItems>
</PropertyGroup>
@ -10,4 +11,10 @@
<Reference Include="Microsoft.Extensions.Configuration.Abstractions" />
</ItemGroup>
<ItemGroup Condition="$(TargetFramework.StartsWith('net4'))">
<Reference Include="mscorlib" />
<Reference Include="System" />
<Reference Include="System.Core" />
</ItemGroup>
</Project>

View file

@ -1,7 +1,8 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFrameworks>netstandard2.0;$(DefaultNetCoreTargetFramework)</TargetFrameworks>
<TargetFrameworks>netstandard2.0;$(DefaultNetCoreTargetFramework);net461;$(NetFrameworkCurrent)</TargetFrameworks>
<ExcludeCurrentFullFrameworkFromPackage>true</ExcludeCurrentFullFrameworkFromPackage>
<EnableDefaultItems>true</EnableDefaultItems>
</PropertyGroup>
@ -10,4 +11,8 @@
<Reference Include="Microsoft.Extensions.Configuration.Abstractions" />
</ItemGroup>
<ItemGroup Condition="$(TargetFramework.StartsWith('net4'))">
<Reference Include="mscorlib" />
</ItemGroup>
</Project>

View file

@ -1,7 +1,8 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFrameworks>netstandard2.0</TargetFrameworks>
<TargetFrameworks>netstandard2.0;net461;$(NetFrameworkCurrent)</TargetFrameworks>
<ExcludeCurrentFullFrameworkFromPackage>true</ExcludeCurrentFullFrameworkFromPackage>
<EnableDefaultItems>true</EnableDefaultItems>
</PropertyGroup>
@ -10,4 +11,9 @@
<Reference Include="Microsoft.Extensions.Configuration.Abstractions" />
</ItemGroup>
<ItemGroup Condition="$(TargetFramework.StartsWith('net4'))">
<Reference Include="mscorlib" />
<Reference Include="System.Core" />
</ItemGroup>
</Project>

View file

@ -1,7 +1,8 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFrameworks>netstandard2.0</TargetFrameworks>
<TargetFrameworks>netstandard2.0;net461;$(NetFrameworkCurrent)</TargetFrameworks>
<ExcludeCurrentFullFrameworkFromPackage>true</ExcludeCurrentFullFrameworkFromPackage>
<EnableDefaultItems>true</EnableDefaultItems>
</PropertyGroup>
@ -13,4 +14,8 @@
<Reference Include="Microsoft.Extensions.Primitives" />
</ItemGroup>
<ItemGroup Condition="$(TargetFramework.StartsWith('net4'))">
<Reference Include="mscorlib" />
</ItemGroup>
</Project>

View file

@ -1,7 +1,8 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFrameworks>netstandard2.0</TargetFrameworks>
<TargetFrameworks>netstandard2.0;net461;$(NetFrameworkCurrent)</TargetFrameworks>
<ExcludeCurrentFullFrameworkFromPackage>true</ExcludeCurrentFullFrameworkFromPackage>
<EnableDefaultItems>true</EnableDefaultItems>
</PropertyGroup>
@ -12,4 +13,8 @@
<Reference Include="Microsoft.Extensions.FileProviders.Abstractions" />
</ItemGroup>
<ItemGroup Condition="$(TargetFramework.StartsWith('net4'))">
<Reference Include="mscorlib" />
</ItemGroup>
</Project>

View file

@ -1,7 +1,8 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFrameworks>$(NetCoreAppCurrent);netstandard2.0</TargetFrameworks>
<TargetFrameworks>$(NetCoreAppCurrent);netstandard2.0;net461;$(NetFrameworkCurrent)</TargetFrameworks>
<ExcludeCurrentFullFrameworkFromPackage>true</ExcludeCurrentFullFrameworkFromPackage>
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
<EnableDefaultItems>true</EnableDefaultItems>
</PropertyGroup>
@ -21,4 +22,10 @@
<Reference Include="System.Runtime" />
</ItemGroup>
<ItemGroup Condition="$(TargetFramework.StartsWith('net4'))">
<Reference Include="mscorlib" />
<Reference Include="System" />
<Reference Include="System.Core" />
</ItemGroup>
</Project>

View file

@ -1,7 +1,8 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFrameworks>$(NetCoreAppCurrent);netstandard2.0</TargetFrameworks>
<TargetFrameworks>$(NetCoreAppCurrent);netstandard2.0;net461;$(NetFrameworkCurrent)</TargetFrameworks>
<ExcludeCurrentFullFrameworkFromPackage>true</ExcludeCurrentFullFrameworkFromPackage>
<EnableDefaultItems>true</EnableDefaultItems>
</PropertyGroup>
@ -25,5 +26,8 @@
<ItemGroup>
<Reference Include="Microsoft.Extensions.Configuration.Json" />
</ItemGroup>
<ItemGroup Condition="$(TargetFramework.StartsWith('net4'))">
<Reference Include="mscorlib" />
</ItemGroup>
</Project>

View file

@ -1,7 +1,8 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFrameworks>$(NetCoreAppCurrent);netstandard2.0</TargetFrameworks>
<TargetFrameworks>$(NetCoreAppCurrent);netstandard2.0;net461;$(NetFrameworkCurrent)</TargetFrameworks>
<ExcludeCurrentFullFrameworkFromPackage>true</ExcludeCurrentFullFrameworkFromPackage>
<EnableDefaultItems>true</EnableDefaultItems>
</PropertyGroup>
@ -20,4 +21,12 @@
<Reference Include="System.Security.Cryptography.Xml" />
</ItemGroup>
<ItemGroup Condition="$(TargetFramework.StartsWith('net4'))">
<Reference Include="mscorlib" />
<Reference Include="System" />
<Reference Include="System.Core" />
<Reference Include="System.Xml" />
<Reference Include="System.Security" />
</ItemGroup>
</Project>

View file

@ -1,7 +1,8 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFrameworks>netstandard2.0</TargetFrameworks>
<TargetFrameworks>netstandard2.0;net461;$(NetFrameworkCurrent)</TargetFrameworks>
<ExcludeCurrentFullFrameworkFromPackage>true</ExcludeCurrentFullFrameworkFromPackage>
<EnableDefaultItems>true</EnableDefaultItems>
</PropertyGroup>
@ -10,4 +11,9 @@
<Reference Include="Microsoft.Extensions.Primitives" />
</ItemGroup>
<ItemGroup Condition="$(TargetFramework.StartsWith('net4'))">
<Reference Include="mscorlib" />
<Reference Include="System.Core" />
</ItemGroup>
</Project>

View file

@ -1,7 +1,8 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFrameworks>netstandard2.0</TargetFrameworks>
<TargetFrameworks>netstandard2.0;net461;$(NetFrameworkCurrent)</TargetFrameworks>
<ExcludeCurrentFullFrameworkFromPackage>true</ExcludeCurrentFullFrameworkFromPackage>
<DefineConstants>$(DefineConstants);ActivatorUtilities_In_DependencyInjection</DefineConstants>
<EnableDefaultItems>true</EnableDefaultItems>
<Nullable>enable</Nullable>
@ -18,4 +19,10 @@
Link="Common\src\Extensions\ActivatorUtilities\ObjectFactory.cs" />
</ItemGroup>
<ItemGroup Condition="$(TargetFramework.StartsWith('net4'))">
<Reference Include="mscorlib" />
<Reference Include="System.Core" />
<Reference Include="System" />
</ItemGroup>
</Project>

View file

@ -4,6 +4,10 @@
<ExcludeCurrentFullFrameworkFromPackage>true</ExcludeCurrentFullFrameworkFromPackage>
<EnableDefaultItems>true</EnableDefaultItems>
</PropertyGroup>
<PropertyGroup>
<!-- Ensure Assemblies are first resolved via targeting pack when targeting net461 -->
<AssemblySearchPaths Condition="'$(TargetFramework)' == 'net461'">$(NuGetPackageRoot)\microsoft.targetingpack.netframework.v4.6.1\1.0.1\lib\net461\;$(AssemblySearchPaths)</AssemblySearchPaths>
</PropertyGroup>
<ItemGroup>
<Compile Include="$(CoreLibSharedDir)\System\Numerics\Hashing\HashHelpers.cs"
@ -18,7 +22,8 @@
<Reference Include="mscorlib" />
<Reference Include="System" />
<Reference Include="System.Core" />
<Reference Include="System.Runtime.InteropServices.RuntimeInformation" />
<Reference Include="System.Runtime" />
<PackageReference Include="System.Runtime.InteropServices.RuntimeInformation" Version="4.3.0" Condition="'$(TargetFramework)' == 'net461'" />
</ItemGroup>
<ItemGroup>
<Reference Include="System.Buffers" />

View file

@ -2,7 +2,8 @@
<PropertyGroup>
<RootNamespace>Microsoft.Extensions.FileProviders</RootNamespace>
<TargetFrameworks>netstandard2.0</TargetFrameworks>
<TargetFrameworks>netstandard2.0;net461;$(NetFrameworkCurrent)</TargetFrameworks>
<ExcludeCurrentFullFrameworkFromPackage>true</ExcludeCurrentFullFrameworkFromPackage>
<EnableDefaultItems>true</EnableDefaultItems>
</PropertyGroup>
@ -16,4 +17,9 @@
<Reference Include="Microsoft.Extensions.Primitives" />
</ItemGroup>
<ItemGroup Condition="$(TargetFramework.StartsWith('net4'))">
<Reference Include="mscorlib" />
<Reference Include="System.Core" />
</ItemGroup>
</Project>

View file

@ -2,7 +2,8 @@
<PropertyGroup>
<RootNamespace>Microsoft.Extensions.FileProviders</RootNamespace>
<TargetFrameworks>netstandard2.0</TargetFrameworks>
<TargetFrameworks>netstandard2.0;net461;$(NetFrameworkCurrent)</TargetFrameworks>
<ExcludeCurrentFullFrameworkFromPackage>true</ExcludeCurrentFullFrameworkFromPackage>
<EnableDefaultItems>true</EnableDefaultItems>
</PropertyGroup>
@ -11,4 +12,9 @@
<Reference Include="Microsoft.Extensions.Primitives" />
</ItemGroup>
<ItemGroup Condition="$(TargetFramework.StartsWith('net4'))">
<Reference Include="mscorlib" />
<Reference Include="System.Core" />
</ItemGroup>
</Project>

View file

@ -2,11 +2,17 @@
<PropertyGroup>
<RootNamespace>Microsoft.Extensions.FileProviders</RootNamespace>
<TargetFrameworks>netstandard2.0</TargetFrameworks>
<TargetFrameworks>netstandard2.0;net461;$(NetFrameworkCurrent)</TargetFrameworks>
<ExcludeCurrentFullFrameworkFromPackage>true</ExcludeCurrentFullFrameworkFromPackage>
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
<EnableDefaultItems>true</EnableDefaultItems>
</PropertyGroup>
<PropertyGroup>
<!-- Ensure Assemblies are first resolved via targeting pack when targeting net461 -->
<AssemblySearchPaths Condition="'$(TargetFramework)' == 'net461'">$(NuGetPackageRoot)\microsoft.targetingpack.netframework.v4.6.1\1.0.1\lib\net461\;$(AssemblySearchPaths)</AssemblySearchPaths>
</PropertyGroup>
<ItemGroup>
<Compile Include="$(CommonPath)Extensions\EmptyDisposable.cs"
Link="Common\src\Extensions\EmptyDisposable.cs" />
@ -20,4 +26,12 @@
<Reference Include="Microsoft.Extensions.Primitives" />
</ItemGroup>
<ItemGroup Condition="$(TargetFramework.StartsWith('net4'))">
<Reference Include="mscorlib" />
<Reference Include="System" />
<Reference Include="System.Core" />
<!-- For IncrementalHash -->
<PackageReference Include="System.Security.Cryptography.Algorithms" Version="4.3.1" Condition="'$(TargetFramework)' == 'net461'" />
</ItemGroup>
</Project>

View file

@ -1,7 +1,8 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFrameworks>netstandard2.0</TargetFrameworks>
<TargetFrameworks>netstandard2.0;net461;$(NetFrameworkCurrent)</TargetFrameworks>
<ExcludeCurrentFullFrameworkFromPackage>true</ExcludeCurrentFullFrameworkFromPackage>
<EnableDefaultItems>true</EnableDefaultItems>
</PropertyGroup>
@ -10,4 +11,10 @@
Link="Common\src\Extensions\HashCodeCombiner\HashCodeCombiner.cs" />
</ItemGroup>
<ItemGroup Condition="$(TargetFramework.StartsWith('net4'))">
<Reference Include="mscorlib" />
<Reference Include="System" />
<Reference Include="System.Core" />
</ItemGroup>
</Project>

View file

@ -1,7 +1,8 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFrameworks>$(NetCoreAppCurrent);netstandard2.0</TargetFrameworks>
<TargetFrameworks>$(NetCoreAppCurrent);netstandard2.0;net461;$(NetFrameworkCurrent)</TargetFrameworks>
<ExcludeCurrentFullFrameworkFromPackage>true</ExcludeCurrentFullFrameworkFromPackage>
<RootNamespace>Microsoft.Extensions.Hosting</RootNamespace>
<EnableDefaultItems>true</EnableDefaultItems>
</PropertyGroup>
@ -15,9 +16,13 @@
<Reference Include="System.Runtime" />
</ItemGroup>
<ItemGroup Condition="'$(TargetFramework)' == 'netstandard2.0'">
<ItemGroup Condition="'$(TargetFramework)' == 'netstandard2.0' Or $(TargetFramework.StartsWith('net4'))">
<Reference Include="Microsoft.Bcl.AsyncInterfaces" />
<Reference Include="System.Threading.Tasks.Extensions" />
</ItemGroup>
<ItemGroup Condition="$(TargetFramework.StartsWith('net4'))">
<Reference Include="mscorlib" />
</ItemGroup>
</Project>

View file

@ -1,9 +1,14 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFrameworks>$(NetCoreAppCurrent);netstandard2.0;netstandard2.1</TargetFrameworks>
<TargetFrameworks>$(NetCoreAppCurrent);netstandard2.0;netstandard2.1;net461;$(NetFrameworkCurrent)</TargetFrameworks>
<ExcludeCurrentFullFrameworkFromPackage>true</ExcludeCurrentFullFrameworkFromPackage>
<EnableDefaultItems>true</EnableDefaultItems>
</PropertyGroup>
<PropertyGroup>
<!-- Ensure Assemblies are first resolved via targeting pack when targeting net461 -->
<AssemblySearchPaths Condition="'$(TargetFramework)' == 'net461'">$(NuGetPackageRoot)\microsoft.targetingpack.netframework.v4.6.1\1.0.1\lib\net461\;$(AssemblySearchPaths)</AssemblySearchPaths>
</PropertyGroup>
<ItemGroup>
<Reference Include="Microsoft.Extensions.Hosting.Abstractions" />
@ -40,9 +45,16 @@
<Reference Include="System.Threading" />
</ItemGroup>
<ItemGroup Condition="'$(TargetFramework)' == 'netstandard2.0'">
<ItemGroup Condition="'$(TargetFramework)' == 'netstandard2.0' OR $(TargetFramework.StartsWith('net4'))">
<Reference Include="Microsoft.Bcl.AsyncInterfaces" />
<Reference Include="System.Threading.Tasks.Extensions" />
</ItemGroup>
<ItemGroup Condition="$(TargetFramework.StartsWith('net4'))">
<Reference Include="mscorlib" />
<Reference Include="System.Core" />
<Reference Include="System.Runtime" />
<PackageReference Include="System.Runtime.InteropServices.RuntimeInformation" Version="4.3.0" Condition="'$(TargetFramework)' == 'net461'" />
</ItemGroup>
</Project>

View file

@ -1,9 +1,14 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFrameworks>netstandard2.0</TargetFrameworks>
<TargetFrameworks>netstandard2.0;net461;$(NetFrameworkCurrent)</TargetFrameworks>
<ExcludeCurrentFullFrameworkFromPackage>true</ExcludeCurrentFullFrameworkFromPackage>
<EnableDefaultItems>true</EnableDefaultItems>
</PropertyGroup>
<PropertyGroup>
<!-- Ensure Assemblies are first resolved via targeting pack when targeting net461 -->
<AssemblySearchPaths Condition="'$(TargetFramework)' == 'net461'">$(NuGetPackageRoot)\microsoft.targetingpack.netframework.v4.6.1\1.0.1\lib\net461\;$(AssemblySearchPaths)</AssemblySearchPaths>
</PropertyGroup>
<ItemGroup>
<Compile Include="$(CommonPath)Extensions\NonCapturingTimer\NonCapturingTimer.cs"
@ -21,4 +26,11 @@
<Reference Include="Microsoft.Extensions.Options" />
</ItemGroup>
<ItemGroup Condition="$(TargetFramework.StartsWith('net4'))">
<Reference Include="mscorlib" />
<Reference Include="System.Net.Http" />
<Reference Include="System" />
<Reference Include="System.Core" />
</ItemGroup>
</Project>

View file

@ -1,7 +1,8 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFrameworks>netstandard2.0</TargetFrameworks>
<TargetFrameworks>netstandard2.0;net461;$(NetFrameworkCurrent)</TargetFrameworks>
<ExcludeCurrentFullFrameworkFromPackage>true</ExcludeCurrentFullFrameworkFromPackage>
<EnableDefaultItems>true</EnableDefaultItems>
</PropertyGroup>
@ -14,4 +15,9 @@
Link="Common\src\Extensions\Logging\NullScope.cs" />
</ItemGroup>
<ItemGroup Condition="$(TargetFramework.StartsWith('net4'))">
<Reference Include="mscorlib" />
<Reference Include="System.Core" />
</ItemGroup>
</Project>

View file

@ -1,7 +1,8 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFrameworks>$(NetCoreAppCurrent);netstandard2.0</TargetFrameworks>
<TargetFrameworks>$(NetCoreAppCurrent);netstandard2.0;net461;$(NetFrameworkCurrent)</TargetFrameworks>
<ExcludeCurrentFullFrameworkFromPackage>true</ExcludeCurrentFullFrameworkFromPackage>
<EnableDefaultItems>true</EnableDefaultItems>
</PropertyGroup>
@ -26,4 +27,8 @@
<Reference Include="Microsoft.Extensions.Options.ConfigurationExtensions" />
</ItemGroup>
<ItemGroup Condition="$(TargetFramework.StartsWith('net4'))">
<Reference Include="mscorlib" />
</ItemGroup>
</Project>

View file

@ -1,9 +1,14 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFrameworks>$(NetCoreAppCurrent);netstandard2.0</TargetFrameworks>
<TargetFrameworks>$(NetCoreAppCurrent);netstandard2.0;net461;$(NetFrameworkCurrent)</TargetFrameworks>
<ExcludeCurrentFullFrameworkFromPackage>true</ExcludeCurrentFullFrameworkFromPackage>
<EnableDefaultItems>true</EnableDefaultItems>
</PropertyGroup>
<PropertyGroup>
<!-- Ensure Assemblies are first resolved via targeting pack when targeting net461 -->
<AssemblySearchPaths Condition="'$(TargetFramework)' == 'net461'">$(NuGetPackageRoot)\microsoft.targetingpack.netframework.v4.6.1\1.0.1\lib\net461\;$(AssemblySearchPaths)</AssemblySearchPaths>
</PropertyGroup>
<ItemGroup Condition="'$(TargetFramework)' == '$(NetCoreAppCurrent)'">
<Reference Include="System.Collections.Concurrent" />
@ -28,4 +33,12 @@
<Reference Include="Microsoft.Extensions.Options" />
</ItemGroup>
<ItemGroup Condition="$(TargetFramework.StartsWith('net4'))">
<Reference Include="mscorlib" />
<Reference Include="System" />
<Reference Include="System.ValueTuple" />
<Reference Include="System.Runtime" />
<PackageReference Include="System.Runtime.InteropServices.RuntimeInformation" Version="4.3.0" Condition="'$(TargetFramework)' == 'net461'" />
</ItemGroup>
</Project>

View file

@ -1,7 +1,7 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFrameworks>$(NetCoreAppCurrent);netstandard2.0</TargetFrameworks>
<TargetFrameworks>$(NetCoreAppCurrent);netstandard2.0;net461;$(NetFrameworkCurrent)</TargetFrameworks>
<EnableDefaultItems>true</EnableDefaultItems>
</PropertyGroup>
@ -22,4 +22,9 @@
<Reference Include="Microsoft.Extensions.Logging.Abstractions" />
</ItemGroup>
<ItemGroup Condition="$(TargetFramework.StartsWith('net4'))">
<Reference Include="mscorlib" />
<Reference Include="System" />
</ItemGroup>
</Project>

View file

@ -2,6 +2,7 @@
<PropertyGroup>
<TargetFrameworks>$(NetCoreAppCurrent);$(NetFrameworkCurrent);net461;netstandard2.0;netstandard2.1</TargetFrameworks>
<ExcludeCurrentFullFrameworkFromPackage>true</ExcludeCurrentFullFrameworkFromPackage>
<EnableDefaultItems>true</EnableDefaultItems>
</PropertyGroup>

View file

@ -1,7 +1,8 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFrameworks>$(NetCoreAppCurrent);netstandard2.0</TargetFrameworks>
<TargetFrameworks>$(NetCoreAppCurrent);netstandard2.0;net461;$(NetFrameworkCurrent)</TargetFrameworks>
<ExcludeCurrentFullFrameworkFromPackage>true</ExcludeCurrentFullFrameworkFromPackage>
<EnableDefaultItems>true</EnableDefaultItems>
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
</PropertyGroup>
@ -30,8 +31,13 @@
<Reference Include="System.Threading" />
</ItemGroup>
<ItemGroup Condition="'$(TargetFramework)' == 'netstandard2.0'">
<ItemGroup Condition="'$(TargetFramework)' == 'netstandard2.0' OR $(TargetFramework.StartsWith('net4'))">
<Reference Include="Microsoft.Bcl.AsyncInterfaces" />
</ItemGroup>
<ItemGroup Condition="$(TargetFramework.StartsWith('net4'))">
<Reference Include="mscorlib" />
<Reference Include="System" />
</ItemGroup>
</Project>

View file

@ -1,7 +1,8 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFrameworks>$(NetCoreAppCurrent);netstandard2.0</TargetFrameworks>
<TargetFrameworks>$(NetCoreAppCurrent);netstandard2.0;net461;$(NetFrameworkCurrent)</TargetFrameworks>
<ExcludeCurrentFullFrameworkFromPackage>true</ExcludeCurrentFullFrameworkFromPackage>
<EnableDefaultItems>true</EnableDefaultItems>
</PropertyGroup>
@ -18,4 +19,9 @@
<Reference Include="Microsoft.Extensions.Logging.Abstractions" />
</ItemGroup>
<ItemGroup Condition="$(TargetFramework.StartsWith('net4'))">
<Reference Include="mscorlib" />
<Reference Include="System" />
</ItemGroup>
</Project>

View file

@ -1,7 +1,8 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFrameworks>$(NetCoreAppCurrent);netstandard2.0</TargetFrameworks>
<TargetFrameworks>$(NetCoreAppCurrent);netstandard2.0;net461;$(NetFrameworkCurrent)</TargetFrameworks>
<ExcludeCurrentFullFrameworkFromPackage>true</ExcludeCurrentFullFrameworkFromPackage>
<EnableDefaultItems>true</EnableDefaultItems>
</PropertyGroup>
@ -29,7 +30,7 @@
<Reference Include="Microsoft.Extensions.Options" />
</ItemGroup>
<ItemGroup Condition="'$(TargetFramework)' == 'netstandard2.0'">
<ItemGroup Condition="'$(TargetFramework)' == 'netstandard2.0' OR $(TargetFramework.StartsWith('net4'))">
<Reference Include="Microsoft.Bcl.AsyncInterfaces" />
</ItemGroup>
@ -37,4 +38,11 @@
<Reference Include="System.Diagnostics.DiagnosticSource" />
</ItemGroup>
<ItemGroup Condition="$(TargetFramework.StartsWith('net4'))">
<Reference Include="mscorlib" />
<Reference Include="System" />
<Reference Include="System.Core" />
<Reference Include="System.ValueTuple" />
</ItemGroup>
</Project>

View file

@ -1,7 +1,8 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFrameworks>$(NetCoreAppCurrent);netstandard2.0</TargetFrameworks>
<TargetFrameworks>$(NetCoreAppCurrent);netstandard2.0;net461;$(NetFrameworkCurrent)</TargetFrameworks>
<ExcludeCurrentFullFrameworkFromPackage>true</ExcludeCurrentFullFrameworkFromPackage>
<EnableDefaultItems>true</EnableDefaultItems>
</PropertyGroup>
@ -18,4 +19,8 @@
<Reference Include="System.Runtime" />
</ItemGroup>
<ItemGroup Condition="$(TargetFramework.StartsWith('net4'))">
<Reference Include="mscorlib" />
</ItemGroup>
</Project>

View file

@ -1,7 +1,8 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFrameworks>$(NetCoreAppCurrent);netstandard2.0</TargetFrameworks>
<TargetFrameworks>$(NetCoreAppCurrent);netstandard2.0;net461;$(NetFrameworkCurrent)</TargetFrameworks>
<ExcludeCurrentFullFrameworkFromPackage>true</ExcludeCurrentFullFrameworkFromPackage>
<EnableDefaultItems>true</EnableDefaultItems>
</PropertyGroup>
@ -20,4 +21,9 @@
<Reference Include="System.Runtime" />
</ItemGroup>
<ItemGroup Condition="$(TargetFramework.StartsWith('net4'))">
<Reference Include="mscorlib" />
<Reference Include="System.ComponentModel.DataAnnotations" />
</ItemGroup>
</Project>

View file

@ -1,7 +1,8 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFrameworks>$(NetCoreAppCurrent);netstandard2.0</TargetFrameworks>
<TargetFrameworks>$(NetCoreAppCurrent);netstandard2.0;net461;$(NetFrameworkCurrent)</TargetFrameworks>
<ExcludeCurrentFullFrameworkFromPackage>true</ExcludeCurrentFullFrameworkFromPackage>
<EnableDefaultItems>true</EnableDefaultItems>
</PropertyGroup>
@ -19,8 +20,13 @@
<Reference Include="System.Threading" />
</ItemGroup>
<ItemGroup Condition="'$(TargetFramework)' == 'netstandard2.0'">
<ItemGroup Condition="'$(TargetFramework)' == 'netstandard2.0' OR $(TargetFramework.StartsWith('net4'))">
<Reference Include="System.ComponentModel.Annotations" />
</ItemGroup>
<ItemGroup Condition="$(TargetFramework.StartsWith('net4'))">
<Reference Include="mscorlib" />
<Reference Include="System.Core" />
</ItemGroup>
</Project>

View file

@ -1,6 +1,7 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFrameworks>$(NetCoreAppCurrent);netcoreapp3.0;netstandard2.0</TargetFrameworks>
<TargetFrameworks>$(NetCoreAppCurrent);netcoreapp3.0;netstandard2.0;net461;$(NetFrameworkCurrent)</TargetFrameworks>
<ExcludeCurrentFullFrameworkFromPackage>true</ExcludeCurrentFullFrameworkFromPackage>
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
<ExcludeCurrentNetCoreAppFromPackage>true</ExcludeCurrentNetCoreAppFromPackage>
</PropertyGroup>
@ -19,7 +20,7 @@
<Compile Include="StringValues.cs" />
<Compile Include="ThrowHelper.cs" />
</ItemGroup>
<ItemGroup Condition="'$(TargetFramework)' != 'netstandard2.0'">
<ItemGroup Condition="'$(TargetFramework)' != 'netstandard2.0' AND !$(TargetFramework.StartsWith('net4'))">
<Reference Include="System.Resources.ResourceManager" />
<Reference Include="System.Runtime" />
<Reference Include="System.Runtime.CompilerServices.Unsafe" />
@ -30,8 +31,12 @@
<Reference Include="System.Threading" />
<Reference Include="System.Threading.Tasks" />
</ItemGroup>
<ItemGroup Condition="'$(TargetFramework)' == 'netstandard2.0'">
<ItemGroup Condition="'$(TargetFramework)' == 'netstandard2.0' OR $(TargetFramework.StartsWith('net4'))">
<Reference Include="System.Memory" />
<Reference Include="System.Runtime.CompilerServices.Unsafe" />
</ItemGroup>
<ItemGroup Condition="$(TargetFramework.StartsWith('net4'))">
<Reference Include="mscorlib" />
<Reference Include="System" />
</ItemGroup>
</Project>

View file

@ -247,7 +247,7 @@ namespace Microsoft.Extensions.Primitives
{
#if NETCOREAPP || NETSTANDARD2_1
return string.GetHashCode(AsSpan());
#elif NETSTANDARD2_0
#elif (NETSTANDARD2_0 || NETFRAMEWORK)
// This GetHashCode is expensive since it allocates on every call.
// However this is required to ensure we retain any behavior (such as hash code randomization) that
// string.GetHashCode has.

View file

@ -1,7 +1,8 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFrameworks>$(NetCoreAppCurrent);netstandard1.0;netstandard1.3;netstandard2.0</TargetFrameworks>
<TargetFrameworks>$(NetCoreAppCurrent);netstandard1.0;netstandard1.3;netstandard2.0;net461;$(NetFrameworkCurrent)</TargetFrameworks>
<ExcludeCurrentNetCoreAppFromPackage>true</ExcludeCurrentNetCoreAppFromPackage>
<ExcludeCurrentFullFrameworkFromPackage>true</ExcludeCurrentFullFrameworkFromPackage>
<Nullable>enable</Nullable>
</PropertyGroup>
<!-- DesignTimeBuild requires all the TargetFramework Derived Properties to not be present in the first property group. -->
@ -114,4 +115,11 @@
<ItemGroup Condition="'$(TargetFramework)' == 'netstandard1.3' or '$(TargetFramework)' == 'netstandard2.0'">
<Reference Include="System.Memory" />
</ItemGroup>
<ItemGroup Condition="$(TargetFramework.StartsWith('net4'))">
<Reference Include="mscorlib" />
<Reference Include="System" />
<Reference Include="System.Memory" />
<Reference Include="netstandard" />
<Reference Include="System.Core" />
</ItemGroup>
</Project>

View file

@ -14,7 +14,7 @@ namespace System.Collections.Immutable
/// <typeparam name="T">The type of elements in the set.</typeparam>
[DebuggerDisplay("Count = {Count}")]
[DebuggerTypeProxy(typeof(ImmutableEnumerableDebuggerProxy<>))]
#if !NETSTANDARD1_0 && !NETSTANDARD1_3 && !NETSTANDARD2_0
#if !NETSTANDARD1_0 && !NETSTANDARD1_3 && !NETSTANDARD2_0 && !NETFRAMEWORK
public sealed partial class ImmutableHashSet<T> : IImmutableSet<T>, IHashKeyCollection<T>, IReadOnlyCollection<T>, ICollection<T>, ISet<T>, IReadOnlySet<T>, ICollection, IStrongEnumerable<T, ImmutableHashSet<T>.Enumerator>
#else
public sealed partial class ImmutableHashSet<T> : IImmutableSet<T>, IHashKeyCollection<T>, IReadOnlyCollection<T>, ICollection<T>, ISet<T>, ICollection, IStrongEnumerable<T, ImmutableHashSet<T>.Enumerator>

View file

@ -19,7 +19,7 @@ namespace System.Collections.Immutable
/// </devremarks>
[DebuggerDisplay("Count = {Count}")]
[DebuggerTypeProxy(typeof(ImmutableEnumerableDebuggerProxy<>))]
#if !NETSTANDARD1_0 && !NETSTANDARD1_3 && !NETSTANDARD2_0
#if !NETSTANDARD1_0 && !NETSTANDARD1_3 && !NETSTANDARD2_0 && !NETFRAMEWORK
public sealed partial class ImmutableSortedSet<T> : IImmutableSet<T>, ISortKeyCollection<T>, IReadOnlySet<T>, IReadOnlyList<T>, IList<T>, ISet<T>, IList, IStrongEnumerable<T, ImmutableSortedSet<T>.Enumerator>
#else
public sealed partial class ImmutableSortedSet<T> : IImmutableSet<T>, ISortKeyCollection<T>, IReadOnlyList<T>, IList<T>, ISet<T>, IList, IStrongEnumerable<T, ImmutableSortedSet<T>.Enumerator>

View file

@ -1,6 +1,6 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFrameworks>netstandard2.0;_$(NetFrameworkCurrent)</TargetFrameworks>
<TargetFrameworks>netstandard2.0;_net461</TargetFrameworks>
<Nullable>enable</Nullable>
</PropertyGroup>
<ItemGroup>

View file

@ -1,7 +1,8 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<AssemblyName>System.Composition.AttributedModel</AssemblyName>
<TargetFrameworks>netstandard2.0</TargetFrameworks>
<TargetFrameworks>netstandard2.0;net461;$(NetFrameworkCurrent)</TargetFrameworks>
<ExcludeCurrentFullFrameworkFromPackage>true</ExcludeCurrentFullFrameworkFromPackage>
</PropertyGroup>
<ItemGroup>
<Compile Include="System\Composition\Convention\AttributedModelProvider.cs" />
@ -18,4 +19,7 @@
<Compile Include="System\Composition\SharedAttribute.cs" />
<Compile Include="System\Composition\SharingBoundaryAttribute.cs" />
</ItemGroup>
<ItemGroup Condition="$(TargetFramework.StartsWith('net4'))">
<Reference Include="mscorlib" />
</ItemGroup>
</Project>

View file

@ -4,7 +4,8 @@
<RootNamespace>
</RootNamespace>
<!-- CommonStrings needs RootNamespace to be empty -->
<TargetFrameworks>netstandard2.0</TargetFrameworks>
<TargetFrameworks>netstandard2.0;net461;$(NetFrameworkCurrent)</TargetFrameworks>
<ExcludeCurrentFullFrameworkFromPackage>true</ExcludeCurrentFullFrameworkFromPackage>
</PropertyGroup>
<ItemGroup>
<Compile Include="System\Composition\Convention\ConventionBuilder.cs" />
@ -27,4 +28,8 @@
<ItemGroup>
<ProjectReference Include="..\..\System.Composition.AttributedModel\src\System.Composition.AttributedModel.csproj" />
</ItemGroup>
<ItemGroup Condition="$(TargetFramework.StartsWith('net4'))">
<Reference Include="mscorlib" />
<Reference Include="System.Core" />
</ItemGroup>
</Project>

View file

@ -4,7 +4,8 @@
<RootNamespace>
</RootNamespace>
<!-- CommonStrings needs RootNamespace to be empty -->
<TargetFrameworks>netstandard2.0</TargetFrameworks>
<TargetFrameworks>netstandard2.0;net461;$(NetFrameworkCurrent)</TargetFrameworks>
<ExcludeCurrentFullFrameworkFromPackage>true</ExcludeCurrentFullFrameworkFromPackage>
</PropertyGroup>
<ItemGroup>
<Compile Include="System\Composition\Hosting\CompositionHost.cs" />
@ -37,4 +38,10 @@
<ItemGroup>
<ProjectReference Include="..\..\System.Composition.Runtime\src\System.Composition.Runtime.csproj" />
</ItemGroup>
<ItemGroup Condition="$(TargetFramework.StartsWith('net4'))">
<Reference Include="mscorlib" />
<Reference Include="System.Core" />
<Reference Include="System" />
<Reference Include="System.ComponentModel.Composition" />
</ItemGroup>
</Project>

View file

@ -2,7 +2,8 @@
<PropertyGroup>
<RootNamespace>System.Composition</RootNamespace>
<AssemblyName>System.Composition.Runtime</AssemblyName>
<TargetFrameworks>netstandard2.0</TargetFrameworks>
<TargetFrameworks>netstandard2.0;net461;$(NetFrameworkCurrent)</TargetFrameworks>
<ExcludeCurrentFullFrameworkFromPackage>true</ExcludeCurrentFullFrameworkFromPackage>
</PropertyGroup>
<ItemGroup>
<Compile Include="System\Composition\CompositionContext.cs" />
@ -13,4 +14,9 @@
<Compile Include="System\Composition\Hosting\Core\CompositionContract.cs" />
<Compile Include="System\Composition\Runtime\Util\Formatters.cs" />
</ItemGroup>
<ItemGroup Condition="$(TargetFramework.StartsWith('net4'))">
<Reference Include="mscorlib" />
<Reference Include="System.Core" />
<Reference Include="System" />
</ItemGroup>
</Project>

View file

@ -2,7 +2,8 @@
<PropertyGroup>
<RootNamespace>System.Composition</RootNamespace>
<AssemblyName>System.Composition.TypedParts</AssemblyName>
<TargetFrameworks>netstandard2.0</TargetFrameworks>
<TargetFrameworks>netstandard2.0;net461;$(NetFrameworkCurrent)</TargetFrameworks>
<ExcludeCurrentFullFrameworkFromPackage>true</ExcludeCurrentFullFrameworkFromPackage>
</PropertyGroup>
<ItemGroup>
<Compile Include="System\Composition\CompositionContextExtensions.cs" />
@ -34,4 +35,8 @@
<ProjectReference Include="..\..\System.Composition.Hosting\src\System.Composition.Hosting.csproj" />
<ProjectReference Include="..\..\System.Composition.Runtime\src\System.Composition.Runtime.csproj" />
</ItemGroup>
<ItemGroup Condition="$(TargetFramework.StartsWith('net4'))">
<Reference Include="mscorlib" />
<Reference Include="System.Core" />
</ItemGroup>
</Project>

View file

@ -1,7 +1,7 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<AssemblyName>Microsoft.Composition.Demos.ExtendedCollectionImports</AssemblyName>
<TargetFrameworks>netstandard2.0</TargetFrameworks>
<TargetFrameworks>netstandard2.0;$(NetFrameworkCurrent)</TargetFrameworks>
</PropertyGroup>
<ItemGroup>
<Compile Include="Dictionaries\DictionaryExportDescriptorProvider.cs" />

View file

@ -1,6 +1,6 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFrameworks>netstandard2.0</TargetFrameworks>
<TargetFrameworks>netstandard2.0;$(NetFrameworkCurrent)</TargetFrameworks>
</PropertyGroup>
<ItemGroup>
<Compile Include="TestClass.cs" />

View file

@ -2,7 +2,8 @@
<PropertyGroup>
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
<Nullable>enable</Nullable>
<TargetFrameworks>netstandard2.0</TargetFrameworks>
<TargetFrameworks>netstandard2.0;net461;$(NetFrameworkCurrent)</TargetFrameworks>
<ExcludeCurrentFullFrameworkFromPackage>true</ExcludeCurrentFullFrameworkFromPackage>
</PropertyGroup>
<ItemGroup>
<Compile Include="$(CommonPath)System\Security\Cryptography\CryptoPool.cs">
@ -50,4 +51,10 @@
<Reference Include="System.Buffers" />
<Reference Include="System.Memory" />
</ItemGroup>
<ItemGroup Condition="$(TargetFramework.StartsWith('net4'))">
<Reference Include="mscorlib" />
<Reference Include="System" />
<Reference Include="System.Numerics" />
<Reference Include="System.ValueTuple" />
</ItemGroup>
</Project>

View file

@ -1,6 +1,7 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFrameworks>$(NetCoreAppCurrent);netstandard2.0;netcoreapp3.0</TargetFrameworks>
<TargetFrameworks>$(NetCoreAppCurrent);netstandard2.0;netcoreapp3.0;net461;$(NetFrameworkCurrent)</TargetFrameworks>
<ExcludeCurrentFullFrameworkFromPackage>true</ExcludeCurrentFullFrameworkFromPackage>
<ExcludeCurrentNetCoreAppFromPackage>true</ExcludeCurrentNetCoreAppFromPackage>
<Nullable>enable</Nullable>
</PropertyGroup>
@ -37,14 +38,18 @@
<Compile Include="System\IO\Pipelines\StreamPipeWriterOptions.cs" />
<Compile Include="System\IO\Pipelines\ThrowHelper.cs" />
</ItemGroup>
<ItemGroup Condition="'$(TargetFramework)' != 'netstandard2.0'">
<ItemGroup Condition="'$(TargetFramework)' != 'netstandard2.0' And !$(TargetFramework.StartsWith('net4'))">
<Compile Include="System\IO\Pipelines\ThreadPoolScheduler.netcoreapp.cs" />
</ItemGroup>
<ItemGroup Condition="'$(TargetFramework)' == 'netstandard2.0'">
<ItemGroup Condition="'$(TargetFramework)' == 'netstandard2.0' Or $(TargetFramework.StartsWith('net4'))">
<Compile Include="System\IO\Pipelines\StreamExtensions.netstandard.cs" />
<Compile Include="System\IO\Pipelines\ThreadPoolScheduler.netstandard.cs" />
<Compile Include="System\IO\Pipelines\CancellationTokenExtensions.netstandard.cs" />
</ItemGroup>
<ItemGroup Condition="$(TargetFramework.StartsWith('net4'))">
<Reference Include="mscorlib" />
<Reference Include="System" />
</ItemGroup>
<ItemGroup>
<Reference Include="System.Buffers" />
<Reference Include="System.Collections" />

View file

@ -18,7 +18,7 @@ namespace System.IO.Pipelines
private SynchronizationContext? _synchronizationContext;
private ExecutionContext? _executionContext;
#if !NETSTANDARD2_0
#if (!NETSTANDARD2_0 && !NETFRAMEWORK)
private CancellationToken CancellationToken => _cancellationTokenRegistration.Token;
#else
private CancellationToken _cancellationToken;
@ -34,7 +34,7 @@ namespace System.IO.Pipelines
_cancellationTokenRegistration = default;
_synchronizationContext = null;
_executionContext = null;
#if NETSTANDARD2_0
#if (NETSTANDARD2_0 || NETFRAMEWORK)
_cancellationToken = CancellationToken.None;
#endif
}
@ -53,7 +53,7 @@ namespace System.IO.Pipelines
// Don't register if already completed, we would immediately unregistered in ObserveCancellation
if (cancellationToken.CanBeCanceled && !IsCompleted)
{
#if NETSTANDARD2_0
#if (NETSTANDARD2_0 || NETFRAMEWORK)
_cancellationToken = cancellationToken;
#endif
_cancellationTokenRegistration = cancellationToken.UnsafeRegister(callback, state);
@ -165,7 +165,7 @@ namespace System.IO.Pipelines
cancellationToken = CancellationToken;
CancellationTokenRegistration cancellationTokenRegistration = _cancellationTokenRegistration;
#if NETSTANDARD2_0
#if (NETSTANDARD2_0 || NETFRAMEWORK)
_cancellationToken = default;
#endif
_cancellationTokenRegistration = default;

View file

@ -67,7 +67,7 @@ namespace System.IO.Pipelines
return ReadAsyncInternal(new Memory<byte>(buffer, offset, count), cancellationToken).AsTask();
}
#if !NETSTANDARD2_0
#if (!NETSTANDARD2_0 && !NETFRAMEWORK)
public override ValueTask<int> ReadAsync(Memory<byte> buffer, CancellationToken cancellationToken = default)
{
return ReadAsyncInternal(buffer, cancellationToken);

View file

@ -68,7 +68,7 @@ namespace System.IO.Pipelines
return GetFlushResultAsTask(valueTask);
}
#if !NETSTANDARD2_0
#if (!NETSTANDARD2_0 && !NETFRAMEWORK)
public override ValueTask WriteAsync(ReadOnlyMemory<byte> buffer, CancellationToken cancellationToken = default)
{
ValueTask<FlushResult> valueTask = _pipeWriter.WriteAsync(buffer, cancellationToken);

View file

@ -236,7 +236,7 @@ namespace System.IO.Pipelines
if (!_leaveOpen)
{
#if !NETSTANDARD2_0
#if (!NETSTANDARD2_0 && !NETFRAMEWORK)
await InnerStream.DisposeAsync().ConfigureAwait(false);
#else
InnerStream.Dispose();
@ -355,7 +355,7 @@ namespace System.IO.Pipelines
if (returnSegment.Length > 0 && writeToStream)
{
#if !NETSTANDARD2_0
#if (!NETSTANDARD2_0 && !NETFRAMEWORK)
InnerStream.Write(returnSegment.Memory.Span);
#else
InnerStream.Write(returnSegment.Memory);

View file

@ -1,10 +1,9 @@
<Project DefaultTargets="Build">
<Import Project="$([MSBuild]::GetPathOfFileAbove(Directory.Build.props))" />
<ItemGroup>
<ProjectReference Include="..\ref\System.Net.Http.Json.csproj">
<ProjectReference Include="..\src\System.Net.Http.Json.csproj">
<SupportedFramework>net461;netcoreapp2.0;uap10.0.16299;$(AllXamarinFrameworks)</SupportedFramework>
</ProjectReference>
<ProjectReference Include="..\src\System.Net.Http.Json.csproj" />
</ItemGroup>
<Import Project="$([MSBuild]::GetPathOfFileAbove(Directory.Build.targets))" />
</Project>

View file

@ -1,8 +1,13 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFrameworks>netstandard2.0;$(NetCoreAppCurrent)</TargetFrameworks>
<TargetFrameworks>netstandard2.0;$(NetCoreAppCurrent);net461;$(NetFrameworkCurrent)</TargetFrameworks>
<ExcludeCurrentFullFrameworkFromPackage>true</ExcludeCurrentFullFrameworkFromPackage>
<Nullable>enable</Nullable>
</PropertyGroup>
<PropertyGroup>
<!-- Ensure Assemblies are first resolved via targeting pack when targeting net461 -->
<AssemblySearchPaths Condition="'$(TargetFramework)' == 'net461'">$(NuGetPackageRoot)\microsoft.targetingpack.netframework.v4.6.1\1.0.1\lib\net461\;$(AssemblySearchPaths)</AssemblySearchPaths>
</PropertyGroup>
<ItemGroup>
<Compile Include="System\Net\Http\Json\HttpClientJsonExtensions.Get.cs" />
<Compile Include="System\Net\Http\Json\HttpClientJsonExtensions.Post.cs" />
@ -17,7 +22,7 @@
<Reference Include="System.Net.Primitives" />
<Reference Include="System.Runtime" />
</ItemGroup>
<ItemGroup Condition="'$(TargetFramework)' == 'netstandard2.0'">
<ItemGroup Condition="'$(TargetFramework)' == 'netstandard2.0' OR $(TargetFramework.StartsWith('net4'))">
<Compile Include="System\ArraySegmentExtensions.netstandard.cs" />
<Compile Include="System\Net\Http\Json\TranscodingReadStream.cs" />
<Compile Include="System\Net\Http\Json\TranscodingWriteStream.cs" />
@ -28,4 +33,9 @@
<Reference Include="System.Text.Json" />
<Reference Include="System.Threading.Tasks.Extensions" />
</ItemGroup>
<ItemGroup Condition="$(TargetFramework.StartsWith('net4'))">
<Reference Include="mscorlib" />
<Reference Include="System" />
<Reference Include="System.Net.Http" />
</ItemGroup>
</Project>

View file

@ -1,9 +1,19 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFrameworks>netstandard2.0</TargetFrameworks>
<TargetFrameworks>netstandard2.0;net461;$(NetFrameworkCurrent)</TargetFrameworks>
<ExcludeCurrentFullFrameworkFromPackage>true</ExcludeCurrentFullFrameworkFromPackage>
<Nullable>enable</Nullable>
</PropertyGroup>
<PropertyGroup>
<!-- Ensure Assemblies are first resolved via targeting pack when targeting net461 -->
<AssemblySearchPaths Condition="'$(TargetFramework)' == 'net461'">$(NuGetPackageRoot)\microsoft.targetingpack.netframework.v4.6.1\1.0.1\lib\net461\;$(AssemblySearchPaths)</AssemblySearchPaths>
</PropertyGroup>
<ItemGroup>
<Compile Include="System.Net.Http.WinHttpHandler.cs" />
</ItemGroup>
<ItemGroup Condition="$(TargetFramework.StartsWith('net4'))">
<Reference Include="mscorlib" />
<Reference Include="System" />
<Reference Include="System.Net.Http" />
</ItemGroup>
</Project>

View file

@ -11,6 +11,8 @@
<!-- DesignTimeBuild requires all the TargetFramework Derived Properties to not be present in the first property group. -->
<PropertyGroup>
<GeneratePlatformNotSupportedAssemblyMessage Condition="$(TargetFramework.StartsWith('netstandard')) and '$(TargetsWindows)' != 'true'">SR.PlatformNotSupported_WinHttpHandler</GeneratePlatformNotSupportedAssemblyMessage>
<!-- Ensure Assemblies are first resolved via targeting pack when targeting net461 -->
<AssemblySearchPaths Condition="'$(TargetFramework)' == 'net461'">$(NuGetPackageRoot)\microsoft.targetingpack.netframework.v4.6.1\1.0.1\lib\net461\;$(AssemblySearchPaths)</AssemblySearchPaths>
</PropertyGroup>
<ItemGroup Condition="'$(TargetsWindows)' == 'true'" >
<Compile Include="$(CommonPath)\Interop\Windows\Interop.Libraries.cs"
@ -93,5 +95,6 @@
<Reference Include="mscorlib" />
<Reference Include="System" />
<Reference Include="System.Net.Http" />
<Reference Include="netstandard" />
</ItemGroup>
</Project>

View file

@ -1,10 +1,9 @@
<Project DefaultTargets="Build">
<Import Project="$([MSBuild]::GetPathOfFileAbove(Directory.Build.props))" />
<ItemGroup>
<ProjectReference Include="..\ref\System.Net.WebSockets.WebSocketProtocol.csproj">
<ProjectReference Include="..\src\System.Net.WebSockets.WebSocketProtocol.csproj">
<SupportedFramework>uap10.0.16299;net461;netcoreapp2.0;$(AllXamarinFrameworks)</SupportedFramework>
</ProjectReference>
<ProjectReference Include="..\src\System.Net.WebSockets.WebSocketProtocol.csproj" />
</ItemGroup>
<Import Project="$([MSBuild]::GetPathOfFileAbove(Directory.Build.targets))" />
</Project>

View file

@ -2,7 +2,8 @@
<PropertyGroup>
<AssemblyName>System.Net.WebSockets.WebSocketProtocol</AssemblyName>
<AllowUnsafeBlocks>True</AllowUnsafeBlocks>
<TargetFrameworks>$(NetCoreAppCurrent);netstandard2.0;netcoreapp2.1</TargetFrameworks>
<TargetFrameworks>$(NetCoreAppCurrent);netstandard2.0;netcoreapp2.1;net461;$(NetFrameworkCurrent)</TargetFrameworks>
<ExcludeCurrentFullFrameworkFromPackage>true</ExcludeCurrentFullFrameworkFromPackage>
<ExcludeCurrentNetCoreAppFromPackage>true</ExcludeCurrentNetCoreAppFromPackage>
<Nullable>enable</Nullable>
</PropertyGroup>
@ -18,7 +19,7 @@
<ItemGroup Condition="'$(TargetFramework)' != '$(NetCoreAppCurrent)'">
<Compile Include="System\Numerics\BitOperations.cs" />
</ItemGroup>
<ItemGroup Condition="'$(TargetFramework)' == 'netstandard2.0'">
<ItemGroup Condition="'$(TargetFramework)' == 'netstandard2.0' Or $(TargetFramework.StartsWith('net4'))">
<Compile Include="System\Net\WebSockets\ManagedWebSocketExtensions.netstandard.cs" />
<Reference Include="System.Runtime.CompilerServices.Unsafe" />
</ItemGroup>
@ -39,4 +40,8 @@
<Reference Include="System.Threading.Tasks.Extensions" />
<Reference Include="System.Threading.Timer" />
</ItemGroup>
<ItemGroup Condition="$(TargetFramework.StartsWith('net4'))">
<Reference Include="mscorlib" />
<Reference Include="System" />
</ItemGroup>
</Project>

View file

@ -1,7 +1,8 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
<TargetFrameworks>netstandard2.0;netstandard1.1</TargetFrameworks>
<TargetFrameworks>netstandard2.0;netstandard1.1;net461;$(NetFrameworkCurrent)</TargetFrameworks>
<ExcludeCurrentFullFrameworkFromPackage>true</ExcludeCurrentFullFrameworkFromPackage>
<Nullable>enable</Nullable>
</PropertyGroup>
<!-- DesignTimeBuild requires all the TargetFramework Derived Properties to not be present in the first property group. -->
@ -27,4 +28,9 @@
<Reference Include="System.Runtime.Extensions" />
<Reference Include="System.Runtime.InteropServices" />
</ItemGroup>
<ItemGroup Condition="$(TargetFramework.StartsWith('net4'))">
<Reference Include="mscorlib" />
<Reference Include="System" />
<Reference Include="System.Core" />
</ItemGroup>
</Project>

View file

@ -36,7 +36,7 @@ namespace System.IO
Initialize(ptr, len, len, FileAccess.Read);
}
#if !NETSTANDARD2_0
#if (!NETSTANDARD2_0 && !NETFRAMEWORK)
public override int Read(Span<byte> buffer) => ReadCore(buffer);
public override void Write(ReadOnlySpan<byte> buffer) => WriteCore(buffer);

View file

@ -139,7 +139,7 @@ namespace System
private string ToStringFromEnd()
{
#if !NETSTANDARD2_0
#if (!NETSTANDARD2_0 && !NETFRAMEWORK)
Span<char> span = stackalloc char[11]; // 1 for ^ and 10 for longest possible uint value
bool formatted = ((uint)Value).TryFormat(span.Slice(1), out int charsWritten);
Debug.Assert(formatted);

View file

@ -4,7 +4,7 @@
using System.Diagnostics;
using System.Runtime.CompilerServices;
#if NETSTANDARD2_0
#if NETSTANDARD2_0 || NETFRAMEWORK
using System.Numerics.Hashing;
#endif
@ -50,7 +50,7 @@ namespace System
/// <summary>Returns the hash code for this instance.</summary>
public override int GetHashCode()
{
#if !NETSTANDARD2_0
#if (!NETSTANDARD2_0 && !NETFRAMEWORK)
return HashCode.Combine(Start.GetHashCode(), End.GetHashCode());
#else
return HashHelpers.Combine(Start.GetHashCode(), End.GetHashCode());
@ -60,7 +60,7 @@ namespace System
/// <summary>Converts the value of the current Range object to its equivalent string representation.</summary>
public override string ToString()
{
#if !NETSTANDARD2_0
#if (!NETSTANDARD2_0 && !NETFRAMEWORK)
Span<char> span = stackalloc char[2 + (2 * 11)]; // 2 for "..", then for each index 1 for '^' and 10 for longest possible uint
int pos = 0;

View file

@ -209,7 +209,11 @@ namespace System.Resources
Reader = _defaultReader;
}
#else
private IResourceReader Reader => _defaultReader!;
private
#if NETFRAMEWORK
new
#endif
IResourceReader Reader => _defaultReader!;
internal RuntimeResourceSet(IResourceReader reader) :
// explicitly do not call IResourceReader constructor since it caches all resources

View file

@ -1169,7 +1169,7 @@ namespace System.Text
private static UnicodeCategory GetUnicodeCategoryNonAscii(Rune value)
{
Debug.Assert(!value.IsAscii, "Shouldn't use this non-optimized code path for ASCII characters.");
#if !NETSTANDARD2_0
#if (!NETSTANDARD2_0 && !NETFRAMEWORK)
return CharUnicodeInfo.GetUnicodeCategory(value.Value);
#else
if (value.IsBmp)

View file

@ -24,7 +24,7 @@ namespace System.Text.Unicode
/// <summary>
/// The UTF-8 representation of <see cref="UnicodeUtility.ReplacementChar"/>.
/// </summary>
#if !NETSTANDARD2_0
#if (!NETSTANDARD2_0 && !NETFRAMEWORK)
private static ReadOnlySpan<byte> ReplacementCharSequence => new byte[] { 0xEF, 0xBF, 0xBD };
#else
private static readonly byte[] ReplacementCharSequence = new byte[] { 0xEF, 0xBF, 0xBD };
@ -89,7 +89,7 @@ namespace System.Text.Unicode
// (The faster implementation is in the dev/utf8string_bak branch currently.)
MemoryStream memStream = new MemoryStream();
#if !NETSTANDARD2_0
#if (!NETSTANDARD2_0 && !NETFRAMEWORK)
memStream.Write(valueAsBytes.Slice(0, idxOfFirstInvalidData));
valueAsBytes = valueAsBytes.Slice(idxOfFirstInvalidData);

View file

@ -67,7 +67,7 @@ namespace System.Text
{
// TODO_UTF8STRING: Optimize me to avoid allocations.
#if !NETSTANDARD2_0
#if (!NETSTANDARD2_0 && !NETFRAMEWORK)
return this.ToString().Contains(value.ToString(), comparison);
#else
return this.ToString().IndexOf(value.ToString(), comparison) >= 0;
@ -91,7 +91,7 @@ namespace System.Text
{
// TODO_UTF8STRING: Optimize me to avoid allocations.
#if !NETSTANDARD2_0
#if (!NETSTANDARD2_0 && !NETFRAMEWORK)
return this.ToString().Contains(value.ToString(), comparison);
#else
return this.ToString().IndexOf(value.ToString(), comparison) >= 0;

View file

@ -230,7 +230,7 @@ namespace System.Text
// TODO_UTF8STRING: Since we know the underlying data is immutable, well-formed UTF-8,
// we can perform transcoding using an optimized code path that skips all safety checks.
#if !NETSTANDARD2_0
#if (!NETSTANDARD2_0 && !NETFRAMEWORK)
return Encoding.UTF8.GetString(Bytes);
#else
if (IsEmpty)
@ -273,7 +273,7 @@ namespace System.Text
int utf16CharCount = Length + utf16CodeUnitCountAdjustment;
Debug.Assert(utf16CharCount <= Length && utf16CharCount >= 0);
#if !NETSTANDARD2_0
#if (!NETSTANDARD2_0 && !NETFRAMEWORK)
// TODO_UTF8STRING: Can we call string.FastAllocate directly?
return string.Create(utf16CharCount, (pbData: (IntPtr)pData, cbData: Length), (chars, state) =>
{

View file

@ -189,7 +189,7 @@ namespace System
{
// TODO_UTF8STRING: Optimize me to avoid allocations.
#if !NETSTANDARD2_0
#if (!NETSTANDARD2_0 && !NETFRAMEWORK)
return ToString().Contains(value.ToString(), comparison);
#else
return ToString().IndexOf(value.ToString(), comparison) >= 0;
@ -223,7 +223,7 @@ namespace System
// TODO_UTF8STRING: Optimize me to avoid allocations.
#if !NETSTANDARD2_0
#if (!NETSTANDARD2_0 && !NETFRAMEWORK)
return ToString().Contains(value.ToString(), comparison);
#else
return ToString().IndexOf(value.ToString(), comparison) >= 0;

View file

@ -352,7 +352,7 @@ namespace System
}
#endif // !SYSTEM_PRIVATE_CORELIB
#if !NETSTANDARD2_0
#if (!NETSTANDARD2_0 && !NETFRAMEWORK)
/// <summary>
/// Creates a new <see cref="Utf8String"/> instance, allowing the provided delegate to populate the
/// instance data of the returned object.

View file

@ -259,7 +259,7 @@ namespace System
{
// TODO_UTF8STRING: Optimize the call below, potentially by avoiding the two-pass.
#if !NETSTANDARD2_0
#if (!NETSTANDARD2_0 && !NETFRAMEWORK)
return Encoding.UTF8.GetString(this.AsBytesSkipNullCheck());
#else
if (Length == 0)

View file

@ -3,7 +3,8 @@
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
<DefaultLanguage>en-US</DefaultLanguage>
<CLSCompliant>false</CLSCompliant>
<TargetFrameworks>$(NetCoreAppCurrent);netstandard1.1;netstandard2.0</TargetFrameworks>
<TargetFrameworks>$(NetCoreAppCurrent);netstandard1.1;netstandard2.0;net461;$(NetFrameworkCurrent)</TargetFrameworks>
<ExcludeCurrentFullFrameworkFromPackage>true</ExcludeCurrentFullFrameworkFromPackage>
<ExcludeCurrentNetCoreAppFromPackage>true</ExcludeCurrentNetCoreAppFromPackage>
<Nullable>enable</Nullable>
</PropertyGroup>
@ -98,14 +99,14 @@
<Compile Include="System\Reflection\Internal\Utilities\BitArithmetic.cs" />
<Compile Include="System\Reflection\Internal\Utilities\StringUtils.cs" />
<Compile Include="System\Reflection\Internal\Utilities\EmptyArray.cs" />
<Compile Include="System\Reflection\Internal\Utilities\EncodingHelper.cs" Condition="$(TargetFramework.StartsWith('netstandard'))" />
<Compile Include="System\Reflection\Internal\Utilities\EncodingHelper.cs" Condition="$(TargetFramework.StartsWith('netstandard')) Or $(TargetFramework.StartsWith('net4'))" />
<Compile Include="System\Reflection\Internal\Utilities\EncodingHelper.netcoreapp.cs" Condition="'$(TargetFramework)' == '$(NetCoreAppCurrent)'" />
<Compile Include="System\Reflection\Internal\Utilities\FileStreamReadLightUp.cs" Condition="'$(TargetFramework)' != 'netstandard1.1'" />
<Compile Include="System\Reflection\Internal\Utilities\FileStreamReadLightUp.netstandard1.1.cs" Condition="'$(TargetFramework)' == 'netstandard1.1'" />
<Compile Include="System\Reflection\Internal\Utilities\Hash.cs" />
<Compile Include="System\Reflection\Internal\Utilities\ImmutableByteArrayInterop.cs" />
<Compile Include="System\Reflection\Internal\Utilities\ImmutableMemoryStream.cs" />
<Compile Include="System\Reflection\Internal\Utilities\LightUpHelper.cs" Condition="$(TargetFramework.StartsWith('netstandard'))" />
<Compile Include="System\Reflection\Internal\Utilities\LightUpHelper.cs" Condition="$(TargetFramework.StartsWith('netstandard')) Or $(TargetFramework.StartsWith('net4'))" />
<Compile Include="System\Reflection\Internal\Utilities\MemoryBlock.cs" />
<Compile Include="System\Reflection\Internal\Utilities\MemoryMapLightUp.cs" Condition="'$(TargetFramework)' != 'netstandard1.1'" />
<Compile Include="System\Reflection\Internal\Utilities\MemoryMapLightUp.netstandard1.1.cs" Condition="'$(TargetFramework)' == 'netstandard1.1'" />
@ -266,4 +267,9 @@
<Reference Include="System.IO.MemoryMappedFiles" Condition="'$(TargetFramework)' != 'netstandard1.1'" />
<Reference Include="System.Buffers" Condition="'$(TargetFramework)' == '$(NetCoreAppCurrent)'" />
</ItemGroup>
<ItemGroup Condition="$(TargetFramework.StartsWith('net4'))">
<Reference Include="mscorlib" />
<Reference Include="System" />
<Reference Include="System.Core" />
</ItemGroup>
</Project>

View file

@ -1,10 +1,9 @@
<Project DefaultTargets="Build">
<Import Project="$([MSBuild]::GetPathOfFileAbove(Directory.Build.props))" />
<ItemGroup>
<ProjectReference Include="..\ref\System.Reflection.MetadataLoadContext.csproj">
<ProjectReference Include="..\src\System.Reflection.MetadataLoadContext.csproj">
<SupportedFramework>net461;netcoreapp2.0;uap10.0.16299;$(AllXamarinFrameworks)</SupportedFramework>
</ProjectReference>
<ProjectReference Include="..\src\System.Reflection.MetadataLoadContext.csproj" />
</ItemGroup>
<Import Project="$([MSBuild]::GetPathOfFileAbove(Directory.Build.targets))" />
</Project>

View file

@ -3,7 +3,8 @@
<RootNamespace>System.Reflection</RootNamespace>
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
<!-- Only the netcoreapp version supports the new reflection apis (IsSZArray, etc.) -->
<TargetFrameworks>$(NetCoreAppCurrent);netcoreapp3.0;netstandard2.0</TargetFrameworks>
<TargetFrameworks>$(NetCoreAppCurrent);netcoreapp3.0;netstandard2.0;net461;$(NetFrameworkCurrent)</TargetFrameworks>
<ExcludeCurrentFullFrameworkFromPackage>true</ExcludeCurrentFullFrameworkFromPackage>
<ExcludeCurrentNetCoreAppFromPackage>true</ExcludeCurrentNetCoreAppFromPackage>
<Nullable>enable</Nullable>
</PropertyGroup>
@ -77,8 +78,8 @@
<Compile Include="System\Reflection\TypeLoading\General\Ecma\MetadataTable.cs" />
<Compile Include="System\Reflection\TypeLoading\General\HashHelpers.cs" />
<Compile Include="System\Reflection\TypeLoading\General\Helpers.cs" />
<Compile Include="System\Reflection\TypeLoading\General\TypeExtensions.netcoreapp.cs" Condition="'$(TargetFramework)' != 'netstandard2.0'" />
<Compile Include="System\Reflection\TypeLoading\General\TypeExtensions.netstandard.cs" Condition="'$(TargetFramework)' == 'netstandard2.0'" />
<Compile Include="System\Reflection\TypeLoading\General\TypeExtensions.netcoreapp.cs" Condition="'$(TargetFramework)' != 'netstandard2.0' And !$(TargetFramework.StartsWith('net4'))" />
<Compile Include="System\Reflection\TypeLoading\General\TypeExtensions.netstandard.cs" Condition="'$(TargetFramework)' == 'netstandard2.0' Or $(TargetFramework.StartsWith('net4'))" />
<Compile Include="System\Reflection\TypeLoading\General\MethodSig.cs" />
<Compile Include="System\Reflection\TypeLoading\General\RoAssemblyName.cs" />
<Compile Include="System\Reflection\TypeLoading\General\Sentinels.cs" />
@ -155,4 +156,9 @@
<Reference Include="System.Runtime.InteropServices" />
<Reference Include="System.Threading" />
</ItemGroup>
<ItemGroup Condition="$(TargetFramework.StartsWith('net4'))">
<Reference Include="mscorlib" />
<Reference Include="System" />
<Reference Include="System.Core" />
</ItemGroup>
</Project>

View file

@ -1,10 +1,9 @@
<Project DefaultTargets="Build">
<Import Project="$([MSBuild]::GetPathOfFileAbove(Directory.Build.props))" />
<ItemGroup>
<ProjectReference Include="..\ref\System.Resources.Extensions.csproj">
<ProjectReference Include="..\src\System.Resources.Extensions.csproj">
<SupportedFramework>uap10.0.16299;net461;netcoreapp2.0;$(AllXamarinFrameworks)</SupportedFramework>
</ProjectReference>
<ProjectReference Include="..\src\System.Resources.Extensions.csproj" />
</ItemGroup>
<Import Project="$([MSBuild]::GetPathOfFileAbove(Directory.Build.targets))" />
</Project>

View file

@ -1,7 +1,8 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
<TargetFrameworks>netstandard2.0</TargetFrameworks>
<TargetFrameworks>netstandard2.0;net461;$(NetFrameworkCurrent)</TargetFrameworks>
<ExcludeCurrentFullFrameworkFromPackage>true</ExcludeCurrentFullFrameworkFromPackage>
<DefineConstants>$(DefineConstants);RESOURCES_EXTENSIONS</DefineConstants>
<Nullable>annotations</Nullable>
</PropertyGroup>
@ -32,4 +33,8 @@
<ItemGroup>
<Reference Include="System.Memory" />
</ItemGroup>
<ItemGroup Condition="$(TargetFramework.StartsWith('net4'))">
<Reference Include="mscorlib" />
<Reference Include="System" />
</ItemGroup>
</Project>

View file

@ -3,10 +3,14 @@
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
<CLSCompliant>false</CLSCompliant>
<Nullable>enable</Nullable>
<TargetFrameworks>netstandard2.0;netstandard1.0;netstandard2.1</TargetFrameworks>
<TargetFrameworks>netstandard2.0;netstandard1.0;netstandard2.1;net461;$(NetFrameworkCurrent)</TargetFrameworks>
<ExcludeCurrentFullFrameworkFromPackage>true</ExcludeCurrentFullFrameworkFromPackage>
</PropertyGroup>
<ItemGroup>
<Compile Include="System.Runtime.CompilerServices.Unsafe.cs" />
<Reference Include="System.Runtime" />
</ItemGroup>
<ItemGroup Condition="$(TargetFramework.StartsWith('net4'))">
<Reference Include="mscorlib" />
</ItemGroup>
</Project>

View file

@ -19,29 +19,9 @@ namespace System.Security.Cryptography
protected override void Dispose(bool disposing) { }
public System.Security.Cryptography.SafeEvpPKeyHandle DuplicateKeyHandle() { throw null; }
public override System.Security.Cryptography.DSAParameters ExportParameters(bool includePrivateParameters) { throw null; }
protected override byte[] HashData(byte[] data, int offset, int count, System.Security.Cryptography.HashAlgorithmName hashAlgorithm) { throw null; }
protected override byte[] HashData(System.IO.Stream data, System.Security.Cryptography.HashAlgorithmName hashAlgorithm) { throw null; }
public override void ImportParameters(System.Security.Cryptography.DSAParameters parameters) { }
public override bool VerifySignature(byte[] rgbHash, byte[] rgbSignature) { throw null; }
}
public sealed partial class ECDiffieHellmanOpenSsl : System.Security.Cryptography.ECDiffieHellman
{
public ECDiffieHellmanOpenSsl() { }
public ECDiffieHellmanOpenSsl(int keySize) { }
public ECDiffieHellmanOpenSsl(System.IntPtr handle) { }
public ECDiffieHellmanOpenSsl(System.Security.Cryptography.ECCurve curve) { }
public ECDiffieHellmanOpenSsl(System.Security.Cryptography.SafeEvpPKeyHandle pkeyHandle) { }
public override System.Security.Cryptography.ECDiffieHellmanPublicKey PublicKey { get { throw null; } }
public override byte[] DeriveKeyFromHash(System.Security.Cryptography.ECDiffieHellmanPublicKey otherPartyPublicKey, System.Security.Cryptography.HashAlgorithmName hashAlgorithm, byte[]? secretPrepend, byte[]? secretAppend) { throw null; }
public override byte[] DeriveKeyFromHmac(System.Security.Cryptography.ECDiffieHellmanPublicKey otherPartyPublicKey, System.Security.Cryptography.HashAlgorithmName hashAlgorithm, byte[]? hmacKey, byte[]? secretPrepend, byte[]? secretAppend) { throw null; }
public override byte[] DeriveKeyMaterial(System.Security.Cryptography.ECDiffieHellmanPublicKey otherPartyPublicKey) { throw null; }
public override byte[] DeriveKeyTls(System.Security.Cryptography.ECDiffieHellmanPublicKey otherPartyPublicKey, byte[] prfLabel, byte[] prfSeed) { throw null; }
public System.Security.Cryptography.SafeEvpPKeyHandle DuplicateKeyHandle() { throw null; }
public override System.Security.Cryptography.ECParameters ExportExplicitParameters(bool includePrivateParameters) { throw null; }
public override System.Security.Cryptography.ECParameters ExportParameters(bool includePrivateParameters) { throw null; }
public override void GenerateKey(System.Security.Cryptography.ECCurve curve) { }
public override void ImportParameters(System.Security.Cryptography.ECParameters parameters) { }
}
public sealed partial class ECDsaOpenSsl : System.Security.Cryptography.ECDsa
{
public ECDsaOpenSsl() { }
@ -86,7 +66,6 @@ namespace System.Security.Cryptography
{
public SafeEvpPKeyHandle(System.IntPtr handle, bool ownsHandle) : base (default(System.IntPtr), default(bool)) { }
public override bool IsInvalid { get { throw null; } }
public static long OpenSslVersion { get { throw null; } }
public System.Security.Cryptography.SafeEvpPKeyHandle DuplicateHandle() { throw null; }
protected override bool ReleaseHandle() { throw null; }
}

View file

@ -1,11 +1,20 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFrameworks>$(NetCoreAppCurrent);netcoreapp3.0</TargetFrameworks>
<TargetFrameworks>$(NetCoreAppCurrent);netcoreapp3.0;net47;$(NetFrameworkCurrent)</TargetFrameworks>
<ExcludeCurrentFullFrameworkFromPackage>true</ExcludeCurrentFullFrameworkFromPackage>
<ExcludeCurrentNetCoreAppFromPackage>true</ExcludeCurrentNetCoreAppFromPackage>
<Nullable>enable</Nullable>
</PropertyGroup>
<PropertyGroup>
<AssemblyVersion Condition="$(TargetFramework.StartsWith('net4'))">4.1.0.0</AssemblyVersion>
<!-- We need to build against net47 because that is where ECParameters got added inbox. We ship as net461 in order to not require
the facades when the package is restored. -->
<PackageTargetFramework Condition="'$(TargetFramework)' == 'net47'">net461</PackageTargetFramework>
</PropertyGroup>
<ItemGroup>
<SuppressPackageTargetFrameworkCompatibility Include="net461" />
<Compile Include="System.Security.Cryptography.OpenSsl.cs" />
<Compile Include="System.Security.Cryptography.OpenSsl.netcoreapp.cs" Condition="'$(TargetFramework)' == 'netcoreapp3.0' OR '$(TargetFramework)' == '$(NetCoreAppCurrent)'" />
</ItemGroup>
<ItemGroup Condition="'$(TargetFramework)' == '$(NetCoreAppCurrent)'">
<ProjectReference Include="..\..\System.Runtime\ref\System.Runtime.csproj" />
@ -19,4 +28,8 @@
<Reference Include="System.Security.Cryptography.Algorithms" />
<Reference Include="System.Security.Cryptography.Primitives" />
</ItemGroup>
<ItemGroup Condition="$(TargetFramework.StartsWith('net4'))">
<Reference Include="mscorlib" />
<Reference Include="System.Core" />
</ItemGroup>
</Project>

View file

@ -0,0 +1,36 @@
// Licensed to the .NET Foundation under one or more agreements.
// The .NET Foundation licenses this file to you under the MIT license.
// ------------------------------------------------------------------------------
// Changes to this file must follow the https://aka.ms/api-review process.
// ------------------------------------------------------------------------------
namespace System.Security.Cryptography
{
public sealed partial class DSAOpenSsl : System.Security.Cryptography.DSA
{
protected override byte[] HashData(byte[] data, int offset, int count, System.Security.Cryptography.HashAlgorithmName hashAlgorithm) { throw null; }
protected override byte[] HashData(System.IO.Stream data, System.Security.Cryptography.HashAlgorithmName hashAlgorithm) { throw null; }
}
public sealed partial class ECDiffieHellmanOpenSsl : System.Security.Cryptography.ECDiffieHellman
{
public ECDiffieHellmanOpenSsl() { }
public ECDiffieHellmanOpenSsl(int keySize) { }
public ECDiffieHellmanOpenSsl(System.IntPtr handle) { }
public ECDiffieHellmanOpenSsl(System.Security.Cryptography.ECCurve curve) { }
public ECDiffieHellmanOpenSsl(System.Security.Cryptography.SafeEvpPKeyHandle pkeyHandle) { }
public override System.Security.Cryptography.ECDiffieHellmanPublicKey PublicKey { get { throw null; } }
public override byte[] DeriveKeyFromHash(System.Security.Cryptography.ECDiffieHellmanPublicKey otherPartyPublicKey, System.Security.Cryptography.HashAlgorithmName hashAlgorithm, byte[]? secretPrepend, byte[]? secretAppend) { throw null; }
public override byte[] DeriveKeyFromHmac(System.Security.Cryptography.ECDiffieHellmanPublicKey otherPartyPublicKey, System.Security.Cryptography.HashAlgorithmName hashAlgorithm, byte[]? hmacKey, byte[]? secretPrepend, byte[]? secretAppend) { throw null; }
public override byte[] DeriveKeyMaterial(System.Security.Cryptography.ECDiffieHellmanPublicKey otherPartyPublicKey) { throw null; }
public override byte[] DeriveKeyTls(System.Security.Cryptography.ECDiffieHellmanPublicKey otherPartyPublicKey, byte[] prfLabel, byte[] prfSeed) { throw null; }
public System.Security.Cryptography.SafeEvpPKeyHandle DuplicateKeyHandle() { throw null; }
public override System.Security.Cryptography.ECParameters ExportExplicitParameters(bool includePrivateParameters) { throw null; }
public override System.Security.Cryptography.ECParameters ExportParameters(bool includePrivateParameters) { throw null; }
public override void GenerateKey(System.Security.Cryptography.ECCurve curve) { }
public override void ImportParameters(System.Security.Cryptography.ECParameters parameters) { }
}
public sealed partial class SafeEvpPKeyHandle : System.Runtime.InteropServices.SafeHandle
{
public static long OpenSslVersion { get { throw null; } }
}
}

View file

@ -1,13 +1,17 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
<TargetFrameworks>$(NetCoreAppCurrent)-Unix;$(NetCoreAppCurrent)-Browser;$(NetCoreAppCurrent);netcoreapp3.0-Unix;netcoreapp3.0;netstandard2.0</TargetFrameworks>
<TargetFrameworks>$(NetCoreAppCurrent)-Unix;$(NetCoreAppCurrent)-Browser;$(NetCoreAppCurrent);netcoreapp3.0-Unix;netcoreapp3.0;netstandard2.0;net47;$(NetFrameworkCurrent)</TargetFrameworks>
<ExcludeCurrentFullFrameworkFromPackage>true</ExcludeCurrentFullFrameworkFromPackage>
<ExcludeCurrentNetCoreAppFromPackage>true</ExcludeCurrentNetCoreAppFromPackage>
<Nullable>enable</Nullable>
</PropertyGroup>
<!-- DesignTimeBuild requires all the TargetFramework Derived Properties to not be present in the first property group. -->
<PropertyGroup>
<AssemblyVersion Condition="'$(TargetFramework)' == 'netstandard2.0'">4.1.0.0</AssemblyVersion>
<AssemblyVersion Condition="'$(TargetFramework)' == 'netstandard2.0' OR $(TargetFramework.StartsWith('net4'))">4.1.0.0</AssemblyVersion>
<!-- We need to build against net47 because that is where ECParameters got added inbox. We ship as net461 in order to not require
the facades when the package is restored. -->
<PackageTargetFramework Condition="$(TargetFramework.StartsWith('net4'))">net461</PackageTargetFramework>
</PropertyGroup>
<PropertyGroup Condition="'$(TargetsUnix)' != 'true' or '$(TargetsBrowser)' == 'true'">
<GeneratePlatformNotSupportedAssemblyMessage>SR.PlatformNotSupported_CryptographyOpenSSL</GeneratePlatformNotSupportedAssemblyMessage>
@ -104,7 +108,7 @@
<Compile Include="$(CommonPath)System\Security\Cryptography\RsaPaddingProcessor.cs"
Link="Common\System\Security\Cryptography\RsaPaddingProcessor.cs" />
</ItemGroup>
<ItemGroup Condition="'$(TargetFramework)' != 'netstandard2.0'">
<ItemGroup Condition="'$(TargetFramework)' != 'netstandard2.0' AND !$(TargetFramework.StartsWith('net4'))">
<Reference Include="System.Buffers" />
<Reference Include="System.Collections" />
<Reference Include="System.Collections.Concurrent" />
@ -123,4 +127,9 @@
<Reference Include="System.Text.Encoding.Extensions" />
<Reference Include="System.Threading" />
</ItemGroup>
<ItemGroup Condition="$(TargetFramework.StartsWith('net4'))">
<SuppressPackageTargetFrameworkCompatibility Include="net461" />
<Reference Include="mscorlib" />
<Reference Include="System.Core" />
</ItemGroup>
</Project>

View file

@ -1,7 +1,8 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<Nullable>enable</Nullable>
<TargetFrameworks>$(NetCoreAppCurrent);netstandard2.0</TargetFrameworks>
<TargetFrameworks>$(NetCoreAppCurrent);netstandard2.0;net461;$(NetFrameworkCurrent)</TargetFrameworks>
<ExcludeCurrentFullFrameworkFromPackage>true</ExcludeCurrentFullFrameworkFromPackage>
</PropertyGroup>
<ItemGroup>
<Compile Include="System.Text.Encoding.CodePages.cs" />
@ -10,4 +11,7 @@
<ItemGroup Condition="'$(TargetFramework)' == '$(NetCoreAppCurrent)'">
<ProjectReference Include="../../System.Runtime/ref/System.Runtime.csproj" />
</ItemGroup>
<ItemGroup Condition="$(TargetFramework.StartsWith('net4'))">
<Reference Include="mscorlib" />
</ItemGroup>
</Project>

View file

@ -2,14 +2,10 @@
<PropertyGroup>
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
<Nullable>enable</Nullable>
<TargetFrameworks>$(NetCoreAppCurrent);$(NetCoreAppCurrent)-Windows_NT;netstandard2.0;netcoreapp2.0-Windows_NT;netstandard2.0-Windows_NT</TargetFrameworks>
<TargetFrameworks>$(NetCoreAppCurrent);$(NetCoreAppCurrent)-Windows_NT;netstandard2.0;netcoreapp2.0-Windows_NT;netstandard2.0-Windows_NT;net461-Windows_NT;$(NetFrameworkCurrent)-Windows_NT</TargetFrameworks>
<ExcludeCurrentFullFrameworkFromPackage>true</ExcludeCurrentFullFrameworkFromPackage>
<ExcludeCurrentNetCoreAppFromPackage>true</ExcludeCurrentNetCoreAppFromPackage>
</PropertyGroup>
<!-- DesignTimeBuild requires all the TargetFramework Derived Properties to not be present in the first property group. -->
<PropertyGroup>
<!-- copy the Windows-specific implementation to net461 folder so that restore without a RID works -->
<PackageTargetFramework Condition="$(TargetFramework.StartsWith('netstandard')) and '$(TargetsWindows)' == 'true'">netstandard2.0;net461</PackageTargetFramework>
</PropertyGroup>
<ItemGroup>
<Compile Include="Microsoft\Win32\SafeHandles\SafeAllocHHandle.cs" />
<Compile Include="System\Text\BaseCodePageEncoding.cs" />
@ -73,6 +69,11 @@
<Reference Include="System.Threading" />
<Reference Include="System.Runtime.CompilerServices.Unsafe" />
</ItemGroup>
<ItemGroup Condition="$(TargetFramework.StartsWith('net4'))">
<Reference Include="mscorlib" />
<Reference Include="System.Core" />
<Reference Include="System" />
</ItemGroup>
<!-- Generator for code mapping table, target to invoke is GenerateEncodingSource -->
<PropertyGroup>
<!-- This Task can be re-run with /t:GenerateEncodingSource

View file

@ -1,6 +1,7 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFrameworks>$(NetCoreAppCurrent);netstandard2.0</TargetFrameworks>
<TargetFrameworks>$(NetCoreAppCurrent);netstandard2.0;net461;$(NetFrameworkCurrent)</TargetFrameworks>
<ExcludeCurrentFullFrameworkFromPackage>true</ExcludeCurrentFullFrameworkFromPackage>
<ExcludeCurrentNetCoreAppFromPackage>true</ExcludeCurrentNetCoreAppFromPackage>
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
<!-- Only CLS-compliant members can be abstract -->
@ -15,7 +16,12 @@
<ProjectReference Include="..\..\System.Runtime\ref\System.Runtime.csproj" />
<ProjectReference Include="..\..\System.Runtime.Extensions\ref\System.Runtime.Extensions.csproj" />
</ItemGroup>
<ItemGroup Condition="'$(TargetFramework)' == 'netstandard2.0'">
<ItemGroup Condition="'$(TargetFramework)' == 'netstandard2.0' Or $(TargetFramework.StartsWith('net4'))">
<Reference Include="System.Memory" />
</ItemGroup>
<ItemGroup Condition="$(TargetFramework.StartsWith('net4'))">
<Reference Include="mscorlib" />
<Reference Include="netstandard" />
<Reference Include="System" />
</ItemGroup>
</Project>

View file

@ -1,7 +1,8 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
<TargetFrameworks>$(NetCoreAppCurrent);netcoreapp3.0;netstandard2.1;netstandard2.0</TargetFrameworks>
<TargetFrameworks>$(NetCoreAppCurrent);netcoreapp3.0;netstandard2.1;netstandard2.0;net461;$(NetFrameworkCurrent)</TargetFrameworks>
<ExcludeCurrentFullFrameworkFromPackage>true</ExcludeCurrentFullFrameworkFromPackage>
<ExcludeCurrentNetCoreAppFromPackage>true</ExcludeCurrentNetCoreAppFromPackage>
<Nullable>enable</Nullable>
</PropertyGroup>
@ -39,6 +40,10 @@
<Reference Include="System.Memory" />
<Reference Include="System.Resources.ResourceManager" />
</ItemGroup>
<ItemGroup Condition="$(TargetFramework.StartsWith('net4'))">
<Reference Include="mscorlib" />
<Reference Include="System" />
</ItemGroup>
<ItemGroup Condition="'$(TargetFramework)' == '$(NetCoreAppCurrent)' or '$(TargetFramework)' == 'netcoreapp3.0'">
<Reference Include="System.Diagnostics.Debug" />
<Reference Include="System.Runtime" />

View file

@ -1,6 +1,7 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFrameworks>$(NetCoreAppCurrent);netstandard1.3;netstandard2.0;netstandard2.1;netcoreapp3.0</TargetFrameworks>
<TargetFrameworks>$(NetCoreAppCurrent);netstandard1.3;netstandard2.0;netstandard2.1;netcoreapp3.0;net461;$(NetFrameworkCurrent)</TargetFrameworks>
<ExcludeCurrentFullFrameworkFromPackage>true</ExcludeCurrentFullFrameworkFromPackage>
<ExcludeCurrentNetCoreAppFromPackage>true</ExcludeCurrentNetCoreAppFromPackage>
<Nullable>enable</Nullable>
</PropertyGroup>
@ -8,16 +9,16 @@
<Compile Include="System\VoidResult.cs" />
<Compile Include="System\Collections\Generic\Deque.cs" />
<Compile Include="System\Threading\Channels\AsyncOperation.cs" />
<Compile Include="System\Threading\Channels\AsyncOperation.netcoreapp.cs" Condition="!$(TargetFramework.StartsWith('netstandard'))" />
<Compile Include="System\Threading\Channels\AsyncOperation.netstandard.cs" Condition="$(TargetFramework.StartsWith('netstandard'))" />
<Compile Include="System\Threading\Channels\AsyncOperation.netcoreapp.cs" Condition="!$(TargetFramework.StartsWith('netstandard')) AND !$(TargetFramework.StartsWith('net4'))" />
<Compile Include="System\Threading\Channels\AsyncOperation.netstandard.cs" Condition="$(TargetFramework.StartsWith('netstandard')) OR $(TargetFramework.StartsWith('net4'))" />
<Compile Include="System\Threading\Channels\BoundedChannel.cs" />
<Compile Include="System\Threading\Channels\BoundedChannelFullMode.cs" />
<Compile Include="System\Threading\Channels\Channel.cs" />
<Compile Include="System\Threading\Channels\ChannelClosedException.cs" />
<Compile Include="System\Threading\Channels\ChannelClosedException.netstandard21.cs" Condition="'$(TargetFramework)' != 'netstandard1.3' AND '$(TargetFramework)' != 'netstandard2.0'" />
<Compile Include="System\Threading\Channels\ChannelClosedException.netstandard21.cs" Condition="'$(TargetFramework)' != 'netstandard1.3' AND '$(TargetFramework)' != 'netstandard2.0' AND !$(TargetFramework.StartsWith('net4'))" />
<Compile Include="System\Threading\Channels\ChannelOptions.cs" />
<Compile Include="System\Threading\Channels\ChannelReader.cs" />
<Compile Include="System\Threading\Channels\ChannelReader.netstandard21.cs" Condition="'$(TargetFramework)' != 'netstandard1.3' AND '$(TargetFramework)' != 'netstandard2.0'" />
<Compile Include="System\Threading\Channels\ChannelReader.netstandard21.cs" Condition="'$(TargetFramework)' != 'netstandard1.3' AND '$(TargetFramework)' != 'netstandard2.0' AND !$(TargetFramework.StartsWith('net4'))" />
<Compile Include="System\Threading\Channels\ChannelUtilities.cs" />
<Compile Include="System\Threading\Channels\ChannelWriter.cs" />
<Compile Include="System\Threading\Channels\Channel_1.cs" />
@ -39,8 +40,12 @@
<Reference Include="System.Runtime" />
<Reference Include="System.Runtime.Extensions" />
<Reference Include="System.Threading" />
<Reference Include="System.Threading.ThreadPool" Condition="!$(TargetFramework.StartsWith('netstandard'))" />
<Reference Include="System.Threading.ThreadPool" Condition="!$(TargetFramework.StartsWith('netstandard')) AND !$(TargetFramework.StartsWith('net4'))" />
<Reference Include="System.Threading.Tasks" />
<Reference Include="System.Threading.Tasks.Extensions" />
</ItemGroup>
<ItemGroup Condition="$(TargetFramework.StartsWith('net4'))">
<Reference Include="mscorlib" />
<Reference Include="System" />
</ItemGroup>
</Project>

View file

@ -1,11 +1,12 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFrameworks>netstandard2.0;netstandard1.0;netstandard1.1</TargetFrameworks>
<TargetFrameworks>netstandard2.0;netstandard1.0;netstandard1.1;net461;$(NetFrameworkCurrent)</TargetFrameworks>
<ExcludeCurrentFullFrameworkFromPackage>true</ExcludeCurrentFullFrameworkFromPackage>
<Nullable>enable</Nullable>
</PropertyGroup>
<!-- DesignTimeBuild requires all the TargetFramework Derived Properties to not be present in the first property group. -->
<PropertyGroup>
<DefineConstants Condition="'$(TargetFramework)' == 'netstandard1.1' or '$(TargetFramework)' == 'netstandard2.0'">$(DefineConstants);FEATURE_TRACING</DefineConstants>
<DefineConstants Condition="'$(TargetFramework)' == 'netstandard1.1' or '$(TargetFramework)' == 'netstandard2.0' or $(TargetFramework.StartsWith('net4'))">$(DefineConstants);FEATURE_TRACING</DefineConstants>
<DefineConstants Condition="'$(TargetFramework)' == 'netstandard1.0'">$(DefineConstants);USE_INTERNAL_CONCURRENT_COLLECTIONS</DefineConstants>
<DefineConstants Condition="'$(TargetFramework)' == 'netstandard1.0' or '$(TargetFramework)' == 'netstandard1.1'">$(DefineConstants);USE_INTERNAL_THREADING</DefineConstants>
<PackageTargetFramework Condition="'$(TargetFramework)' == 'netstandard1.1'">netstandard1.1;portable-net45+win8+wpa81</PackageTargetFramework>
@ -78,4 +79,9 @@
<Reference Include="System.Threading" />
<Reference Include="System.Threading.Tasks" />
</ItemGroup>
<ItemGroup Condition="$(TargetFramework.StartsWith('net4'))">
<Reference Include="mscorlib" />
<Reference Include="System.Core" />
<Reference Include="System" />
</ItemGroup>
</Project>

View file

@ -2,10 +2,9 @@
<Project ToolsVersion="14.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="$([MSBuild]::GetPathOfFileAbove(Directory.Build.props))" />
<ItemGroup>
<ProjectReference Include="..\ref\System.Utf8String.Experimental.csproj">
<ProjectReference Include="..\src\System.Utf8String.Experimental.csproj">
<SupportedFramework>net461;netcoreapp2.0;uap10.0.16299;$(AllXamarinFrameworks)</SupportedFramework>
</ProjectReference>
<ProjectReference Include="..\src\System.Utf8String.Experimental.csproj" />
</ItemGroup>
<Import Project="$([MSBuild]::GetPathOfFileAbove(Directory.Build.targets))" />
</Project>

View file

@ -1,7 +1,8 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
<TargetFrameworks>$(NetCoreAppCurrent);netstandard2.0;netstandard2.1;netcoreapp3.0</TargetFrameworks>
<TargetFrameworks>$(NetCoreAppCurrent);netstandard2.0;netstandard2.1;netcoreapp3.0;net461;$(NetFrameworkCurrent)</TargetFrameworks>
<ExcludeCurrentFullFrameworkFromPackage>true</ExcludeCurrentFullFrameworkFromPackage>
<Nullable>enable</Nullable>
<DefineConstants>$(DefineContants);FEATURE_UTF8STRING</DefineConstants>
</PropertyGroup>
@ -10,13 +11,13 @@
<!-- CS3019: CLS attributes on internal types. Some shared source files are internal in this project. -->
<!-- CS0162: Unreachable code detected from Intrinsics IsSupported being 'false'. -->
<NoWarn Condition="'$(TargetFramework)' != '$(NetCoreAppCurrent)'">$(NoWarn);CS3019;CS0162</NoWarn>
<IsPartialFacadeAssembly Condition="'$(TargetFramework)' != 'netstandard2.0'">true</IsPartialFacadeAssembly>
<IsPartialFacadeAssembly Condition="'$(TargetFramework)' != 'netstandard2.0' AND !$(TargetFramework.StartsWith('net4'))">true</IsPartialFacadeAssembly>
</PropertyGroup>
<ItemGroup Condition="'$(IsPrerelease)' != 'false'">
<Compile Include="System\IO\Utf8StringStream.cs" />
<Compile Include="System\Net\Http\Utf8StringContent.cs" />
</ItemGroup>
<ItemGroup Condition="'$(IsPrerelease)' != 'false' AND '$(TargetFramework)' == 'netstandard2.0'">
<ItemGroup Condition="'$(IsPrerelease)' != 'false' AND ('$(TargetFramework)' == 'netstandard2.0' OR $(TargetFramework.StartsWith('net4')))">
<Compile Include="$(CoreLibSharedDir)\System\Index.cs"
Link="System\Index.cs" />
<Compile Include="$(CoreLibSharedDir)\System\Numerics\BitOperations.cs"
@ -112,7 +113,7 @@
<ItemGroup Condition="'$(TargetFramework)' == '$(NetCoreAppCurrent)'">
<Compile Include="System\Net\Http\Utf8StringContent.netcoreapp.cs" />
</ItemGroup>
<ItemGroup Condition="'$(TargetFramework)' == 'netstandard2.0'">
<ItemGroup Condition="'$(TargetFramework)' == 'netstandard2.0' OR $(TargetFramework.StartsWith('net4'))">
<Reference Include="System.Buffers" />
<Reference Include="System.Memory" />
<Reference Include="System.Numerics.Vectors" />
@ -142,4 +143,12 @@
<Reference Include="System.Net.Primitives" />
<ProjectReference Include="..\..\System.Runtime\src\System.Runtime.csproj" />
</ItemGroup>
<ItemGroup Condition="$(TargetFramework.StartsWith('net4'))">
<Reference Include="mscorlib" />
<Reference Include="netstandard" />
<Reference Include="System" />
<Reference Include="System.Net.Http" />
<Reference Include="System.Core" />
<Reference Include="System.ValueTuple" />
</ItemGroup>
</Project>

View file

@ -57,7 +57,7 @@ namespace System.IO
}
public
#if !NETSTANDARD2_0
#if (!NETSTANDARD2_0 && !NETFRAMEWORK)
override
#endif
int Read(Span<byte> buffer)
@ -79,7 +79,7 @@ namespace System.IO
return Task.FromResult(Read(new Span<byte>(buffer, offset, count)));
}
#if !NETSTANDARD2_0
#if (!NETSTANDARD2_0 && !NETFRAMEWORK)
public override ValueTask<int> ReadAsync(Memory<byte> buffer, CancellationToken cancellationToken = default)
{
return new ValueTask<int>(Read(buffer.Span));
@ -127,13 +127,13 @@ namespace System.IO
public override void Write(byte[] buffer, int offset, int count) => throw new NotSupportedException();
#if !NETSTANDARD2_0
#if (!NETSTANDARD2_0 && !NETFRAMEWORK)
public override void Write(ReadOnlySpan<byte> buffer) => throw new NotSupportedException();
#endif
public override Task WriteAsync(byte[] buffer, int offset, int count, CancellationToken cancellationToken) => throw new NotSupportedException();
#if !NETSTANDARD2_0
#if (!NETSTANDARD2_0 && !NETFRAMEWORK)
public override ValueTask WriteAsync(ReadOnlyMemory<byte> buffer, CancellationToken cancellationToken = default) => throw new NotSupportedException();
#endif
public override void WriteByte(byte value) => throw new NotSupportedException();

View file

@ -41,7 +41,7 @@ namespace System.Net.Http
protected override Task<Stream> CreateContentReadStreamAsync() =>
Task.FromResult<Stream>(new Utf8StringStream(_content));
#if NETSTANDARD2_0
#if (NETSTANDARD2_0 || NETFRAMEWORK)
protected override async Task SerializeToStreamAsync(Stream stream, TransportContext? context)
{
ReadOnlyMemory<byte> buffer = _content.AsMemoryBytes();

View file

@ -1567,9 +1567,10 @@
"4.0.0",
"4.3.0",
"4.4.0",
"4.5.0"
"4.5.0",
"4.5.1"
],
"BaselineVersion": "4.5.0",
"BaselineVersion": "4.5.1",
"InboxOn": {
"netcoreapp2.0": "4.0.2.0",
"netcoreapp2.1": "4.0.3.0",
@ -1689,7 +1690,9 @@
"1.3.2",
"1.4.0",
"1.5.0",
"1.6.0"
"1.6.0",
"1.7.0",
"1.7.1"
],
"BaselineVersion": "5.0.0",
"InboxOn": {
@ -3642,9 +3645,10 @@
"4.5.0",
"4.5.1",
"4.5.2",
"4.5.3"
"4.5.3",
"4.5.4"
],
"BaselineVersion": "4.5.3",
"BaselineVersion": "4.5.4",
"InboxOn": {
"netcoreapp2.1": "4.1.0.0",
"netcoreapp3.0": "4.2.0.0",
@ -5556,12 +5560,11 @@
"4.3.0",
"4.3.1"
],
"BaselineVersion": "4.3.0",
"BaselineVersion": "4.3.1",
"InboxOn": {
"netcoreapp2.0": "4.3.0.0",
"netcoreapp2.1": "4.3.1.0",
"net5.0": "5.0.0.0",
"net461": "4.2.0.0",
"netstandard2.0": "4.2.0.0",
"monoandroid10": "Any",
"monotouch10": "Any",
@ -6510,9 +6513,10 @@
"4.5.0",
"4.5.1",
"4.5.2",
"4.5.3"
"4.5.3",
"4.5.4"
],
"BaselineVersion": "4.5.2",
"BaselineVersion": "4.5.4",
"InboxOn": {
"netcoreapp2.0": "4.1.1.0",
"netcoreapp2.1": "4.3.0.0",

View file

@ -1,8 +1,8 @@
<Project>
<PropertyGroup>
<!-- Desktop has cycles and dangling refs -->
<!-- ShouldVerifyClosure>true</ShouldVerifyClosure -->
<ShouldVerifyClosure>true</ShouldVerifyClosure>
<ShouldVerifyTypes>true</ShouldVerifyTypes>
<SkipVerifyClosureForRuntime>true</SkipVerifyClosureForRuntime>
</PropertyGroup>
<ItemGroup>
@ -16,6 +16,72 @@
<!-- these are part of the targeting pack but contain many duplicate types -->
<ExcludeReference Include="PresentationFramework.Aero;PresentationFramework.Aero2;PresentationFramework.AeroLite;PresentationFramework.Classic;PresentationFramework.Luna;PresentationFramework.Royale" />
<!-- Ignoring dangling references and cycles comming in from the netfx targeting pack -->
<IgnoredReference Include="ADODB" />
<IgnoredReference Include="Microsoft.Internal.Tasks.Dataflow" />
<IgnoredReference Include="Microsoft.StdFormat" />
<IgnoredReference Include="Microsoft.Transactions.Bridge" />
<IgnoredReference Include="Microsoft.VisualBasic.Activities.Compiler" />
<IgnoredReference Include="Microsoft.Workflow.Compiler" />
<IgnoredReference Include="Microsoft.Win32.Registry" />
<IgnoredReference Include="Microsoft.Win32.SystemEvents" />
<IgnoredReference Include="MSDATASRC" />
<IgnoredReference Include="PresentationFramework" />
<IgnoredReference Include="PresentationUI" />
<IgnoredReference Include="ReachFramework" />
<IgnoredReference Include="SMDiagnostics" />
<IgnoredReference Include="stdole" />
<IgnoredReference Include="System" />
<IgnoredReference Include="System.CodeDom" />
<IgnoredReference Include="System.Configuration" />
<IgnoredReference Include="System.Configuration.ConfigurationManager" />
<IgnoredReference Include="System.Core" />
<IgnoredReference Include="System.Data" />
<IgnoredReference Include="System.Data.Odbc" />
<IgnoredReference Include="System.Data.OleDb" />
<IgnoredReference Include="System.Data.Services.Design" />
<IgnoredReference Include="System.Data.SqlClient" />
<IgnoredReference Include="System.Data.SqlXml" />
<IgnoredReference Include="System.Deployment" />
<IgnoredReference Include="System.Design" />
<IgnoredReference Include="System.Diagnostics.EventLog" />
<IgnoredReference Include="System.Diagnostics.PerformanceCounter" />
<IgnoredReference Include="System.Drawing.Common" />
<IgnoredReference Include="System.Dynamic" />
<IgnoredReference Include="System.EnterpriseServices" />
<IgnoredReference Include="System.IO.FileSystem.AccessControl" />
<IgnoredReference Include="System.IO.Packaging" />
<IgnoredReference Include="System.IO.Pipes.AccessControl" />
<IgnoredReference Include="System.IO.Ports" />
<IgnoredReference Include="System.Printing" />
<IgnoredReference Include="System.Runtime.Caching" />
<IgnoredReference Include="System.Runtime.Remoting" />
<IgnoredReference Include="System.Security" />
<IgnoredReference Include="System.Security.AccessControl" />
<IgnoredReference Include="System.Security.Cryptography.Cng" />
<IgnoredReference Include="System.Security.Cryptography.Pkcs" />
<IgnoredReference Include="System.Security.Cryptography.ProtectedData" />
<IgnoredReference Include="System.Security.Cryptography.Xml" />
<IgnoredReference Include="System.Security.Permissions" />
<IgnoredReference Include="System.Security.Principal.Windows" />
<IgnoredReference Include="System.ServiceModel" />
<IgnoredReference Include="System.ServiceModel.Activation" />
<IgnoredReference Include="System.ServiceModel.Activities" />
<IgnoredReference Include="System.ServiceModel.Internals" />
<IgnoredReference Include="System.ServiceModel.Syndication" />
<IgnoredReference Include="System.ServiceProcess.ServiceController" />
<IgnoredReference Include="System.Transactions" />
<IgnoredReference Include="System.Threading.AccessControl" />
<IgnoredReference Include="System.Web" />
<IgnoredReference Include="System.Web.Extensions" />
<IgnoredReference Include="System.Web.Services" />
<IgnoredReference Include="System.Windows.Extensions" />
<IgnoredReference Include="System.Windows.Forms" />
<IgnoredReference Include="System.Workflow.Activities" />
<IgnoredReference Include="System.Workflow.Runtime" />
<IgnoredReference Include="System.Xaml.Hosting" />
<IgnoredReference Include="System.Xml" />
<!-- these duplicate types exist in the targeting pack -->
<IgnoredTypes Include="XamlGeneratedNamespace.GeneratedInternalTypeHelper" />
<IgnoredTypes Include="System.Deployment.Internal.CodeSigning.RSAPKCS1SHA256SignatureDescription" />

View file

@ -0,0 +1,7 @@
<Project>
<PropertyGroup>
<!-- Disabling DependsOnNetStandardTest for this package as it is a tool and not a library -->
<DisableVerifyNotDependsOnNetStandardTest>true</DisableVerifyNotDependsOnNetStandardTest>
<ShouldVerifyClosure>false</ShouldVerifyClosure>
</PropertyGroup>
</Project>

View file

@ -0,0 +1,7 @@
<Project>
<PropertyGroup>
<!-- Utf8String reference depends on System.Private.CoreLib on net5.0 so we can't run
Verify Closure on it. -->
<ShouldVerifyClosure>false</ShouldVerifyClosure>
</PropertyGroup>
</Project>

View file

@ -69,7 +69,7 @@
<Target Name="VerifyRuntimeClosure"
DependsOnTargets="ResolveReferences"
Condition="'$(ShouldVerifyClosure)' == 'true' and '$(RuntimeIdentifier)' != ''">
Condition="'$(ShouldVerifyClosure)' == 'true' and '$(RuntimeIdentifier)' != '' and '$(SkipVerifyClosureForRuntime)' != 'true'">
<ItemGroup>
<_runClosureFileNames Include="@(ReferenceCopyLocalPaths->'%(FileName)')">
<Original>%(Identity)</Original>
@ -99,9 +99,16 @@
IgnoredTypes="@(IgnoredTypes)" />
</Target>
<Target Name="VerifyNotDependsOnNetStandard"
DependsOnTargets="ResolveReferences"
Condition="'$(_ShortFrameworkIdentifier)' == 'net' AND '$(_TargetFrameworkVersionWithoutV)' &gt;= '4.6.1' AND '$(RuntimeIdentifier)' == '' AND '$(DisableVerifyNotDependsOnNetStandardTest)' != 'true'">
<Error Condition="'$(DependsOnNetStandard)' == 'true'" Text="Package $(TestPackageId) requires netstandard shims when targeting $(TargetFramework)" />
</Target>
<PropertyGroup>
<_testDependsOn>
LogBeginTest;
VerifyNotDependsOnNetStandard;
VerifyReferenceClosure;
VerifyReferenceTypes;
VerifyRuntimeClosure;

View file

@ -180,7 +180,7 @@
<TestRestoreCommand>"$(TestDotNetPath)"</TestRestoreCommand>
<TestRestoreCommand>$(TestRestoreCommand) restore</TestRestoreCommand>
<TestRestoreCommand>$(TestRestoreCommand) --packages "$(TestPackageDir)"</TestRestoreCommand>
<TestRestoreCommand>$(TestRestoreCommand) /p:LocalPackagesPath=$(PackageOutputPath)</TestRestoreCommand>
<TestRestoreCommand>$(TestRestoreCommand) /p:LocalPackagesPath=$(ArtifactsPackagesDir)</TestRestoreCommand>
<TestRestoreCommand>$(TestRestoreCommand) /nr:false</TestRestoreCommand>
<TestRestoreCommand>$(TestRestoreCommand) /warnaserror</TestRestoreCommand>
<TestRestoreCommand Condition="'$(TestPackages)' != ''">$(TestRestoreCommand) /p:TestPackages=$(TestPackages)</TestRestoreCommand>