Version Description
Download this release
Release Info
Developer | johnbillion |
Plugin | Query Monitor |
Version | 3.6.7 |
Comparing to | |
See all releases |
Code changes from version 3.6.6 to 3.6.7
- classes/Activation.php +2 -1
- classes/CLI.php +5 -0
- output/html/db_queries.php +15 -13
- output/html/logger.php +1 -1
- output/html/php_errors.php +1 -1
- query-monitor.php +1 -1
- readme.txt +2 -340
- wp-content/db.php +2 -2
classes/Activation.php
CHANGED
@@ -30,8 +30,9 @@ class QM_Activation extends QM_Plugin {
|
|
30 |
|
31 |
public function activate( $sitewide = false ) {
|
32 |
$db = WP_CONTENT_DIR . '/db.php';
|
|
|
33 |
|
34 |
-
if ( ! file_exists( $db ) && function_exists( 'symlink' ) ) {
|
35 |
@symlink( $this->plugin_path( 'wp-content/db.php' ), $db ); // phpcs:ignore
|
36 |
}
|
37 |
|
30 |
|
31 |
public function activate( $sitewide = false ) {
|
32 |
$db = WP_CONTENT_DIR . '/db.php';
|
33 |
+
$create_symlink = defined( 'QM_DB_SYMLINK' ) ? QM_DB_SYMLINK : true;
|
34 |
|
35 |
+
if ( $create_symlink && ! file_exists( $db ) && function_exists( 'symlink' ) ) {
|
36 |
@symlink( $this->plugin_path( 'wp-content/db.php' ), $db ); // phpcs:ignore
|
37 |
}
|
38 |
|
classes/CLI.php
CHANGED
@@ -32,6 +32,11 @@ class QM_CLI extends QM_Plugin {
|
|
32 |
}
|
33 |
}
|
34 |
|
|
|
|
|
|
|
|
|
|
|
35 |
if ( ! function_exists( 'symlink' ) ) {
|
36 |
WP_CLI::error( 'The symlink function is not available' );
|
37 |
}
|
32 |
}
|
33 |
}
|
34 |
|
35 |
+
if ( defined( 'QM_DB_SYMLINK' ) && ! QM_DB_SYMLINK ) {
|
36 |
+
WP_CLI::warning( 'Creation of symlink prevented by QM_DB_SYMLINK constant.' );
|
37 |
+
exit( 0 );
|
38 |
+
}
|
39 |
+
|
40 |
if ( ! function_exists( 'symlink' ) ) {
|
41 |
WP_CLI::error( 'The symlink function is not available' );
|
42 |
}
|
output/html/db_queries.php
CHANGED
@@ -174,23 +174,25 @@ class QM_Output_Html_DB_Queries extends QM_Output_Html {
|
|
174 |
echo '<tr>';
|
175 |
echo '<th colspan="' . intval( $span ) . '" class="qm-warn"><span class="dashicons dashicons-warning" aria-hidden="true"></span>';
|
176 |
if ( file_exists( WP_CONTENT_DIR . '/db.php' ) ) {
|
177 |
-
/* translators:
|
178 |
-
$message = __( 'Extended query information such as the component and affected rows is not available. A conflicting %
|
|
|
|
|
|
|
179 |
} else {
|
180 |
-
/* translators:
|
181 |
-
$message = __( 'Extended query information such as the component and affected rows is not available. Query Monitor was unable to symlink its %
|
182 |
}
|
183 |
-
|
184 |
-
$message,
|
185 |
'<code>db.php</code>',
|
|
|
|
|
|
|
|
|
|
|
186 |
'https://github.com/johnbillion/query-monitor/wiki/db.php-Symlink'
|
187 |
-
)
|
188 |
-
'a' => array(
|
189 |
-
'href' => array(),
|
190 |
-
'target' => array(),
|
191 |
-
'class' => array(),
|
192 |
-
),
|
193 |
-
) );
|
194 |
echo '</th>';
|
195 |
echo '</tr>';
|
196 |
}
|
174 |
echo '<tr>';
|
175 |
echo '<th colspan="' . intval( $span ) . '" class="qm-warn"><span class="dashicons dashicons-warning" aria-hidden="true"></span>';
|
176 |
if ( file_exists( WP_CONTENT_DIR . '/db.php' ) ) {
|
177 |
+
/* translators: %s: File name */
|
178 |
+
$message = __( 'Extended query information such as the component and affected rows is not available. A conflicting %s file is present.', 'query-monitor' );
|
179 |
+
} elseif ( defined( 'QM_DB_SYMLINK' ) && ! QM_DB_SYMLINK ) {
|
180 |
+
/* translators: 1: File name, 2: Configuration constant name */
|
181 |
+
$message = __( 'Extended query information such as the component and affected rows is not available. Query Monitor was prevented from symlinking its %1$s file into place by the %2$s constant.', 'query-monitor' );
|
182 |
} else {
|
183 |
+
/* translators: %s: File name */
|
184 |
+
$message = __( 'Extended query information such as the component and affected rows is not available. Query Monitor was unable to symlink its %s file into place.', 'query-monitor' );
|
185 |
}
|
186 |
+
printf(
|
187 |
+
esc_html( $message ),
|
188 |
'<code>db.php</code>',
|
189 |
+
'<code>QM_DB_SYMLINK</code>'
|
190 |
+
);
|
191 |
+
|
192 |
+
printf(
|
193 |
+
' <a href="%s" target="_blank" class="qm-external-link">See this wiki page for more information.</a>',
|
194 |
'https://github.com/johnbillion/query-monitor/wiki/db.php-Symlink'
|
195 |
+
);
|
|
|
|
|
|
|
|
|
|
|
|
|
196 |
echo '</th>';
|
197 |
echo '</tr>';
|
198 |
}
|
output/html/logger.php
CHANGED
@@ -85,7 +85,7 @@ class QM_Output_Html_Logger extends QM_Output_Html {
|
|
85 |
|
86 |
echo '<tr' . $attr . ' class="' . esc_attr( $class ) . '">'; // WPCS: XSS ok.
|
87 |
|
88 |
-
echo '<td
|
89 |
|
90 |
if ( $is_warning ) {
|
91 |
echo '<span class="dashicons dashicons-warning" aria-hidden="true"></span>';
|
85 |
|
86 |
echo '<tr' . $attr . ' class="' . esc_attr( $class ) . '">'; // WPCS: XSS ok.
|
87 |
|
88 |
+
echo '<td class="qm-nowrap">';
|
89 |
|
90 |
if ( $is_warning ) {
|
91 |
echo '<span class="dashicons dashicons-warning" aria-hidden="true"></span>';
|
output/html/php_errors.php
CHANGED
@@ -98,7 +98,7 @@ class QM_Output_Html_PHP_Errors extends QM_Output_Html {
|
|
98 |
}
|
99 |
|
100 |
echo '<tr ' . $attr . 'class="' . esc_attr( $class ) . '">'; // WPCS: XSS ok.
|
101 |
-
echo '<td
|
102 |
|
103 |
if ( $is_warning ) {
|
104 |
echo '<span class="dashicons dashicons-warning" aria-hidden="true"></span>';
|
98 |
}
|
99 |
|
100 |
echo '<tr ' . $attr . 'class="' . esc_attr( $class ) . '">'; // WPCS: XSS ok.
|
101 |
+
echo '<td class="qm-nowrap">';
|
102 |
|
103 |
if ( $is_warning ) {
|
104 |
echo '<span class="dashicons dashicons-warning" aria-hidden="true"></span>';
|
query-monitor.php
CHANGED
@@ -10,7 +10,7 @@
|
|
10 |
*
|
11 |
* Plugin Name: Query Monitor
|
12 |
* Description: The Developer Tools Panel for WordPress.
|
13 |
-
* Version: 3.6.
|
14 |
* Plugin URI: https://querymonitor.com/
|
15 |
* Author: John Blackbourn
|
16 |
* Author URI: https://querymonitor.com/
|
10 |
*
|
11 |
* Plugin Name: Query Monitor
|
12 |
* Description: The Developer Tools Panel for WordPress.
|
13 |
+
* Version: 3.6.7
|
14 |
* Plugin URI: https://querymonitor.com/
|
15 |
* Author: John Blackbourn
|
16 |
* Author URI: https://querymonitor.com/
|
readme.txt
CHANGED
@@ -3,7 +3,7 @@ Contributors: johnbillion
|
|
3 |
Tags: debug, debug-bar, debugging, development, developer, performance, profiler, queries, query monitor, rest-api
|
4 |
Requires at least: 3.7
|
5 |
Tested up to: 5.6
|
6 |
-
Stable tag: 3.6.
|
7 |
License: GPLv2 or later
|
8 |
Requires PHP: 5.3
|
9 |
Donate link: https://johnblackbourn.com/donations/
|
@@ -131,342 +131,4 @@ Yes. You can enable this on the Settings panel.
|
|
131 |
|
132 |
In addition, if you like the plugin then I'd love for you to [leave a review](https://wordpress.org/support/view/plugin-reviews/query-monitor). Tell all your friends about it too!
|
133 |
|
134 |
-
|
135 |
-
|
136 |
-
### 3.6.6 ###
|
137 |
-
|
138 |
-
* PHP 8 fix.
|
139 |
-
* Improve the display for various empty values when logging.
|
140 |
-
* Don't display child menus until the parent menu is active. Makes the menu clearer.
|
141 |
-
* Detect local host names in HTTP API requests and don't mark them as ignoring certificate verification.
|
142 |
-
* Prevent the text in toggle buttons from being selected when selecting data in tables.
|
143 |
-
* Remove support for the Dark Mode plugin which isn't Dark Mode any more.
|
144 |
-
|
145 |
-
|
146 |
-
### 3.6.5 ###
|
147 |
-
|
148 |
-
* Always show the Logs panel, with a link to help docs.
|
149 |
-
* Whole bunch of improvements to QM's "broken" state handling.
|
150 |
-
* Remove usage of deprecated jQuery methods.
|
151 |
-
* Add support for Altis dependencies as components.
|
152 |
-
* Add `innodb_buffer_pool_size` variable to the mysql environment list.
|
153 |
-
* Preformat the Logger output
|
154 |
-
* Fix the PHP version check.
|
155 |
-
|
156 |
-
|
157 |
-
### 3.6.4 ###
|
158 |
-
|
159 |
-
* Correct an error introduced in 3.6.2 with the extra early error handling (ironic).
|
160 |
-
|
161 |
-
### 3.6.3 ###
|
162 |
-
|
163 |
-
* Correct the size of the close icon.
|
164 |
-
|
165 |
-
### 3.6.2 ###
|
166 |
-
|
167 |
-
* Capture and display the most recent PHP error that occurred before QM loaded.
|
168 |
-
* Add support for the environment type added in WP 5.5.
|
169 |
-
* Avoid a potentially blank translation for some plural forms.
|
170 |
-
* Increase some contrast in dark mode.
|
171 |
-
* Combine the response-related sections of the Request panel.
|
172 |
-
* Add extra sanity checking when attempting to fetch the posix user information.
|
173 |
-
|
174 |
-
### 3.6.1 ###
|
175 |
-
|
176 |
-
* Adjust the bottom margin when the QM panel is open so QM doesn't cover the bottom of the page. Works more often than not.
|
177 |
-
* Prevent QM from triggering a fatal itself if a fatal occurs before the HTML dispatcher is loaded.
|
178 |
-
* Add an informational message to the template output when template hooks are in use.
|
179 |
-
* Fix errors caused by missing user or group IDs when collecting environment data.
|
180 |
-
* Add TextMate to list of supported editors.
|
181 |
-
* Demote some cache warnings to informational messages.
|
182 |
-
* Support passing backtrace to `QM_Backtrace`.
|
183 |
-
|
184 |
-
|
185 |
-
### 3.6.0 ###
|
186 |
-
|
187 |
-
* Improvements to the UI when a fatal error occurs, including an admin toolbar warning.
|
188 |
-
* Improvements to the UI when QM is running in "broken" mode due to missing jQuery or an unrecoverable JavaScript error.
|
189 |
-
* Don't display fatal errors if error display is off and the user cannot view QM.
|
190 |
-
* Improvements to the visual appearance of the `wp_die()` output.
|
191 |
-
* Simplify re-throwing a caught exception so QM doesn't get the blame for fatal errors, eg. in the WordPress core fatal error handler.
|
192 |
-
* Add support for logging a variable of any type in the logger, as a replacement for var dumping.
|
193 |
-
* Don't show a message for errors in Ajax calls that have already occurred on the main page load.
|
194 |
-
* Don't dispatch QM during an iframed request, eg the plugin info modal or an upgrader action.
|
195 |
-
* Hide QM itself from various panels by default to remove noise. Can be controlled via the existing `QM_HIDE_SELF` configuration constant.
|
196 |
-
* Support for the new `is_favicon()` conditional added in WP 5.4.
|
197 |
-
* Fix the side panel resizing functionality.
|
198 |
-
* Add a WP-CLI command for creating the symlink to the db file.
|
199 |
-
* Add filters to `QM_Util::get_file_dirs()` and `get_file_component()` to allow support for non-standard plugin and theme locations.
|
200 |
-
* Add an action that fires when QM enqueues its assets, so add-on plugins can enqueue theirs only when necessary.
|
201 |
-
|
202 |
-
|
203 |
-
### 3.5.2 ###
|
204 |
-
|
205 |
-
* Add support for exposing [Full Site Editing](https://github.com/WordPress/gutenberg/issues?q=label%3A%22%5BFeature%5D+Full+Site+Editing%22) blocks in the Block Editor panel.
|
206 |
-
|
207 |
-
### 3.5.1 ###
|
208 |
-
|
209 |
-
* Defer population of the `found_formatted` property because this can fire before WPML has initialised its locale proxy. Fixes #485.
|
210 |
-
* Ensure all error types are accounted for when populating the panel menu error count. Fixes #486.
|
211 |
-
|
212 |
-
|
213 |
-
### 3.5.0 ###
|
214 |
-
|
215 |
-
* Add an editor selection UI on the Settings panel.
|
216 |
-
* Improve the output of missing asset dependencies.
|
217 |
-
* Improve the output of unsuccessful template parts.
|
218 |
-
* Handle non-boolean constants such as `WP_DEBUG_LOG`, which now accepts a path too.
|
219 |
-
* Add support for touch devices when resizing the panel. (Works alright-ish, probably needs some animation frame work.)
|
220 |
-
* Apply the same styles to notices, deprecated, and strict errors.
|
221 |
-
* Some more style resets for compatibility with popular themes.
|
222 |
-
* Style changes to bring QM inline with WP 5.3's improved button and focus styles.
|
223 |
-
* More colour contrast and dark mode tweaks.
|
224 |
-
* Add permalink-related filters to the concerned filters for the Request panel.
|
225 |
-
* Fix and improve the admin toolbar menu hover colours.
|
226 |
-
* Add the error count to the panel menu.
|
227 |
-
* Remove unnecessary use of plural forms added in 3.4.0.
|
228 |
-
* More CSS resets to avoid overly tall filters in Firefox.
|
229 |
-
* Improved styling for warning rows.
|
230 |
-
* Display the log count in the menu item.
|
231 |
-
|
232 |
-
|
233 |
-
### 3.4.0 ###
|
234 |
-
|
235 |
-
* Introduce an exception handler so a stack trace can be shown for fatal errors in PHP >= 7.
|
236 |
-
* Add separate persistence of QM window for front-end and admin area.
|
237 |
-
* Add the request and response HTTP headers to the Request panel.
|
238 |
-
* Introduce Started and Stopped columns in the Timings panel.
|
239 |
-
* By popular demand, revert back to closest first ordering of stack traces so they're inline with most other dev tools out there.
|
240 |
-
* Show the script handle in addition to the text domain in the Languages panel.
|
241 |
-
* Improve the panel menu highlighting colours.
|
242 |
-
* Better presentation of the default and current values for the settings constants.
|
243 |
-
* Truncate long host names in the Scripts and Styles panels.
|
244 |
-
* Add some more of the admin screen globals to the admin collector.
|
245 |
-
* Switch back to using a monospace font in numeric data cells.
|
246 |
-
* Allow dark mode to be enabled with `QM_DARK_MODE`.
|
247 |
-
* Display the total query count even when `SAVEQUERIES` is defined as false.
|
248 |
-
* Allow proper plural forms to be used wherever a phrase includes a numeric value.
|
249 |
-
* More style resetting for compatibility with Twenty Twenty.
|
250 |
-
* Avoid a division by zero when cache hits is 0.
|
251 |
-
* Switch to (mostly) CSS for the child menu item marker.
|
252 |
-
|
253 |
-
|
254 |
-
### 3.3.7 ###
|
255 |
-
|
256 |
-
* Expose instances where a requested template part was not loaded.
|
257 |
-
* Update the docs for multiple `wpdb` instances.
|
258 |
-
* Various accessibility improvements.
|
259 |
-
* Remove the RDBMS info as it's not at all reliable.
|
260 |
-
|
261 |
-
|
262 |
-
### 3.3.6 ###
|
263 |
-
|
264 |
-
* Fix a compatibility issue where QM and the fatal error protection in WordPress 5.2+ were handling syntax errors differently.
|
265 |
-
* Fix some bugs with the icons for the panel controls.
|
266 |
-
|
267 |
-
### 3.3.5 ###
|
268 |
-
|
269 |
-
* Add support for the new `get_template_part` action in WP 5.2.
|
270 |
-
* Add a friendly error message when the PHP version requirement isn't met.
|
271 |
-
* Add support for the new privacy policy conditional in WP 5.2.
|
272 |
-
* Add support for the new privacy policy template in WP 5.2.
|
273 |
-
|
274 |
-
### 3.3.4 ###
|
275 |
-
|
276 |
-
* Updated CSS to avoid conflicts with themes using `ul`, `nav`, and `li` styling.
|
277 |
-
* Don't define `ajaxurl` if there are no Debug Bar panels to show.
|
278 |
-
* New icon for QM! By [Tubagus Didin Asrori](https://www.instagram.com/asrorigus/).
|
279 |
-
* Push the close button a bit further away from the edge of the screen to avoid scrollbar interference on macOS.
|
280 |
-
* Fix clash with object cache plugins that keep their hit and miss stats private.
|
281 |
-
* Add missing asset position counters.
|
282 |
-
|
283 |
-
### 3.3.3 ###
|
284 |
-
|
285 |
-
* Add scripts and styles counts to admin menu items.
|
286 |
-
* Group the cache logic together to avoid calling cache related functionality when it's not available. Fixes #418.
|
287 |
-
* Switch to installing the test suite as Composer dependencies.
|
288 |
-
|
289 |
-
### 3.3.2 ###
|
290 |
-
|
291 |
-
* Improve the accuracy of the `ver` parameter for enqueued scripts and styles.
|
292 |
-
* Separate and simplify the output for the object cache and opcode cache statuses. Fixes #413.
|
293 |
-
* Better formatting when no object cache stats are available.
|
294 |
-
|
295 |
-
|
296 |
-
### 3.3.1 ###
|
297 |
-
|
298 |
-
* Move the hook processing into its own class and out of the collector, so it can be re-used even if the Hooks collector isn't in use. Fixes #399.
|
299 |
-
* Increase the sidebar layout to 100% height when there's no admin toolbar.
|
300 |
-
* Update the QM element ID in the "worst case scenario" JS. Fixes #398.
|
301 |
-
* Improve the layout of the Settings panel.
|
302 |
-
* Force the `Core` and `Non-Core` filter items to the bottom of the list, so plugins and themes takes precedence.
|
303 |
-
* Add an entry for the Settings screen to the narrow view nav menu.
|
304 |
-
* Add the admin notice hooks to the list of concerned actions for the Admin Screen panel.
|
305 |
-
|
306 |
-
### 3.3.0 ###
|
307 |
-
|
308 |
-
New features! Read about them here: https://querymonitor.com/blog/2019/02/new-features-in-query-monitor-3-3/
|
309 |
-
|
310 |
-
* Introduce sub-menus for displaying Hooks in Use for each panel.
|
311 |
-
* Output the call stack and responsible component when `wp_die()` is called.
|
312 |
-
* Support for JavaScript (Jed) translations in WordPress 5.0+.
|
313 |
-
* Add render timing for blocks using the new hooks introduced in WordPress 5.1.
|
314 |
-
* Introduce a toggle to display QM on the side of the window.
|
315 |
-
* Allow non-string values to be used in the logger message. They'll be presented as JSON formatted strings.
|
316 |
-
* Allow boolean values to be used in log message contexts.
|
317 |
-
* Add some margin to the Close button so it doesn't get covered up so much by scroll bars.
|
318 |
-
* Prefix QM's cookie name with `wp-` to ensure interoperability with caches and proxies.
|
319 |
-
* Separate the Scripts and Styles collector and outputter so they're actually two separate panels.
|
320 |
-
* Add support for opcode cache detection separate from the object cache detection.
|
321 |
-
* Rename the main QM container to get around the fact that its name clashes with the plugin rows in older versions of WordPress.
|
322 |
-
* Avoid using `wp_parse_url()` as it was only introduced in WP 4.4.
|
323 |
-
|
324 |
-
|
325 |
-
### 3.2.2 ###
|
326 |
-
|
327 |
-
* Support for nested content blocks (eg. in columns).
|
328 |
-
* Hide long innerHTML content of blocks behind a toggle.
|
329 |
-
* Add validation of the referenced media file in media blocks.
|
330 |
-
* Ensure asset URLs include the `ver` query arg.
|
331 |
-
* Tweak the warning colours.
|
332 |
-
* Coding standards.
|
333 |
-
* Layout tweaks.
|
334 |
-
|
335 |
-
|
336 |
-
### 3.2.1 ###
|
337 |
-
|
338 |
-
* Fix a fatal error for < 5.0 sites that are not running the Gutenberg plugin.
|
339 |
-
|
340 |
-
### 3.2.0 ###
|
341 |
-
|
342 |
-
* Add a new `Blocks` panel for debugging blocks in post content. Supports WordPress 5.0 and the Gutenberg plugin.
|
343 |
-
* Display the number of times that each template part was included.
|
344 |
-
* Allow the scripts and styles output to be filtered based on Dependencies and Dependents.
|
345 |
-
* Remove the `Pin` button in favour of always pinning QM when it's open.
|
346 |
-
* Add a "Settings" link to the Plugins screen that opens the settings panel.
|
347 |
-
* Add a link to the Add-ons page on the wiki.
|
348 |
-
* Add some more verbose and visible error notices for suboptimal PHP configuration directives.
|
349 |
-
* Add support for identifying any RDBMS, not just MySQL and MariaDB.
|
350 |
-
* Perform the PHP version check earlier on so that fewer parts of QM need to be compatible with PHP 5.2.
|
351 |
-
* Highlight plain `http` requests to the HTTP API as insecure.
|
352 |
-
* Ensure the `Template` admin menu is always shown, even if the template file name isn't known.
|
353 |
-
* Adjust the JS and CSS asset source to not include the host.
|
354 |
-
* Add a warning for insecure JS and CSS assets.
|
355 |
-
* Remove before and after pseudo-elements in the style reset.
|
356 |
-
* Show as much theme and template information as possible, even if QM doesn't know the template name.
|
357 |
-
* Highlight non-core rows when filtering the Hooks & Actions panel by Non-Core.
|
358 |
-
* Add a filter for environment constants.
|
359 |
-
* Min width CSS for buttons.
|
360 |
-
* First pass at documenting filters and hooks.
|
361 |
-
* More coding standards updates.
|
362 |
-
|
363 |
-
### 3.1.1 ###
|
364 |
-
|
365 |
-
* Add a dark mode for the UI which is used via the Dark Mode plugin.
|
366 |
-
* Display Query Monitor's output in the user's selected language, instead of the site language.
|
367 |
-
* Add extended support for the Members and User Role Editor plugins.
|
368 |
-
* Fix link hover and focus styles.
|
369 |
-
* Reset some more CSS styles.
|
370 |
-
|
371 |
-
### 3.1.0 ###
|
372 |
-
|
373 |
-
**Main changes:**
|
374 |
-
|
375 |
-
* Lots of accessibility improvements.
|
376 |
-
* Switch to system default fonts to match the WordPress admin area fonts.
|
377 |
-
* [Implement a PSR-3 compatible logger](https://querymonitor.com/blog/2018/07/profiling-and-logging/).
|
378 |
-
* UI improvements for mobile/touch/narrow devices.
|
379 |
-
* Various improvements to the layout of the Scripts and Styles panels.
|
380 |
-
* Prevent the "overscroll" behaviour that causes the main page to scroll when scrolling to the end of a panel.
|
381 |
-
* Remove the second table footer when filtering tables.
|
382 |
-
* Add a settings panel with information about all of the available configuration constants.
|
383 |
-
|
384 |
-
**All other changes:**
|
385 |
-
|
386 |
-
* Show a warning message in the Overview panel when a PHP error is trigger during an Ajax request.
|
387 |
-
* Display a warning when time or memory usage is above 75% of the respective limit.
|
388 |
-
* Template Part file string normalization so template parts are correctly shown on Windows systems.
|
389 |
-
* Don't output toggle links or a blank HTTP API transport if not necessary.
|
390 |
-
* Add a human readable representation of transient timeouts, and prevent some wrapping.
|
391 |
-
* Add a tear down for the capability checks collector so that cap checks performed between QM's processing and output don't break things.
|
392 |
-
* Remove the ability to sort the HTTP API Calls table. This removes a column, increasing the available horizontal space.
|
393 |
-
* Handle a bunch more known object types when displaying parameter values.
|
394 |
-
* Allow PHP errors to be filtered by level.
|
395 |
-
* Shorten the displayed names of long namespaced symbols by initialising the inner portions of the name.
|
396 |
-
* Combine the Location and Caller columns for PHP Errors to save some horizontal space.
|
397 |
-
* Don't wrap text in the PHP error type column.
|
398 |
-
* Improve the authentication cookie toggle so it dynamically reflects the current state.
|
399 |
-
* For now, force QM to use ltr text direction.
|
400 |
-
* Clarify terminology around the number of enqueued assets.
|
401 |
-
* Add fallback support for `wp_cache_get_stats()` to fetch cache stats.
|
402 |
-
* Improve the message shown when no queries are performed.
|
403 |
-
* Pluck stats from cache controllers that implement a `getStats()` method and return a nested array of stats for each server.
|
404 |
-
* Rename the `QM_HIDE_CORE_HOOKS` configuration constant to `QM_HIDE_CORE_ACTIONS`.
|
405 |
-
* Better handling of environments with unlimited execution time or memory limit. Adds a warning for both.
|
406 |
-
* When an external cache isn't in use, provide some helpful info if an appropriate extension is installed.
|
407 |
-
|
408 |
-
|
409 |
-
### 3.0.1 ###
|
410 |
-
|
411 |
-
* Add even more hardening to the JS handling to prevent problems when jQuery is broken.
|
412 |
-
* Remove the old `no-js` styles which don't work well with the new UI.
|
413 |
-
* Correct the logic for showing the `Non-Core` component filter option.
|
414 |
-
* Add another VIP function to the list of functions that call the HTTP API.
|
415 |
-
* Add an inline warning highlight to capability checks that are empty or of a non-string type.
|
416 |
-
* Add support for WordPress.com VIP Client MU plugins.
|
417 |
-
* Add support for displaying laps as part of the timing information.
|
418 |
-
* Add full support for namespaced Debug Bar add-on panels.
|
419 |
-
* Switch back to depending on `jquery` instead of `jquery-core`.
|
420 |
-
* Don't assume `php_uname()` is always callable. Add info about the host OS too.
|
421 |
-
* Reset inline height attribute when the panel is closed.
|
422 |
-
|
423 |
-
### 3.0.0 ###
|
424 |
-
|
425 |
-
* Brand new UI that resembles familiar web developer tools. Lots of related improvements and fixes.
|
426 |
-
* Introduce some basic timing functionality in a Timings panel. See #282 for usage.
|
427 |
-
* Introduce a `QM_NO_JQUERY` constant for running QM without jQuery as a dependency.
|
428 |
-
* Greater resilience to JavaScript errors.
|
429 |
-
* Allow the Scripts and Styles panel to be filtered by host name.
|
430 |
-
* Expose information about redirects that occurred in HTTP API requests.
|
431 |
-
* Expose more debugging information for HTTP API requests.
|
432 |
-
* Don't enable the Capability Checks panel by default as it's very memory intensive.
|
433 |
-
* Allow PHP errors to be silenced according to their component. See `qm/collect/php_error_levels` and `qm/collect/hide_silenced_php_errors` filters.
|
434 |
-
* Hide all file paths and stack traces behind toggles by default.
|
435 |
-
* Remove support for the AMP for WordPress plugin.
|
436 |
-
* Add associative keys to the array passed to the `qm/built-in-collectors` filter.
|
437 |
-
* Drop support for PHP 5.2.
|
438 |
-
* Generally improve performance and reduce memory usage.
|
439 |
-
|
440 |
-
### 2.17.0 ###
|
441 |
-
|
442 |
-
* Add the current user object to the Request panel.
|
443 |
-
* A few improvements to the appearance of the overall layout.
|
444 |
-
* Use relative positioning in place of the nasty absolute position hack needed for some themes.
|
445 |
-
* Ensure the `get_*_template()` function exists before calling it.
|
446 |
-
* Add a `QM_DISABLE_ERROR_HANDLER` constant to disable QM's error handling.
|
447 |
-
* Switch to runtime filtering of user capabilities instead of granting the `view_query_monitor` cap upon activation.
|
448 |
-
* Correct a bunch of inline docs and code standards.
|
449 |
-
|
450 |
-
|
451 |
-
### 2.16.2 ###
|
452 |
-
|
453 |
-
* Correctly handle re-selection of filters with a saved value that contains special characters.
|
454 |
-
* Show the correct caller for Super Admin capability checks.
|
455 |
-
|
456 |
-
|
457 |
-
### 2.16.1 ###
|
458 |
-
|
459 |
-
* Update the plugin version number (no functional changes from 2.16.0).
|
460 |
-
|
461 |
-
### 2.16.0 ###
|
462 |
-
|
463 |
-
* Introduce a new panel for displaying user capability checks that have been performed during the page load.
|
464 |
-
* Remember the picked value in all the filters. Uses localStorage in the browser.
|
465 |
-
* Add a "Non-Core" filter to the Component filter control in all panels.
|
466 |
-
* Add a "Non-SELECT" filter to the query type filter control in the Queries panel.
|
467 |
-
* Display collapsed stack traces by default in all panels.
|
468 |
-
* Add the error code to the Database Errors output.
|
469 |
-
* Improve the visual appearance of the column sorting controls.
|
470 |
-
* Improved display for parameter values in call stacks.
|
471 |
-
* Any files within `wp-content` which don't have a component are now grouped by the root directory or file name.
|
472 |
-
|
3 |
Tags: debug, debug-bar, debugging, development, developer, performance, profiler, queries, query monitor, rest-api
|
4 |
Requires at least: 3.7
|
5 |
Tested up to: 5.6
|
6 |
+
Stable tag: 3.6.7
|
7 |
License: GPLv2 or later
|
8 |
Requires PHP: 5.3
|
9 |
Donate link: https://johnblackbourn.com/donations/
|
131 |
|
132 |
In addition, if you like the plugin then I'd love for you to [leave a review](https://wordpress.org/support/view/plugin-reviews/query-monitor). Tell all your friends about it too!
|
133 |
|
134 |
+
<!-- changelog -->
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
wp-content/db.php
CHANGED
@@ -99,12 +99,12 @@ class QM_DB extends wpdb {
|
|
99 |
}
|
100 |
|
101 |
$result = parent::query( $query );
|
|
|
102 |
|
103 |
-
if ( !
|
104 |
return $result;
|
105 |
}
|
106 |
|
107 |
-
$i = $this->num_queries - 1;
|
108 |
$this->queries[ $i ]['trace'] = new QM_Backtrace( array(
|
109 |
'ignore_frames' => 1,
|
110 |
) );
|
99 |
}
|
100 |
|
101 |
$result = parent::query( $query );
|
102 |
+
$i = $this->num_queries - 1;
|
103 |
|
104 |
+
if ( ! isset( $this->queries[ $i ] ) ) {
|
105 |
return $result;
|
106 |
}
|
107 |
|
|
|
108 |
$this->queries[ $i ]['trace'] = new QM_Backtrace( array(
|
109 |
'ignore_frames' => 1,
|
110 |
) );
|