Closed jaulz closed 1 year ago
@lorisleiva sorry to disturb but would you be able to give some feedback on this? 😊
Hi there, sorry for the late reply. I'm a bit worried about skipping backtrace frame we don't control in case something changed in the framework but I'd be happy to skip the ones that are purely from the package as we control that part. Would you be able to show me the frames we'd be skipping?
Also you mention in your OP that you'd like the limit to be parameterised. I can see the limit as an argument in this method but perhaps you'd like this to be accessible at a higher level somewhere? Is this what you meant?
@lorisleiva thanks for the quick response! 😊 So this is the stacktrace:
Essentially there are only 2 frames from your library so it would only be a minor performance gain. However, I just pushed an update that reduces the frames anyway and also adds a method to change the limit. The limit can be adapted like this:
$this->app->extend(ActionManager::class, function (ActionManager $actionManager) {
$actionManager->setBacktraceLimit(20);
return $actionManager;
});
What do you think?
For some reason the commit does not appear here but it's actually pushed to https://github.com/jaulz/laravel-actions/tree/patch-1 🤔
Nevermind, it updated after pushing a second commit 😊
Currently, the limit of backtrace frames is set to 10 and cannot be changed. It would be great if it would be possible to increase the limit for custom design patterns (e.g., I would like to use it in combination with Lighthouse). Anyway, while debugging the same I was wondering whether the first 9 frames could be skipped because those all belong to
laravel
orlaravel-actions
and thus the time could rather be spent on real potential matches.