[[PageOutline(2-5,Contents,pullout)]] == Overview == Working name for plugin: !QueryMacrosPlugin (other proposed names: !TracQueryMacros, !QueryMacros) There are several macros that perform simple queries. I have put together a list of these below. The [trac:WikiMacros#TicketQuery-macro TicketQuery macro] is part of the Trac distribution and provides many options for searching the ticket database. I propose to aggregate a number of macros into a single plugin, which provide the ability to query other Trac components and use the !TicketQuery macro as a template for coding style, macro argument syntax, and output. Please contact me if you have ideas to discuss or wish to contribute. == Related Macros and Plugins == * ChangeLogMacro[[FootNote(I have taken over maintainership of this plugin)]] * WikiSearchMacro[[FootNote(1)]] * PlannedMilestonesMacro[[FootNote(1)]] * MilestoneCompactMacro * AllAttachmentsMacro[[FootNote(Adoption request to take over maintainership of this plugin is pending)]] * SqlQueryMacro[[FootNote(2)]] * WikiTableMacro[[FootNote(1)]] The following may provide related functionality, but still need to be tested: * TicketWithSummaryMacro * ComponentsProcessorMacro * LastModifiedMacro * ListOfWikiPagesMacro * ProgressMeterMacro * UserStatsMacro * TicketBoxMacro * WikiStatsPlugin Note: I've only looked at macros and haven't yet looked at plugins that might have desireable functionality. == Plugin Components == == Requirements == * Share common codebase among macros where possible * Consistently perform permission checks (this is where existing query macros often have security holes) * Support Trac 0.11, 0.12 and beyond * Support Python 2.4, 2.5 and 2.6 * Provide unit tests with near complete test coverage == Proposed Plugin Functionality == Provide capability to execute queries on: * RevisionLog * Milestones * Wiki * Components * Attachment metadata * Tickets (providing extensions to functionality in the TicketQuery macro) [[FootNote]]