-
Notifications
You must be signed in to change notification settings - Fork 29
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
Add IEnumerable and IQueryable connections #121
Add IEnumerable and IQueryable connections #121
Conversation
I ran a benchmark for the BenchmarkDotNet=v0.13.1, OS=Windows 10.0.19044.1348 (21H2)
Intel Core i7-7660U CPU 2.50GHz (Kaby Lake), 1 CPU, 4 logical and 2 physical cores
.NET SDK=6.0.100
[Host] : .NET 5.0.12 (5.0.1221.52207), X64 RyuJIT
DefaultJob : .NET 5.0.12 (5.0.1221.52207), X64 RyuJIT
|
@myty Let me know when you are ready for a full review of this PR. I always figured that this repo was pretty pointless if it didn't handle |
@Shane32 I think it's probably at a good spot to go ahead with a full review. I've been exploring how we can incorporate GraphQL and Relay into our APIs that we've been wrtiting and I really wanted I have some other improvements that I'd like to contribute as well and had to keep backing off in this PR so that it wasn't massive and incorporating stuff that wasn't relevant. I've got one issue out there to improve the relay sample application, but I've got a few more. |
@Shane32 One thing I was debating was to remove the |
@Shane32 Let me know if there's anything else that I need to do for this PR, otherwise I think it's good enough for review. Thanks! |
Thanks for reminding me. I'll try to take a look at it this weekend. |
Sounds good. I'll review |
I wouldn't worry about it |
Also I would like to merge #157 before that to be able to track API changes. |
#157 was merged |
Sounds good. Will merge this evening. |
@myty Update |
@sungam3r I updated the GraphQL.approved.txt file and realized extensions were historically in the Utilities namespace so I moved the |
So, no breaking changes, OK. Give me 2-3 days to read about relay spec and make review. |
@sungam3r This should be reviewed and merged before 0.7. I already reviewed it a while ago, but you had planned to review it also. |
I still need to dig into relay spec, alas. Let's publish 0.7 to fix #160 . We can publish 0.8 at any time. |
Codecov Report
@@ Coverage Diff @@
## master #121 +/- ##
==========================================
- Coverage 71.96% 71.26% -0.70%
==========================================
Files 14 16 +2
Lines 371 449 +78
Branches 39 43 +4
==========================================
+ Hits 267 320 +53
- Misses 96 123 +27
+ Partials 8 6 -2
Continue to review full report at Codecov.
|
@sungam3r I already reviewed this. It's been sitting here, approved, for over a month. I'll merge it unless you plan to review this promptly. |
src/GraphQL.Relay/Utilities/ResolveConnectionContextExtensions.cs
Outdated
Show resolved
Hide resolved
I made a quick review. |
Co-authored-by: Shane Krueger <shane@acdmail.com>
Co-authored-by: Shane Krueger <shane@acdmail.com>
This is to address #19 and the performance implications when creating a connection on large lists. By changing to
EnumerableSliceMetrics
, we should be able to also utilizeIQueryable
to its full potential.There are a few more things that I'd like to focus on:
IEnumerable
andIQueryable
or update the existing sample projects to do soEnumerableSliceMetrics
class still needs a little more cleanupEnumerableSliceMetrics
andArraySliceMetrics
.