Benchmarks
Plugin footprint 40% from 16 tests
Installer 0% from 1 test
🔺 Critical test (weight: 50) | Checking the installer triggered no errors
You still need to fix the following installer errors
- The plugin cannot be installed
- > Deprecated in wp-content/plugins/easy-weather-widget/eww/widget.php+18
Function create_function() is deprecated
Server metrics [RAM: ▼1.96MB] [CPU: ▼49.29ms] Passed 4 tests
A check of server-side resources used by Easy Weather Widget
This plugin does not affect your website's performance
Page | Memory (MB) | CPU Time (ms) |
---|---|---|
Home / | 2.03 ▼1.43 | 4.84 ▼36.60 |
Dashboard /wp-admin | 2.05 ▼1.26 | 6.59 ▼42.46 |
Posts /wp-admin/edit.php | 2.05 ▼1.31 | 8.71 ▼38.20 |
Add New Post /wp-admin/post-new.php | 2.05 ▼3.84 | 5.81 ▼79.88 |
Media Library /wp-admin/upload.php | 2.05 ▼1.18 | 7.21 ▼24.92 |
Server storage [IO: ▲1.94MB] [DB: ▲0.00MB] Passed 3 tests
A short overview of filesystem and database impact
No storage issues were detected
Filesystem: 172 new files
Database: no new tables, 7 new options
New WordPress options |
---|
widget_recent-comments |
widget_recent-posts |
db_upgraded |
theysaidso_admin_options |
can_compress_scripts |
widget_theysaidso_widget |
widget_eww-widget |
Browser metrics Passed 4 tests
This is an overview of browser requirements for Easy Weather Widget
This plugin has a minimal impact on browser resources
Page | Nodes | Memory (MB) | Script (ms) | Layout (ms) |
---|---|---|---|---|
Home / | 2,812 ▲77 | 13.22 ▼1.15 | 4.24 ▲2.62 | 39.40 ▼1.19 |
Dashboard /wp-admin | 2,216 ▲25 | 4.86 ▼1.02 | 107.83 ▲9.56 | 37.02 ▼8.16 |
Posts /wp-admin/edit.php | 2,098 ▲9 | 2.05 ▲0.01 | 38.73 ▲3.78 | 37.12 ▲2.02 |
Add New Post /wp-admin/post-new.php | 1,543 ▲10 | 23.27 ▲0.17 | 660.77 ▲28.62 | 66.52 ▲10.29 |
Media Library /wp-admin/upload.php | 1,398 ▲13 | 4.21 ▼0.03 | 105.07 ▲4.09 | 46.88 ▲0.78 |
Uninstaller [IO: ▲0.00MB] [DB: ▲0.00MB] 50% from 4 tests
🔸 Tests weight: 35 | Checking the uninstaller removed all traces of the plugin
It is recommended to fix the following
- The plugin did not uninstall gracefully
- > Deprecated in wp-content/plugins/easy-weather-widget/eww/widget.php+18
Function create_function() is deprecated
- Zombie WordPress options were found after uninstall: 7 options
- widget_recent-comments
- can_compress_scripts
- widget_eww-widget
- widget_theysaidso_widget
- theysaidso_admin_options
- widget_recent-posts
- db_upgraded
Smoke tests 75% from 4 tests
Server-side errors Passed 1 test
🔹 Test weight: 20 | A smoke test targeting server-side errors
Even though everything seems fine, this is not an exhaustive test
SRP 50% from 2 tests
🔹 Tests weight: 20 | A shallow check of the single-responsibility principle; PHP files should perform no action - including output of placeholder text - and trigger no errors when accessed directly
The following issues need your attention
- 13× PHP files trigger errors when accessed directly with GET requests (only 10 are shown):
- > PHP Fatal error
Uncaught Error: Class 'PHPUnit_Framework_TestCase' not found in wp-content/plugins/easy-weather-widget/vendor/pimple/pimple/src/Pimple/Tests/PimpleTest.php:34
- > PHP Fatal error
Uncaught Error: Interface 'EWW\\Settings\\Settings' not found in wp-content/plugins/easy-weather-widget/eww/settings/open-weather-api.php:5
- > PHP Fatal error
Uncaught Error: Call to undefined function add_action() in wp-content/plugins/easy-weather-widget/translate.php:5
- > PHP Fatal error
Uncaught Error: Class 'EWW\\Iocable\\Iocable' not found in wp-content/plugins/easy-weather-widget/eww/get/open-weather-api.php:8
- > PHP Fatal error
Uncaught Error: Class 'EWW\\Iocable\\Iocable' not found in wp-content/plugins/easy-weather-widget/eww/icons/weather-icons.php:11
- > PHP Fatal error
Uncaught Error: Call to a member function factory() on array in wp-content/plugins/easy-weather-widget/services.php:9
- > PHP Fatal error
Uncaught Error: Class 'WP_Widget' not found in wp-content/plugins/easy-weather-widget/eww/widget.php:8
- > PHP Fatal error
Uncaught Error: Class 'EWW\\Iocable\\Iocable' not found in wp-content/plugins/easy-weather-widget/eww/notice/notice.php:7
- > PHP Fatal error
Uncaught Error: Call to undefined function esc_attr_e() in wp-content/plugins/easy-weather-widget/views/widget.php:5
- > PHP Fatal error
Uncaught Error: Interface 'Pimple\\ServiceProviderInterface' not found in wp-content/plugins/easy-weather-widget/vendor/pimple/pimple/src/Pimple/Tests/Fixtures/PimpleServiceProvider.php:32
- > 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, but this is not an exhaustive test
Optimizations
Plugin configuration 97% 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
These attributes need to be fixed:
- Screenshots: These screenshots do not have images: #1 (Widget admin screenshot), #2 (Widget screenshot)
easy-weather-widget/easy-weather-widget.php Passed 13 tests
The primary PHP file in "Easy Weather Widget" version 3.2.5 is used by WordPress to initiate all plugin functionality
94 characters long description:
Easy Weather Widget provides you with an easy to use widget which outputs weather information.
Code Analysis Passed 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
Good job! No executable or dangerous file extensions detected15,608 lines of code in 143 files:
Language | Files | Blank lines | Comment lines | Lines of code |
---|---|---|---|---|
CSS | 6 | 607 | 102 | 8,408 |
PHP | 51 | 468 | 608 | 2,018 |
Sass | 36 | 19 | 6 | 1,862 |
LESS | 32 | 13 | 48 | 1,753 |
C | 1 | 147 | 32 | 743 |
SVG | 1 | 0 | 0 | 257 |
JSON | 7 | 0 | 0 | 193 |
C/C++ Header | 2 | 36 | 46 | 120 |
JavaScript | 1 | 14 | 2 | 77 |
reStructuredText | 1 | 66 | 73 | 62 |
m4 | 1 | 11 | 11 | 41 |
Markdown | 2 | 21 | 0 | 34 |
YAML | 1 | 5 | 0 | 27 |
XML | 1 | 1 | 0 | 13 |
PHP code Passed 2 tests
This is a short overview of cyclomatic complexity and code structure for this plugin
This plugin has no cyclomatic complexity issues
Cyclomatic complexity | |
---|---|
Average complexity per logical line of code | 0.17 |
Average class complexity | 4.78 |
▷ Minimum class complexity | 1.00 |
▷ Maximum class complexity | 39.00 |
Average method complexity | 1.95 |
▷ Minimum method complexity | 1.00 |
▷ Maximum method complexity | 18.00 |
Code structure | ||
---|---|---|
Namespaces | 10 | |
Interfaces | 4 | |
Traits | 0 | |
Classes | 19 | |
▷ Abstract classes | 1 | 5.26% |
▷ Concrete classes | 18 | 94.74% |
▷ Final classes | 0 | 0.00% |
Methods | 110 | |
▷ Static methods | 5 | 4.55% |
▷ Public methods | 106 | 96.36% |
▷ Protected methods | 2 | 1.82% |
▷ Private methods | 2 | 1.82% |
Functions | 38 | |
▷ Named functions | 1 | 2.63% |
▷ Anonymous functions | 37 | 97.37% |
Constants | 1 | |
▷ Global constants | 0 | 0.00% |
▷ Class constants | 1 | 100.00% |
▷ Public constants | 1 | 100.00% |
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
There were not PNG files found in your plugin