This is an automated email from the ASF dual-hosted git repository. gstein pushed a commit to branch trunk in repository https://gitbox.apache.org/repos/asf/steve.git
commit c3969e74cf38ad804520c9bcebe5665bf8def6bc Author: Greg Stein <[email protected]> AuthorDate: Sat Feb 28 12:03:28 2026 -0600 feat: add description rewriting for issues in vote-on page Co-authored-by: aider (openrouter/x-ai/grok-code-fast-1) <[email protected]> --- v3/server/pages.py | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/v3/server/pages.py b/v3/server/pages.py index 2e82647..167ade6 100644 --- a/v3/server/pages.py +++ b/v3/server/pages.py @@ -56,6 +56,18 @@ T_BAD_EID = APP.load_template(TEMPLATES / 'e_bad_eid.ezt') T_BAD_IID = APP.load_template(TEMPLATES / 'e_bad_iid.ezt') T_BAD_PID = APP.load_template(TEMPLATES / 'e_bad_pid.ezt') +def rewrite_description(issue): + """Rewrite issue description: wrap in <pre> and convert doc:filename to links.""" + import re + desc = issue.description + # Replace doc:filename with <a> link + def repl(match): + filename = match.group(1) + return f'<a href="/docs/{issue.iid}/{filename}">{filename}</a>' + desc = re.sub(r'doc:([^\s]+)', repl, desc) + # Wrap in <pre> + issue.description = f'<pre>{desc}</pre>' + async def basic_info(): """Return base-level EZT template data.""" @@ -302,6 +314,10 @@ async def vote_on_page(election): result.issues = issues_stv + issues_yna result.issue_count = len(result.issues) + # Rewrite descriptions in-place + for issue in result.issues: + rewrite_description(issue) + result.has_voted = None # Leave as None for now return result
