=== Ultimate DebugBar ===
Contributors: avram
Donate link: https://paypal.me/avramator
Tags: queries, database, sql, hooks, debug
Requires at least: 5.0
Tested up to: 7.0.2
Requires PHP: 8.2
License: MIT
License URI: https://opensource.org/licenses/MIT
Stable tag: 1.0

Ultimate debug bar for your Wordpress website.

== Description ==

Ultimate debug bar for your Wordpress website. On each page of your website a neat debug bar will be displayed with the following info:

* PHP version
* Request execution time
* Request memory consumption
* Wordpress-related PHP constants defined in your wp-config.php file
* All website options (wp_options)
* Request data
* Timeline (waterfall) where you can see which portion of execution takes too much time
* List of all hooks triggered on the page whose execution time exceeds 1ms, along with some stats
* List of all database queries performed on the page, along with their source and execution time
* Last 100 lines of your debug.log file (if it exists in wp-content)
* List of loaded PHP files (categorized)

Besides that, it will track request data/hooks/db queries/mem. consumption in AJAX calls too (beta).

This plugin is meant to be used during development and/or debugging only. Only administrators and network administrators (in multi-site environment) can see the debugbar, unless the `WP_DEBUG` is set to `true`. In that case, everyone will see the debugbar.

Try it instantly on [tastewp.com](https://tastewp.com/new?pre-installed-plugin-slug=ultimate-debugbar&redirect=%2F&ni=true)!

== Installation ==
Use built in plugin installer or unzip ultimate-debugbar.zip in your wp-content/plugins and activate the plugin through the dashboard.

== Frequently Asked Questions ==

= AJAX requests are not working when the plugin is active =

Your server is blocking Ultimate DebugBar. If you're running nginx, [check this](https://stackoverflow.com/questions/23844761/upstream-sent-too-big-header-while-reading-response-header-from-upstream).

= AJAX requests are not being displayed in the debugbar =

The collected data for that request was too large to send back in HTTP headers (php-debugbar caps this at 250,000 bytes total) and was dropped. There's no workaround yet beyond reducing what you're collecting.

= How do I disable tracking AJAX requests? =

Add the following code to your `wp-config.php`:

`define('ULTIMATE_DEBUG_AJAX', false);`

== Screenshots ==
1. List of all database queries with their timings
2. List of (slow) hooks lasting over 1ms in an AJAX request
3. Deserialized/formatted config options
4. Timeline (waterfall) of WP execution (TTFB)

== Changelog ==

= 1.0 =
- Upgraded the underlying library from the abandoned maximebf/debugbar v1 to the maintained php-debugbar/php-debugbar v3, dropping the ancient pinned symfony/var-dumper 3.4.28
- Removed the remote https://s.w.org/ favicon request; the icon is now bundled with the plugin
- Refactored all collectors to modern, strictly-typed PHP
- Hid more sensitive wp-config.php constants (DB credentials, keys, salts) from the Constants tab
- Various small bugfixes (wrong tooltip/icon copy-paste, missing text domain on translatable strings)

= 0.2 =
- updated debugbar (requires PHP 7.1 now)
- added plugin icon

= 0.1 =
- initial release

== Upgrade Notice ==

= 1.0 =
Now requires PHP 8.2 (up from 7.1) to match the upgraded debugbar library. Also fixes a fatal error some installs hit on activation — update is recommended for anyone affected.
