Edgewall Software
Modify

Opened 19 years ago

Closed 18 years ago

#1456 closed enhancement (wontfix)

Combine tickets/changesets in timeline

Reported by: ludde Owned by: Jonas Borgström
Priority: normal Milestone:
Component: timeline Version: devel
Severity: normal Keywords: xref
Cc: Branch:
Release Notes:
API Changes:
Internal Changes:

Description

Right now, in the timeline, when you have changesets that fixes bugs, you have something like:

Ticket #444 resolved by Ludde
  fixed - Fixed in #1111

Ticket #555 resolved by Ludde
  fixed - Fixed in #1111

Changeset [1111] by ludde
  Fix stupid mistake in core module. Closes #444,#555.

It would be much more readable if Trac combines those into a single entry (perhaps using some option), such as:

Changeset [1111] by ludde - fixes #444,#555.
  Fix stupid mistake in core module.

Attachments (0)

Change History (4)

comment:1 by anonymous, 19 years ago

Once an xref system is in place, the timeline could be displayed using those rules:

  • If no comment is added when closing the bug, it would merge the changeset with the ticket and NOT display the ticket as a separate entry.
  • If a comment is added, the ticket will be shown as a separate timeline entry AS WELL AS being included in the changeset timeline entry. The ticket comment is shown only in the ticket timeline entry.

This requires that there exists a relation "[XXX] closes #YYY".

comment:2 by Christian Boos, 19 years ago

All this might become quite complex, for a not so obvious benefit:

  • what if you only filter in tickets in your timeline?
  • what if the ticket is reopened, and closed once again the same day (without a comment too :)) How do you know which event should be merged with the changeset?

About the relationship:

  • Using a sentence like this closes #YYY would only create a cross-reference, from the changeset in which that comment was made, to the referenced ticket. The semantic would be informal, and could be understood by looking at the context (which, in that case, would be the full sentence, because of its brevity).
  • Establishing a real relation would require a special wiki notation, for avoiding ambiguities, like those:
    • one might think that this changest closes #yyy, but no.
    • Closes #yyy, really, uh? No Way!
  • An example of such syntax would be:
    • This <<closes>> #yyy (like in [1354])
    • This --closes-- #yyy (which I currently prefer)
  • Even with this explicit syntax, it will not be obvious to find a way to trigger the close action at the appropriate time… For instance, what would happen if in trac-admin I do a xref command (i.e. rebuild all the cross-references)? Would the ticket be closed again?

Note that currently there's no way to create a relation from a TracObject involving 2 other Trac objects. It's always something written in the source object that creates a relation to a referenced object.

comment:3 by vittorio, 19 years ago

Severity: normalenhancement

comment:4 by Christian Boos, 18 years ago

Keywords: xref added
Resolution: wontfix
Status: newclosed

The collapsing of events makes sense only if the events are unambiguously collapsible, like in #38 and #3421. But for ticket changes, I don't think this applies (especially given the already complex ITimelineProvider of the TicketModule!), even more for merging events of different types.

Modify Ticket

Change Properties
Set your email in Preferences
Action
as closed The owner will remain Jonas Borgström.
The resolution will be deleted. Next status will be 'reopened'.
to The owner will be changed from Jonas Borgström to the specified user.

Add Comment


E-mail address and name can be saved in the Preferences .
 
Note: See TracTickets for help on using tickets.