Dylan Thacker-Smith

Results 149 comments of Dylan Thacker-Smith

This wouldn't be a problem if we weren't trying to surface the caller entity. We could use rb_profile_frames to get efficiently get the caller method name, which we already do...

It looks like the primary difference is that ruby 3 is actually exposing the C call frames in rb_profile_frames now. E.g. we are now seeing that calls to `initialize` are...

I also noticed that the calls to initialize seem to be coming from a "new" with class_method_level "instance", which seemed strange. The `full_label` on that profile frame shows the call...

There is still a difference in that the C call has the caller at the top of the stack when the event hook is called. Perhaps that difference can be...

> [Class#new](https://ruby-doc.org/core-3.0.2/Class.html#method-i-new) is the defined method that gets called when it doesn't get overridden, so it is right from that perspective. It just is just wrong from the perspective of...

dataloader has a [prime](https://github.com/facebook/dataloader#primekey-value) function for this purpose. So if we provided something similar, then instead of ```ruby def warm(record) key = record.public_send(@primary_key) promise = cache[cache_key(key)] ||= Promise.new.tap { |promise|...

Is `Loaders::AssociationLoader` the same as the [example AssociationLoader](https://github.com/Shopify/graphql-batch/blob/master/examples/association_loader.rb)? Or could it be a bug in your association loader? Are you seeing the N+1 queries in the log even without the...

You can use `GraphQL::Batch::Executor.current.loading` to detect whether, at the time of a query, it is in a loaders perform method or from outside of a loaders perform method. For active...

Why don't you make that an association and use the [AssociationLoader example](https://github.com/Shopify/graphql-batch/blob/master/examples/association_loader.rb)?

No, but you can use https://github.com/Shopify/graphql-batch/compare/v0.3.3...v0.3.9 if you are interested in all the changes. There should be no breaking changes until v0.4.0.