Opened 8 years ago

Closed 5 years ago

Last modified 5 years ago

#6297 closed enhancement (invalid)

Keep a consistent API when plug-ins subclass/override Trac classes

Reported by: egilwilde Owned by: Andrea Tomasini
Priority: normal Component: AgiloForTracPlugin
Severity: normal Keywords:
Cc: Thijs Triemstra Trac Release: 0.11


I recently upgraded our Agilo installation to version 1.1.1. We soon found out that the upgrade broke the Mylyn connection to Eclipse, which we maintain using XML-RPC.

The cause seems to be that Agilo overrides the Milestone class with its own AgiloMilestone class. That caused the RPC namespace 'ticket.milestone' to change into 'ticket.agilomilestone', which in turn broke the Mylyn connection which relies on 'ticket.milestone.getAll'.

Now, I would not call this a bug in either product, but I think it is safe to assume that this is not the last case we will see of overriding classes in plug-ins. I would consider it a nice-to-have feature if the XML-RPC could be configured to provide a consistent API regardless of the names of the underlying implementing classes.

Attachments (0)

Change History (4)

comment:1 Changed 8 years ago by Thijs Triemstra

Cc: Thijs Triemstra added; anonymous removed

comment:2 Changed 7 years ago by osimons

Component: XmlRpcPluginAgiloForScrumPlugin
Owner: changed from osimons to Andrea Tomasini

As from todays ticket #8550 discussion, I think we can safely conclude that this really is an issue for Agilo and not for the RPC plugin. RPC plugin can't possibly maintain a 'consistent API' when Agilo reworks, subclasses and replaces core Trac functionality.

RPC plugin is pluggable at all ends, and like how Agilo replaces Trac functionality there is no reason why they (or someone else) can't provide a replacement tracrpc.ticket module answering to same calls but resolving it their way.

The RPC plugin provides a functional test suite so that makes a good starting point for Agilo to test how their Trac & replacement API performs against expected RPC behavior. See my blog post for details of how to get the tests running. I'll happily apply patches with new tests if needed to further detail expected behaviour for clients.

comment:3 Changed 5 years ago by Ryan J Ollos

Resolution: invalid
Status: newclosed

You'll need to ask over on the Agilo mailing list, see AgiloForTracPlugin#BugsFeatureRequests for details. I don't think the Agilo guys monitor trac-hacks for bug reports.

comment:4 Changed 5 years ago by Stefano Rago

@reporter: please upgrade to the latest Agilo for Trac version (currently 0.9.10/1.3.10). If you have problems/bug reports, please write to support@…

Modify Ticket

Change Properties
Set your email in Preferences
as closed The owner will remain Andrea Tomasini.
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.