You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
* Urwid has a cache (CanvasCache) that caches the render of each widget
to speed up future render cycles.
* Tui is a dynamic tool, it creates a new TuiNode for each update.
* The old TuiNode and its child nodes were not being cleared out of the
urwid cache preventing Python's garbage clearance from doing its job.
* This change explicitly clears the urwid cache for each Tui update.
* Preserving the cache post-update isn't really a performance boost for
Tui as pretty much every node on the screen has changed anyway
(besides the application header and footer). So this is likely of
little consequence performance wise. The cache is still active between
updates so things like expand/collapse operations will still benefit.
0 commit comments