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
Move timestamp conflicts caching to ModInfo: RRR TTT
This is to fix a bug reported by @ RRR sibir-ine:
> When two plugins in a timestamp-based LO game have the same timestamp
> & you attempt to resolve it by redating one of them via its Modified
> field, it only updates the duplicate timestamp status of that plugin,
> not both. This regressed in 8163746
The regression was due to passing the rdata instance to
propagate_refresh (rather than True). Note that for a pure redate (that
does not affect load_order) we need to manually add the info to
redraw in ModDetails._extra_changes. That change in info status is only
needed for the UI to detect the conflict, but moving it there raised
several issues (like needing to pass caches into _set_icon_text). The
solution adopted here was to build the cache alongside the other
load order caches, ensuring correctness and simplifying the model.
games_lo no longer builds its own _mtime_mods cache, which it never
used and which added unnecessary complexity (cf the todo comment).
Finally the conflict detection logic is now centralized in lo_cache
rather than split across two modules.
Took the opportunity to cleanup refresh a bit.
Under # RRR 353, # RRR 578
0 commit comments