V2 API refactors
Open
@mgravell is already working on this.
Since Jul 11, 2019.
area:api
breaking-change
v3.0
- Dominant language
- C#
- Stars
- 18.4k
- Forks
- 3.7k
- Avg merge
- 5h 8m
- Merged PRs (30d)
- 1
Description
So v2 is going to have to happen at some point; we will want to do as much as we can at one "break", so: thoughts here:
Virtually definite
- unify strong-name
- remove overload-'splosion caused by gradual growth of overloads
- move from
IDbConnectionetc toDbConnectionfor the async methods - make sure
CancellationTokenis used on all async methods - drop TFM support for
netstandard1.3 - remove the
SqlClientdependency (need to fix one API only)
Virtually definite (additive; not a break)
- new
IAsyncEnumerable<T>API
Maybe
- move from
IDbConnectionetc toDbConnectionthroughout - move from
Task<T>toValueTask<T>throughout - move the existing
QueryAsync<T>API toIAsyncEnumerable<T>(wasTask<IEnumerable<T>>)
Maybe (additive; not a break)
- add TFM for
netcoreapp3.0and review what we can exploit - support for new ADO.NET batching API
Wouldn't rule it out (somewhere between "maybe" and "nope")
-
PooledAwait(internal implementation detail, but adds a dependency; works best withValueTask<T>, but can have benefits onTask<T>too)
other ideas?
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Assessment
This issue has not been assessed yet.