Conversation
This stack of pull requests is managed by Graphite. Learn more about stacking. |
Greptile SummaryThis PR adds Criterion benchmarking infrastructure targeting two UI rendering hotspots — issue list preview generation and markdown rendering — and refactors Extraction of Benchmark structure:
Flowchart%%{init: {'theme': 'neutral'}}%%
flowchart TD
A["benches/ui_hotspots.rs\n(Criterion binary)"] -->|"gitv_tui::bench_support::*"| B["src/bench_support.rs\n(pub wrapper module)"]
B -->|"build_issue_body_preview()"| C["src/ui/components/issue_list.rs\nbuild_issue_body_preview()"]
B -->|"render_markdown_lines()"| D["src/ui/components/issue_conversation.rs\nrender_markdown_lines()"]
C --> E["textwrap::wrap() + truncate(2) + join(' ')"]
D --> F["MarkdownRenderer → Vec<Line<'static>>"]
A -->|"issue_body_fixture(repeat)"| G["String input\n(plain text, URLs, unicode)"]
A -->|"markdown_fixture(repeat)"| H["String input\n(headings, lists, code blocks, tables)"]
G --> C
H --> D
Last reviewed commit: 6077fea |
Merge activity
|

TL;DR
Added Criterion benchmarking infrastructure to measure performance of UI rendering hotspots, specifically issue list preview generation and markdown rendering.
What changed?
benches/ui_hotspots.rswith benchmarks forissue_list_previewandmarkdown_renderfunctionsbench_support.rsmodule containing benchmark helper functions and test fixturesbuild_issue_body_previewfunction from inline code inissue_list.rsto enable benchmarking