Page MenuHomePhabricator

Review and deploy BounceHandler extension to Wikimedia wikis
Closed, ResolvedPublic


Extension Wikipage:

The BounceHandler extension generates a unique VERP address on every sent email, and has the bouncehandler API that can handle incoming email bounces once the bounce is HTTP POSTed to it via curl from exim. The extension was built as part of the VERP project to properly handle email bounces.

Pipe incoming bounces to the bouncehandler API:-
You need to add the following to your incoming mails to * receving PIPE transport:
command = /usr/bin/curl "action=bouncehandler" --data-urlencode "email@-" http://$IP/api.php

The genrated VERP address is of the form
$wikiId-base36( $UserID )-base36( $Timestamp )-hash( $algorithm,$key, $prefix )@$email_domain

$wikiId - The wiki database name, to support multiple wikis
$userID - The user_id from table 'user' - to uniquely identify a recipient.
$Timestamp - The unix timestamp.
$prefix = $wikiId. '-'. base_convert( $uid, 10, 36). '-'. base_convert( $timeNow, 10, 36);


Version: unspecified
Severity: enhancement



Event Timeline

bzimport raised the priority of this task from to Medium.Nov 22 2014, 3:28 AM
bzimport set Reference to bz69019.
bzimport added a subscriber: Unknown Object (MLST).

For clarification, have security review and performance review of the code base happened already, or are there explicit tickets requesting those actions?

For completeness' sake, see the checklist and please create bugs for parts still needing to be done:

Requested separate bugs for Architecture, Performance, Security and Product reviews. Please check See Also link for the links.

With I758f82729b1c9c6993f536fbd5f3ea9d83b4be28, we have an option to not unconfirm emails and just log bounces. So I'm thinking we should just deploy in a log-only configuration for a month or so, figure out a good threshold for when to start unsubscribing people, and go from there.

72779 doesn't have to be a blocker to deployment...

Change 170369 had a related patch set uploaded by 01tonythomas:
Added the Plancake e-mail parser library to MediaWiki using Composer

Change 172322 had a related patch set uploaded by Legoktm:
[WIP] Deploy BounceHandler extension to production

(In reply to Greg Grossmeier from comment #5)

Scheduled for Wed Nov 5th.

How about we try this again... ;)

Wed Nov 19th at 10am Pacific

Change 172322 merged by jenkins-bot:
Deploy BounceHandler extension to production