We wanted a bit more information in our differential email subjects, so we've made it parameterized.
Moving forward, it may make sense to merge subject-prefix and subject-vary into this, but I was hesitant of introducing that large
of a change before discussing this further.
Details
- Reviewers
epriestley - Group Reviewers
Blessed Reviewers - Maniphest Tasks
- T5244: Allow email subjects and bodies to be more customizable
tested locally
Diff Detail
- Repository
- rP Phabricator
- Branch
- master
- Lint
Lint Passed - Unit
Tests Passed - Build Status
Buildable 797 Build 797: [Placeholder Plan] Wait for 30 Seconds
Event Timeline
Offhand, here are some issues with this:
- Repository may be empty (e.g., copy/paste an arbitrary diff).
- Branch may be empty (e.g., arc diff --raw) or meaningless (SVN, detached HEAD).
- Branch is the branch the diff is on, not the upstream branch it was branched from, so in normal/suggested usage it's meaningless (e.g., the branch name will be something like headers, which is redundant with the subject).
- This will break threading in some clients by altering "Thread-Topic" during the thread.
- This will break threading in some clients by altering the subject during the thread.
- This will break threading in some clients by altering sections of the subject not contained inside square brackets during the thread, under some configurations.
- This does not respect the "Vary Subjects" mail configuration setting, and will thus break some clients which would otherwise work properly.
Overall, I'm really hesitant about this. We also do "multiplexing" in the Editor right now (which is really "demultiplexing") and I'd like to move that to the daemon queue, but this makes it more difficult.
We also haven't had other requests for this.
I think your best bet might be to patch this locally. I think you only need to adjust $subject ('Thread-Topic' is not normally visible to users):
$branch = nonempty($object->getActiveDiff()->getBranch(), '-'); $repository = $object->getRepository() ? $object->getRepository()->getName() : '-'; $subject = "[{$repository}/{$branch}] {$subject}";
Not ideal, but probably not really a whole ton of work to keep in sync with the upstream.
src/applications/differential/config/PhabricatorDifferentialConfigOptions.php | ||
---|---|---|
239 | This uses {$...}, but the actual parser uses ${...}. | |
src/applications/differential/editor/DifferentialTransactionEditor.php | ||
1106 | Particularly, this may fatal. |
Moved things to getMailSubjectPrefix, which is slightly more useful and doesn't add an extra variable.
Just pushing this out of my queue, see T5244. I have no plans to bring these changes upstream.