Changeset View
Changeset View
Standalone View
Standalone View
src/applications/config/option/PhabricatorMetaMTAConfigOptions.php
| Show First 20 Lines • Show All 48 Lines • ▼ Show 20 Lines | 'metamta.default-address')); | ||||
| $one_mail_per_recipient_desc = $this->deformat(pht(<<<EODOC | $one_mail_per_recipient_desc = $this->deformat(pht(<<<EODOC | ||||
| When a message is sent to multiple recipients (for example, several reviewers on | When a message is sent to multiple recipients (for example, several reviewers on | ||||
| a code review), Phabricator can either deliver one email to everyone (e.g., "To: | a code review), Phabricator can either deliver one email to everyone (e.g., "To: | ||||
| alincoln, usgrant, htaft") or separate emails to each user (e.g., "To: | alincoln, usgrant, htaft") or separate emails to each user (e.g., "To: | ||||
| alincoln", "To: usgrant", "To: htaft"). The major advantages and disadvantages | alincoln", "To: usgrant", "To: htaft"). The major advantages and disadvantages | ||||
| of each approach are: | of each approach are: | ||||
| - One mail to everyone: | - One mail to everyone: | ||||
| - This violates policy controls. The body of the mail is generated without | |||||
| respect for object policies. | |||||
| - Recipients can see To/Cc at a glance. | - Recipients can see To/Cc at a glance. | ||||
| - If you use mailing lists, you won't get duplicate mail if you're | - If you use mailing lists, you won't get duplicate mail if you're | ||||
| a normal recipient and also Cc'd on a mailing list. | a normal recipient and also Cc'd on a mailing list. | ||||
| - Getting threading to work properly is harder, and probably requires | - Getting threading to work properly is harder, and probably requires | ||||
| making mail less useful by turning off options. | making mail less useful by turning off options. | ||||
| - Sometimes people will "Reply All" and everyone will get two mails, | - Sometimes people will "Reply All" and everyone will get two mails, | ||||
| one from the user and one from Phabricator turning their mail into | one from the user and one from Phabricator turning their mail into | ||||
| a comment. | a comment. | ||||
| - Not supported with a private reply-to address. | - Not supported with a private reply-to address. | ||||
| - Mails are sent in the server default translation. | - Mails are sent in the server default translation. | ||||
| - One mail to each user: | - One mail to each user: | ||||
| - Policy controls work correctly and are enforced per-user. | |||||
| - Recipients need to look in the mail body to see To/Cc. | - Recipients need to look in the mail body to see To/Cc. | ||||
| - If you use mailing lists, recipients may sometimes get duplicate | - If you use mailing lists, recipients may sometimes get duplicate | ||||
| mail. | mail. | ||||
| - Getting threading to work properly is easier, and threading settings | - Getting threading to work properly is easier, and threading settings | ||||
| can be customzied by each user. | can be customzied by each user. | ||||
| - "Reply All" no longer spams all other users. | - "Reply All" no longer spams all other users. | ||||
| - Required if private reply-to addresses are configured. | - Required if private reply-to addresses are configured. | ||||
| - Mails are sent in the language of user preference. | - Mails are sent in the language of user preference. | ||||
| In the code, splitting one outbound email into one-per-recipient is sometimes | |||||
| referred to as "multiplexing". | |||||
| EODOC | EODOC | ||||
| )); | )); | ||||
| $herald_hints_description = $this->deformat(pht(<<<EODOC | $herald_hints_description = $this->deformat(pht(<<<EODOC | ||||
| You can disable the Herald hints in email if users prefer smaller messages. | You can disable the Herald hints in email if users prefer smaller messages. | ||||
| These are the links under the header "WHY DID I GET THIS EMAIL?". If you set | These are the links under the header "WHY DID I GET THIS EMAIL?". If you set | ||||
| this to `false`, they will not appear in any mail. Users can still navigate to | this to `false`, they will not appear in any mail. Users can still navigate to | ||||
| the links via the web interface. | the links via the web interface. | ||||
| ▲ Show 20 Lines • Show All 130 Lines • ▼ Show 20 Lines | return array( | ||||
| 'PhabricatorMailImplementationPHPMailerLiteAdapter') | 'PhabricatorMailImplementationPHPMailerLiteAdapter') | ||||
| ->setBaseClass('PhabricatorMailImplementationAdapter') | ->setBaseClass('PhabricatorMailImplementationAdapter') | ||||
| ->setSummary(pht('Control how mail is sent.')) | ->setSummary(pht('Control how mail is sent.')) | ||||
| ->setDescription($adapter_description), | ->setDescription($adapter_description), | ||||
| $this->newOption( | $this->newOption( | ||||
| 'metamta.one-mail-per-recipient', | 'metamta.one-mail-per-recipient', | ||||
| 'bool', | 'bool', | ||||
| true) | true) | ||||
| ->setLocked(true) | |||||
epriestley: I locked this because changing it now violates policies. | |||||
Not Done Inline ActionsJust to understand this code a bit, setLocked here means that the config must be set via the command line config tool rather than the UI? carlsverre: Just to understand this code a bit, setLocked here means that the config must be set via the… | |||||
Not Done Inline ActionsThat's correct. You can set it with bin/config set metamta.one-mail-per-recipient false, although your existing database setting will still be honored. I didn't test it extensively but I believe there was a bug with this in the removed code, so I'd expect that upgrading will fix things for you without additional changes (except for a daemon restart) once this lands. epriestley: That's correct. You can set it with `bin/config set metamta.one-mail-per-recipient false`… | |||||
Not Done Inline ActionsExcellent, looking forward to doing the upgrade. carlsverre: Excellent, looking forward to doing the upgrade. | |||||
| ->setBoolOptions( | ->setBoolOptions( | ||||
| array( | array( | ||||
| pht('Send Mail To Each Recipient'), | pht('Send Mail To Each Recipient'), | ||||
| pht('Send Mail To All Recipients'), | pht('Send Mail To All Recipients'), | ||||
| )) | )) | ||||
| ->setSummary( | ->setSummary( | ||||
| pht( | pht( | ||||
| 'Controls whether Phabricator sends one email with multiple '. | 'Controls whether Phabricator sends one email with multiple '. | ||||
| ▲ Show 20 Lines • Show All 115 Lines • Show Last 20 Lines | |||||
I locked this because changing it now violates policies.