Edgewall Software

Ticket #3914 (new enhancement)

Opened 2 years ago

Last modified 12 months ago

ticket change notification should contain diff'ed text, not old and new

Reported by: ThurnerRupert Owned by: cboos
Priority: normal Milestone: 0.13
Component: ticket system Version: 0.10
Severity: normal Keywords: notification email
Cc:

Description

it would be beneficial, if the notification mail on a ticket change containes a diff'ed output instead of the old and new text. especially when a description is long and just a little thing changed its quite a challenge to find out what changed.

Attachments

Change History

follow-ups: ↓ 2 ↓ 4   Changed 2 years ago by cboos

What about the diff with the full context?

in reply to: ↑ 1   Changed 2 years ago by anonymous

Replying to cboos:

What about the diff with the full context?

would be even better :)

  Changed 2 years ago by cboos

  • owner changed from jonas to cboos
  • milestone set to 0.11

in reply to: ↑ 1 ; follow-up: ↓ 5   Changed 2 years ago by mgood

Replying to cboos:

What about the diff with the full context?

Be sure to take into account the line wrapping. Descriptions will probably have long lines that get wrapped for the email, so they'll need diffed after wrapping so the diff doesn't get screwed up.

in reply to: ↑ 4 ; follow-up: ↓ 6   Changed 2 years ago by eblot

Replying to mgood:

Be sure to take into account the line wrapping. Descriptions will probably have long lines that get wrapped for the email, so they'll need diffed after wrapping so the diff doesn't get screwed up.

Base64 encoding can avoid this issue (as the base64 stream encode the line feed as any other characters). Other encoding schemes (such as QP) are subject to this issue.

Another solution is to make diff'ed text appear as attached files, not inlined within the notification text. Attaching documents to notification would require some careful rework, as previous attempts to use multipart email messages have led to unexpected difficulties.

Anyway, IMHO such a feature could be a candidate for 0.12 rather than 0.11

in reply to: ↑ 5 ; follow-up: ↓ 7   Changed 2 years ago by mgood

Replying to eblot:

Replying to mgood:

Be sure to take into account the line wrapping. Descriptions will probably have long lines that get wrapped for the email, so they'll need diffed after wrapping so the diff doesn't get screwed up.

Base64 encoding can avoid this issue (as the base64 stream encode the line feed as any other characters). Other encoding schemes (such as QP) are subject to this issue.

No, that's not really what I meant. I'm not sure I understand why the encoding would affect the display. What I mean is that for email display you'll want to wrap the lines in the description so they don't run off the screen. Doing this after doing the diff will produce incorrect diffs like:

- this is the old
description getting
wrapped
+ this is the new
description also
being wrapped

Which would be better displayed as:

- this is the old
- description getting
- wrapped
+ this is the new
+ description also
+ being wrapped

in reply to: ↑ 6   Changed 2 years ago by eblot

Replying to mgood:

No, that's not really what I meant. I'm not sure I understand why the encoding would affect the display.

Oh ok, I got it.
About the encoding: email data line should be limited to 76 characters (according to RFC822), so Trac needs to introduce line breaks before sending the email. However with Base64, the original line breaks do not matter, as they never appear in the data sent over SMTP: MIME/Base64 adds its own line breaks that are unrelated with the encoded line breaks.

Nevertheless, I did not though about email display on the MUA, so you can forget about my comment, even though we might need to introduce multipart MIME message at some point.

  Changed 23 months ago by cboos

  • keywords notification email added
  • component changed from general to ticket system
  • milestone changed from 0.11 to 0.12

Probably 0.12.

  Changed 12 months ago by osimons

#6664 is working to make a diff available for the web ui. I have noted the question of email diffs on that ticket.

Add/Change #3914 (ticket change notification should contain diff'ed text, not old and new)

Author



Change Properties
<Author field>
Action
as new
as The resolution will be set. Next status will be 'closed'
to The owner will change from cboos. Next status will be 'new'
The owner will change from cboos to anonymous. Next status will be 'assigned'
 
Note: See TracTickets for help on using tickets.