[[PageOutline(2-5,Contents,pullout)]] = Duplicate check when filing new tickets A '''new duplicate ticket''' is a new ticket that has been posted before. For the background into the issues surrounding new duplicate tickets, see the following discussions: * [http://groups.google.com/group/trac-dev/browse_thread/thread/d07c7ed673eb170e NewTicket duplicates discussion] * [http://groups.google.com/group/trac-dev/browse_thread/thread/2db506098b5b6276 ticket duplicate discussion] * [#MostFrequentDuplicatesPlugin] proposal * [http://trac-hacks.org/wiki/DuplicateTicketSearchPlugin DuplicateTicketSearchPlugin on trac-hacks] Good implementations of checking new duplicate tickets are: * [https://bugs.launchpad.net/ubuntu/+filebug Ubuntu LaunchPad]. See screenshots below. * [http://stackoverflow.com/questions/ask Stackoverflow]. After you type in a question, the area immediately below the title (summary, in Trac) is populated with a list of questions that possibly match based on the text. This would fit into the existing Trac UI fairly easily. == Display an overview, and two links "report bug", "ask question" [[Image(01-bug-overview.png)]] == Show frequently reported bugs, and allow enter title [[Image(02-most-frequently-reported.png)]] == Display possible duplicates, and allow enter bug, or notify security team [[Image(03-really-enter-bug.png)]] == !MostFrequentDuplicatesPlugin Here is an idea for a plugin that could be used for doing semi-automated duplicate checking. It is a more automated version of what is described in the MostFrequentDuplicates page, by using the information collected there ''before'' new tickets get created. We could use a bit more structure in that page, for associating patterns to tickets. Examples: Pattern:: HTMLParseError: bad end tag Duplicate of:: #4365 Note:: related to a SilverCity bug Pattern:: PyGIT.py.*cannot concatenate 'str' and 'NoneType' objects Duplicate of:: #6976 Note:: This is a bug in the TH:GitPlugin for Trac on nonexistent paths, see TH:ticket:2671 Before ticket creation, the ticket description is scanned for the available (multi-line) patterns and if a match is found, a validation warning should be returned (see [source:tags/trac-0.11/trac/ticket/api.py@#L127]). This will prevent ticket creation and show a warning which can display the duplicate ticket and the associated note. See also the [source:tags/trac-0.11/trac/wiki/interwiki.py InterWiki] module for hints about retrieving data from a Wiki page.