Skip to content
This repository has been archived by the owner on Jan 23, 2023. It is now read-only.
/ corefx Public archive

[release/3.0] Add missing IAsyncDisposable interfaces to System.Data #40872

Merged
merged 1 commit into from
Sep 9, 2019

Conversation

roji
Copy link
Member

@roji roji commented Sep 6, 2019

Note: am about to board a plane, have some environment setup issues so this is an unverified PR. Hopefully it will build, otherwise I'll revisit after landing later today.

Part of #35012

/cc @terrajobst @stephentoub @divega @ajcvickers


Ask Mode

Description

Some ADO.NET types in .NET Standard 2.1 were changed to implement IAsyncDisposable. The appropriate functional changes were made in .NET Core 3.0, but the actual implementation of the interface is missing. This means .NET Core 3.0 is not .NET Standard 2.1 compliant

Customer Impact

Exceptions when using a library that targets .NET Standard with .NET Core in some cases when these types are used.

How found

Reported by Immo; I don't know full details at this point.

Test coverage

We need to investigate why this hasn't caused test failures.

Regression?

No

Risk

Risk is very small; just adding the missing interface to the type declaration.

@stephentoub
Copy link
Member

The relevant violations should also be removed from https://github.com/dotnet/corefx/blob/master/src/shims/ApiCompatBaseline.netcoreapp.netstandard.txt

@roji roji force-pushed the SystemDataDisposableAsync branch from b540ccd to ec423d8 Compare September 6, 2019 13:46
@roji
Copy link
Member Author

roji commented Sep 6, 2019

Am still on the road, but I can't see the violations in ApiCompatBaseline.netcoreapp.netstandard.txt, but rather in ApiCompatBaseline.netcoreapp.netstandardOnly.txt and ApiCompatBaseline.uap.netstandardOnly.txt. I have amended this PR to remove those violations - hopefully that's the right thing (especially for UAP?). Let me know if anything else is needed from my side.

@ajcvickers ajcvickers added this to the 3.0 milestone Sep 6, 2019
@stephentoub stephentoub changed the title Add missing IAsyncDisposable interfaces to System.Data [release/3.0] Add missing IAsyncDisposable interfaces to System.Data Sep 6, 2019
@danmoseley
Copy link
Member

was approved. I'll merge without Mac coverage.

@danmoseley danmoseley merged commit 6aa4a44 into dotnet:release/3.0 Sep 9, 2019
ViktorHofer pushed a commit that referenced this pull request Sep 13, 2019
* Disable SDL validation (#40903)

SDL validation is too expensive to run on a per-build basis. Disable for now

* [release/3.0] Update dependencies from dotnet/standard (#40911)

* Update dependencies from https://github.com/dotnet/standard build 20190907.2

- NETStandard.Library - 2.1.0-prerelease.19457.2

* Update dependencies from https://github.com/dotnet/standard build 20190907.1

- NETStandard.Library - 2.1.0-prerelease.19457.1

* [release/3.0] Update dependencies from 3 repositories (#40915)

* Update dependencies from https://github.com/dotnet/core-setup build 20190907.02

- Microsoft.NETCore.App - 3.0.0-rc2-19457-02
- Microsoft.NETCore.DotNetHost - 3.0.0-rc2-19457-02
- Microsoft.NETCore.DotNetHostPolicy - 3.0.0-rc2-19457-02

* Update dependencies from https://github.com/dotnet/arcade build 20190906.10

- Microsoft.DotNet.XUnitExtensions - 2.4.1-beta.19456.10
- Microsoft.DotNet.XUnitConsoleRunner - 2.5.1-beta.19456.10
- Microsoft.DotNet.VersionTools.Tasks - 1.0.0-beta.19456.10
- Microsoft.DotNet.ApiCompat - 1.0.0-beta.19456.10
- Microsoft.DotNet.Arcade.Sdk - 1.0.0-beta.19456.10
- Microsoft.DotNet.Build.Tasks.Configuration - 1.0.0-beta.19456.10
- Microsoft.DotNet.Build.Tasks.Feed - 2.2.0-beta.19456.10
- Microsoft.DotNet.Build.Tasks.Packaging - 1.0.0-beta.19456.10
- Microsoft.DotNet.CodeAnalysis - 1.0.0-beta.19456.10
- Microsoft.DotNet.CoreFxTesting - 1.0.0-beta.19456.10
- Microsoft.DotNet.GenAPI - 1.0.0-beta.19456.10
- Microsoft.DotNet.GenFacades - 1.0.0-beta.19456.10
- Microsoft.DotNet.Helix.Sdk - 2.0.0-beta.19456.10
- Microsoft.DotNet.RemoteExecutor - 1.0.0-beta.19456.10

* Update dependencies from https://github.com/dotnet/standard build 20190907.5

- NETStandard.Library - 2.1.0-prerelease.19457.5

* Disable ToolboxBitmatAttribute test in netfx (#40901) (#40908)

* [release/3.0] Update dependencies from 4 repositories (#40929)

* Update dependencies from https://github.com/dotnet/core-setup build 20190907.15

- Microsoft.NETCore.App - 3.0.0-rc2-19457-15
- Microsoft.NETCore.DotNetHost - 3.0.0-rc2-19457-15
- Microsoft.NETCore.DotNetHostPolicy - 3.0.0-rc2-19457-15

* Update dependencies from https://github.com/dotnet/arcade build 20190907.1

- Microsoft.DotNet.XUnitExtensions - 2.4.1-beta.19457.1
- Microsoft.DotNet.XUnitConsoleRunner - 2.5.1-beta.19457.1
- Microsoft.DotNet.VersionTools.Tasks - 1.0.0-beta.19457.1
- Microsoft.DotNet.ApiCompat - 1.0.0-beta.19457.1
- Microsoft.DotNet.Arcade.Sdk - 1.0.0-beta.19457.1
- Microsoft.DotNet.Build.Tasks.Configuration - 1.0.0-beta.19457.1
- Microsoft.DotNet.Build.Tasks.Feed - 2.2.0-beta.19457.1
- Microsoft.DotNet.Build.Tasks.Packaging - 1.0.0-beta.19457.1
- Microsoft.DotNet.CodeAnalysis - 1.0.0-beta.19457.1
- Microsoft.DotNet.CoreFxTesting - 1.0.0-beta.19457.1
- Microsoft.DotNet.GenAPI - 1.0.0-beta.19457.1
- Microsoft.DotNet.GenFacades - 1.0.0-beta.19457.1
- Microsoft.DotNet.Helix.Sdk - 2.0.0-beta.19457.1
- Microsoft.DotNet.RemoteExecutor - 1.0.0-beta.19457.1

* Update dependencies from https://dev.azure.com/dnceng/internal/_git/dotnet-optimization build 20190908.1

- optimization.windows_nt-x64.IBC.CoreFx - 99.99.99-master-20190908.1

* Update dependencies from https://github.com/dotnet/standard build 20190908.3

- NETStandard.Library - 2.1.0-prerelease.19458.3

* [release/3.0] Update dependencies from 4 repositories (#40940)

* Update dependencies from https://github.com/dotnet/core-setup build 20190908.11

- Microsoft.NETCore.App - 3.0.0-rc2-19458-11
- Microsoft.NETCore.DotNetHost - 3.0.0-rc2-19458-11
- Microsoft.NETCore.DotNetHostPolicy - 3.0.0-rc2-19458-11

* Update dependencies from https://github.com/dotnet/arcade build 20190908.2

- Microsoft.DotNet.XUnitExtensions - 2.4.1-beta.19458.2
- Microsoft.DotNet.XUnitConsoleRunner - 2.5.1-beta.19458.2
- Microsoft.DotNet.VersionTools.Tasks - 1.0.0-beta.19458.2
- Microsoft.DotNet.ApiCompat - 1.0.0-beta.19458.2
- Microsoft.DotNet.Arcade.Sdk - 1.0.0-beta.19458.2
- Microsoft.DotNet.Build.Tasks.Configuration - 1.0.0-beta.19458.2
- Microsoft.DotNet.Build.Tasks.Feed - 2.2.0-beta.19458.2
- Microsoft.DotNet.Build.Tasks.Packaging - 1.0.0-beta.19458.2
- Microsoft.DotNet.CodeAnalysis - 1.0.0-beta.19458.2
- Microsoft.DotNet.CoreFxTesting - 1.0.0-beta.19458.2
- Microsoft.DotNet.GenAPI - 1.0.0-beta.19458.2
- Microsoft.DotNet.GenFacades - 1.0.0-beta.19458.2
- Microsoft.DotNet.Helix.Sdk - 2.0.0-beta.19458.2
- Microsoft.DotNet.RemoteExecutor - 1.0.0-beta.19458.2

* Update dependencies from https://dev.azure.com/dnceng/internal/_git/dotnet-optimization build 20190909.1

- optimization.windows_nt-x64.IBC.CoreFx - 99.99.99-master-20190909.1

* Update dependencies from https://github.com/dotnet/standard build 20190909.3

- NETStandard.Library - 2.1.0-prerelease.19459.3

* Add missing IAsyncDisposable interfaces to System.Data (#40872)

Part of #35012

* Update dependencies from https://github.com/dotnet/coreclr build 20190909.3 (#40956)

- Microsoft.NET.Sdk.IL - 3.0.0-rc2.19459.3
- Microsoft.NETCore.ILAsm - 3.0.0-rc2.19459.3
- Microsoft.NETCore.Runtime.CoreCLR - 3.0.0-rc2.19459.3

* Fix TypeConverter for IComponent (#40837) (#40883)

* .NET Core 3.0 Prev9 Intellisense nupkg version bump (#40963) (#40965)

* [release/3.0] Update dependencies from 4 repositories (#40951)

* Update dependencies from https://github.com/dotnet/standard build 20190909.4

- NETStandard.Library - 2.1.0-prerelease.19459.4

* Update dependencies from https://github.com/dotnet/core-setup build 20190909.40

- Microsoft.NETCore.App - 3.0.0-rc2-19459-40
- Microsoft.NETCore.DotNetHost - 3.0.0-rc2-19459-40
- Microsoft.NETCore.DotNetHostPolicy - 3.0.0-rc2-19459-40

* Update dependencies from https://github.com/dotnet/arcade build 20190909.10

- Microsoft.DotNet.XUnitExtensions - 2.4.1-beta.19459.10
- Microsoft.DotNet.XUnitConsoleRunner - 2.5.1-beta.19459.10
- Microsoft.DotNet.VersionTools.Tasks - 1.0.0-beta.19459.10
- Microsoft.DotNet.ApiCompat - 1.0.0-beta.19459.10
- Microsoft.DotNet.Arcade.Sdk - 1.0.0-beta.19459.10
- Microsoft.DotNet.Build.Tasks.Configuration - 1.0.0-beta.19459.10
- Microsoft.DotNet.Build.Tasks.Feed - 2.2.0-beta.19459.10
- Microsoft.DotNet.Build.Tasks.Packaging - 1.0.0-beta.19459.10
- Microsoft.DotNet.CodeAnalysis - 1.0.0-beta.19459.10
- Microsoft.DotNet.CoreFxTesting - 1.0.0-beta.19459.10
- Microsoft.DotNet.GenAPI - 1.0.0-beta.19459.10
- Microsoft.DotNet.GenFacades - 1.0.0-beta.19459.10
- Microsoft.DotNet.Helix.Sdk - 2.0.0-beta.19459.10
- Microsoft.DotNet.RemoteExecutor - 1.0.0-beta.19459.10

* Update dependencies from https://dev.azure.com/dnceng/internal/_git/dotnet-optimization build 20190910.1

- optimization.windows_nt-x64.IBC.CoreFx - 99.99.99-master-20190910.1

* Add test for IComponent typeconverter register in TypeDescriptor (#40959) (#40977)

* Update dependencies from https://github.com/dotnet/coreclr build 20190910.2 (#40984)

- Microsoft.NET.Sdk.IL - 3.0.0-rc2.19460.2
- Microsoft.NETCore.ILAsm - 3.0.0-rc2.19460.2
- Microsoft.NETCore.Runtime.CoreCLR - 3.0.0-rc2.19460.2

* Update dependencies from https://github.com/dotnet/coreclr build 20190910.4 (#41006)

- Microsoft.NET.Sdk.IL - 3.0.0-rc2.19460.4
- Microsoft.NETCore.ILAsm - 3.0.0-rc2.19460.4
- Microsoft.NETCore.Runtime.CoreCLR - 3.0.0-rc2.19460.4

* [release/3.0] Update dependencies from dotnet/arcade dotnet/standard (#40986)

* Update dependencies from https://github.com/dotnet/arcade build 20190910.3

- Microsoft.DotNet.XUnitExtensions - 2.4.1-beta.19460.3
- Microsoft.DotNet.XUnitConsoleRunner - 2.5.1-beta.19460.3
- Microsoft.DotNet.VersionTools.Tasks - 1.0.0-beta.19460.3
- Microsoft.DotNet.ApiCompat - 1.0.0-beta.19460.3
- Microsoft.DotNet.Arcade.Sdk - 1.0.0-beta.19460.3
- Microsoft.DotNet.Build.Tasks.Configuration - 1.0.0-beta.19460.3
- Microsoft.DotNet.Build.Tasks.Feed - 2.2.0-beta.19460.3
- Microsoft.DotNet.Build.Tasks.Packaging - 1.0.0-beta.19460.3
- Microsoft.DotNet.CodeAnalysis - 1.0.0-beta.19460.3
- Microsoft.DotNet.CoreFxTesting - 1.0.0-beta.19460.3
- Microsoft.DotNet.GenAPI - 1.0.0-beta.19460.3
- Microsoft.DotNet.GenFacades - 1.0.0-beta.19460.3
- Microsoft.DotNet.Helix.Sdk - 2.0.0-beta.19460.3
- Microsoft.DotNet.RemoteExecutor - 1.0.0-beta.19460.3

* Update dependencies from https://github.com/dotnet/standard build 20190910.4

- NETStandard.Library - 2.1.0-prerelease.19460.4

* Update dependencies from https://github.com/dotnet/standard build 20190910.5

- NETStandard.Library - 2.1.0-prerelease.19460.5

* [release/3.0] Avoid MemoryMarshal.Cast when transcoding from UTF-16 to UTF-8 while escaping in Utf8JsonWriter. (#40997)

* Avoid MemoryMarshal.Cast when transcoding from UTF-16 to UTF-8 while
escaping in Utf8JsonWriter.

* Fix a typo in spacing within the test.

* Guard against empty spans where an implementation of JavascriptEncoder
might not handle null ptrs correctly.

* Cleanup tests to avoid some duplication.

* Some more test clean up.

* Update dependencies from https://github.com/dotnet/coreclr build 20190910.8 (#41011)

- Microsoft.NET.Sdk.IL - 3.0.0-rc2.19460.8
- Microsoft.NETCore.ILAsm - 3.0.0-rc2.19460.8
- Microsoft.NETCore.Runtime.CoreCLR - 3.0.0-rc2.19460.8

* Update dependencies from https://github.com/dotnet/coreclr build 20190910.11 (#41014)

- Microsoft.NET.Sdk.IL - 3.0.0-rc2.19460.11
- Microsoft.NETCore.ILAsm - 3.0.0-rc2.19460.11
- Microsoft.NETCore.Runtime.CoreCLR - 3.0.0-rc2.19460.11

* [release/3.0] Update dependencies from 3 repositories (#41022)

* Update dependencies from https://github.com/dotnet/core-setup build 20190910.02

- Microsoft.NETCore.App - 3.0.0-rc2-19460-02
- Microsoft.NETCore.DotNetHost - 3.0.0-rc2-19460-02
- Microsoft.NETCore.DotNetHostPolicy - 3.0.0-rc2-19460-02

* Update dependencies from https://dev.azure.com/dnceng/internal/_git/dotnet-optimization build 20190911.1

- optimization.windows_nt-x64.IBC.CoreFx - 99.99.99-master-20190911.1

* Update dependencies from https://github.com/dotnet/standard build 20190911.3

- NETStandard.Library - 2.1.0-prerelease.19461.3

* Update dependencies from https://github.com/dotnet/coreclr build 20190911.3 (#41035)

- Microsoft.NET.Sdk.IL - 3.0.0-rc2.19461.3
- Microsoft.NETCore.ILAsm - 3.0.0-rc2.19461.3
- Microsoft.NETCore.Runtime.CoreCLR - 3.0.0-rc2.19461.3

* adding version suffix as non empty for building release package versions

* Update dependencies from https://github.com/dotnet/coreclr build 20190911.5 (#41045)

- Microsoft.NET.Sdk.IL - 3.0.0-rc2.19461.5
- Microsoft.NETCore.ILAsm - 3.0.0-rc2.19461.5
- Microsoft.NETCore.Runtime.CoreCLR - 3.0.0-rc2.19461.5

* [release/3.0] Update dependencies from 3 repositories (#41052)

* Update dependencies from https://github.com/dotnet/arcade build 20190911.7

- Microsoft.DotNet.XUnitExtensions - 2.4.1-beta.19461.7
- Microsoft.DotNet.XUnitConsoleRunner - 2.5.1-beta.19461.7
- Microsoft.DotNet.VersionTools.Tasks - 1.0.0-beta.19461.7
- Microsoft.DotNet.ApiCompat - 1.0.0-beta.19461.7
- Microsoft.DotNet.Arcade.Sdk - 1.0.0-beta.19461.7
- Microsoft.DotNet.Build.Tasks.Configuration - 1.0.0-beta.19461.7
- Microsoft.DotNet.Build.Tasks.Feed - 2.2.0-beta.19461.7
- Microsoft.DotNet.Build.Tasks.Packaging - 1.0.0-beta.19461.7
- Microsoft.DotNet.CodeAnalysis - 1.0.0-beta.19461.7
- Microsoft.DotNet.CoreFxTesting - 1.0.0-beta.19461.7
- Microsoft.DotNet.GenAPI - 1.0.0-beta.19461.7
- Microsoft.DotNet.GenFacades - 1.0.0-beta.19461.7
- Microsoft.DotNet.Helix.Sdk - 2.0.0-beta.19461.7
- Microsoft.DotNet.RemoteExecutor - 1.0.0-beta.19461.7

* Update dependencies from https://dev.azure.com/dnceng/internal/_git/dotnet-optimization build 20190912.1

- optimization.windows_nt-x64.IBC.CoreFx - 99.99.99-master-20190912.1

* Update dependencies from https://github.com/dotnet/standard build 20190912.2

- NETStandard.Library - 2.1.0-prerelease.19462.2

* Update dependencies from https://github.com/dotnet/standard build 20190912.4

- NETStandard.Library - 2.1.0-prerelease.19462.4

* Update dependencies from https://github.com/dotnet/coreclr build 20190912.2 (#41062)

- Microsoft.NET.Sdk.IL - 3.0.0-rc2.19462.2
- Microsoft.NETCore.ILAsm - 3.0.0-rc2.19462.2
- Microsoft.NETCore.Runtime.CoreCLR - 3.0.0-rc2.19462.2

* Update dependencies from https://github.com/dotnet/standard build 20190912.5

- NETStandard.Library - 2.1.0

* Stabilize package versions (#41076)

* Update dependencies from https://github.com/dotnet/coreclr build 20190912.5 (#41081)

- Microsoft.NET.Sdk.IL - 3.0.0-rc2.19462.5
- Microsoft.NETCore.ILAsm - 3.0.0-rc2.19462.5
- Microsoft.NETCore.Runtime.CoreCLR - 3.0.0-rc2.19462.5
@ericstj
Copy link
Member

ericstj commented Mar 5, 2020

Looks like this didn't make it into master /cc @Anipik

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants