mantisbt-plugins / source-integration

Source control integration plugin framework for MantisBT, including support for Github, Gitlab, Bitbucket, Gitea, Gitweb, Cgit, Subversion, Mercurial and more
http://noswap.com/projects/source-integration/
MIT License
181 stars 130 forks source link

Email failure when a commit is resolved and anonymous account is enabled #318

Closed spmeesseman closed 4 years ago

spmeesseman commented 5 years ago

An email failure occurs when a commit is resolves a bug and anonymous account is enabled.

The entire chain of recipients have the email delivered successfully except for the user making the commit.

Cause: When the "anonymous" account is enabled, mantis seems to authenticate this account and load the user prefs for anonymous account. Then source-integration runs, it sets the user but looks like it unsets it when finished as it should. But then the delayed email tasks fire, and when it goes to send the email to the committer, it reads the anonymous user preferences, which all emails are set to "NO". Disabling the anonymous account the issue goes away

dregad commented 5 years ago

Am I reading this correctly, in that the commits have the anonymous account as committer ?

Since you appear to have done some debugging, maybe you care to post more details about the issue (stack trace, mantis log with LOG_EMAIL_RECIPIENTS, etc)

spmeesseman commented 5 years ago

no, sorry, everything actually works as intended, up until the email notifications get sent at the end of the process. Seems the plugin, when it runs triggered by the post request, determines the user but before it is done "unsets"the user, but then it seems like the email notifications then fire, and when it goes to send the email to the committer, it ends up reading the profile for anonymous user where email notifications are all "off", thus no email.

Anyway, its been several weeks and I cant remember the details, but when I have a chance I will reproduce this again and post more on it

dregad commented 5 years ago

Any feedback ?