Benchmarks
Plugin footprint 83% 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.20MB] [CPU: ▼5.60ms] Passed 4 tests
A check of server-side resources used by SCSS Happy Compiler - Compile SCSS to CSS & Automatic Enqueue
Server-side resource usage in normal parameters
Page | Memory (MB) | CPU Time (ms) |
---|---|---|
Home / | 3.65 ▲0.19 | 36.55 ▼5.69 |
Dashboard /wp-admin | 3.50 ▲0.19 | 45.49 ▼5.18 |
Posts /wp-admin/edit.php | 3.61 ▲0.25 | 51.64 ▲4.37 |
Add New Post /wp-admin/post-new.php | 6.10 ▲0.21 | 85.28 ▼12.24 |
Media Library /wp-admin/upload.php | 3.42 ▲0.19 | 35.37 ▲0.70 |
Happy WP SCSS /wp-admin/options-general.php?page=happy-scss-compiler | 3.39 | 29.95 |
Server storage [IO: ▲0.81MB] [DB: ▲0.00MB] Passed 3 tests
A short overview of filesystem and database impact
The plugin installed successfully
Filesystem: 96 new files
Database: no new tables, 16 new options
New WordPress options |
---|
theysaidso_admin_options |
hm_wp_scss__enqueuing |
hm_wp_scss__adv_path_css |
widget_theysaidso_widget |
can_compress_scripts |
hm_wp_scss__compilation_time |
hm_wp_scss__scss_location |
hm_wp_scss__compilation_mode |
hm_wp_scss__adv_path_scss |
hm_wp_scss__errors_display |
... |
Browser metrics Passed 4 tests
A check of browser resources used by SCSS Happy Compiler - Compile SCSS to CSS & Automatic Enqueue
This plugin has a minimal impact on browser resources
Page | Nodes | Memory (MB) | Script (ms) | Layout (ms) |
---|---|---|---|---|
Home / | 2,837 ▲102 | 13.47 ▼1.28 | 1.71 ▲0.12 | 43.45 ▲0.34 |
Dashboard /wp-admin | 2,218 ▲33 | 5.18 ▼0.68 | 112.79 ▲14.71 | 40.22 ▼5.27 |
Posts /wp-admin/edit.php | 2,104 ▲15 | 2.31 ▲0.26 | 40.54 ▲2.78 | 34.57 ▲2.43 |
Add New Post /wp-admin/post-new.php | 1,528 ▲14 | 23.69 ▲6.08 | 659.15 ▼20.38 | 59.28 ▲3.66 |
Media Library /wp-admin/upload.php | 1,400 ▲9 | 4.49 ▲0.31 | 97.24 ▲1.56 | 43.40 ▲3.77 |
Happy WP SCSS /wp-admin/options-general.php?page=happy-scss-compiler | 1,115 | 3.37 | 66.32 | 44.36 |
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
Please fix the following items
- Zombie WordPress options were found after uninstall: 16 options
- db_upgraded
- widget_recent-posts
- widget_theysaidso_widget
- hm_wp_scss__compilation_mode
- hm_wp_scss__no_compilation_underscore
- hm_wp_scss__css_location
- hm_wp_scss__source_map_file
- hm_wp_scss__errors_display
- hm_wp_scss__scss_location
- can_compress_scripts
- ...
Smoke tests 25% from 4 tests
Server-side errors 0% from 1 test
🔹 Test weight: 20 | A smoke test targeting server-side errors
Almost there, just fix the following server-side errors
- > GET request to /wp-admin/options-general.php?page=happy-scss-compiler
- > User deprecated in wp-includes/functions.php+5463
Function screen_icon is deprecated since version 3.8.0 with no alternative available.
- > GET request to /wp-admin/options-general.php?page=happy-scss-compiler
- > User deprecated in wp-includes/functions.php+5463
Function get_screen_icon is deprecated since version 3.8.0 with no alternative available.
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× PHP files perform the action of outputting non-empty strings when accessed directly:
- > /wp-content/plugins/happy-scss-compiler/public/partials/hm-wp-scss-public-display.php
- 27× GET requests to PHP files have triggered server-side errors or warnings (only 10 are shown):
- > PHP Fatal error
Uncaught Error: Interface 'ScssPhp\\ScssPhp\\Logger\\LoggerInterface' not found in wp-content/plugins/happy-scss-compiler/includes/scssphp/src/Logger/QuietLogger.php:20
- > PHP Fatal error
Uncaught Error: Class 'ScssPhp\\ScssPhp\\Formatter' not found in wp-content/plugins/happy-scss-compiler/includes/scssphp/src/Formatter/Debug.php:26
- > PHP Fatal error
Uncaught Error: Call to undefined function esc_html() in wp-content/plugins/happy-scss-compiler/admin/partials/hm_wp_scss_main_settings.php:4
- > PHP Fatal error
Uncaught Error: Interface 'ScssPhp\\ScssPhp\\Exception\\SassException' not found in wp-content/plugins/happy-scss-compiler/includes/scssphp/src/Exception/RangeException.php:22
- > PHP Fatal error
Uncaught Error: Interface 'ScssPhp\\ScssPhp\\Logger\\LoggerInterface' not found in wp-content/plugins/happy-scss-compiler/includes/scssphp/src/Logger/StreamLogger.php:20
- > PHP Fatal error
Uncaught Error: Class 'ScssPhp\\ScssPhp\\Formatter' not found in wp-content/plugins/happy-scss-compiler/includes/scssphp/src/Formatter/Compressed.php:24
- > PHP Fatal error
Uncaught Error: Class 'ScssPhp\\ScssPhp\\Formatter' not found in wp-content/plugins/happy-scss-compiler/includes/scssphp/src/Formatter/Compact.php:26
- > PHP Fatal error
Uncaught Error: Interface 'ScssPhp\\ScssPhp\\Exception\\SassException' not found in wp-content/plugins/happy-scss-compiler/includes/scssphp/src/Exception/ParserException.php:22
- > PHP Fatal error
Uncaught Error: Class 'ScssPhp\\ScssPhp\\Block' not found in wp-content/plugins/happy-scss-compiler/includes/scssphp/src/Block/WhileBlock.php:21
- > PHP Fatal error
Uncaught Error: Class 'ScssPhp\\ScssPhp\\Block' not found in wp-content/plugins/happy-scss-compiler/includes/scssphp/src/Block/ContentBlock.php:22
- > 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 errors were detected
Optimizations
Plugin configuration 97% from 29 tests
readme.txt 94% from 16 tests
Don't ignore readme.txt as it is the file that instructs WordPress.org on how to present your plugin to the world
These attributes need to be fixed:
- Donate link: Invalid URI ("")
happy-scss-compiler/happy-scss-compiler.php Passed 13 tests
The main PHP script in "SCSS Happy Compiler - Compile SCSS to CSS & Automatic Enqueue" version 1.3.10 is automatically included on every request by WordPress
80 characters long description:
Compile your SCSS code to CSS automatically, and choose when and how to compile.
Code Analysis 95% from 3 tests
File types Passed 1 test
🔸 Test weight: 35 | Executable files are not allowed as they can serve as attack vectors
Success! There were no dangerous files found in this plugin15,044 lines of code in 90 files:
Language | Files | Blank lines | Comment lines | Lines of code |
---|---|---|---|---|
PHP | 64 | 3,491 | 5,804 | 12,252 |
JavaScript | 12 | 315 | 899 | 2,131 |
Markdown | 4 | 51 | 0 | 300 |
JSON | 2 | 0 | 0 | 203 |
XML | 5 | 0 | 0 | 107 |
CSS | 3 | 2 | 9 | 51 |
PHP code 0% from 2 tests
An short overview of logical lines of code, cyclomatic complexity, and other code metrics
Please fix the following
- Please reduce cyclomatic complexity of classes to less than 1000 (currently 1,493)
- Please reduce cyclomatic complexity of methods to less than 100 (currently 198)
Cyclomatic complexity | |
---|---|
Average complexity per logical line of code | 0.53 |
Average class complexity | 47.61 |
▷ Minimum class complexity | 1.00 |
▷ Maximum class complexity | 1,493.00 |
Average method complexity | 5.41 |
▷ Minimum method complexity | 1.00 |
▷ Maximum method complexity | 198.00 |
Code structure | ||
---|---|---|
Namespaces | 10 | |
Interfaces | 2 | |
Traits | 0 | |
Classes | 55 | |
▷ Abstract classes | 2 | 3.64% |
▷ Concrete classes | 53 | 96.36% |
▷ Final classes | 3 | 5.66% |
Methods | 576 | |
▷ Static methods | 33 | 5.73% |
▷ Public methods | 207 | 35.94% |
▷ Protected methods | 305 | 52.95% |
▷ Private methods | 64 | 11.11% |
Functions | 31 | |
▷ Named functions | 5 | 16.13% |
▷ Anonymous functions | 26 | 83.87% |
Constants | 76 | |
▷ Global constants | 4 | 5.26% |
▷ Class constants | 72 | 94.74% |
▷ Public constants | 72 | 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
No PNG images were found in this plugin