• 1.3.0 672d0f295f

    v1.3.0 Stable

    javier released this 2026-06-03 06:26:58 +00:00 | 4 commits to main since this release

    1.3.0

    Release date: 2026-05-05

    Added

    • Per-provider scan tracking table (mra_provider_status) with composite primary key (attachment_id, provider). Each API provider now has an independent row tracking its scan status, so adding a new provider only queues the missing scans rather than resetting everything.
    • "Sync providers" operation in the Tools page: inserts rows for any provider that has no existing entry for a given attachment, then schedules a background scan batch for the new work only.

    Changed

    • mra_external_results.provider column changed from ENUM('google_vision','tineye') to varchar(100) to allow third-party providers registered via the mra/external/providers filter to store results.
    • External scan batch processing now reads from mra_provider_status and processes each provider independently. Aggregate external_status on mra_media_index is recomputed after each scan and used only for display.
    • ExternalScanner::get_pending_count() counts queued rows from mra_provider_status.
    • DB schema version bumped to 1.1.0. Migration runs automatically on admin_init when updating from an older version; existing data is backfilled into mra_provider_status.

    Compatibility

    • WordPress: 6.8 - 7.0
    • PHP: 8.2 - 8.4
    • WP-CLI: 2.x

    Tests

    • PHP Coding Standards: WPCS 3.x / PHPCS 3.x
    • PHPStan: level 9
    • PHPCompatibility: PHP 8.2 - 8.4
    Downloads