@@ -220,16 +220,16 @@ def _vkey(v: str) -> tuple:
220220
221221
222222def render_versions_svg (fork_counts : dict [str , int ], fork_total : int ) -> str :
223- items = sorted (fork_counts .items (), key = lambda kv : - kv [1 ])
223+ # newest release first, oldest rolled up
224+ items = sorted (fork_counts .items (), key = lambda kv : _vkey (kv [0 ]), reverse = True )
224225 top = items [:8 ]
225226 rest = items [8 :]
226227 rows = list (top )
227228 rest_sum = sum (c for _ , c in rest )
228229 if rest_sum :
229230 rows .append ((f"+{ len (rest )} older" , rest_sum ))
230231
231- latest = max ((v for v , _ in items ), key = _vkey , default = "" )
232- on_latest = fork_counts .get (latest , 0 )
232+ latest = items [0 ][0 ] if items else ""
233233
234234 w = 480
235235 row_h = 23
@@ -258,7 +258,7 @@ def render_versions_svg(fork_counts: dict[str, int], fork_total: int) -> str:
258258 pct = c / fork_total * 100 if fork_total else 0
259259 s .append (txt (w - pad , cy , f"{ human (c )} · { pct :.0f} %" , 10.5 , MUTED , anchor = "end" ))
260260
261- foot = f"{ latest } leads · { len (fork_counts )} releases in use · { _now ():%b %-d} " if fork_total else "collecting…"
261+ foot = f"newest { latest } · { len (fork_counts )} releases in use · { _now ():%b %-d} " if fork_total else "collecting…"
262262 s .append (txt (pad , h - 11 , foot , 10.5 , MUTED ))
263263 s .append ("</svg>" )
264264 return "\n " .join (s )
0 commit comments