Benchmarks
Plugin footprint 65% from 16 tests
Installer Passed 1 test
🔺 Critical test (weight: 50) | The install procedure must perform silently
This plugin's installer ran successfully
Server metrics [RAM: ▲0.05MB] [CPU: ▼4.70ms] Passed 4 tests
This is a short check of server-side resources used by Offload Media - Cloud Storage
No issues were detected with server-side resource usage
Page | Memory (MB) | CPU Time (ms) |
---|---|---|
Home / | 3.51 ▲0.04 | 42.91 ▼1.07 |
Dashboard /wp-admin | 3.36 ▲0.06 | 50.83 ▲1.62 |
Posts /wp-admin/edit.php | 3.41 ▲0.06 | 51.48 ▼7.84 |
Add New Post /wp-admin/post-new.php | 5.96 ▲0.07 | 91.03 ▼11.50 |
Media Library /wp-admin/upload.php | 3.29 ▲0.06 | 43.17 ▲7.98 |
Dashboard /wp-admin/admin.php?page=acoofm-admin-ui | 3.28 | 39.78 |
Server storage [IO: ▲29.28MB] [DB: ▲0.00MB] 67% from 3 tests
Input-output and database impact of this plugin
These are issues you should consider
- Total filesystem usage must be limited to 25MB (currently using 29.28MB)
Filesystem: 2,614 new files
Database: 1 new table, 7 new options
New tables |
---|
wp_acoofm_items |
New WordPress options |
---|
theysaidso_admin_options |
db_upgraded |
widget_theysaidso_widget |
can_compress_scripts |
widget_recent-comments |
widget_recent-posts |
acoofm_db_version |
Browser metrics Passed 4 tests
Checking browser requirements for Offload Media - Cloud Storage
This plugin has a minimal impact on browser resources
Page | Nodes | Memory (MB) | Script (ms) | Layout (ms) |
---|---|---|---|---|
Home / | 2,875 ▲129 | 13.31 ▼1.34 | 1.93 ▼0.01 | 39.69 ▼3.85 |
Dashboard /wp-admin | 2,241 ▲53 | 5.86 ▲0.94 | 98.93 ▼19.44 | 86.88 ▲44.75 |
Posts /wp-admin/edit.php | 2,139 ▲50 | 2.04 ▲0.05 | 36.39 ▼4.19 | 46.66 ▲10.20 |
Add New Post /wp-admin/post-new.php | 1,714 ▲190 | 22.51 ▼0.64 | 696.13 ▼6.75 | 69.08 ▲6.22 |
Media Library /wp-admin/upload.php | 1,436 ▲48 | 4.26 ▲0.03 | 99.88 ▼8.86 | 80.69 ▲35.26 |
Configure /wp-admin/admin.php?page=acoofm-admin-ui#/configure | 1,322 | 4.84 | 64.29 | 116.08 |
Dashboard /wp-admin/admin.php?page=acoofm-admin-ui | 1,307 | 4.59 | 65.16 | 109.63 |
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
- Zombie tables were found after uninstall: 1 table
- wp_acoofm_items
- The uninstall procedure has failed, leaving 7 options in the database
- db_upgraded
- widget_recent-posts
- acoofm_db_version
- widget_recent-comments
- widget_theysaidso_widget
- can_compress_scripts
- theysaidso_admin_options
Smoke tests 50% 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 0% from 2 tests
🔹 Tests weight: 20 | The single-responsibility principle: PHP files have to remain inert when accessed directly, throwing no errors and performing no actions
The following issues need your attention
- 1× PHP files output text when accessed directly:
- > /wp-content/plugins/offload-media-cloud-storage/includes/s3/vendor/mtdowling/jmespath.php/bin/jp.php
- 1080× GET requests to PHP files trigger server-side errors or Error 500 responses (only 10 are shown):
- > PHP Fatal error
Uncaught Error: Class 'Aws\\AwsClient' not found in wp-content/plugins/offload-media-cloud-storage/includes/s3/vendor/aws/aws-sdk-php/src/StorageGateway/StorageGatewayClient.php:190
- > PHP Fatal error
Uncaught Error: Class 'GuzzleHttp\\Exception\\RequestException' not found in wp-content/plugins/offload-media-cloud-storage/includes/google/vendor/guzzlehttp/guzzle/src/Exception/ConnectException.php:11
- > PHP Fatal error
Uncaught Error: Class 'Aws\\Exception\\AwsException' not found in wp-content/plugins/offload-media-cloud-storage/includes/s3/vendor/aws/aws-sdk-php/src/Sqs/Exception/SqsException.php:9
- > PHP Fatal error
Uncaught Error: Class 'Aws\\Exception\\AwsException' not found in wp-content/plugins/offload-media-cloud-storage/includes/s3/vendor/aws/aws-sdk-php/src/Personalize/Exception/PersonalizeException.php:9
- > PHP Fatal error
Uncaught Error: Class 'Aws\\Exception\\AwsException' not found in wp-content/plugins/offload-media-cloud-storage/includes/s3/vendor/aws/aws-sdk-php/src/SavingsPlans/Exception/SavingsPlansException.php:9
- > PHP Fatal error
Uncaught Error: Class 'Aws\\AwsClient' not found in wp-content/plugins/offload-media-cloud-storage/includes/s3/vendor/aws/aws-sdk-php/src/DataPipeline/DataPipelineClient.php:48
- > PHP Fatal error
Trait 'Google\\Cloud\\Core\\TimeTrait' not found in wp-content/plugins/offload-media-cloud-storage/includes/google/vendor/google/cloud-core/src/Timestamp.php on line 40
- > PHP Fatal error
Uncaught Error: Class 'Google\\Cloud\\Core\\Exception\\ServiceException' not found in wp-content/plugins/offload-media-cloud-storage/includes/google/vendor/google/cloud-core/src/Exception/FailedPreconditionException.php:24
- > PHP Fatal error
Uncaught Error: Class 'Aws\\Exception\\AwsException' not found in wp-content/plugins/offload-media-cloud-storage/includes/s3/vendor/aws/aws-sdk-php/src/Sfn/Exception/SfnException.php:9
- > PHP Fatal error
Uncaught Error: Class 'GuzzleHttp\\Promise\\RejectionException' not found in wp-content/plugins/offload-media-cloud-storage/includes/google/vendor/guzzlehttp/promises/src/CancellationException.php:8
- > 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)
No browser issues were found
Optimizations
Plugin configuration 90% from 29 tests
readme.txt 94% from 16 tests
Often overlooked, readme.txt is one of the most important files in your plugin
Attributes that need to be fixed:
- Donate link: Please fix this invalid URI: ""
offload-media-cloud-storage/start.php 85% from 13 tests
This is the main PHP file of "Offload Media - Cloud Storage" version 1.1.9, providing information about the plugin in the header fields and serving as the principal entry point to the plugin's functions
The following require your attention:
- Requires PHP: Required version number formatted incorrectly (ex. "7.0" instead of "7.0 or higher")
- Main file name: Please rename the main PHP file in this plugin to the plugin slug ("offload-media-cloud-storage.php" instead of "start.php")
Code Analysis 3% from 3 tests
File types 0% from 1 test
🔸 Test weight: 35 | This is an overview of programming languages used in this plugin; dangerous file extensions are not allowed
These items require your attention
- Do not distribute dangerous files with your plugin
- .bat - Batch File in Windows
- ☣ wp-content/plugins/offload-media-cloud-storage/includes/google/vendor/bin/google-cloud-batch.bat
- ☣ wp-content/plugins/offload-media-cloud-storage/includes/s3/vendor/bin/jp.php.bat
- ☣ wp-content/plugins/offload-media-cloud-storage/includes/s3/vendor/aws/aws-crt-php/run_tests.bat
- .bat - Batch File in Windows
Language | Files | Blank lines | Comment lines | Lines of code |
---|---|---|---|---|
PHP | 2,247 | 14,181 | 64,987 | 87,499 |
JSON | 33 | 6 | 0 | 7,876 |
Markdown | 44 | 1,785 | 0 | 5,162 |
C | 12 | 285 | 159 | 1,014 |
C/C++ Header | 3 | 115 | 56 | 466 |
PO File | 1 | 154 | 165 | 368 |
YAML | 12 | 72 | 62 | 351 |
JavaScript | 4 | 10 | 3 | 202 |
Bourne Shell | 5 | 25 | 20 | 193 |
m4 | 2 | 15 | 18 | 60 |
reStructuredText | 1 | 35 | 29 | 59 |
GLSL | 1 | 17 | 0 | 55 |
make | 2 | 17 | 16 | 51 |
XML | 2 | 0 | 0 | 43 |
CSS | 1 | 0 | 0 | 32 |
Pascal | 1 | 5 | 15 | 14 |
Bourne Again Shell | 1 | 5 | 0 | 13 |
DOS Batch | 3 | 2 | 0 | 12 |
Dockerfile | 1 | 8 | 0 | 10 |
SVG | 1 | 0 | 0 | 5 |
INI | 2 | 0 | 0 | 3 |
PHP code 50% from 2 tests
Cyclomatic complexity and code structure are the fingerprint of this plugin
It is recommended to fix the following
- Please reduce cyclomatic complexity of methods to less than 100 (currently 179)
Cyclomatic complexity | |
---|---|
Average complexity per logical line of code | 0.42 |
Average class complexity | 7.49 |
▷ Minimum class complexity | 1.00 |
▷ Maximum class complexity | 305.00 |
Average method complexity | 2.81 |
▷ Minimum method complexity | 1.00 |
▷ Maximum method complexity | 179.00 |
Code structure | ||
---|---|---|
Namespaces | 705 | |
Interfaces | 96 | |
Traits | 70 | |
Classes | 1,305 | |
▷ Abstract classes | 29 | 2.22% |
▷ Concrete classes | 1,276 | 97.78% |
▷ Final classes | 83 | 6.50% |
Methods | 5,415 | |
▷ Static methods | 868 | 16.03% |
▷ Public methods | 4,051 | 74.81% |
▷ Protected methods | 326 | 6.02% |
▷ Private methods | 1,038 | 19.17% |
Functions | 893 | |
▷ Named functions | 333 | 37.29% |
▷ Anonymous functions | 560 | 62.71% |
Constants | 695 | |
▷ Global constants | 111 | 15.97% |
▷ Class constants | 584 | 84.03% |
▷ Public constants | 584 | 100.00% |
Plugin size Passed 2 tests
Image compression Passed 2 tests
It is recommended to compress PNG files in your plugin to minimize bandwidth usage
There are no PNG files in this plugin