P4DTI issue job000121

TitleE-mail messages are hard to read
Statusclosed
Priorityessential
Assigned userGareth Rees
OrganizationRavenbrook
DescriptionThe e-mail messages generated by the replicator when it fails to replicate are cryptic and hard to read.
AnalysisThe Python traceback may not be necessary: it's in the replicator's log, after all.
Jobs should be laid out in a more friendly manner, rather than just giving the representation of the structure.
Paragraphs should be filled to 80 columns.
How foundmanual_test
EvidenceDiscovered while testing with RB.
Created byGareth Rees
Created on2000-12-04 18:12:19
Last modified byGareth Rees
Last modified on2001-12-10 19:09:30
History2000-12-04 GDR Created.

Fixes

Change Effect Date User Description
5616 closed 2000-12-07 11:56:08 Gareth Rees Improving e-mail messages:
When there's no error message (typically in the case of assertion failure), say so.
Format the job properly in all messages (including the one sent by the conflict method).
Use "Perforce job" and "defect tracker issue" for clarity. (Even better would be to have a defect_tracker.name so it could say "TeamTrack issue".)
5575 closed 2000-12-06 20:12:58 Gareth Rees Fixed bug: the overwriting methods now send e-mail with the new issue/job in them, not the old issue/job.
5572 closed 2000-12-06 20:01:34 Gareth Rees E-mail messages from the replicator concerning overwritten jobs are much improved:
There is an initial paragraph explaining that they are automatically generated messages, and giving the RID.
The cryptic traceback has been replaced with the exc_value (the traceback is given at the end of the message).
For TeamShare API errors, an additional paragraph describes possible causes for the error.
The overwritten job is presented in a form which could be passed to 'p4 job -i' (with 'code' and 'specdef' fields removed if present) and so should be clear and familiar to users.
The user is referred to the section 2.5 of User Guide and to their administrator.
The replicator's mail() method takes a list of (role, address) pairs. This allows the different roles like 'Job owner' and 'P4DTI administrator' to be named in the To: header.
The mail() method does the right thing with smtplib.sendmail() when there are several people to mail.
5542 open 2000-12-06 14:22:38 Gareth Rees Improved message sent when a transition can't be found, by using the state names rather than the state ID numbers.
5541 open 2000-12-06 14:22:31 Gareth Rees If the owner of a job and the person who last changed it are the same (a common occurrence), include them only once in any e-mail sent by the replicator about that job.
5524 open 2000-12-06 11:32:28 Gareth Rees Fixed the replicator's user_email_address method so that it really returns None when there is no such user.
5493 open 2000-12-05 21:35:03 Gareth Rees Imported p4 module so replicator can catch p4.error.
Added replicator method mail_concerning_job() for e-mailing people about a job. There were several places where the owner of a job was been fetched and e-mailed, some of which were buggy. This method replaces all those instances, hopefully correctly.