View Issue Details [ Jump to Notes ] [ Related Changesets ] | [ Issue History ] [ Print ] | ||||||||
ID | Project | Category | View Status | Date Submitted | Last Update | ||||
---|---|---|---|---|---|---|---|---|---|
0006391 | Spring engine | General | public | 2020-05-10 18:14 | 2020-07-05 00:07 | ||||
Reporter | gajop | ||||||||
Assigned To | Kloot | ||||||||
Priority | normal | Severity | major | Reproducibility | always | ||||
Status | resolved | Resolution | fixed | ||||||
Product Version | 104.0 +git | ||||||||
Target Version | Fixed in Version | 104.0 +git | |||||||
Summary | 0006391: Spring.Reload no longer detects that files have been changed with an archive | ||||||||
Description | I understand /luaui reload and /luarules won't refresh the file list, but Spring.Reload should - otherwise we're back to having to restart Spring whenever we add a file which is awful for rapid development. (This may also be causing some bugs, not sure what people expect Spring.Reload to do) I think this was done as some kind of optimization when reloading the same archive multiple times, as commenting out https://github.com/spring/spring/blob/9108cae116d0bfd2d1f6529233499d7aadb90ba2/rts/System/FileSystem/VFSHandler.cpp#L345-L353 fixes it | ||||||||
Steps To Reproduce | 1. Start a game with an .sdd folder 2. Add a file "test" in the root of the game folder 3. write Spring.Echo(VFS.FileExists("test", VFS.ZIP)) in some widget and Reload Spring 4. Expected: true. Actual: false | ||||||||
Tags | No tags attached. | ||||||||
Checked infolog.txt for Errors | Irrelevant | ||||||||
Attached Files |
|
Notes | |
Google_Frog (reporter) 2020-05-11 02:55 |
gajop asked me to comment on this because he might break ZK. I don't have any technical input to impart. I have noticed the issue raised here and find is fairly easy to restart spring on the rare times that I add a file. I consider the bug relatively unimportant because players don't change their archives. If it can be fixed without increasing the menu->game load time for a sdd-less spring directory then go ahead, otherwise we hit a tradeoff between ease-of-development and player experience. |
gajop (developer) 2020-05-11 17:52 |
Thanks for the feedback. In my case with SpringBoard I normally add/remove files in .sdd based projects often enough for this to be a problem. This is user facing (the editor program is adding these files), and it's unfortunate that not even a Reload helps. For certain types of files I can just use VFS.RAW, but for widgets, gadgets and units/features I need Spring to be aware that they've been added. I think the obvious solution is to keep these optimizations on for .sdz and pool-based archives but to remove them for .sdd folders. |
Anonymous (viewer) 2020-07-05 00:04 |
Fix 6e342641f55d176194ccfae3dbf43657325c17cc committed to develop branch: fix 0006391, repo: spring changeset id: 37905 |
Anonymous (viewer) 2020-07-05 00:04 |
Fix ffcc8d2186c483bb65ad6aee1f60c084f87ee0e6 committed to maintenance branch: fix 0006391, repo: spring changeset id: 37906 |
Related Changesets | |||
spring: develop 6e342641
Timestamp: 2020-07-05 00:03:43 Author: rtri [ Details ] [ Diff ] |
fix 0006391 | ||
mod - rts/System/FileSystem/VFSHandler.cpp | [ Diff ] [ File ] | ||
spring: maintenance ffcc8d21
Timestamp: 2020-07-05 00:03:48 Author: rtri [ Details ] [ Diff ] |
fix 0006391 | ||
mod - rts/System/FileSystem/VFSHandler.cpp | [ Diff ] [ File ] | ||
Issue History | |||
Date Modified | Username | Field | Change |
---|---|---|---|
2020-05-10 18:14 | gajop | New Issue | |
2020-05-10 18:15 | gajop | Product Version | => 104.0 +git |
2020-05-10 18:15 | gajop | Checked infolog.txt for Errors | Irrelevant => Irrelevant |
2020-05-11 02:55 | Google_Frog | Note Added: 0020401 | |
2020-05-11 17:52 | gajop | Note Added: 0020402 | |
2020-07-05 00:04 | Changeset attached | => spring develop 6e342641 | |
2020-07-05 00:04 | Anonymous | Note Added: 0020451 | |
2020-07-05 00:04 | Changeset attached | => spring maintenance ffcc8d21 | |
2020-07-05 00:04 | Anonymous | Note Added: 0020452 | |
2020-07-05 00:07 | Kloot | Assigned To | => Kloot |
2020-07-05 00:07 | Kloot | Status | new => resolved |
2020-07-05 00:07 | Kloot | Resolution | open => fixed |
2020-07-05 00:07 | Kloot | Fixed in Version | => 104.0 +git |