From d611209171a53d1280e48d404f9d79c1e36eec03 Mon Sep 17 00:00:00 2001 From: Javier Casares Date: Wed, 18 Feb 2026 16:06:17 +0000 Subject: [PATCH] v2.2.5 --- changelog.txt | 6 ++++++ readme.txt | 10 +++++++++- robotstxt-smtp-newsletter.php | 4 ++-- update.json | 10 +++++----- worker.php | 15 +++++++++++++-- 5 files changed, 35 insertions(+), 10 deletions(-) diff --git a/changelog.txt b/changelog.txt index fa8ef3f..69155e9 100644 --- a/changelog.txt +++ b/changelog.txt @@ -1,3 +1,9 @@ += 2.2.5 = + +* CRITICAL FIX: Worker now loads plugin manually in DOING_CRON context +* FIXED: "Newsletter SMTP plugin is not active" error in worker script +* IMPROVED: Worker compatibility with all WordPress environments including MultiSite + = 2.2.4 = * CRITICAL FIX: Speed calculation now uses actual NEWSLETTER_CRON_INTERVAL value diff --git a/readme.txt b/readme.txt index a90eee4..c3398c2 100644 --- a/readme.txt +++ b/readme.txt @@ -4,7 +4,7 @@ Tags: newsletter, smtp, email, bulk, queue, worker, amazonses, statistics Requires at least: 4.7 Tested up to: 6.9 Requires PHP: 7.2 -Stable tag: 2.2.4 +Stable tag: 2.2.5 License: GPLv2 or later License URI: https://www.gnu.org/licenses/gpl-2.0.html @@ -141,6 +141,11 @@ Yes. The plugin integrates with ROBOTSTXT SMTP rate limiting system to ensure yo == Changelog == += 2.2.5 = +* CRITICAL FIX: Worker now loads plugin manually in DOING_CRON context +* FIXED: "Newsletter SMTP plugin is not active" error in worker script +* IMPROVED: Worker compatibility with all WordPress environments including MultiSite + = 2.2.4 = * CRITICAL FIX: Speed calculation now uses actual NEWSLETTER_CRON_INTERVAL value * FIXED: Batch_size was being divided by 5 due to incorrect cron interval assumption @@ -191,6 +196,9 @@ Yes. The plugin integrates with ROBOTSTXT SMTP rate limiting system to ensure yo == Upgrade Notice == += 2.2.5 = +CRITICAL: Fixed worker script not loading plugin in DOING_CRON context. Essential for worker functionality. + = 2.2.4 = CRITICAL: Fixed speed calculation to work with any Newsletter cron interval. Resolves batch_size division issues. diff --git a/robotstxt-smtp-newsletter.php b/robotstxt-smtp-newsletter.php index bfd98d9..fe0e299 100644 --- a/robotstxt-smtp-newsletter.php +++ b/robotstxt-smtp-newsletter.php @@ -3,7 +3,7 @@ * Plugin Name: Newsletter - SMTP (by ROBOTSTXT) * Plugin URI: https://git.robotstxt.es/ROBOTSTXT/robotstxt-smtp-newsletter * Description: Integrates ROBOTSTXT SMTP configuration with Newsletter plugin for efficient bulk email delivery with database-backed queue and external workers. - * Version: 2.2.4 + * Version: 2.2.5 * Requires at least: 4.7 * Requires PHP: 7.2 * Security: robotstxt@robotstxt.es @@ -25,7 +25,7 @@ if ( ! defined( 'ABSPATH' ) ) { } // Plugin constants. -define( 'ROBOTSTXT_SMTP_NEWSLETTER_VERSION', '2.2.4' ); +define( 'ROBOTSTXT_SMTP_NEWSLETTER_VERSION', '2.2.5' ); define( 'ROBOTSTXT_SMTP_NEWSLETTER_FILE', __FILE__ ); define( 'ROBOTSTXT_SMTP_NEWSLETTER_PATH', plugin_dir_path( __FILE__ ) ); define( 'ROBOTSTXT_SMTP_NEWSLETTER_URL', plugin_dir_url( __FILE__ ) ); diff --git a/update.json b/update.json index dba7501..f0d393d 100644 --- a/update.json +++ b/update.json @@ -1,19 +1,19 @@ { "name": "Newsletter - SMTP (by ROBOTSTXT)", "slug": "robotstxt-smtp-newsletter", - "version": "2.2.4", + "version": "2.2.5", "author": "ROBOTSTXT", "homepage": "https://git.robotstxt.es/ROBOTSTXT/robotstxt-smtp-newsletter", - "download_url": "https://git.robotstxt.es/ROBOTSTXT/robotstxt-smtp-newsletter/releases/download/2.2.4/robotstxt-smtp-newsletter-2.2.4.zip", + "download_url": "https://git.robotstxt.es/ROBOTSTXT/robotstxt-smtp-newsletter/releases/download/2.2.5/robotstxt-smtp-newsletter-2.2.5.zip", "requires": "4.7", "tested": "6.9", "requires_php": "7.2", "last_updated": "2026-02-16", "description": "Integrates ROBOTSTXT SMTP configuration with Newsletter plugin for reliable bulk email delivery with database-backed queue and external workers. Provides persistent email queue, parallel processing, automatic retry, and comprehensive campaign statistics.", - "changelog": "

2.2.4 - 2026-02-16

2.2.3 - 2026-02-16

2.2.2 - 2026-02-16

2.2.1 - 2026-02-16

2.2.0 - 2026-02-16

2.1.0 - 2026-02-09

2.0.1 - 2026-01-29

2.0.0 - 2026-01-29

1.0.0 - 2026-01-29

", + "changelog": "

2.2.5 - 2026-02-16

2.2.4 - 2026-02-16

2.2.3 - 2026-02-16

2.2.2 - 2026-02-16

2.2.1 - 2026-02-16

2.2.0 - 2026-02-16

2.1.0 - 2026-02-09

2.0.1 - 2026-01-29

2.0.0 - 2026-01-29

1.0.0 - 2026-01-29

", "sections": { - "description": "Integrates ROBOTSTXT SMTP configuration with Newsletter plugin for reliable bulk email delivery with database-backed queue and external workers. Version 2.2.4 fixes speed calculation to work correctly with any Newsletter cron interval. Emails are queued to database and processed by external CLI workers, providing reliability, scalability, and detailed monitoring.", - "changelog": "

2.2.4 - 2026-02-16

2.2.3 - 2026-02-16

2.2.2 - 2026-02-16

2.2.1 - 2026-02-16

2.2.0 - 2026-02-16

" + "description": "Integrates ROBOTSTXT SMTP configuration with Newsletter plugin for reliable bulk email delivery with database-backed queue and external workers. Version 2.2.5 fixes worker script compatibility ensuring it loads correctly in all WordPress environments. Emails are queued to database and processed by external CLI workers, providing reliability, scalability, and detailed monitoring.", + "changelog": "

2.2.5 - 2026-02-16

2.2.4 - 2026-02-16

2.2.3 - 2026-02-16

2.2.2 - 2026-02-16

2.2.1 - 2026-02-16

2.2.0 - 2026-02-16

" }, "banners": { "low": "", diff --git a/worker.php b/worker.php index 81eaf1f..9909d2b 100644 --- a/worker.php +++ b/worker.php @@ -74,9 +74,20 @@ if ( ! file_exists( $wp_load_path ) ) { require_once $wp_load_path; -// Verify plugin is active. +// Load plugin if not already loaded (happens in DOING_CRON context) if ( ! defined( 'ROBOTSTXT_SMTP_NEWSLETTER_VERSION' ) ) { - fwrite( STDERR, "Error: Newsletter SMTP plugin is not active\n" ); + $plugin_file = __DIR__ . '/robotstxt-smtp-newsletter.php'; + if ( file_exists( $plugin_file ) ) { + require_once $plugin_file; + } else { + fwrite( STDERR, "Error: Newsletter SMTP plugin file not found\n" ); + exit( 1 ); + } +} + +// Verify plugin loaded successfully +if ( ! defined( 'ROBOTSTXT_SMTP_NEWSLETTER_VERSION' ) ) { + fwrite( STDERR, "Error: Newsletter SMTP plugin could not be loaded\n" ); exit( 1 ); }