[Mailman-Developers] Fwd: Mailman | The unsubscribe process using the -leave address does not work because of an `assert` in the code (#310)
mark at msapiro.net
Thu Feb 9 10:38:51 EST 2017
@abompard I don't know what's going here. I received the notice below
from GitLab. I tried to go there to comment that this looks like a
duplicate or at least very similar to
<https://gitlab.com/mailman/mailman/issues/294> which was fixed about 3
weeks ago, but GitLab gives me a 404 and says there is no issue #310.
-------- Forwarded Message --------
Subject: Mailman | The unsubscribe process using the -leave
address does not work because of an `assert` in the code (#310)
Date: Thu, 09 Feb 2017 10:31:52 +0000
From: Aurélien Bompard <gitlab at mg.gitlab.com>
Reply-To: mailman / Mailman
<incoming+36519312af637e6be0deecee3e4f348b at gitlab.com>
To: mark at msapiro.net
Here's the situation that I have confirmed on my servers:
* a members sends an email to the |-leave| address to unsubscribe
* they recieve a confirmation email
* they reply to this email-
* |SubscriptionManager.confirm()| get called, the
|UnSubscriptionWorkflow| gets restored and run, the goodbye email
gets sent to the user.
* at the end of the |UnSubscriptionWorkflow| in
|._step_do_unsubscription()|, the |.member| attribute gets set to None
* the |.confirm()| command returns |workflow.token|,
|workflow.token_owner|, and |workflow.member| to the caller
* on line 56, |commands.eml_confirm.Confirm| has an |assert member is
not None|, which causes an AssertionError. As a result, the database
transaction is rollbacked and the unsubscription is forgotten.
I suspect this |assert| comes from the time where the -confirm command
was only used for subscription confirmations, not unsubscription
confirmation. Removing it solves the problem.
I think this is important and simple enough to fix it for 3.1.
Reply to this email directly or view it on GitLab
Mark Sapiro <mark at msapiro.net> The highway is for gamblers,
San Francisco Bay Area, California better use your sense - B. Dylan
More information about the Mailman-Developers