Benchmarks
Plugin footprint 40% from 16 tests
Installer 0% from 1 test
🔺 Critical test (weight: 50) | The install procedure must perform silently
Please fix the following installer errors
- The plugin did not install without errors
- > Error in wp-content/plugins/wp-phpmyadmin-extension/library_wp.php+1929
Uncaught Error: Class 'WP_Plugins_List_Table' not found in wp-content/plugins/wp-phpmyadmin-extension/library_wp.php:1929
Stack trace:
#0 wp-content/plugins/wp-phpmyadmin-extension/library_wp.php(1863): Puvox\wp_plugin->is_not_bulk_activation()
#1 wp-includes/class-wp-hook.php(312): Puvox\wp_plugin->Puvox\{closure}()
#2 wp-includes/class-wp-hook.php(334): WP_Hook->apply_filters()
#3 wp-includes/plugin.php(517): WP_Hook->do_action()
#4 wp-admin/includes/plugin.php(720): do_action()
Server metrics [RAM: ▲2.06MB] [CPU: ▲10.12ms] Passed 4 tests
An overview of server-side resources used by WP phpMyAdmin
This plugin does not affect your website's performance
Page | Memory (MB) | CPU Time (ms) |
---|---|---|
Home / | 5.52 ▲2.06 | 49.98 ▲7.39 |
Dashboard /wp-admin | 5.36 ▲2.05 | 58.63 ▲9.05 |
Posts /wp-admin/edit.php | 5.47 ▲2.12 | 64.47 ▲17.62 |
Add New Post /wp-admin/post-new.php | 7.94 ▲2.05 | 106.36 ▲7.19 |
Media Library /wp-admin/upload.php | 5.28 ▲2.05 | 51.75 ▲16.84 |
Server storage [IO: ▲20.53MB] [DB: ▲0.00MB] Passed 3 tests
Filesystem and database footprint
No storage issues were detected
Filesystem: 3,091 new files
Database: 1 new table, 7 new options
New tables |
---|
wp_wp_phpmyadmin_extension__errors_log |
New WordPress options |
---|
widget_recent-posts |
can_compress_scripts |
wp-phpmyadmin-extension |
theysaidso_admin_options |
widget_recent-comments |
widget_theysaidso_widget |
db_upgraded |
Browser metrics Passed 4 tests
An overview of browser requirements for WP phpMyAdmin
There were no issues detected in relation to browser resource usage
Page | Nodes | Memory (MB) | Script (ms) | Layout (ms) |
---|---|---|---|---|
Home / | 2,818 ▲83 | 13.30 ▼1.06 | 1.70 ▼0.59 | 38.95 ▼10.03 |
Dashboard /wp-admin | 2,209 ▲21 | 4.93 ▲0.05 | 117.29 ▲1.02 | 89.97 ▲43.26 |
Posts /wp-admin/edit.php | 2,113 ▲24 | 2.02 ▲0.03 | 37.65 ▲0.01 | 33.68 ▼4.37 |
Add New Post /wp-admin/post-new.php | 1,544 ▲30 | 23.06 ▲5.53 | 730.60 ▲34.62 | 70.75 ▲15.45 |
Media Library /wp-admin/upload.php | 1,397 ▲9 | 4.10 ▼0.08 | 97.92 ▼11.59 | 70.11 ▲23.75 |
Uninstaller [IO: ▲0.00MB] [DB: ▲0.00MB] 50% from 4 tests
🔸 Tests weight: 35 | All plugins must uninstall correctly, removing their source code and extra database tables they might have created
These items require your attention
- Zombie tables detected upon uninstall: 1 table
- wp_wp_phpmyadmin_extension__errors_log
- Zombie WordPress options were found after uninstall: 7 options
- can_compress_scripts
- widget_theysaidso_widget
- wp-phpmyadmin-extension
- theysaidso_admin_options
- widget_recent-comments
- widget_recent-posts
- db_upgraded
Smoke tests 50% from 4 tests
Server-side errors Passed 1 test
🔹 Test weight: 20 | This is a short smoke test looking for server-side errors
Good news, no errors were detected
SRP 0% from 2 tests
🔹 Tests weight: 20 | The single-responsibility principle applies for WordPress plugins as well - please make sure your PHP files perform no actions when accessed directly
Please fix the following
- 6× GET requests to PHP files return non-empty strings:
- > /wp-content/plugins/wp-phpmyadmin-extension/lib/phpMyAdmin/index.php
- > /wp-content/plugins/wp-phpmyadmin-extension/lib/phpMyAdmin/libraries/classes/Plugins/Schema/Pdf/PdfRelationSchema.php
- > /wp-content/plugins/wp-phpmyadmin-extension/lib/phpMyAdmin/libraries/classes/Plugins/Schema/Pdf/Pdf.php
- > /wp-content/plugins/wp-phpmyadmin-extension/default_config.php
- > /wp-content/plugins/wp-phpmyadmin-extension/lib/phpMyAdmin/js/messages.php
- > /wp-content/plugins/wp-phpmyadmin-extension/lib/phpMyAdmin/url.php
- 1463× PHP files trigger errors when accessed directly with GET requests (only 10 are shown):
- > PHP Fatal error
Uncaught Error: Class 'PhpMyAdmin\\Plugins\\Transformations\\Abs\\LongToIPv4TransformationsPlugin' not found in wp-content/plugins/wp-phpmyadmin-extension/lib/phpMyAdmin/libraries/classes/Plugins/Transformations/Text_Plain_Longtoipv4.php:15
- > PHP Fatal error
Uncaught Error: Class 'PhpMyAdmin\\Plugins\\ImportPlugin' not found in wp-content/plugins/wp-phpmyadmin-extension/lib/phpMyAdmin/libraries/classes/Plugins/Import/ImportOds.php:38
- > PHP Fatal error
Uncaught Error: Interface 'Ramsey\\Uuid\\Provider\\DceSecurityProviderInterface' not found in wp-content/plugins/wp-phpmyadmin-extension/lib/phpMyAdmin/vendor/ramsey/uuid/src/Provider/Dce/SystemDceSecurityProvider.php:36
- > PHP Fatal error
Uncaught Error: Interface 'BaconQrCode\\Exception\\ExceptionInterface' not found in wp-content/plugins/wp-phpmyadmin-extension/lib/phpMyAdmin/vendor/bacon/bacon-qr-code/src/Exception/RuntimeException.php:6
- > PHP Fatal error
Uncaught Error: Class 'PhpMyAdmin\avigation\odes\ode' not found in wp-content/plugins/wp-phpmyadmin-extension/lib/phpMyAdmin/libraries/classes/Navigation/Nodes/NodeDatabaseChild.php:20
- > PHP Fatal error
Uncaught Error: Class 'Symfony\\Component\\Config\\Definition\\Exception\\InvalidConfigurationException' not found in wp-content/plugins/wp-phpmyadmin-extension/lib/phpMyAdmin/vendor/symfony/config/Definition/Exception/ForbiddenOverwriteException.php:20
- > PHP Fatal error
Uncaught Error: Class 'PhpMyAdmin\\Plugins\\Transformations\\Abs\\InlineTransformationsPlugin' not found in wp-content/plugins/wp-phpmyadmin-extension/lib/phpMyAdmin/libraries/classes/Plugins/Transformations/Output/Image_PNG_Inline.php:15
- > PHP Fatal error
Uncaught Error: Class 'Brick\\Math\\Exception\\MathException' not found in wp-content/plugins/wp-phpmyadmin-extension/lib/phpMyAdmin/vendor/brick/math/src/Exception/IntegerOverflowException.php:12
- > PHP Fatal error
Uncaught Error: Interface 'Ramsey\\Uuid\\Exception\\UuidExceptionInterface' not found in wp-content/plugins/wp-phpmyadmin-extension/lib/phpMyAdmin/vendor/ramsey/uuid/src/Exception/TimeSourceException.php:22
- > PHP Fatal error
Uncaught Error: Interface 'BaconQrCode\\Renderer\\Eye\\EyeInterface' not found in wp-content/plugins/wp-phpmyadmin-extension/lib/phpMyAdmin/vendor/bacon/bacon-qr-code/src/Renderer/Eye/SimpleCircleEye.php:11
- > PHP Fatal error
User-side errors Passed 1 test
🔹 Test weight: 20 | This is a smoke test targeting browser errors/issues
There were no browser issues found
Optimizations
Plugin configuration 93% from 29 tests
readme.txt 94% from 16 tests
It's important to format your readme.txt file correctly as it is parsed for the public listing of your plugin
Please fix the following attributes:
- Contributors: Contributors not specified
wp-phpmyadmin-extension/index.php 92% from 13 tests
The principal PHP file in "WP phpMyAdmin" v. 5.2.1.02 is loaded by WordPress automatically on each request
You should first fix the following items:
- Main file name: Name the main plugin file the same as the plugin slug ("wp-phpmyadmin-extension.php" instead of "index.php")
Code Analysis 95% from 3 tests
File types Passed 1 test
🔸 Test weight: 35 | A short glimpse at programming languages used with this plugin and a check that no dangerous files are present
Everything looks great! No dangerous files found in this plugin353,418 lines of code in 2,753 files:
Language | Files | Blank lines | Comment lines | Lines of code |
---|---|---|---|---|
PHP | 2,208 | 50,903 | 140,036 | 261,456 |
JavaScript | 114 | 5,236 | 14,367 | 55,121 |
Twig | 264 | 1,128 | 173 | 17,841 |
JSON | 62 | 1 | 0 | 6,920 |
Markdown | 70 | 1,951 | 0 | 5,587 |
Sass | 23 | 1,002 | 121 | 4,595 |
CSS | 6 | 102 | 74 | 1,601 |
SQL | 4 | 96 | 178 | 296 |
SVG | 1 | 0 | 0 | 1 |
HTML | 1 | 1 | 0 | 0 |
PHP code 0% from 2 tests
An short overview of logical lines of code, cyclomatic complexity, and other code metrics
Please tend to the following items
- Class cyclomatic complexity has to be reduced to less than 1000 (currently 4,415)
- Cyclomatic complexity of methods has to be reduced to less than 100 (currently 500)
Cyclomatic complexity | |
---|---|
Average complexity per logical line of code | 0.41 |
Average class complexity | 17.61 |
▷ Minimum class complexity | 1.00 |
▷ Maximum class complexity | 4,415.00 |
Average method complexity | 3.77 |
▷ Minimum method complexity | 1.00 |
▷ Maximum method complexity | 500.00 |
Code structure | ||
---|---|---|
Namespaces | 290 | |
Interfaces | 179 | |
Traits | 44 | |
Classes | 1,853 | |
▷ Abstract classes | 135 | 7.29% |
▷ Concrete classes | 1,718 | 92.71% |
▷ Final classes | 431 | 25.09% |
Methods | 12,830 | |
▷ Static methods | 2,688 | 20.95% |
▷ Public methods | 10,344 | 80.62% |
▷ Protected methods | 742 | 5.78% |
▷ Private methods | 1,744 | 13.59% |
Functions | 1,829 | |
▷ Named functions | 1,491 | 81.52% |
▷ Anonymous functions | 338 | 18.48% |
Constants | 1,809 | |
▷ Global constants | 68 | 3.76% |
▷ Class constants | 1,741 | 96.24% |
▷ Public constants | 1,533 | 88.05% |
Plugin size Passed 2 tests
Image compression Passed 2 tests
Using a strong compression for your PNG files is a great way to speed-up your plugin
257 compressed PNG files occupy 0.34MB
Potential savings
Compression of 5 random PNG files using pngquant | |||
---|---|---|---|
File | Size - original | Size - compressed | Savings |
lib/phpMyAdmin/themes/pmahomme/img/new_struct_selected.png | 0.18KB | 0.26KB | 0.00% |
lib/phpMyAdmin/themes/pmahomme/img/b_comment.png | 0.33KB | 0.43KB | 0.00% |
lib/phpMyAdmin/themes/pmahomme/img/designer/2rightarrow_m.png | 0.61KB | 0.67KB | 0.00% |
lib/phpMyAdmin/themes/pmahomme/img/b_views.png | 0.59KB | 0.76KB | 0.00% |
lib/phpMyAdmin/themes/pmahomme/img/b_docs.png | 0.69KB | 0.82KB | 0.00% |