Opened 11 years ago

Closed 11 years ago

#1160 closed defect (invalid)

ITicketChangeListener problem with trac 0.10.3, python 2.3

Reported by: francisco.lozano@… Owned by: Russ Tyndall
Priority: normal Component: TimingAndEstimationPlugin
Severity: critical Keywords: ITicketChangeListener
Cc: Trac Release: 0.10


  • Red Hat EL 4.0
  • Trac 0.10.3
  • Python 2.3
  • SQLite
  • Apache + mod_python

When you try to close a ticket with a TRAC environment and TimingAndEstimationPlugin, you get this:

Python Traceback

Traceback (most recent call last):

File "/usr/lib/python2.3/site-packages/trac/web/", line 387, in dispatch_request


File "/usr/lib/python2.3/site-packages/trac/web/", line 237, in dispatch

resp = chosen_handler.process_request(req)

File "/usr/lib/python2.3/site-packages/trac/ticket/", line 279, in process_request

self._do_save(req, db, ticket)

File "/usr/lib/python2.3/site-packages/trac/ticket/", line 546, in _do_save


File "/usr/lib/python2.3/site-packages/trac/ticket/", line 262, in save_changes

listener.ticket_changed(self, comment, author, old_values)

TypeError?: ticket_changed() takes exactly 4 arguments (5 given)


I don't know much about python so I don't know how interfaces work on it, but "TimeTrackingTicketObserver" implements the following method:

def ticket_changed(self, ticket, comment, author, old_values):

while in trac/ticket/, in the ITicketChangeListener interface, you have:

def ticket_changed(ticket, comment, author, old_values):

Attachments (0)

Change History (2)

comment:1 Changed 11 years ago by anonymous

hmmm... the self in my version refers to the current instance of ITicketChangeListener (a component created by my plugin). I am not exactly sure what is going on here.

I seem to remember something about this interface changing, but cannot remember what it is. I am going to be pretty busy today, so I dont think I will be able to look into this today. However, I will try to look into it tomorrow and get back to you.


comment:2 Changed 11 years ago by francisco.lozano@…

Resolution: invalid
Status: newclosed

I'm very sorry, I thought I had upgraded, but no. I was using a really old version (0.1.5 maybe?). That version was using an older version of the interface, that didn't need the "author" param (I think). Upgrading solved it.

I'm sorry!

PD: Thanks for such a fast response!!! :)

Modify Ticket

Change Properties
Set your email in Preferences
as closed The owner will remain Russ Tyndall.
The resolution will be deleted.

Add Comment

E-mail address and name can be saved in the Preferences.

Note: See TracTickets for help on using tickets.