QueryWatcher location can ignore Composer packages #449
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
When Eloquent models use third-party Composer packages to build queries, the query watcher can log class / line number location for a file outside of the Laravel
app/
orresources/views
subdirectories.Example Composer packages:
Find query location in your application code
Example configuration:Changed in a comment below to['ignore_packages' => true]
.In addition to ignoring
vendor/laravel/*
, this will also ignorevendor/dimsav/laravel-translatable
file paths (orvendor\dimsav\laravel-translatable
on Windows) and go further up the callee stacktrace to find where the query was started.PHPUnit Coverage
This is difficult to test in PHPUnit since
getCallerFromStackTrace()
calls PHP functiondebug_backtrace()
that can't be overloaded.I confirmed this works as intended for two Laravel codebases affected by this.