Benchmarks
Plugin footprint 82% from 16 tests
Installer Passed 1 test
🔺 Critical test (weight: 50) | Checking the installer triggered no errors
This plugin's installer ran successfully
Server metrics [RAM: ▲0.93MB] [CPU: ▼7.12ms] Passed 4 tests
Server-side resources used by CloudSearch
This plugin does not affect your website's performance
Page | Memory (MB) | CPU Time (ms) |
---|---|---|
Home / | 5.07 ▲1.60 | 42.26 ▲5.21 |
Dashboard /wp-admin | 4.92 ▲1.62 | 54.81 ▲6.32 |
Posts /wp-admin/edit.php | 5.04 ▲1.68 | 54.21 ▲6.73 |
Add New Post /wp-admin/post-new.php | 4.77 ▼1.12 | 44.95 ▼46.75 |
Media Library /wp-admin/upload.php | 4.84 ▲1.62 | 42.69 ▲7.79 |
Documentation /wp-admin/admin.php?page=acs_menu_docs | 4.81 | 39.88 |
Import / Export /wp-admin/admin.php?page=acs_menu_import | 4.81 | 37.48 |
Settings /wp-admin/admin.php?page=acs_menu_settings | 4.79 | 36.19 |
Help /wp-admin/admin.php?page=acs_menu_help | 4.81 | 38.66 |
Manage /wp-admin/admin.php?page=acs_menu_manage | 4.81 | 41.24 |
Server storage [IO: ▲28.63MB] [DB: ▲0.00MB] 67% from 3 tests
Filesystem and database footprint
Please fix the following
- Filesystem usage must be lower than 25MB (currently using 28.63MB)
Filesystem: 2,513 new files
Database: no new tables, 10 new options
New WordPress options |
---|
db_upgraded |
widget_recent-posts |
widget_theysaidso_widget |
acs_option_settings |
theysaidso_admin_options |
acs_option_status |
can_compress_scripts |
acs_option_items |
acs_version |
widget_recent-comments |
Browser metrics Passed 4 tests
A check of browser resources used by CloudSearch
Minimal impact on browser resources
Page | Nodes | Memory (MB) | Script (ms) | Layout (ms) |
---|---|---|---|---|
Home / | 2,839 ▲93 | 13.64 ▼0.74 | 1.53 ▼0.21 | 37.80 ▼4.79 |
Dashboard /wp-admin | 2,248 ▲57 | 4.86 ▼1.04 | 108.19 ▼0.63 | 42.79 ▲1.93 |
Posts /wp-admin/edit.php | 2,128 ▲39 | 2.01 ▲0.01 | 39.69 ▲1.03 | 36.10 ▲1.42 |
Add New Post /wp-admin/post-new.php | 1,564 ▲22 | 23.14 ▲4.82 | 609.92 ▲4.24 | 59.19 ▲4.62 |
Media Library /wp-admin/upload.php | 1,427 ▲45 | 4.24 ▼0.06 | 101.18 ▲2.12 | 41.22 ▼2.95 |
Documentation /wp-admin/admin.php?page=acs_menu_docs | 930 | 2.04 | 23.77 | 32.64 |
Import / Export /wp-admin/admin.php?page=acs_menu_import | 1,073 | 2.17 | 24.48 | 34.48 |
Settings /wp-admin/admin.php?page=acs_menu_settings | 2,371 | 1.71 | 27.37 | 56.52 |
Help /wp-admin/admin.php?page=acs_menu_help | 1,609 | 1.72 | 24.85 | 46.81 |
Manage /wp-admin/admin.php?page=acs_menu_manage | 831 | 1.71 | 25.01 | 26.59 |
Uninstaller [IO: ▲0.00MB] [DB: ▲0.00MB] 75% from 4 tests
🔸 Tests weight: 35 | The uninstall procedure must remove all plugin files and extra database tables
You still need to fix the following
- The uninstall procedure has failed, leaving 8 options in the database
- widget_recent-comments
- theysaidso_admin_options
- widget_recent-posts
- widget_theysaidso_widget
- db_upgraded
- can_compress_scripts
- acs_version
- acs_option_settings
Smoke tests 25% from 4 tests
Server-side errors 0% from 1 test
🔹 Test weight: 20 | This is a shallow check for server-side errors
Almost there, just fix the following server-side errors
- 15 occurences, only the last one shown
- > GET request to /wp-admin/admin.php?page=acs_menu_settings
- > Notice in wp-content/plugins/cloud-search/admin/cloud-search-admin-settings.php+67
Undefined property: stdClass::$acs_aws_region
- > GET request to /wp-admin/admin.php?page=acs_menu_settings
- > Notice in wp-content/plugins/cloud-search/admin/cloud-search-admin-settings.php+266
Undefined property: stdClass::$acs_frontpage_content_box_value
- > GET request to /wp-admin/admin.php?page=acs_menu_settings
- > Notice in wp-content/plugins/cloud-search/admin/cloud-search-admin-settings.php+380
Undefined property: stdClass::$acs_results_no_results_box_value
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
Almost there! Just fix the following items
- 2× GET requests to PHP files return non-empty strings:
- > /wp-content/plugins/cloud-search/cloud-search-wp-cli.php
- > /wp-content/plugins/cloud-search/cloud-search.php
- 1226× PHP files trigger server-side errors or warnings when accessed directly (only 10 are shown):
- > PHP Fatal error
Uncaught Error: Class 'WP_Cloud_Search\\Aws\\AwsClient' not found in wp-content/plugins/cloud-search/vendor/aws/aws-sdk-php/ChimeSDKMessaging/ChimeSDKMessagingClient.php:101
- > PHP Fatal error
Uncaught Error: Interface 'WP_Cloud_Search\\Aws\\Common\\Model\\MultipartUpload\\TransferStateInterface' not found in wp-content/plugins/cloud-search/vendor/aws/Aws/Common/Model/MultipartUpload/AbstractTransferState.php:23
- > PHP Fatal error
Uncaught Error: Class 'WP_Cloud_Search\\Aws\\Exception\\AwsException' not found in wp-content/plugins/cloud-search/vendor/aws/aws-sdk-php/RedshiftServerless/Exception/RedshiftServerlessException.php:9
- > PHP Fatal error
Uncaught Error: Class 'WP_Cloud_Search\\Aws\\Exception\\AwsException' not found in wp-content/plugins/cloud-search/vendor/aws/aws-sdk-php/ServiceQuotas/Exception/ServiceQuotasException.php:9
- > PHP Fatal error
Uncaught Error: Class 'WP_Cloud_Search\\Aws\\AwsClient' not found in wp-content/plugins/cloud-search/vendor/aws/aws-sdk-php/ManagedGrafana/ManagedGrafanaClient.php:41
- > PHP Fatal error
Uncaught Error: Class 'WP_Cloud_Search\\Aws\\AwsClient' not found in wp-content/plugins/cloud-search/vendor/aws/aws-sdk-php/CognitoSync/CognitoSyncClient.php:44
- > PHP Fatal error
Uncaught Error: Class 'WP_Cloud_Search\\Aws\\AwsClient' not found in wp-content/plugins/cloud-search/vendor/aws/aws-sdk-php/CloudTrail/CloudTrailClient.php:68
- > PHP Fatal error
Uncaught Error: Class 'WP_Cloud_Search\\Aws\\Exception\\AwsException' not found in wp-content/plugins/cloud-search/vendor/aws/aws-sdk-php/CodeGuruProfiler/Exception/CodeGuruProfilerException.php:9
- > PHP Fatal error
Uncaught Error: Class 'WP_Cloud_Search\\Aws\\AwsClient' not found in wp-content/plugins/cloud-search/vendor/aws/aws-sdk-php/CodeBuild/CodeBuildClient.php:99
- > PHP Fatal error
Uncaught Error: Class 'WP_Cloud_Search\\Aws\\Exception\\AwsException' not found in wp-content/plugins/cloud-search/vendor/aws/aws-sdk-php/Translate/Exception/TranslateException.php:9
- > PHP Fatal error
User-side errors Passed 1 test
🔹 Test weight: 20 | A shallow check that no browser errors were triggered
Everything seems fine on the user side
Optimizations
Plugin configuration 97% from 29 tests
readme.txt 94% from 16 tests
Often overlooked, readme.txt is one of the most important files in your plugin
Please fix the following attributes:
- Screenshots: These screenshots require images: #1 (Settings page), #2 (Manage page), #3 (Front page), #4 (Other settings (results and highlighting)), #5 (Other settings (suggestions))
cloud-search/cloud-search.php Passed 13 tests
The main PHP script in "CloudSearch" version 3.0.0 is automatically included on every request by WordPress
129 characters long description:
CloudSearch is a flexible plugin that allows you to leverage the search index power of Amazon CloudSearch in your WordPress site.
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
Good job! No executable or dangerous file extensions detected83,579 lines of code in 2,464 files:
Language | Files | Blank lines | Comment lines | Lines of code |
---|---|---|---|---|
PHP | 2,414 | 5,971 | 64,248 | 66,755 |
JSON | 10 | 0 | 0 | 7,892 |
Markdown | 17 | 1,555 | 0 | 4,897 |
PO File | 1 | 562 | 1,895 | 2,694 |
CSS | 4 | 54 | 166 | 731 |
JavaScript | 15 | 111 | 205 | 582 |
YAML | 1 | 1 | 0 | 13 |
make | 1 | 4 | 0 | 9 |
SVG | 1 | 0 | 1 | 6 |
PHP code Passed 2 tests
Cyclomatic complexity and code structure are the fingerprint of this plugin
All good! No complexity issues found
Cyclomatic complexity | |
---|---|
Average complexity per logical line of code | 0.39 |
Average class complexity | 5.68 |
▷ Minimum class complexity | 1.00 |
▷ Maximum class complexity | 112.00 |
Average method complexity | 2.40 |
▷ Minimum method complexity | 1.00 |
▷ Maximum method complexity | 34.00 |
Code structure | ||
---|---|---|
Namespaces | 750 | |
Interfaces | 135 | |
Traits | 28 | |
Classes | 1,386 | |
▷ Abstract classes | 49 | 3.54% |
▷ Concrete classes | 1,337 | 96.46% |
▷ Final classes | 39 | 2.92% |
Methods | 5,370 | |
▷ Static methods | 657 | 12.23% |
▷ Public methods | 4,045 | 75.33% |
▷ Protected methods | 604 | 11.25% |
▷ Private methods | 721 | 13.43% |
Functions | 609 | |
▷ Named functions | 160 | 26.27% |
▷ Anonymous functions | 449 | 73.73% |
Constants | 605 | |
▷ Global constants | 0 | 0.00% |
▷ Class constants | 605 | 100.00% |
▷ Public constants | 594 | 98.18% |
Plugin size Passed 2 tests
Image compression Passed 2 tests
PNG files should be compressed to save space and minimize bandwidth usage
13 PNG files occupy 0.04MB with 0.01MB in potential savings
Potential savings
Compression of 5 random PNG files using pngquant | |||
---|---|---|---|
File | Size - original | Size - compressed | Savings |
css/dist/images/ui-icons_454545_256x240.png | 4.27KB | 4.11KB | ▼ 3.78% |
css/dist/images/arrow_down.png | 0.17KB | 0.18KB | 0.00% |
css/images/slider_handles.png | 4.35KB | 1.52KB | ▼ 64.97% |
css/images/icon_sprite.png | 3.14KB | 2.30KB | ▼ 26.70% |
css/dist/images/icon_sprite.png | 3.14KB | 2.30KB | ▼ 26.70% |