Gwoo was getting this on /tickets/ when he created a milestone with empty name. We should prevent the empty name for sure, and probably avoid this error too:
Module forgetracker.tracker_main:138 in sidebar_menu
<< search_bins.append(SitemapEntry(
h.text.truncate(label, 72), bin.url(), className='nav_child',
small=c.app.globals.bin_count(label)['hits']))
for fld in c.app.globals.milestone_fields:
milestones.append(SitemapEntry(h.text.truncate(fld.label, 72)))
>> small=c.app.globals.bin_count(label)['hits']))
Module forgetracker.model.ticket:108 in bin_count
<< def bin_count(self, name):
if self._bin_counts_expire < datetime.utcnow():
self._refresh_counts()
for d in self._bin_counts_data:
if d['summary'] == name: return d
>> self._refresh_counts()
Module forgetracker.model.ticket:97 in _refresh_counts
<< for m in fld.milestones:
k = '%s:%s' % (fld.name, m.name)
r = search_artifact(Ticket, k, rows=0)
hits = r is not None and r.hits or 0
q = search_artifact(Ticket, '%s && (%s)' % (k, self.closed_query), rows=0)
>> r = search_artifact(Ticket, k, rows=0)
Module allura.lib.search:106 in search_artifact
<< else:
text = "syntax error?"
raise ValueError(text)
def find_shortlinks(text):
>> raise ValueError(text)
ValueError: Cannot parse '_milestone_s:': Encountered "<EOF>" at line 1, column 13. Was expecting one of: "(" ... "*" ... <QUOTED> ... <TERM> ... <PREFIXTERM> ... <WILDTERM> ... "[" ... "{" ... <NUMBER> ...