Benchmarks
Plugin footprint 83% from 16 tests
Installer Passed 1 test
🔺 Critical test (weight: 50) | Checking the installer triggered no errors
The plugin installed successfully, without throwing any errors or notices
Server metrics [RAM: ▲0.04MB] [CPU: ▼7.39ms] Passed 4 tests
Server-side resources used by [凹凸曼]自动同步七牛云对象存储KODO
This plugin has minimal impact on server resources
Page | Memory (MB) | CPU Time (ms) |
---|---|---|
Home / | 3.52 ▲0.06 | 37.90 ▼4.31 |
Dashboard /wp-admin | 3.36 ▲0.01 | 45.76 ▼19.04 |
Posts /wp-admin/edit.php | 3.47 ▲0.11 | 49.51 ▲0.98 |
Add New Post /wp-admin/post-new.php | 5.94 ▲0.05 | 84.06 ▼7.20 |
Media Library /wp-admin/upload.php | 3.28 ▲0.05 | 37.09 ▲4.50 |
settings /wp-admin/options-general.php?page=apoyl-qiniukodo-settings | 3.29 | 30.99 |
Server storage [IO: ▲0.21MB] [DB: ▲0.00MB] Passed 3 tests
Filesystem and database footprint
There were no storage issued detected upon installing this plugin
Filesystem: 58 new files
Database: no new tables, 7 new options
New WordPress options |
---|
apoyl-qiniukodo-settings |
widget_recent-comments |
theysaidso_admin_options |
db_upgraded |
widget_recent-posts |
can_compress_scripts |
widget_theysaidso_widget |
Browser metrics Passed 4 tests
An overview of browser requirements for [凹凸曼]自动同步七牛云对象存储KODO
There were no issues detected in relation to browser resource usage
Page | Nodes | Memory (MB) | Script (ms) | Layout (ms) |
---|---|---|---|---|
Home / | 2,794 ▲43 | 14.21 ▼0.48 | 1.60 ▼0.05 | 36.78 ▼6.97 |
Dashboard /wp-admin | 2,199 ▲19 | 5.60 ▼0.05 | 95.93 ▲5.58 | 41.87 ▼3.89 |
Posts /wp-admin/edit.php | 2,104 ▲4 | 1.95 ▼0.01 | 38.05 ▼0.99 | 35.32 ▲1.92 |
Add New Post /wp-admin/post-new.php | 1,529 ▼2 | 23.88 ▲3.02 | 667.39 ▲53.07 | 52.54 ▼1.38 |
Media Library /wp-admin/upload.php | 1,404 ▲4 | 4.18 ▼0.02 | 94.31 ▼0.76 | 40.29 ▼2.81 |
settings /wp-admin/options-general.php?page=apoyl-qiniukodo-settings | 1,016 | 2.00 | 28.65 | 27.83 |
Uninstaller [IO: ▲0.00MB] [DB: ▲0.00MB] 75% from 4 tests
🔸 Tests weight: 35 | All plugins must uninstall correctly, removing their source code and extra database tables they might have created
It is recommended to fix the following
- Zombie WordPress options detected upon uninstall: 6 options
- theysaidso_admin_options
- can_compress_scripts
- widget_theysaidso_widget
- db_upgraded
- widget_recent-posts
- widget_recent-comments
Smoke tests 50% from 4 tests
Server-side errors Passed 1 test
🔹 Test weight: 20 | This is a shallow check for server-side errors
Good news, no errors were detected
SRP 0% 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
Almost there! Just fix the following items
- 1× GET requests to PHP files return non-empty strings:
- > /wp-content/plugins/apoyl-qiniukodo/api/php-sdk-7.10.1/vendor/nikic/php-parser/grammar/rebuildParsers.php
- 1206× PHP files trigger server-side errors or warnings when accessed directly (only 10 are shown):
- > PHP Fatal error
Uncaught Error: Class 'PhpParser\ode\\Stmt' not found in wp-content/plugins/apoyl-qiniukodo/api/php-sdk-7.10.1/vendor/nikic/php-parser/lib/PhpParser/Node/Stmt/Function_.php:8
- > PHP Fatal error
Uncaught Error: Class 'PHPUnit\\Framework\\Constraint\\Constraint' not found in wp-content/plugins/apoyl-qiniukodo/api/php-sdk-7.10.1/vendor/phpunit/phpunit/src/Framework/Constraint/Cardinality/Count.php:27
- > PHP Fatal error
Uncaught Error: Class 'PHPUnit\\Framework\\Constraint\\ClassHasAttribute' not found in wp-content/plugins/apoyl-qiniukodo/api/php-sdk-7.10.1/vendor/phpunit/phpunit/src/Framework/Constraint/Object/ClassHasStaticAttribute.php:22
- > PHP Fatal error
Uncaught Error: Class 'PhpParser\ode\\Expr' not found in wp-content/plugins/apoyl-qiniukodo/api/php-sdk-7.10.1/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/PropertyFetch.php:8
- > PHP Fatal error
Uncaught Error: Interface 'SebastianBergmann\\CodeCoverage\\Exception' not found in wp-content/plugins/apoyl-qiniukodo/api/php-sdk-7.10.1/vendor/phpunit/php-code-coverage/src/Exception/DirectoryCouldNotBeCreatedException.php:15
- > PHP Fatal error
Uncaught Error: Interface 'PHP_CodeSniffer\\Sniffs\\Sniff' not found in wp-content/plugins/apoyl-qiniukodo/api/php-sdk-7.10.1/vendor/squizlabs/php_codesniffer/src/Standards/Squiz/Sniffs/Functions/LowercaseFunctionKeywordsSniff.php:16
- > PHP Fatal error
Uncaught Error: Interface 'PHP_CodeSniffer\\Sniffs\\Sniff' not found in wp-content/plugins/apoyl-qiniukodo/api/php-sdk-7.10.1/vendor/squizlabs/php_codesniffer/src/Standards/PSR12/Sniffs/Traits/UseDeclarationSniff.php:16
- > PHP Fatal error
Uncaught Error: Interface 'Qiniu\\Http\\Middleware\\Middleware' not found in wp-content/plugins/apoyl-qiniukodo/api/php-sdk-7.10.1/src/Qiniu/Http/Middleware/RetryDomainsMiddleware.php:7
- > PHP Fatal error
Uncaught Error: Class 'PhpParser\\Builder\\Declaration' not found in wp-content/plugins/apoyl-qiniukodo/api/php-sdk-7.10.1/vendor/nikic/php-parser/lib/PhpParser/Builder/Interface_.php:11
- > PHP Fatal error
Uncaught Error: Interface 'PHP_CodeSniffer\\Sniffs\\Sniff' not found in wp-content/plugins/apoyl-qiniukodo/api/php-sdk-7.10.1/vendor/squizlabs/php_codesniffer/src/Standards/PSR12/Sniffs/Namespaces/CompoundNamespaceDepthSniff.php:15
- > PHP Fatal error
User-side errors Passed 1 test
🔹 Test weight: 20 | This is a shallow check for browser errors
No browser errors were detected
Optimizations
Plugin configuration 96% from 29 tests
readme.txt Passed 16 tests
You should put a lot of thought into formatting readme.txt as it is used by WordPress.org to prepare the public listing of your plugin
2 plugin tags: kodo, oss
apoyl-qiniukodo/apoyl-qiniukodo.php 92% from 13 tests
The primary PHP file in "[凹凸曼]自动同步七牛云对象存储KODO" version 1.8.0 is used by WordPress to initiate all plugin functionality
The following require your attention:
- Description: If Twitter did it, so should we! Keep the description under 140 characters (currently 252 characters long)
Code Analysis 3% from 3 tests
File types 0% from 1 test
🔸 Test weight: 35 | A short review of files and their extensions; it is not recommended to include executable files
Please fix the following items
- You should never include executable (binary) or otherwise dangerous files in your plugin
- .bat - Batch File in Windows
- ☣ wp-content/plugins/apoyl-qiniukodo/api/php-sdk-7.10.1/vendor/bin/php-parse.bat
- ☣ wp-content/plugins/apoyl-qiniukodo/api/php-sdk-7.10.1/vendor/squizlabs/php_codesniffer/bin/phpcbf.bat
- ☣ wp-content/plugins/apoyl-qiniukodo/api/php-sdk-7.10.1/vendor/bin/phpcbf.bat
- ☣ wp-content/plugins/apoyl-qiniukodo/api/php-sdk-7.10.1/vendor/squizlabs/php_codesniffer/bin/phpcs.bat
- ☣ wp-content/plugins/apoyl-qiniukodo/api/php-sdk-7.10.1/vendor/bin/phpcs.bat
- ☣ wp-content/plugins/apoyl-qiniukodo/api/php-sdk-7.10.1/vendor/bin/phpunit.bat
- .bat - Batch File in Windows
Language | Files | Blank lines | Comment lines | Lines of code |
---|---|---|---|---|
PHP | 1,725 | 31,608 | 52,960 | 135,777 |
Pascal | 130 | 3,231 | 7,118 | 6,576 |
XML | 154 | 212 | 292 | 4,615 |
JSON | 35 | 7 | 0 | 3,526 |
Markdown | 61 | 1,713 | 0 | 3,018 |
JavaScript | 63 | 766 | 874 | 2,158 |
yacc | 3 | 336 | 12 | 2,058 |
XSD | 4 | 6 | 0 | 1,094 |
CSS | 37 | 221 | 98 | 798 |
YAML | 4 | 34 | 1 | 176 |
reStructuredText | 2 | 23 | 18 | 31 |
DOS Batch | 6 | 4 | 10 | 30 |
Bourne Shell | 1 | 2 | 0 | 3 |
SVG | 2 | 0 | 0 | 2 |
PHP code 50% from 2 tests
Cyclomatic complexity and code structure are the fingerprint of this plugin
The following items need your attention
- Cyclomatic complexity of methods should be reduced to less than 100 (currently 478)
Cyclomatic complexity | |
---|---|
Average complexity per logical line of code | 0.41 |
Average class complexity | 10.82 |
▷ Minimum class complexity | 1.00 |
▷ Maximum class complexity | 724.00 |
Average method complexity | 3.39 |
▷ Minimum method complexity | 1.00 |
▷ Maximum method complexity | 478.00 |
Code structure | ||
---|---|---|
Namespaces | 256 | |
Interfaces | 76 | |
Traits | 4 | |
Classes | 1,476 | |
▷ Abstract classes | 56 | 3.79% |
▷ Concrete classes | 1,420 | 96.21% |
▷ Final classes | 463 | 32.61% |
Methods | 6,493 | |
▷ Static methods | 539 | 8.30% |
▷ Public methods | 5,211 | 80.26% |
▷ Protected methods | 671 | 10.33% |
▷ Private methods | 611 | 9.41% |
Functions | 1,518 | |
▷ Named functions | 252 | 16.60% |
▷ Anonymous functions | 1,266 | 83.40% |
Constants | 659 | |
▷ Global constants | 120 | 18.21% |
▷ Class constants | 539 | 81.79% |
▷ Public constants | 490 | 90.91% |
Plugin size Passed 2 tests
Image compression Passed 2 tests
PNG files should be compressed to save space and minimize bandwidth usage
PNG images were not found in this plugin