Edgewall Software

Opened 13 years ago

Last modified 9 months ago

#1962 new enhancement

Due dates on tickets & email notification on overdue dates

Reported by: owen@… Owned by:
Priority: high Milestone: next-major-releases
Component: ticket system Version: 0.8.4
Severity: minor Keywords: notification
Cc: trac@…, charles.butterfield@…, mahmoud.kassem@…, hr@…, bigjonroberts@…, josh@…, mpotter@…, leho@…, itamarost@…
Release Notes:
API Changes:


It maye be there already but i cannot find it. One things as a software project manager that drives me crazy about track is the inability to add a due date to tickets. Prioritization is all well and good, and most certainly handy, but as part of the timeline / roadmap and the ticket inspector you REALLY need to have a due date on a ticket. It'd also be fantastic for Trac to notify the allocated user that the ticket is now overdue and bug them on a daily / configurable timeframe. As i said, correct me if this is already in trac (please tell me where!!) but if it's not, this is a really string feature request & i think a definite must have.

Thanks - trac is awesome & we;'re really starting to use it now :)



Attachments (0)

Change History (33)

comment:1 Changed 13 years ago by Emmanuel Blot

Milestone: 0.91.0
Severity: majorminor

From my perpective, a due date on a single ticket is not very useful. I guess it depends on the way we work, but I don't think this is a mandatory feature. However, I guess it can be useful for other teams.

You may use custom fields (which do not have "date" type, so you'll have to use regular text) to store a due date for a ticket, but you won't be able to send email notifications with this solution. Such notifications require a background task that periodically polls the status of open tickets, and trigger notifications if the due date is over. Trac is event-driven (by web client requests), there's nothing such as a background task. However, you might want to implement such a feature by polling the SQL DB with a cron job, for example. This does not seem very difficult to do, but I don't think this should be part of the Trac core.

I've changed the Milestone of this ticket, as I don't think adding such a feature can fit in the 0.9 milestone timeframe, and the Severity field: this is a request for enhancement, not a major issue.

comment:2 Changed 13 years ago by davmp@…

Personally, I just assign tickets to milestones and then create/modify reports to do a join with the milestone table and pull out the 'time' or 'due' column.

BTW, the docs for my Trac 0.84 instance say the column is called 'due' but my Trac database actually has a 'time' column.

comment:3 Changed 13 years ago by trac_admin@…

My two cents:

This is definately an "enhancement" as opposed to a major feature request, but I don't want it to be overlooked.

I found find it very useful to be able to add a due date to a specific project inside of a milestone, especially if it's a blocker. If I have a milestone with 10 tickets and I need #3 to be done before we can start on #4, I want to be able to put clear dates on that and it would be nice to do it via the ticket interface and have it integrate with iCal.

comment:4 Changed 13 years ago by Christopher Lenz

Milestone: 1.00.12

comment:5 Changed 13 years ago by tovare

Another vote for this feature. Adding due-dates would be very usefull, but email-reminders would be less usefull. Time is a can of worms, but due dates and if Trac had a notion of time-estimates as well, we could get reports on how overloaded a person was.

comment:6 Changed 12 years ago by trac.edgewall.com.kevin@…

I wholeheartedly agree that due dates for tasks are essential.

comment:7 Changed 12 years ago by jkp@…

I would really like to see this get in there somewhere. I could utilize trac more fully if I had email reminders about overdue tasks, mainly because there is no central way to report on multiple projects, or to manage multiple projects from the same interface - IE if i have 10 different trac environs I have to go into each to check my due tickets.

comment:8 Changed 12 years ago by bryan

I think this feature would be very useful. Especially if you can set individual preference on how often to remind. Some people prefer to only get one notification of a pending milestone or ticket, others need daily reminders to get it done.

comment:9 Changed 12 years ago by trac@…

There are, for instance TimeTracking plugins, etc., for Trac. I'd like a due date for tickets as well (useful especially in some cases when milestones just don't apply, such as our procurement department and for building maintenance requests), but my biggest beef is that there is no date-specific field. I definitely think that the date-specific custom field would be a great addition to Trac.

comment:10 Changed 12 years ago by trac@…

Cc: trac@… added

I want notifications for this ticket. Hopefully Automattic's SPAM detection behaves now with a comment?

comment:11 Changed 12 years ago by charles.butterfield@…

Cc: charles.butterfield@… added

I am a trac advocate at my company, and have taken a lot of heat about the lack of a due date for tickets, which are a necessity for many types of tasks.

I have suggested the use of pseudo-milestones (i.e. Jan2007, Feb2007, etc), which is moderately effective for large granularity dates, but fails miserably for short term action items (i.e. these 10 things are due tomorrow, and these 5 more are due 2 days later - now get cracking!).

Tracking (and reporting) of due dates for myriad short-term tasks is the big missing link in my companies use of trac. There is increasing pressure to switch to FogBugz because it apparently handles short-term due dates.

If there is some simple way to add due dates AND to get them reported and sorted, I'd love to hear about it.

comment:12 Changed 12 years ago by Christian Boos

While waiting for a satisfactory solution, you may want to try out some plugins on TracHacks, th:GanttPlugin (this was discussed a few days ago on the trac-users mailing list, see this mail).

comment:13 in reply to:  12 Changed 12 years ago by anonymous

Replying to cboos: Especially for gantt stuff it would be useful to also have (optional) fields to specify expected work needed and to specify dependencies on other bugs.

comment:14 Changed 12 years ago by mahmoud.kassem@…

Cc: mahmoud.kassem@… added

comment:15 Changed 12 years ago by Emmanuel Blot

Keywords: notification added

comment:16 Changed 12 years ago by Emmanuel Blot

See also #4781

comment:17 Changed 11 years ago by anonymous

I too find that our use of Trac is limited due to not having ticket due dates.

I find the fact you can create an iCal of your milestones awesome and an RSS feed of your ticket list also extremely handy.

I like that milestone due dates show up on my calendar and the tickets in the Task/Todo list. All very handy.

But without taking the pseudo Milestone approach outlined above, it is very difficult to manage tickets in a time based manner. Priority is all well and good, but I think a list of tickets I should be working on, in order, would make my life a lot better. If you combine the estimated hours capabilities as defined in TimeTracking, with priorities and due dates you should be able to calculate a reasonable ordering of what tickets you should be working on NOW!

comment:18 Changed 11 years ago by Emmanuel Blot

See also #5758.

comment:19 Changed 11 years ago by anonymous

Cc: hr@… added

cc changed from trac@…, charles.butterfield@…, mahmoud.kassem@… to trac@…, charles.butterfield@…, mahmoud.kassem@…, hr@…

comment:20 Changed 11 years ago by adi@…

Trac would become infinitely more useful with a due date feature that could then be exported to a calender. When managing tasks in my current position, it is essential that I create priorities with clear due date hierarchies and have the entire project (all tasks) as transparent as possible. The founders want to visually eyeball development and understand the progression of development based on assigned dates, estimated hours and due dates.

Currently, this would take a lot of double work forcing me to use an MS Project like tool, when trac is so close to being able to offer the same functionality.

Here is my enthusiast two thumbs up for the development of this feature!

comment:21 Changed 11 years ago by Emmanuel Blot

See also #6658 that requests the same feature, with an escalation feature option.

comment:22 Changed 11 years ago by anonymous

Cc: bigjonroberts@… added

comment:23 Changed 11 years ago by Jon Roberts <bigjonroberts@…>

I've made a partial workaround to this by using custom fields and the DateFieldPlugin.

This worked fine for me with 0.11b1. I hope someone else finds this useful, too.

Here's the trac.ini settings we're using:

due_date = text
due_date.date = true
due_date.date_empty = true
due_date.label = Date Due (mm-dd-yyyy)

format = mdy
separator = /

Here's some SQL for a simple report that references the custom date field:

SELECT p.value AS __color__,
   id AS ticket, summary, owner, c.value AS due_date
  FROM ticket t, enum p, ticket_custom c
  WHERE t.id = c.ticket AND c.name = 'due_date'
AND p.name = t.priority AND p.type = 'priority'
  ORDER BY date(substr(c.value,7,4)||"-"||substr(c.value,1,2)||"-"||substr(c.value,4,2)),p.value

comment:24 Changed 9 years ago by anonymous

Thanks, this has helped me a lot (could not work out how to get reports to order on a custom field due date.)
Is there a way to use these date custom field(s) to do arithmetical calculations?
I am thinkin in particular

  • internal and external due dates - difference in days between them
  • dues date - ticket creation date

I tried to have a play withs ome of the date functions but a lot don't seem to be supported for some reason?

comment:25 Changed 9 years ago by eladio@…

Thanks, Works perfectly for me too.

How is possible add in default reports add the column due_date?

This is interesting for add the column in results when you click on the "Available tickets" related with a Milestone when display the RoadMap.

comment:26 Changed 9 years ago by anonymous

For reports, I had to modify the ORDER BY clause above for postgres 8.X to this:

(CASE c.value WHEN '' THEN null ELSE date(substr(c.value,7,4)||'-'||substr(c.value,1,2)||'-'||substr(c.value,4,2)) END)

For 2 reasons:

  1. due_date is optional in my setup, so it can be — hence the case statement.
  2. had to change the " to a ' for the strings.
Last edited 9 months ago by Ryan J Ollos (previous) (diff)

comment:27 Changed 9 years ago by anonymous

Ugh sorry, butchered the above post.

I allow empty due_dates in my Trac setup. Using postgres 8.X, i had to modify the ORDER BY clause to the following:

ORDER BY (CASE c.value WHEN '' THEN null ELSE date(substr(c.value,7,4)||'-'||substr(c.value,1,2)||'-'||substr(c.value,4,2)) END)

comment:28 Changed 9 years ago by josh@…

Cc: josh@… added

comment:29 Changed 8 years ago by mpotter@…

Cc: mpotter@… added

comment:30 Changed 8 years ago by lkraav <leho@…>

Cc: leho@… added

comment:31 Changed 8 years ago by Itamar Ostricher

Cc: itamarost@… added

comment:32 Changed 3 years ago by Ryan J Ollos

Owner: Jonas Borgström deleted

comment:33 Changed 9 months ago by anonymous

The th:TracCronPlugin#Ticketdeadlinetask plugin seems to implement exactly this feature.

Modify Ticket

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

Add Comment

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