A couple of weeks ago, I started a discussion here 
(http://groups.google.com/group/trac-users/msg/e37e372683f8b419) about a means 
to propagate changes between tickets.  I've now completed a rough first draft 
of the Value Propagation Plugin, a configurable ticket change listener that can 
update one ticket based on changes in another.  It is hosted at Trac-Hacks 
(http://trac-hacks.org/wiki/ValuePropagationPlugin).  

The plugin supports three types of relationships:

 * self - the "other" ticket is the current ticket (update another field)

 * link - the other tickets are listed in a field of this ticket

 * query - the other tickets can be queried based on this ticket's ID 

There are several methods of updating the other ticket's value:

 * sum - add this ticket's value to the other ticket's value. (This ticket's 
old value is subtracted first.) Essentially: 

   oldOther[to] -= old_values[from]
   newOther[to] += ticket[from]

 * min - the other ticket's value is the minimum of it's old value and this 
ticket's value

 * max - the other ticket's value is the maximum of it's old value and this 
ticket's value

 * suffix - this ticket's value is added as a suffix to the other ticket's 
value. (This ticket's old value is removed first.)

 * prefix - this ticket's value is added as a prefix to the other ticket's 
value. (This ticket's old value is removed first.) 

Feedback is very welcome but please be kind; I have 25 years experience 
programming but only about 25 days with Python.

                                                 Chris
-- 
Christopher Nelson, Software Engineering Manager
SIXNET - Solutions for Your Industrial Networking Challenges
331 Ushers Road, Ballston Lake, NY  12019
Tel: +1.518.877.5173, Fax: +1.518.877.8346 www.sixnet.com 

-- 
You received this message because you are subscribed to the Google Groups "Trac 
Users" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/trac-users?hl=en.

Reply via email to