Edgewall Software
Modify

Opened 13 years ago

Last modified 3 years ago

#4583 new enhancement

Prebuilt milestone description templates

Reported by: daniel.oconnor@… Owned by:
Priority: normal Milestone: unscheduled
Component: roadmap Version: 0.10.3
Severity: normal Keywords: copy clone
Cc: Branch:
Release Notes:
API Changes:

Description

We use our milestone pages as a very nice summary of work going on.

It would be very useful to be able to make a default template to go with every new milestone. Leave it up to the user to create and customize their own; maybe provide a suggested implementation.

We use it for stuff like rss feeds, common ticket queries, etc; and it provides a 'status at a glance' very well.

For example; almost every milestone we do has:

== Release Plan ==
http://trac.adl.vm/trac.cgi/attachment/wiki/WikiStart/Panels - Mobius.PNG?format=raw

== Success requirements ==
 * one 
 * two
 * three

== Tracking tickets (Open) ==
[[TicketQuery(component=tracking&status=new|assigned|reopened&milestone=Panels - Mobius)]]
== Tracking tickets (Closed) ==
[[TicketQuery(component=tracking&status=closed&milestone=Panels - Mobius)]]
== Review Needed ==
[[TicketQuery(milestone=Panels - Mobius&keywords~=review)]]
== UAT Needed ==
[[TicketQuery(milestone=Panels - Mobius&keywords~=uat)]]
== Patches to go ==
[[TicketQuery(milestone=Panels - Mobius&keywords~=patch)]]
== SIT needed ==
[[TicketQuery(milestone=Panels - Mobius&keywords~=sit)]]

Attachments (0)

Change History (9)

comment:1 by Christian Boos, 12 years ago

Keywords: copy clone added
Milestone: 1.0

Either something like the PageTemplates or the ticket duplication feature (#4686) could be done here.

comment:2 by Christian Boos, 12 years ago

#3719 was requesting the possibility to Add Milestone from the milestone page itself.

Well, if we have the Clone operation, then there's no real need for Add (simply clear the old content if needed, or use it as a template).

comment:3 by Christian Boos, 9 years ago

Milestone: 1.0unscheduled

Milestone 1.0 deleted

comment:4 by Ryan J Ollos, 4 years ago

Owner: Christopher Lenz removed

comment:5 by Cinc-th, 4 years ago

I created a plugin which implements templates for milestones.

th:MilestoneTemplatePlugin

It works similar to the PageTemplates for wiki pages. Note that this is a barebones implementation.

If the general approach wrt user interface is acceptable one may think about doing it the same way in core. Implementing the feature in the core would probably greatly reduce the amount of code necessary.

in reply to:  5 ; comment:6 by Christian Boos, 4 years ago

Replying to Cinc-th:

I created a plugin which implements templates for milestones.

th:MilestoneTemplatePlugin

Nice… But can you think about a way to do it without Genshi stream transformations? ;-)

It works similar to the PageTemplates for wiki pages. Note that this is a barebones implementation.

If the general approach wrt user interface is acceptable one may think about doing it the same way in core. Implementing the feature in the core would probably greatly reduce the amount of code necessary.

Indeed.

TracTemplates/Milestone/TracTemplates/Wiki/TracTemplates/

in reply to:  6 ; comment:7 by Cinc-th, 4 years ago

Replying to Christian Boos:

Replying to Cinc-th:

I created a plugin which implements templates for milestones.

th:MilestoneTemplatePlugin

Nice… But can you think about a way to do it without Genshi stream transformations? ;-)

Hmm, in a plugin there's probably no other way aside from using a new private template for the pages in question. Or maybe reimplement milestone handling with intermediate pages to select the template. But I don't think that's worth the effort.

When living in core Genshi transformations are not necessary because the select control would be part of the standard page template.

Or did I misunterstand the question?

/me confused…

in reply to:  7 comment:8 by Christian Boos, 4 years ago

Replying to Cinc-th:

Replying to Christian Boos:

Replying to Cinc-th:

I created a plugin which implements templates for milestones.

th:MilestoneTemplatePlugin

Nice… But can you think about a way to do it without Genshi stream transformations? ;-)

Hmm, in a plugin there's probably no other way aside from using a new private template for the pages in question. Or maybe reimplement milestone handling with intermediate pages to select the template. But I don't think that's worth the effort.

Living in Genshi-land, that's indeed the traditional way to "hook" plugin content inside existing Trac pages. However, some recent mails on Trac-users brought up the topic of alternatives to Genshi, again. When I saw Kajiki mentioned, I decided to experiment with it this week-end, as well as with Jinja2. What I got looks promising so far and I'll post more details when I have something ready to show.

But of course, the big problem we'll have is that plugin developers currently heavily rely on Genshi stream transforms. An alternative exists however, which is to inject the extra markup using JavaScript, even if that practice isn't much advertized right now. For example, there's #10735 (which I'll have to revive), and I'm sure there must be other examples on TH, if not plenty of them(?) .

One way to ease the transition away from Genshi would be to start encouraging people to stop using Genshi streams and start using JavaScript (or CoffeeScript) for that.

When living in core Genshi transformations are not necessary because the select control would be part of the standard page template.

Or did I misunterstand the question?

/me confused…

Don't worry, /me being cryptic was part of the experiment ;-)

Version 1, edited 4 years ago by Ryan J Ollos (previous) (next) (diff)

in reply to:  5 comment:9 by Ryan J Ollos, 3 years ago

Replying to Cinc-th:

If the general approach wrt user interface is acceptable one may think about doing it the same way in core. Implementing the feature in the core would probably greatly reduce the amount of code necessary.

It would be great if you wanted to eventually take a crack at implementing this in Trac. I guess we'll have to wait for the Jinja2 work to push any changes to the repository, but no reason you couldn't start experimenting with the JavaScript implementation. It will probably take a number of iteration to get it right.

Modify Ticket

Change Properties
Set your email in Preferences
Action
as new The ticket will remain with no owner.
The ticket will be disowned. Next status will be 'new'.
as The resolution will be set. Next status will be 'closed'.
The owner will be changed from (none) to anonymous. Next status will be 'assigned'.

Add Comment


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