Version 1 (modified by gt4329b, 9 years ago) (diff)

New hack FlexibleAssignToPlugin, created by gt4329b



What is it?

FlexibleAssignTo finally gives long-suffering Trac admins a way to easily customize the 'assign to' field on tickets. It provides several base classes for you to override and implement your own methods for providing lists of valid users -- you can even customize valid users for each state in your workflow.

Key features:

  • adds new Extension point, IValidOwnerProvider, for plugging in your own components
  • provides SimpleUser base class and helper methods (getlist, getbool) to streamline implementation of your IValidOwnerProvider component(s)
  • data-source agnostic -- FlexibleAssignTo abstracts the nastiness of building a customized 'assign to' select box. All your custom code has to do is decide what users are valid for a particular state and then return them.
  • optional 'ensure_user_data' capability so that users who appear as valid 'assign to' targets get their key data (username, fullname, email) stored in the Trac session_attribute table. The motivation for this was so notification emails could be sent to these users even if they've never logged in and set their preferences.
  • optional get_known_users() replacement that changes Trac's 'known users' concept such that users' name & email data is retrieved from the session_attribute table (designed to work in concert with the 'ensure_user_data' capability).
  • FlexibleAssignTo processing can be selectively disabled for individual workflow states
  • Example plugin implementation included (

Bugs/Feature Requests

Existing bugs and feature requests for FlexibleAssignToPlugin are here.

If you have any issues, create a new ticket.


Download the zipped source from [download:flexibleassigntoplugin here].


You can check out FlexibleAssignToPlugin from here using Subversion, or browse the source with Trac.


See the 'How to install section' above for details. For an example of how to implement IValidOwnerProvider, see the included sample plugin

Recent Changes

10083 by gt4329b on 2011-04-14 20:33:48
10067 by gt4329b on 2011-04-11 16:12:41
  • updated version to 0.7.13
10066 by gt4329b on 2011-04-11 16:01:42

fixes #3494 (

  • updated core to work properly with 0.11release+ versions of Trac (thanks chris!)
  • updated AUTHORS to note contribution from chris on #3494
  • updated README version compatibility notes


Author: gt4329b

Attachments (3)

Download all attachments as: .zip