Mail notifications work fine on MediaWiki 1.30.0 (PHP 7.0.19-1 (fpm-fcgi)) if Echo extension is not installed. When I enable Echo, adding a new message to another user's talk page doesn't send any email, despite user preferences having it enabled.
Enabling the debug log prints this:
UserMailer::send: sending mail to Test54364646 <**********.com> Assembling multipart mime email [fatal] [bf6afdf4] PHP Fatal Error: Call to undefined method PEAR::encodeHeader()
The PHP error log displays this:
PHP Fatal error: Call to undefined method PEAR::encodeHeader() in mediawiki-1.30.0/vendor/pear/pear-core-minimal/src/PEAR.php on line 231 Stack trace: #0 mediawiki-1.30.0/vendor/pear/mail_mime/Mail/mime.php(1348): PEAR::__callStatic('encodeHeader', Array) #1 mediawiki-1.30.0/vendor/pear/mail_mime/Mail/mime.php(1324): Mail_mime->encodeHeader('MIME-Version', '1.0', 'ISO-8859-1', 'quoted-printabl...') #2 mediawiki-1.30.0/vendor/pear/mail_mime/Mail/mime.php(1111): Mail_mime->encodeHeaders(Array) #3 mediawiki-1.30.0/includes/mail/UserMailer.php(320): Mail_mime->headers(Array) #4 mediawiki-1.30.0/includes/mail/UserMailer.php(189): UserMailer::sendInternal(Array, Object(MailAddress), '\xE2\x80\xAACiencia Al P...', '--=_3f3c61fb81c...', Array) #5 mediawiki-1.30.0/extensions/Echo/includes/Notifier.php(97): UserMailer::send(Array, Object(MailAddress), '\xE2\x80\xAACiencia Al P...', Array, Array) #6 mediawiki-1.30.0/extensions/Echo/includes/controller/NotificationController.php(337): EchoNotifier::notifyWithEmail(Object(User), Object(EchoEvent)) #7 mediawiki-1.30.0/extensions/Echo/includes/controller/NotificationController.php(116): EchoNotificationController::doNotification(Object(EchoEvent), Object(User), 'email') #8 mediawiki-1.30.0/extensions/Echo/includes/model/Event.php(171): EchoNotificationController::notify(Object(EchoEvent), true) #9 mediawiki-1.30.0/extensions/Echo/includes/DiscussionParser.php(93): EchoEvent::create(Array) #10 mediawiki-1.30.0/extensions/Echo/Hooks.php(552): EchoDiscussionParser::generateEventsForRevision(Object(Revision)) #11 mediawiki-1.30.0/includes/deferred/MWCallableUpdate.php(30): EchoHooks::{closure}() #12 mediawiki-1.30.0/includes/deferred/DeferredUpdates.php(257): MWCallableUpdate->doUpdate() #13 mediawiki-1.30.0/includes/deferred/DeferredUpdates.php(210): DeferredUpdates::runUpdate(Object(MWCallableUpdate), Object(Wikimedia\Rdbms\LBFactorySimple), 'run', 2) #14 mediawiki-1.30.0/includes/deferred/DeferredUpdates.php(131): DeferredUpdates::execute(Array, 'run', 2) #15 mediawiki-1.30.0/includes/MediaWiki.php(895): DeferredUpdates::doUpdates('run') #16 mediawiki-1.30.0/includes/MediaWiki.php(719): MediaWiki->restInPeace('normal', false) #17 mediawiki-1.30.0/includes/MediaWiki.php(740): MediaWiki->{closure}() #18 mediawiki-1.30.0/includes/MediaWiki.php(553): MediaWiki->doPostOutputShutdown('normal') #19 mediawiki-1.30.0/index.php(43): MediaWiki->run() #20 {main}
This error message starts appearing on the logs after enabling Echo extension.
Despite the fatal error, there's no visible error message on the page.