Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Drop support for older frameworks/Add support for newer frameworks #45

Closed
tsahi opened this issue Dec 19, 2020 · 3 comments
Closed

Drop support for older frameworks/Add support for newer frameworks #45

tsahi opened this issue Dec 19, 2020 · 3 comments
Assignees
Labels
enhancement New feature or request
Milestone

Comments

@tsahi
Copy link
Collaborator

tsahi commented Dec 19, 2020

Is your feature request related to a problem? Please describe.
Following the discussion at #38, we still support old frameworks that went out of support. We should remove support for these frameworks, which will let us remove dependency on older NuGet Packages.
on the other hand, adding direct support for newer frameworks will let us add support for ADO.NET providers we don't currently support on all frameworks.

Describe the solution you'd like
We currently support the following frameworks directly:

  • net45
  • net46
  • net47
  • netstandard2.0 (except for SqlCe)
  • netcoreapp2.0 (except for OleDb and SqlCe)
  • netcoreapp3.0 (except for SqlCe)

As a result, we support OleDb from netcoreapp3.0, although it's available for netcoreapp2.1.

I suggest we:

  1. drop support for net45, and replace it with support for net452. This will let us support System.Data.SqlClient NuGet package for this version. Support for Microsoft.Data.SqlClient is available from net46.
  2. drop support for netcoreapp2.0, and replace it with support for netcoreapp2.1. This will let us support System.Data.OleDb NuGet package from this version, instead of from version 3.0.
  3. (optional) drop support for netcoreapp3.0, and replace it with support for netcoreapp3.1.
  4. (optional) add support for netstandard1.2 on the SqlServer package (Split the block into separate packages for each database #39). We can support this package on this version using System.Data.SqlClient, and Microsoft.Data.SqlClient starting from netstandard2.0. The question is will this require the common Data package to also support this version.

Additional context
These are the End Of Support dates for .NET Core versions, from the Microsoft web site:

Version End of Support Date
Core 2.0 October 1, 2018
Core 2.1 August 21, 2021
Core 2.2 December 23, 2019
Core 3.0 March 3, 2020
Core 3.1 December 3, 2022
5.0 around February 2022

As we can see, support for .NET Core 2.0 and 2.2 is long overdue, and .NET Core 3.0 also recently went out of support.

Support for .NET Framework 4.5 ended January 12, 2016, and is replaced with version 4.5.2.

@tsahi tsahi added the enhancement New feature or request label Dec 19, 2020
@tsahi
Copy link
Collaborator Author

tsahi commented Dec 19, 2020

@Chavoshi @turabek @mjrousos

@tsahi
Copy link
Collaborator Author

tsahi commented Jan 2, 2021

see also #41

@tsahi tsahi self-assigned this Jan 29, 2021
@tsahi tsahi added this to the 7.0 milestone Jan 29, 2021
@tsahi
Copy link
Collaborator Author

tsahi commented Feb 5, 2021

supporting netstandare1.2 on SqlServer requires supporting it on Data too, but Data depends on System.Data.Odbc and System.Configuration.ConfigurationManager, which are supported on netstandard2.0 and higher. So this would be impossible.

tsahi added a commit that referenced this issue Feb 5, 2021
tsahi added a commit that referenced this issue Feb 5, 2021
remove conditional compilation of code which isn't in Data anymore.
remove System.Data.Odbc package from Data
since we target netcoreapp2.1, which includes OleDb, compile the System.Data.Common\*.cs files only for netstandard2.0
add netcoreapp2.1 to Data.OleDb, replace 3.0 with 3.1
include System.Data.OleDb package in netcoreapp2.1
#45
tsahi added a commit that referenced this issue Feb 5, 2021
…but only for netstandard target. on other targets this is not compiled.

code and comment cleanup
#45
@tsahi tsahi closed this as completed Feb 5, 2021
tsahi added a commit that referenced this issue Feb 19, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

1 participant