2 ms·
> The trade-off of course is that your data structure design is kinda sticky, insofar as you need to be able to open files for older versions. The missing piec
by giovannibonetti 3y ago
> The trade-off of course is that your data structure design is kinda sticky, insofar as you need to be able to open files for older versions.
The missing piece is a way to evolve those data structures over time, in a similar way to database migrations. Only when loading data from an older version of the app those operations would need to be issued, and then the app could save the updated version in disk immediately to avoid incurring that cost again.
An example implementation of this concept is this project [1] that was created in the context or CRDTs. If it is not directly applicable, at least it should be a good inspiration.
[1] https://www.inkandswitch.com/cambria/ https://www.inkandswitch.com/cambria/