Benchmarks
Plugin footprint 65% from 16 tests
Installer Passed 1 test
🔺 Critical test (weight: 50) | The install procedure must perform silently
Install script ran successfully
Server metrics [RAM: ▲0.21MB] [CPU: ▼2.17ms] Passed 4 tests
Server-side resources used by Sarbacane
This plugin has minimal impact on server resources
Page | Memory (MB) | CPU Time (ms) |
---|---|---|
Home / | 3.67 ▲0.21 | 39.36 ▼5.50 |
Dashboard /wp-admin | 3.52 ▲0.21 | 47.22 ▼3.04 |
Posts /wp-admin/edit.php | 3.63 ▲0.27 | 50.52 ▲2.69 |
Add New Post /wp-admin/post-new.php | 6.10 ▲0.21 | 92.85 ▲5.12 |
Media Library /wp-admin/upload.php | 3.44 ▲0.21 | 34.63 ▼2.82 |
Connection /wp-admin/admin.php?page=wp_interconnection | 3.42 | 32.83 |
Sarbacane /wp-admin/admin.php?page=sarbacane | 3.42 | 32.48 |
Configuration /wp-admin/admin.php?page=wp_lists_sync | 3.42 | 33.20 |
Server storage [IO: ▲0.26MB] [DB: ▲0.00MB] Passed 3 tests
A short overview of filesystem and database impact
The plugin installed successfully
Filesystem: 40 new files
Database: 2 new tables, 7 new options
New tables |
---|
wp_sd_updates |
wp_sd_subscribers |
New WordPress options |
---|
can_compress_scripts |
theysaidso_admin_options |
widget_recent-comments |
widget_theysaidso_widget |
db_upgraded |
widget_recent-posts |
sarbacane_news_registration_button |
Browser metrics Passed 4 tests
A check of browser resources used by Sarbacane
There were no issues detected in relation to browser resource usage
Page | Nodes | Memory (MB) | Script (ms) | Layout (ms) |
---|---|---|---|---|
Home / | 2,830 ▲95 | 13.65 ▼0.70 | 1.59 ▼0.94 | 38.69 ▼7.02 |
Dashboard /wp-admin | 2,236 ▲48 | 5.84 ▲0.97 | 95.27 ▼16.95 | 74.18 ▲30.93 |
Posts /wp-admin/edit.php | 2,122 ▲33 | 2.04 ▲0.04 | 39.43 ▲4.48 | 34.52 ▲0.03 |
Add New Post /wp-admin/post-new.php | 1,548 ▲15 | 22.98 ▼0.03 | 658.63 ▼1.98 | 54.97 ▼2.11 |
Media Library /wp-admin/upload.php | 1,418 ▲30 | 4.21 ▼0.00 | 98.52 ▼9.91 | 75.76 ▲29.17 |
Connection /wp-admin/admin.php?page=wp_interconnection | 889 | 2.08 | 22.80 | 32.18 |
Sarbacane /wp-admin/admin.php?page=sarbacane | 953 | 2.19 | 24.69 | 36.38 |
Configuration /wp-admin/admin.php?page=wp_lists_sync | 947 | 2.20 | 24.08 | 32.10 |
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
You still need to fix the following
- The plugin did not uninstall successfully, leaving 1 table in the database
- wp_sd_subscribers
- The uninstall procedure has failed, leaving 6 options in the database
- widget_recent-posts
- db_upgraded
- can_compress_scripts
- widget_recent-comments
- theysaidso_admin_options
- widget_theysaidso_widget
Smoke tests 75% from 4 tests
Server-side errors Passed 1 test
🔹 Test weight: 20 | A shallow check that no server-side errors were triggered
The smoke test was a success, however most plugin functionality was not tested
SRP 50% 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
The following issues need your attention
- 1× PHP files trigger server errors when accessed directly:
- > PHP Fatal error
Uncaught Error: Class 'WP_Widget' not found in wp-content/plugins/sarbacane-desktop/class.sarbacane-newsletterwidget.php:6
- > PHP Fatal error
User-side errors Passed 1 test
🔹 Test weight: 20 | This is just a short smoke test looking for browser issues
Everything seems fine on the user side
Optimizations
Plugin configuration 93% from 29 tests
readme.txt 94% from 16 tests
The readme.txt file is undoubtedly the most important file in your plugin, preparing it for public listing on WordPress.org
These attributes need your attention:
- Screenshots: Please a description for screenshot #2 in sarbacane-desktop/assets to your readme.txt
sarbacane-desktop/sarbacane.php 92% from 13 tests
The primary PHP file in "Sarbacane" version 1.4.15 is used by WordPress to initiate all plugin functionality
Please make the necessary changes and fix the following:
- Main file name: Name the main plugin file the same as the plugin slug ("sarbacane-desktop.php" instead of "sarbacane.php")
Code Analysis Passed 3 tests
File types Passed 1 test
🔸 Test weight: 35 | A short check of programming languages and file extensions; no executable files are allowed
No dangerous file extensions were detected2,994 lines of code in 24 files:
Language | Files | Blank lines | Comment lines | Lines of code |
---|---|---|---|---|
PHP | 14 | 103 | 32 | 1,927 |
CSS | 6 | 92 | 3 | 546 |
PO File | 1 | 94 | 117 | 273 |
JavaScript | 3 | 37 | 8 | 248 |
PHP code Passed 2 tests
Analyzing logical lines of code, cyclomatic complexity, and other code metrics
No complexity issues detected
Cyclomatic complexity | |
---|---|
Average complexity per logical line of code | 0.43 |
Average class complexity | 27.00 |
▷ Minimum class complexity | 1.00 |
▷ Maximum class complexity | 120.00 |
Average method complexity | 4.87 |
▷ Minimum method complexity | 1.00 |
▷ Maximum method complexity | 43.00 |
Code structure | ||
---|---|---|
Namespaces | 0 | |
Interfaces | 0 | |
Traits | 0 | |
Classes | 7 | |
▷ Abstract classes | 0 | 0.00% |
▷ Concrete classes | 7 | 100.00% |
▷ Final classes | 0 | 0.00% |
Methods | 47 | |
▷ Static methods | 2 | 4.26% |
▷ Public methods | 28 | 59.57% |
▷ Protected methods | 0 | 0.00% |
▷ Private methods | 19 | 40.43% |
Functions | 0 | |
▷ Named functions | 0 | 0.00% |
▷ Anonymous functions | 0 | 0.00% |
Constants | 0 | |
▷ Global constants | 0 | 0.00% |
▷ Class constants | 0 | 0.00% |
▷ Public constants | 0 | 0.00% |
Plugin size Passed 2 tests
Image compression Passed 2 tests
PNG files should be compressed to save space and minimize bandwidth usage
9 PNG files occupy 0.13MB with 0.07MB in potential savings
Potential savings
Compression of 5 random PNG files using pngquant | |||
---|---|---|---|
File | Size - original | Size - compressed | Savings |
images/arrow-down.png | 1.07KB | 0.25KB | ▼ 76.23% |
images/preview.png | 75.87KB | 30.11KB | ▼ 60.31% |
images/document-list.png | 0.35KB | 0.27KB | ▼ 24.23% |
images/sd.png | 50.48KB | 11.58KB | ▼ 77.07% |
images/cross.png | 1.02KB | 0.64KB | ▼ 37.27% |