Rybadour / Foreman

Visual planning tool for the game Factorio
Other
21 stars 7 forks source link

Loading performance is very poor #9

Closed Rybadour closed 4 years ago

Rybadour commented 4 years ago

Currently loading Foreman is extremely slow. It can take up to a minute for a large mod to load. A player with a few different (even disabled) mod packs can find themselves waiting a long time on both the load of Foreman and any time they change the enabled mods list.

Some suggestions for improvements:

Rybadour commented 4 years ago

Most of the slowness is in unzipping mods. This is the first thing we do in order to parse info.json and understand the dependencies mods have on each other. Ultimately this is unnecessary for loading mod data. It's only necessary when selecting mods to enable (if we want to understand their dependencies). Initially we don't care so I'm going to try changing this just list the names of the mods first.

Rybadour commented 4 years ago

Fixed some loading performance by avoiding extracting mods that aren't enabled: https://github.com/Rybadour/Foreman/commit/b1e1d6b98c1770a60a88a2a1f45d8ac7d17e7ca6

Rybadour commented 4 years ago

Recent fixes to the Zip extraction code unlocked some new ways to boost performance. I'm closing this because I think the performance issues are mostly gone and the extra work mentioned here is probably unecessary.