adventuregamestudio / ags

AGS editor and engine source code
Other
708 stars 159 forks source link

Editor: reimplement WorkspaceState.RequiresRebuild in a user-friendly way #2357

Open ivan-mogilko opened 8 months ago

ivan-mogilko commented 8 months ago

Since certain version Editor marks an imported old project as "requires full rebuild". This mark is serialized in workspace settings, and is only reset on complete successful compilation. This condition is problematic, because the project may contain numerous issues that have to be resolved after upgrade, but this mark will force Editor to rebuild every single room each time. This makes step by step fix of the project rather tedious, as you have to wait when all rooms are recompiled again each time (and might seem confusing to users as well).

My proposal is to invent a more user friendly method. For instance, Editor could save a list of things needed to be rebuilt instead (rooms etc) and remove items from this list as they are built successfully at least once.

I believe this has to be done both in ags4 and ags3.

AlanDrake commented 8 months ago

True, it's a bit annoying when compiling room scripts and the compiler gets stuck at every single error.

Perhaps it's possible to resume a previous compilation process that was interrupted due to a room. If there were no changes to headers and previous rooms I might expect they're fine. Or all scripts could be compiled in memory while delaying the room packaging only after a successful compilation.