Modify ↓
Opened 18 years ago
Closed 18 years ago
#6260 closed defect (fixed)
National characters in InterTrac links
| Reported by: | Owned by: | Christian Boos | |
|---|---|---|---|
| Priority: | normal | Milestone: | 0.11 |
| Component: | wiki system | Version: | devel |
| Severity: | minor | Keywords: | intertrac |
| Cc: | Branch: | ||
| Release Notes: | |||
| API Changes: | |||
| Internal Changes: | |||
Description
If InterTrac link contains national characters preview page do not rendering. Error report:
Oops…
Trac detected an internal error:
KeyError: u'\u041e'
If you think this should work you can reproduce the problem, you should consider reporting this to the Trac team.
Before you do that, though, please first try searching for similar issues, as it is quite likely that this problem has been reported before. For questions about installation and configuration of Trac, please try the mailing list instead of filing a ticket.
Otherwise, please ==== How to Reproduce ==== While doing a POST operation on `/wiki/WikiStart`, Trac issued an internal error. ''(please provide additional details here)'' Request parameters: {{{ {'__FORM_TOKEN': u'40c5276a84f28a0e23fd5b7c', 'action': u'edit', 'comment': u'', 'editrows': u'20', 'page': u'WikiStart', 'preview': u'Preview Page', 'scroll_bar_pos': u'0', 'text': u'= \u041c\u0438\u0440\u043d\u044b\u0439 - \u043e\u0441\u0435\u043d\u044c 2007 =\r\n\u0441\u043c. [mo:wiki:WikiStart \u041c\u0443\u043d\u0438\u0446\u0438\u043f\u0430\u043b\u044c\u043d\u044b\u0435 \u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u044f]\r\n\r\n * [SystemOverview \u041e\u0431\u0437\u043e\u0440 \u0441\u0438\u0441\u0442\u0435\u043c\u044b]\r\n * [RequrinetClassification \u041a\u043b\u0430\u0441\u0441\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u044f \u0442\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u0438\u0439]\r\n * [RequestStages \u042d\u0442\u0430\u043f\u044b \u043f\u0440\u043e\u0445\u043e\u0436\u0434\u0435\u043d\u0438\u044f \u0437\u0430\u044f\u0432\u043a\u0438]\r\n * [FormsRequirements \u041e\u0431\u0449\u0438\u0435 \u0442\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u0438\u044f \u043a \u0444\u043e\u0440\u043c\u0430\u043c]\r\n * [LandsRequirements \u0422\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u0438\u044f \u043a \u043a\u0430\u0440\u0442\u043e\u0447\u043a\u0435 \u0443\u0447\u0430\u0441\u0442\u043a\u0430]\r\n * [RequestRequirements \u0422\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u0438\u044f \u043a \u043a\u0430\u0440\u0442\u043e\u0447\u043a\u0435 \u0437\u0430\u044f\u0432\u043a\u0438]\r\n * [BillRequirements \u0422\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u0438\u044f \u043a \u043a\u0430\u0440\u0442\u043e\u0447\u043a\u0435 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430]\r\n== \u0422\u0435\u043a\u0443\u0449\u0438\u0435 \u0437\u0430\u0434\u0430\u0447\u0438 ==\r\n * [report:1 \u0412\u0441\u0435 \u0430\u043a\u0442\u0438\u0432\u043d\u044b\u0435 \u0442\u0438\u043a\u0435\u0442\u044b]\r\n * [report:9 \u0422\u0438\u043a\u0435\u0442\u044b \u043f\u043e \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u0430\u043c]\r\n * [report:10 \u041c\u043e\u0438 \u0442\u0438\u043a\u0435\u0442\u044b]\r\n== \u0420\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f ==#dev\r\n\u0441\u043c. [mo:wiki:\u041e\u0441\u043d\u043e\u0432\u043d\u044b\u0435\u0421\u0443\u0449\u043d\u043e\u0441\u0442\u0438\u0421\u0438\u0441\u0442\u0435\u043c\u044b \u041c\u0443\u043d\u0438\u0446\u0438\u043f\u0430\u043b\u044c\u043d\u044b\u0435 \u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u044f], [mc:wiki:MainApp#dev \u041a\u043b\u0438\u0435\u043d\u0442\u044b \u0438 \u041a\u043e\u043d\u0442\u0430\u043a\u0442\u044b]\r\n * [DevEntities \u0421\u0443\u0449\u043d\u043e\u0441\u0442\u0438 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438]\r\n== \u0414\u043b\u044f \u0441\u043f\u0440\u0430\u0432\u043a\u0438 ==#for_help\r\n * [LandActions \u0412\u043e\u0437\u043c\u043e\u0436\u043d\u044b\u0435 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0438 \u0441 \u0443\u0447\u0430\u0441\u0442\u043a\u043e\u043c]\r\n * [TechDoc \u0422\u0435\u0445\u043d\u0438\u0447\u0435\u0441\u043a\u0438\u0439 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442]\r\n', 'version': u'17'} }}} ==== System Information ==== || '''Trac''' || `0.11dev-r6079` || || '''Python''' || `2.5.1 (r251:54863, Oct 5 2007, 13:36:32) ` [[br]] `[GCC 4.1.3 20070929 (prerelease) (Ubuntu 4.1.2-16ubuntu2)]` || || '''setuptools''' || `0.6c7` || || '''SQLite''' || `3.4.2` || || '''pysqlite''' || `2.3.4` || || '''Genshi''' || `0.5dev-r766` || || '''Subversion''' || `1.4.4 (r25188)` || ==== Python Traceback ==== {{{ Traceback (most recent call last): File "/usr/lib/python2.5/site-packages/Trac-0.11dev_r6079-py2.5.egg/trac/web/main.py", line 381, in dispatch_request dispatcher.dispatch(req) File "/usr/lib/python2.5/site-packages/Trac-0.11dev_r6079-py2.5.egg/trac/web/main.py", line 213, in dispatch data, content_type) File "/usr/lib/python2.5/site-packages/Trac-0.11dev_r6079-py2.5.egg/trac/web/chrome.py", line 601, in render_template return stream.render(method, doctype=doctype) File "build/bdist.linux-i686/egg/genshi/core.py", line 172, in render return encode(generator, method=method, encoding=encoding) File "build/bdist.linux-i686/egg/genshi/output.py", line 45, in encode output = u''.join(list(iterator)) File "build/bdist.linux-i686/egg/genshi/output.py", line 274, in __call__ for kind, data, pos in stream: File "build/bdist.linux-i686/egg/genshi/output.py", line 526, in __call__ for kind, data, pos in stream: File "build/bdist.linux-i686/egg/genshi/output.py", line 632, in __call__ for kind, data, pos in chain(stream, [(None, None, None)]): File "build/bdist.linux-i686/egg/genshi/output.py", line 466, in __call__ for ev in stream: File "build/bdist.linux-i686/egg/genshi/core.py", line 273, in _ensure for event in stream: File "build/bdist.linux-i686/egg/genshi/core.py", line 273, in _ensure for event in stream: File "/usr/lib/python2.5/site-packages/Trac-0.11dev_r6079-py2.5.egg/trac/web/chrome.py", line 631, in _strip_accesskeys for kind, data, pos in stream: File "build/bdist.linux-i686/egg/genshi/core.py", line 273, in _ensure for event in stream: File "/usr/lib/python2.5/site-packages/Trac-0.11dev_r6079-py2.5.egg/trac/web/chrome.py", line 620, in _generate for kind, data, pos in stream: File "build/bdist.linux-i686/egg/genshi/core.py", line 273, in _ensure for event in stream: File "build/bdist.linux-i686/egg/genshi/core.py", line 273, in _ensure for event in stream: File "build/bdist.linux-i686/egg/genshi/filters/transform.py", line 598, in _unmark for mark, event in stream: File "build/bdist.linux-i686/egg/timingandestimationplugin/tande_filters.py", line 59, in __call__ for mark, event in stream: File "build/bdist.linux-i686/egg/genshi/filters/transform.py", line 624, in __call__ for mark, event in stream: File "build/bdist.linux-i686/egg/genshi/filters/transform.py", line 594, in _mark for event in stream: File "build/bdist.linux-i686/egg/genshi/core.py", line 273, in _ensure for event in stream: File "build/bdist.linux-i686/egg/genshi/filters/transform.py", line 598, in _unmark for mark, event in stream: File "build/bdist.linux-i686/egg/timingandestimationplugin/tande_filters.py", line 59, in __call__ for mark, event in stream: File "build/bdist.linux-i686/egg/genshi/filters/transform.py", line 624, in __call__ for mark, event in stream: File "build/bdist.linux-i686/egg/genshi/filters/transform.py", line 594, in _mark for event in stream: File "build/bdist.linux-i686/egg/genshi/template/base.py", line 521, in _include for event in stream: File "build/bdist.linux-i686/egg/genshi/template/markup.py", line 279, in _match ctxt)) File "build/bdist.linux-i686/egg/genshi/template/base.py", line 521, in _include for event in stream: File "build/bdist.linux-i686/egg/genshi/template/markup.py", line 239, in _strip event = stream.next() File "build/bdist.linux-i686/egg/genshi/template/base.py", line 496, in _exec for event in stream: File "build/bdist.linux-i686/egg/genshi/template/base.py", line 473, in _eval result = data.evaluate(ctxt) File "build/bdist.linux-i686/egg/genshi/template/eval.py", line 144, in evaluate return eval(self.code, _globals, {'data': data}) File "/usr/lib/python2.5/site-packages/Trac-0.11dev_r6079-py2.5.egg/trac/wiki/templates/wiki_edit.html", line 68, in <Expression u'wiki_to_html(context, page.text)'> ${wiki_to_html(context, page.text)} File "/usr/lib/python2.5/site-packages/Trac-0.11dev_r6079-py2.5.egg/trac/wiki/formatter.py", line 1020, in format_to_html return HtmlFormatter(ctx, wikidom).generate(escape_newlines) File "/usr/lib/python2.5/site-packages/Trac-0.11dev_r6079-py2.5.egg/trac/wiki/formatter.py", line 979, in generate Formatter(self.context).format(self.wikidom, out, escape_newlines) File "/usr/lib/python2.5/site-packages/Trac-0.11dev_r6079-py2.5.egg/trac/wiki/formatter.py", line 790, in format result = re.sub(self.wikiparser.rules, self.replace, line) File "re.py", line 142, in sub return _compile(pattern, 0).sub(repl, string, count) File "/usr/lib/python2.5/site-packages/Trac-0.11dev_r6079-py2.5.egg/trac/wiki/formatter.py", line 735, in replace replacement = self.handle_match(fullmatch) File "/usr/lib/python2.5/site-packages/Trac-0.11dev_r6079-py2.5.egg/trac/wiki/formatter.py", line 731, in handle_match return internal_handler(match, fullmatch) File "/usr/lib/python2.5/site-packages/Trac-0.11dev_r6079-py2.5.egg/trac/wiki/formatter.py", line 329, in _lhref_formatter return self._make_link(ns, target, match, label) File "/usr/lib/python2.5/site-packages/Trac-0.11dev_r6079-py2.5.egg/trac/wiki/formatter.py", line 342, in _make_link return self._make_intertrac_link(ns, target, label) or \ File "/usr/lib/python2.5/site-packages/Trac-0.11dev_r6079-py2.5.egg/trac/wiki/formatter.py", line 361, in _make_intertrac_link url = '%s/intertrac/%s' % (url, urllib.quote(target)) File "urllib.py", line 1205, in quote res = map(safe_map.__getitem__, s) KeyError: u'\u041e' }}} a new ticket at the Trac project site, where you can describe the problem and explain how to reproduce it.
Python Traceback
Most recent call last:
* File "/usr/lib/python2.5/site-packages/Trac-0.11dev_r6079-py2.5.egg/trac/wiki/templates/wiki_edit.html", line 68, in <Expression u'wiki_to_html(context, page.text)'>
Code fragment:
63. <legend>${diff and 'Review Changes' or 'Preview'} (<a href="#edit">skip</a>)</legend>
64. <div py:when="diff" class="diff">
65. <xi:include href="diff_div.html" py:with="no_id=True" />
66. </div>
67. <div py:otherwise="" class="wikipage" xml:space="preserve">
68. ${wiki_to_html(context, page.text)}
69. </div>
70. </fieldset>
71. </py:when>
72. <py:when test="'collision'">
73. <div class="system-message">
Local variables:
Name Value
data [{'comment': u'', 'all': <built-in function all>, 'req': <Request "POST ...
* File "/usr/lib/python2.5/site-packages/Trac-0.11dev_r6079-py2.5.egg/trac/wiki/formatter.py", line 1020, in format_to_html
Code fragment:
1015. def format_to_html(ctx, wikidom, escape_newlines=False, abs_urls=False):
1016. if not wikidom:
1017. return ''
1018. if abs_urls != ctx.abs_urls: # Note: temporary hack (need RenderingContext)
1019. ctx = ctx(abs_urls=abs_urls)
1020. return HtmlFormatter(ctx, wikidom).generate(escape_newlines)
1021.
1022. def format_to_oneliner(ctx, wikidom, shorten=False, abs_urls=False):
1023. if not wikidom:
1024. return ''
1025. if abs_urls != ctx.abs_urls: # Note: temporary hack (need RenderingContext)
Local variables:
Name Value
abs_urls False
ctx <Context u'[root], wiki:WikiStart' <Request "POST u'/wiki/WikiStart'"> ...
escape_newlines False
wikidom u'= \u041c\u0438\u0440\u043d\u044b\u0439 - \u043e\u0441\u0435\u043d\u044c ...
* File "/usr/lib/python2.5/site-packages/Trac-0.11dev_r6079-py2.5.egg/trac/wiki/formatter.py", line 979, in generate
Code fragment:
974.
975. newlines in the wikidom will be preserved if `escape_newlines` is set.
976. """
977. # FIXME: compatibility code only for now
978. out = StringIO()
979. Formatter(self.context).format(self.wikidom, out, escape_newlines)
980. return Markup(out.getvalue())
981.
982.
983. class InlineHtmlFormatter(object):
984. """Format parsed wiki text to inline elements HTML.
Local variables:
Name Value
escape_newlines False
out <StringIO.StringIO instance at 0x8faa14c>
self <trac.wiki.formatter.HtmlFormatter object at 0x8faa56c>
* File "/usr/lib/python2.5/site-packages/Trac-0.11dev_r6079-py2.5.egg/trac/wiki/formatter.py", line 790, in format
Code fragment:
785. if escape_newlines:
786. line += ' [[BR]]'
787. self.in_list_item = False
788. self.in_quote = False
789. # Throw a bunch of regexps on the problem
790. result = re.sub(self.wikiparser.rules, self.replace, line)
791.
792. if not self.in_list_item:
793. self.close_list()
794.
795. if not self.in_quote:
Local variables:
Name Value
escape_newlines False
line u'\u0441\u043c. ...
out <StringIO.StringIO instance at 0x8faa14c>
result u''
self <trac.wiki.formatter.Formatter object at 0x8faa9ec>
text u'= \u041c\u0438\u0440\u043d\u044b\u0439 - \u043e\u0441\u0435\u043d\u044c ...
* File "re.py", line 142, in sub
Local variables:
Name Value
count 0
pattern <_sre.SRE_Pattern object at 0x8ad24e0>
repl <bound method Formatter.replace of <trac.wiki.formatter.Formatter object ...
string u'\u0441\u043c. ...
* File "/usr/lib/python2.5/site-packages/Trac-0.11dev_r6079-py2.5.egg/trac/wiki/formatter.py", line 735, in replace
Code fragment:
730. internal_handler = getattr(self, '_%s_formatter' % itype)
731. return internal_handler(match, fullmatch)
732.
733. def replace(self, fullmatch):
734. """Replace one match with its corresponding expansion"""
735. replacement = self.handle_match(fullmatch)
736. if replacement:
737. return _markup_to_unicode(replacement)
738.
739. def reset(self, source, out=None):
740. self.source = source
Local variables:
Name Value
fullmatch <_sre.SRE_Match object at 0x90d4238>
self <trac.wiki.formatter.Formatter object at 0x8faa9ec>
* File "/usr/lib/python2.5/site-packages/Trac-0.11dev_r6079-py2.5.egg/trac/wiki/formatter.py", line 731, in handle_match
Code fragment:
726. if itype in self.wikiparser.external_handlers:
727. external_handler = self.wikiparser.external_handlers[itype]
728. return external_handler(self, match, fullmatch)
729. else:
730. internal_handler = getattr(self, '_%s_formatter' % itype)
731. return internal_handler(match, fullmatch)
732.
733. def replace(self, fullmatch):
734. """Replace one match with its corresponding expansion"""
735. replacement = self.handle_match(fullmatch)
736. if replacement:
Local variables:
Name Value
fullmatch <_sre.SRE_Match object at 0x90d4238>
internal_handler <bound method Formatter._lhref_formatter of <trac.wiki.formatter.Formatter ...
itype 'lhref'
match u'[mo:wiki:\u041e\u0441\u043d\u043e\u0432\u043d\u044b\u0435\u0421\u0443\u04 ...
self <trac.wiki.formatter.Formatter object at 0x8faa9ec>
* File "/usr/lib/python2.5/site-packages/Trac-0.11dev_r6079-py2.5.egg/trac/wiki/formatter.py", line 329, in _lhref_formatter
Code fragment:
324. path = self.context.resource_href(path)
325. if '?' in path:
326. query = '&' + query.lstrip('?')
327. return html.A(label or rel, href=path + query + fragment)
328. else:
329. return self._make_link(ns, target, match, label)
330.
331. def _make_link(self, ns, target, match, label):
332. # first check for an alias defined in trac.ini
333. ns = self.env.config['intertrac'].get(ns, ns)
334. if ns in self.wikiparser.link_resolvers:
Local variables:
Name Value
fullmatch <_sre.SRE_Match object at 0x90d4238>
label u'\u041c\u0443\u043d\u0438\u0446\u0438\u043f\u0430\u043b\u044c\u043d\u044b\ ...
match u'[mo:wiki:\u041e\u0441\u043d\u043e\u0432\u043d\u044b\u0435\u0421\u0443\u04 ...
ns u'mo'
rel None
self <trac.wiki.formatter.Formatter object at 0x8faa9ec>
target u'wiki:\u041e\u0441\u043d\u043e\u0432\u043d\u044b\u0435\u0421\u0443\u0449\u ...
* File "/usr/lib/python2.5/site-packages/Trac-0.11dev_r6079-py2.5.egg/trac/wiki/formatter.py", line 342, in _make_link
Code fragment:
337. elif target.startswith('//'):
338. return self._make_ext_link(ns+':'+target, label)
339. elif ns == "mailto":
340. return self._make_mail_link('mailto:'+target, label)
341. else:
342. return self._make_intertrac_link(ns, target, label) or \
343. self._make_interwiki_link(ns, target, label) or \
344. match
345.
346. def _make_intertrac_link(self, ns, target, label):
347. intertrac = self.env.config['intertrac']
Local variables:
Name Value
label u'\u041c\u0443\u043d\u0438\u0446\u0438\u043f\u0430\u043b\u044c\u043d\u044b\ ...
match u'[mo:wiki:\u041e\u0441\u043d\u043e\u0432\u043d\u044b\u0435\u0421\u0443\u04 ...
ns u'mun_obr'
self <trac.wiki.formatter.Formatter object at 0x8faa9ec>
target u'wiki:\u041e\u0441\u043d\u043e\u0432\u043d\u044b\u0435\u0421\u0443\u0449\u ...
* File "/usr/lib/python2.5/site-packages/Trac-0.11dev_r6079-py2.5.egg/trac/wiki/formatter.py", line 361, in _make_intertrac_link
Code fragment:
356. if sep != -1:
357. url = '%s/%s/%s' % (url, target[:sep], target[sep + 1:])
358. else:
359. url = '%s/search?q=%s' % (url, urllib.quote_plus(target))
360. else:
361. url = '%s/intertrac/%s' % (url, urllib.quote(target))
362. return self._make_ext_link(url, label, '%s in %s' % (target, name))
363. else:
364. return None
365.
366. def shorthand_intertrac_helper(self, ns, target, label, fullmatch):
Local variables:
Name Value
compat False
intertrac <Section [intertrac]>
label u'\u041c\u0443\u043d\u0438\u0446\u0438\u043f\u0430\u043b\u044c\u043d\u044b\ ...
name u'\u041c\u0443\u043d\u0438\u0446\u0438\u043f\u0430\u043b\u044c\u043d\u044b\ ...
ns u'mun_obr'
self <trac.wiki.formatter.Formatter object at 0x8faa9ec>
target u'wiki:\u041e\u0441\u043d\u043e\u0432\u043d\u044b\u0435\u0421\u0443\u0449\u ...
url u'../../mun-obr'
* File "urllib.py", line 1205, in quote
Local variables:
Name Value
cachekey ('/', 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789_.-')
s u'wiki:\u041e\u0441\u043d\u043e\u0432\u043d\u044b\u0435\u0421\u0443\u0449\u ...
safe '/'
safe_map {'\x00': '%00', '\x83': '%83', '\x04': '%04', '\x87': '%87', '\x08': ...
File "/usr/lib/python2.5/site-packages/Trac-0.11dev_r6079-py2.5.egg/trac/wiki/templates/wiki_edit.html", line 68, in <Expression u'wiki_to_html(context, page.text)'>
${wiki_to_html(context, page.text)}
File "/usr/lib/python2.5/site-packages/Trac-0.11dev_r6079-py2.5.egg/trac/wiki/formatter.py", line 1020, in format_to_html
return HtmlFormatter(ctx, wikidom).generate(escape_newlines)
File "/usr/lib/python2.5/site-packages/Trac-0.11dev_r6079-py2.5.egg/trac/wiki/formatter.py", line 979, in generate
Formatter(self.context).format(self.wikidom, out, escape_newlines)
File "/usr/lib/python2.5/site-packages/Trac-0.11dev_r6079-py2.5.egg/trac/wiki/formatter.py", line 790, in format
result = re.sub(self.wikiparser.rules, self.replace, line)
File "re.py", line 142, in subFile "/usr/lib/python2.5/site-packages/Trac-0.11dev_r6079-py2.5.egg/trac/wiki/formatter.py", line 735, in replace
replacement = self.handle_match(fullmatch)
File "/usr/lib/python2.5/site-packages/Trac-0.11dev_r6079-py2.5.egg/trac/wiki/formatter.py", line 731, in handle_match
return internal_handler(match, fullmatch)
File "/usr/lib/python2.5/site-packages/Trac-0.11dev_r6079-py2.5.egg/trac/wiki/formatter.py", line 329, in _lhref_formatter
return self._make_link(ns, target, match, label)
File "/usr/lib/python2.5/site-packages/Trac-0.11dev_r6079-py2.5.egg/trac/wiki/formatter.py", line 342, in _make_link
return self._make_intertrac_link(ns, target, label) or \
File "/usr/lib/python2.5/site-packages/Trac-0.11dev_r6079-py2.5.egg/trac/wiki/formatter.py", line 361, in _make_intertrac_link
url = '%s/intertrac/%s' % (url, urllib.quote(target))
File "urllib.py", line 1205, in quote
System Information:
User Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.8.1.8) Gecko/20071008 Firefox/2.0.0.8
Trac: 0.11dev-r6079
Python: 2.5.1 (r251:54863, Oct 5 2007, 13:36:32) [GCC 4.1.3 20070929 (prerelease) (Ubuntu 4.1.2-16ubuntu2)]
setuptools: 0.6c7
SQLite: 3.4.2
pysqlite: 2.3.4
Genshi: 0.5dev-r766
Subversion: 1.4.4 (r25188)
jQuery: 1.1.3.1
Attachments (0)
Change History (2)
comment:1 by , 18 years ago
| Component: | general → wiki |
|---|---|
| Keywords: | intertrac added |
| Milestone: | → 0.11 |
| Owner: | changed from to |
| Severity: | normal → minor |
| Version: | → devel |
Note:
See TracTickets
for help on using tickets.



That was an oversight. Thanks for the report!