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.60MB] [CPU: ▼1.68ms] Passed 4 tests
A check of server-side resources used by Squirrels Auto Inventory
Normal server usage
Page | Memory (MB) | CPU Time (ms) |
---|---|---|
Home / | 4.03 ▲0.57 | 39.28 ▲1.69 |
Dashboard /wp-admin | 3.93 ▲0.59 | 51.79 ▼4.90 |
Posts /wp-admin/edit.php | 3.98 ▲0.63 | 57.06 ▲13.78 |
Add New Post /wp-admin/post-new.php | 6.51 ▲0.62 | 86.12 ▼6.39 |
Media Library /wp-admin/upload.php | 3.83 ▲0.60 | 38.80 ▲2.89 |
Types /wp-admin/edit.php?post_type=squirrels_type | 3.95 | 47.73 |
Makes /wp-admin/edit.php?post_type=squirrels_make | 3.99 | 57.10 |
Models /wp-admin/edit.php?post_type=squirrels_model | 4.28 | 112.50 |
Settings /wp-admin/admin.php?page=squirrels | 3.83 | 38.22 |
Inventory /wp-admin/admin.php?page=squirrels_inventory | 3.93 | 40.93 |
Features /wp-admin/admin.php?page=squirrels_features | 3.86 | 38.50 |
Server storage [IO: ▲0.26MB] [DB: ▲0.29MB] Passed 3 tests
Filesystem and database footprint
The plugin installed successfully
Filesystem: 28 new files
Database: 3 new tables, 7 new options
New tables |
---|
wp_squirrels_features |
wp_squirrels_images |
wp_squirrels_inventory |
New WordPress options |
---|
widget_recent-posts |
theysaidso_admin_options |
can_compress_scripts |
squirrels_inventory_version |
db_upgraded |
widget_theysaidso_widget |
widget_recent-comments |
Browser metrics Passed 4 tests
An overview of browser requirements for Squirrels Auto Inventory
There were no issues detected in relation to browser resource usage
Page | Nodes | Memory (MB) | Script (ms) | Layout (ms) |
---|---|---|---|---|
Home / | 3,144 ▲398 | 15.22 ▲0.57 | 5.83 ▲4.20 | 37.33 ▼4.39 |
Dashboard /wp-admin | 2,409 ▲220 | 6.44 ▲1.44 | 126.19 ▲24.55 | 40.51 ▼0.56 |
Posts /wp-admin/edit.php | 2,325 ▲239 | 3.35 ▲1.34 | 50.28 ▲12.69 | 31.40 ▼4.06 |
Add New Post /wp-admin/post-new.php | 1,582 ▲40 | 18.43 ▼4.87 | 600.22 ▼56.18 | 36.60 ▼17.20 |
Media Library /wp-admin/upload.php | 1,465 ▲74 | 4.12 ▼0.05 | 81.80 ▼17.59 | 45.31 ▼0.22 |
Types /wp-admin/edit.php?post_type=squirrels_type | 2,312 | 3.39 | 48.80 | 30.70 |
Makes /wp-admin/edit.php?post_type=squirrels_make | 3,673 | 3.40 | 50.64 | 32.67 |
Models /wp-admin/edit.php?post_type=squirrels_model | 3,738 | 3.42 | 58.59 | 40.65 |
Settings /wp-admin/admin.php?page=squirrels | 1,185 | 3.08 | 40.70 | 26.68 |
Inventory /wp-admin/admin.php?page=squirrels_inventory | 1,386 | 3.19 | 39.69 | 29.28 |
Features /wp-admin/admin.php?page=squirrels_features | 1,189 | 3.19 | 40.17 | 27.58 |
Uninstaller [IO: ▲0.00MB] [DB: ▲0.29MB] 50% from 4 tests
🔸 Tests weight: 35 | The uninstall procedure must remove all plugin files and extra database tables
The following items require your attention
- Zombie tables detected upon uninstall: 3 tables
- wp_squirrels_images
- wp_squirrels_inventory
- wp_squirrels_features
- Zombie WordPress options were found after uninstall: 7 options
- db_upgraded
- widget_theysaidso_widget
- theysaidso_admin_options
- widget_recent-comments
- widget_recent-posts
- can_compress_scripts
- squirrels_inventory_version
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
Everything seems fine, however this is by no means an exhaustive test
SRP 50% from 2 tests
🔹 Tests weight: 20 | SRP (Single-Responsibility Principle) - PHP files must act as libraries and never output text or perform any action when accessed directly in a browser
Please fix the following
- 18× GET requests to PHP files have triggered server-side errors or warnings (only 10 are shown):
- > PHP Fatal error
Uncaught Error: Class 'SquirrelsInventory\\CustomPostType' not found in wp-content/plugins/squirrels-auto-inventory/classes/Make.php:9
- > PHP Fatal error
require_once(): Failed opening required 'ABSPATHwp-admin/includes/class-wp-list-table.php' (include_path='.:/usr/share/php') in wp-content/plugins/squirrels-auto-inventory/classes/FeatureTable.php on line 6
- > PHP Warning
Use of undefined constant ABSPATH - assumed 'ABSPATH' (this will throw an Error in a future version of PHP) in wp-content/plugins/squirrels-auto-inventory/classes/FeatureTable.php on line 6
- > PHP Fatal error
Uncaught Error: Class 'SquirrelsInventory\\Feature' not found in wp-content/plugins/squirrels-auto-inventory/includes/features.php:4
- > PHP Fatal error
require_once(): Failed opening required 'ABSPATHwp-admin/includes/class-wp-list-table.php' (include_path='.:/usr/share/php') in wp-content/plugins/squirrels-auto-inventory/classes/AutoTable.php on line 6
- > PHP Fatal error
Uncaught Error: Using $this when not in object context in wp-content/plugins/squirrels-auto-inventory/includes/public_inventory.php:7
- > PHP Fatal error
Uncaught Error: Call to undefined function get_post_custom() in wp-content/plugins/squirrels-auto-inventory/includes/model_meta.php:4
- > PHP Warning
require_once(ABSPATHwp-admin/includes/class-wp-list-table.php): failed to open stream: No such file or directory in wp-content/plugins/squirrels-auto-inventory/classes/AutoTable.php on line 6
- > PHP Fatal error
Uncaught Error: Class 'SquirrelsInventory\\CustomPostType' not found in wp-content/plugins/squirrels-auto-inventory/classes/AutoType.php:9
- > PHP Warning
Use of undefined constant ABSPATH - assumed 'ABSPATH' (this will throw an Error in a future version of PHP) in wp-content/plugins/squirrels-auto-inventory/classes/AutoTable.php on line 6
- > PHP Fatal error
User-side errors Passed 1 test
🔹 Test weight: 20 | Just a short smoke test targeting errors on the browser (console and network errors and warnings)
There were no browser issues found
Optimizations
Plugin configuration 90% from 29 tests
readme.txt 94% from 16 tests
Perhaps the most important file in your plugin readme.txt gets parsed in order to generate the public listing of your plugin
Attributes that need to be fixed:
- Screenshots: Add a description for screenshot #3 in squirrels-auto-inventory/assets to your readme.txt
squirrels-auto-inventory/squirrels_inventory.php 85% from 13 tests
The main PHP script in "Squirrels Auto Inventory" version 1.0.3 is automatically included on every request by WordPress
You should first fix the following items:
- Main file name: It is recommended to name the main PHP file as the plugin slug ("squirrels-auto-inventory.php" instead of "squirrels_inventory.php")
- Text Domain: The text domain follows the same naming rules as the plugin slug: lowercase characters and dashes
Code Analysis Passed 3 tests
File types Passed 1 test
🔸 Test weight: 35 | Executable files are considered dangerous and should not be included with any WordPress plugin
Everything looks great! No dangerous files found in this plugin5,407 lines of code in 26 files:
Language | Files | Blank lines | Comment lines | Lines of code |
---|---|---|---|---|
PHP | 19 | 786 | 798 | 3,821 |
CSS | 4 | 10 | 3 | 1,207 |
JavaScript | 2 | 62 | 7 | 378 |
JSON | 1 | 0 | 0 | 1 |
PHP code Passed 2 tests
Cyclomatic complexity and code structure are the fingerprint of this plugin
No cyclomatic complexity issues were detected for this plugin
Cyclomatic complexity | |
---|---|
Average complexity per logical line of code | 0.38 |
Average class complexity | 24.00 |
▷ Minimum class complexity | 1.00 |
▷ Maximum class complexity | 88.00 |
Average method complexity | 2.34 |
▷ Minimum method complexity | 1.00 |
▷ Maximum method complexity | 25.00 |
Code structure | ||
---|---|---|
Namespaces | 1 | |
Interfaces | 0 | |
Traits | 0 | |
Classes | 12 | |
▷ Abstract classes | 0 | 0.00% |
▷ Concrete classes | 12 | 100.00% |
▷ Final classes | 0 | 0.00% |
Methods | 205 | |
▷ Static methods | 10 | 4.88% |
▷ Public methods | 197 | 96.10% |
▷ Protected methods | 2 | 0.98% |
▷ Private methods | 6 | 2.93% |
Functions | 8 | |
▷ Named functions | 0 | 0.00% |
▷ Anonymous functions | 8 | 100.00% |
Constants | 9 | |
▷ Global constants | 0 | 0.00% |
▷ Class constants | 9 | 100.00% |
▷ Public constants | 9 | 100.00% |
Plugin size Passed 2 tests
Image compression Passed 2 tests
PNG files should be compressed to save space and minimize bandwidth usage
There were not PNG files found in your plugin