The fragmenter code was reading into a variable, erasing the storage, then writing the same file back from the variable, thats not the same as an overwrite which I assume (could be wrong) would skip the erase. In such situations I would expect Espruino to find the first available slot for the file which could be the same space it had before. Having said that I am guessing as I have not read the code.
My point was that a stress test needs to try to get close to what a user will do in practice. My use of the Bangle goes like this.
1) factoryRest
2) Install favourites
3) Every few days update my repo and try new apps
4) delete the new apps I dont like
5) Take updates for the apps I use a lot
6) repeat every few days for about a month
7) The run the compactor and lose apps.
Espruino is a JavaScript interpreter for low-power Microcontrollers. This site is both a support community for Espruino and a place to share what you are working on.
The fragmenter code was reading into a variable, erasing the storage, then writing the same file back from the variable, thats not the same as an overwrite which I assume (could be wrong) would skip the erase. In such situations I would expect Espruino to find the first available slot for the file which could be the same space it had before. Having said that I am guessing as I have not read the code.
My point was that a stress test needs to try to get close to what a user will do in practice. My use of the Bangle goes like this.
1) factoryRest
2) Install favourites
3) Every few days update my repo and try new apps
4) delete the new apps I dont like
5) Take updates for the apps I use a lot
6) repeat every few days for about a month
7) The run the compactor and lose apps.