Skip to content

Commit

Permalink
dynamic example version
Browse files Browse the repository at this point in the history
  • Loading branch information
davidperezgar committed Mar 6, 2025
1 parent 65f24e3 commit 45c3843
Showing 1 changed file with 11 additions and 9 deletions.
20 changes: 11 additions & 9 deletions includes/Checker/Checks/Plugin_Repo/Plugin_Readme_Check.php
Original file line number Diff line number Diff line change
Expand Up @@ -214,12 +214,18 @@ private function check_headers( Check_Result $result, string $readme_file, Parse
if ( ! empty( $parser->{$field_key} ) && 'tested' === $field_key ) {
list( $tested_upto, ) = explode( '-', $parser->{$field_key} );

$tested_upto_major = $tested_upto;
if ( preg_match( '#^\d.\d#', $tested_upto, $matches ) ) {
$tested_upto_major = $matches[0];
}

if ( preg_match( '/^\d+\.\d+\.\d+/', $tested_upto ) ) {
$this->add_result_error_for_file(
$result,
sprintf(

Check warning on line 225 in includes/Checker/Checks/Plugin_Repo/Plugin_Readme_Check.php

View check run for this annotation

Codecov / codecov/patch

includes/Checker/Checks/Plugin_Repo/Plugin_Readme_Check.php#L223-L225

Added lines #L223 - L225 were not covered by tests
/* translators: %s: currently used version */
__( '<strong>Tested up to: %s</strong><br>The version number should only include major versions (e.g. 6.7), not minor versions (e.g. 6.7.1).', 'plugin-check' ),
__( '<strong>Tested up to: </strong><br>The version number should only include major versions %1$s, not minor versions %2$s.', 'plugin-check' ),
$tested_upto_major,
$tested_upto
),
'invalid_tested_upto_minor',
Expand All @@ -231,18 +237,14 @@ private function check_headers( Check_Result $result, string $readme_file, Parse
);

Check warning on line 237 in includes/Checker/Checks/Plugin_Repo/Plugin_Readme_Check.php

View check run for this annotation

Codecov / codecov/patch

includes/Checker/Checks/Plugin_Repo/Plugin_Readme_Check.php#L227-L237

Added lines #L227 - L237 were not covered by tests
}

if ( preg_match( '#^\d.\d#', $tested_upto, $matches ) ) {
$tested_upto = $matches[0];
}

$latest_wordpress_version = $this->get_wordpress_stable_version();
if ( version_compare( $tested_upto, $latest_wordpress_version, '<' ) ) {
if ( version_compare( $tested_upto_major, $latest_wordpress_version, '<' ) ) {
$this->add_result_error_for_file(
$result,
sprintf(
/* translators: 1: currently used version, 2: latest stable WordPress version, 3: 'Tested up to' */
__( '<strong>Tested up to: %1$s &lt; %2$s.</strong><br>The "%3$s" value in your plugin is not set to the current version of WordPress. This means your plugin will not show up in searches, as we require plugins to be compatible and documented as tested up to the most recent version of WordPress.', 'plugin-check' ),
$tested_upto,
$tested_upto_major,
$latest_wordpress_version,
'Tested up to'
),
Expand All @@ -253,13 +255,13 @@ private function check_headers( Check_Result $result, string $readme_file, Parse
'https://developer.wordpress.org/plugins/wordpress-org/how-your-readme-txt-works/#readme-header-information',
7
);
} elseif ( version_compare( $tested_upto, number_format( (float) $latest_wordpress_version + 0.1, 1 ), '>' ) ) {
} elseif ( version_compare( $tested_upto_major, number_format( (float) $latest_wordpress_version + 0.1, 1 ), '>' ) ) {

Check warning on line 258 in includes/Checker/Checks/Plugin_Repo/Plugin_Readme_Check.php

View check run for this annotation

Codecov / codecov/patch

includes/Checker/Checks/Plugin_Repo/Plugin_Readme_Check.php#L258

Added line #L258 was not covered by tests
$this->add_result_error_for_file(
$result,
sprintf(
/* translators: 1: currently used version, 2: 'Tested up to' */
__( '<strong>Tested up to: %1$s.</strong><br>The "%2$s" value in your plugin is not valid. This version of WordPress does not exist (yet).', 'plugin-check' ),
$tested_upto,
$tested_upto_major,

Check warning on line 264 in includes/Checker/Checks/Plugin_Repo/Plugin_Readme_Check.php

View check run for this annotation

Codecov / codecov/patch

includes/Checker/Checks/Plugin_Repo/Plugin_Readme_Check.php#L264

Added line #L264 was not covered by tests
'Tested up to'
),
'nonexistent_tested_upto_header',
Expand Down

0 comments on commit 45c3843

Please sign in to comment.