Closed (works as designed)
Project:
Mail System
Version:
7.x-2.31
Component:
Code
Priority:
Critical
Category:
Bug report
Assigned:
Unassigned
Reporter:
Created:
3 Feb 2012 at 19:52 UTC
Updated:
6 Mar 2012 at 00:20 UTC
I installed Mail System 7.x-2.31 and set Site-wide default MailSystemInterface to DevelMailLog. When I was finished testing email features I disabled the Mail System module and then uninstalled it. All site emails failed to go out. I checked the variables editor and found the following left behind.
mail_system
a:1:{s:14:"default-system";s:12:"DevelMailLog";}
I flushed caches and mail was still broken. I manually deleted it using the Devel variable editor and now site wide email works again (password recovery, new user, etc).
Shouldn't the module delete this variable itself on uninstall?
Comments
Comment #1
gregrenner commentedsubscribe
Comment #2
pillarsdotnet commentedThe mail_system variable is part of Drupal core and does not belong to this module. There are many ways that the mail_system variable could be set other than by this module. How would you propose that I distinguish between a change made by this module and a change made elsewhere?
Comment #3
gregrenner commentedHow about returning Drupal core variables back to how the module found them?
Sorry if that won't work, but having all site emails stop irrevocably because this module gets used hardly seems like an acceptable workflow. Or how about some help text on the settings page like "Hey this will disable emails permanently, even after you uninstall this module, until you manually update variables table."
Comment #4
pillarsdotnet commentedThe problem is, other mail-sending modules may have reason to modify the
mailsystemcore variable. Setting it back to defaults (that is, unsetting it, since by default it is not set at all) would be disrespectful of other mailing modules.Consider the following scenarios:
mailsystemvariablemailsystemvariablemailsystemvariablemailsystemvariable.mailsystemvariable manually.mailsystemvariablemailsystemvariable.mailsystemvariable