Hi,
I've made this little patch to take only last version of wiki pages when searching for wanted pages. I think it's non-sense to make links used only in old version of wiki pages.
Perhaps there is a better SQL query to have this, I haven't found it ;-)
Index: wanted_pages.py
===================================================================
--- wanted_pages.py (révision 2539)
+++ wanted_pages.py (copie de travail)
@@ -13,7 +13,7 @@
fancy_re = re.compile(FANCY)
exclude_re = re.compile(EXCLUDE)
-wiki_sql = "SELECT name, text FROM wiki ORDER BY version"
+wiki_sql = "SELECT name, text FROM wiki ORDER BY version DESC"
ticket_sql= """SELECT id, description FROM ticket
UNION
SELECT ticket, newvalue FROM ticket_change WHERE field='comment'
@@ -55,11 +55,14 @@
def buildWikiText(self, showReferrers=False):
texts = [] # list of referrer link, wiki-able text tuples
wantedPages = {} # referrers indexed by page
+ wikiPages = [] # list of wikiPages seen
db = self.env.get_db_cnx()
for name, text in exec_wiki_sql(db):
- self.index[name] = name
- texts.append(('[wiki:%s]' % name, text))
+ if name not in wikiPages:
+ wikiPages.append(name)
+ self.index[name] = name
+ texts.append(('[wiki:%s]' % name, text))
for id, text in exec_ticket_sql(db):
texts.append(('#%s' % id, text))