Plugin Directory

Changeset 3690952


Ignore:
Timestamp:
09/11/2026 07:16:21 AM (6 weeks ago)
Author:
aaronhsieh
Message:

Release 1.8.2: WordPress 7.1 compatibility and exact changelog version matching

Location:
site-add-on-watchdog/trunk
Files:
6 edited

Legend:

Unmodified
Added
Removed
  • site-add-on-watchdog/trunk/CHANGELOG.md

    r3631212 r3690952  
    55The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
    66and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
     7
     8## [1.8.2] - 2026-09-11
     9
     10### Changed
     11
     12- Update WordPress compatibility to 7.1.
     13- Verify the packaged plugin with an activation and notification-free scan on WordPress 7.1 in CI.
     14
     15### Fixed
     16
     17- Match exact released versions in changelog headings instead of similarly numbered versions or prereleases.
     18- Recognize heading levels 2 through 6 and inline heading markup without including unrelated entries.
     19- Skip versioned changelogs that have no matching release instead of reporting an unrelated security fix.
     20- Add eight regression cases for changelog version matching.
    721
    822## [1.8.1] - 2026-08-02
  • site-add-on-watchdog/trunk/languages/site-add-on-watchdog.pot

    r3631212 r3690952  
    33msgid ""
    44msgstr ""
    5 "Project-Id-Version: Site Add-on Watchdog 1.8.1\n"
     5"Project-Id-Version: Site Add-on Watchdog 1.8.2\n"
    66"Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/site-add-on-watchdog\n"
    77"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
  • site-add-on-watchdog/trunk/readme.txt

    r3631212 r3690952  
    33Tags: security, plugins, monitoring, notifications
    44Requires at least: 6.0
    5 Tested up to: 7.0
     5Tested up to: 7.1
    66Requires PHP: 8.1
    7 Stable tag: 1.8.1
     7Stable tag: 1.8.2
    88License: GPLv2 or later
    99License URI: https://www.gnu.org/licenses/gpl-2.0.html
    … …  
    114114== Changelog ==
    115115
     116= 1.8.2 =
     117* Update WordPress compatibility to 7.1.
     118* Match exact released versions in changelog headings, including formatted headings and heading levels 2 through 6.
     119* Avoid false security alerts from similarly numbered versions, prereleases, and unrelated changelog entries.
     120* Add regression coverage for changelog parsing and a packaged WordPress scan smoke test.
     121
    116122= 1.8.1 =
    117123* Filter WPScan disclosures against the installed plugin version so resolved vulnerabilities are not reported as active.
    … …  
    136142== Upgrade Notice ==
    137143
     144= 1.8.2 =
     145Updates WordPress compatibility to 7.1 and prevents false security alerts caused by matching unrelated changelog versions.
     146
    138147= 1.8.1 =
    139148External Cron calls must now use POST. Update existing GET jobs before upgrading; legacy `?key=` authentication remains temporarily available only for POST requests, while new jobs should use the `X-Watchdog-Cron-Key` header.
  • site-add-on-watchdog/trunk/site-add-on-watchdog.php

    r3631212 r3690952  
    44 * Plugin Name: Site Add-on Watchdog
    55 * Description: Monitors installed plugins for potential security risks and outdated versions.
    6  * Version:     1.8.1
     6 * Version:     1.8.2
    77 * Author:      Aaron
    88 * Author URI:  https://www.worksbyaaron.com/
    … …  
    1111 * Requires at least: 6.0
    1212 * Requires PHP: 8.1
    13  * Tested up to: 7.0
     13 * Tested up to: 7.1
    1414 */
    1515
  • site-add-on-watchdog/trunk/src/Scanner.php

    r3631212 r3690952  
    295295        }
    296296
    297         $patternForVersion = sprintf(
    298             '/<h4[^>]*>[^<]*%s[^<]*<\/h4>\s*(.*?)(?=<h4|\z)/is',
    299             preg_quote($remoteVersion, '/')
    300         );
    301 
    302         if (preg_match($patternForVersion, $changelogHtml, $match)) {
    303             return $match[0];
    304         }
    305 
    306         if (preg_match('/<h4[^>]*>.*?<\/h4>\s*(.*?)(?=<h4|\z)/is', $changelogHtml, $match)) {
    307             return $match[0];
     297        $headingPattern = '/<h([2-6])\b[^>]*>(.*?)<\/h\1>\s*(.*?)(?=<h[2-6]\b|\z)/is';
     298        if (preg_match_all($headingPattern, $changelogHtml, $entries, PREG_SET_ORDER)) {
     299            $versionPattern = '/(?<![0-9A-Za-z.])v?' . preg_quote($remoteVersion, '/')
     300                . '(?![0-9A-Za-z.+-])/i';
     301
     302            foreach ($entries as $entry) {
     303                $heading = $this->stripAllTags($entry[2]);
     304                if (preg_match($versionPattern, $heading)) {
     305                    return $entry[3];
     306                }
     307            }
     308
     309            return '';
    308310        }
    309311
  • site-add-on-watchdog/trunk/src/Version.php

    r3631212 r3690952  
    55final class Version
    66{
    7     public const NUMBER = '1.8.1';
     7    public const NUMBER = '1.8.2';
    88    public const PREFIX = 'siteadwa';
    99}
Note: See TracChangeset for help on using the changeset viewer.