Description
The EmbedPress plugin's readme.txt declares a minimum required WordPress version of 4.6, but static analysis using the wp-since tool reveals that the plugin actually uses functions and methods introduced as late as WordPress 5.3.0. This means the plugin will silently break or produce fatal errors when activated on WordPress versions between 4.6 and 5.3.
The declared minimum version should be updated to 5.3.0 to accurately reflect the plugin's real requirements and prevent users on older WordPress versions from installing an incompatible plugin.
Compatibility Issues Found
The following WordPress functions/methods used in the plugin were introduced after the declared minimum version of 4.6:
| Symbol |
Introduced in WP |
use_block_editor_for_post_type (function) |
5.0.0 |
has_blocks (function) |
5.0.0 |
parse_blocks (function) |
5.0.0 |
has_block (function) |
5.0.0 |
determine_locale (function) |
5.0.0 |
wp_timezone (function) |
5.3.0 |
wp_date (function) |
5.3.0 |
WP_Block_Type_Registry::get_instance (method) |
5.0.0 |
unregister_block_type (function) |
5.0.0 |
register_block_type (function) |
5.0.0 |
wp_doing_ajax (function) |
4.7.0 |
wp_doing_cron (function) |
4.8.0 |
sanitize_textarea_field (function) |
4.7.0 |
📌 Suggested minimum version: 5.3.0 (the highest introduced version among all used symbols)
Root Cause
The Requires at least field in readme.txt (and potentially the Requires at least header in the main plugin PHP file) is set to 4.6, which predates the Gutenberg block editor era. Since EmbedPress ships Gutenberg blocks and relies on block-editor APIs (register_block_type, has_blocks, parse_blocks, etc.) as well as date/timezone utilities (wp_timezone, wp_date) introduced in WP 5.3, the declared version is inaccurate.
How to Reproduce
Using the wp-since CLI tool:
# 1. Create a working directory and install wp-since
mkdir wp-since && cd wp-since
composer require --dev eduardovillao/wp-since
# 2. Run the check against EmbedPress
./vendor/bin/wp-since check /path/to/wp-content/plugins/embedpress/
Expected output (before fix):
✅ Minimum version declared: 4.6 (from readme)
🚨 Compatibility issues found:
...
📌 Suggested version required: 5.3.0
After updating the minimum version to 5.3.0, re-running the tool should report no compatibility issues.
Fix Required
Update the following declarations to 5.3.0:
readme.txt — change Requires at least: 4.6 → Requires at least: 5.3
- Main plugin PHP file header (if present) — change
Requires at least: 4.6 → Requires at least: 5.3
✅ QA Acceptance Checklist
Description
The EmbedPress plugin's
readme.txtdeclares a minimum required WordPress version of 4.6, but static analysis using thewp-sincetool reveals that the plugin actually uses functions and methods introduced as late as WordPress 5.3.0. This means the plugin will silently break or produce fatal errors when activated on WordPress versions between 4.6 and 5.3.The declared minimum version should be updated to 5.3.0 to accurately reflect the plugin's real requirements and prevent users on older WordPress versions from installing an incompatible plugin.
Compatibility Issues Found
The following WordPress functions/methods used in the plugin were introduced after the declared minimum version of 4.6:
use_block_editor_for_post_type(function)has_blocks(function)parse_blocks(function)has_block(function)determine_locale(function)wp_timezone(function)wp_date(function)WP_Block_Type_Registry::get_instance(method)unregister_block_type(function)register_block_type(function)wp_doing_ajax(function)wp_doing_cron(function)sanitize_textarea_field(function)📌 Suggested minimum version:
5.3.0(the highest introduced version among all used symbols)Root Cause
The
Requires at leastfield inreadme.txt(and potentially theRequires at leastheader in the main plugin PHP file) is set to4.6, which predates the Gutenberg block editor era. Since EmbedPress ships Gutenberg blocks and relies on block-editor APIs (register_block_type,has_blocks,parse_blocks, etc.) as well as date/timezone utilities (wp_timezone,wp_date) introduced in WP 5.3, the declared version is inaccurate.How to Reproduce
Using the
wp-sinceCLI tool:Expected output (before fix):
After updating the minimum version to
5.3.0, re-running the tool should report no compatibility issues.Fix Required
Update the following declarations to
5.3.0:readme.txt— changeRequires at least: 4.6→Requires at least: 5.3Requires at least: 4.6→Requires at least: 5.3✅ QA Acceptance Checklist
readme.txthasRequires at least: 5.3(or higher).Requires at least) is updated to5.3../vendor/bin/wp-since check /path/to/embedpress/reports no compatibility issues.