Before this PR, all data was managed by the UI. The entire project state was passed back on every change
Panel result storage was managed by the UI too, and some other things like incrementing lastVersion of the project and so on, lastedited on a panel, etc.
This PR switches from a single JSON blob to slightly normalized tables for panels, pages, servers, connectors, and panel results
Within each table however there is still mostly just a JSON blob
This allows the UI to send smaller requests for only the exact object that needs to be modified
And now the runner is in charge of writing panel result updates back to the database, rather than the UI
Integration tests are currently in place for the backend changes
Automatically migrates JSON projects to SQLite
This is now basically working on new projects: desktop, server, and in-memory browser.
This PR drops (for now):
Dashboards and export. It's taking too long and these need an overhaul
This PR rewrites the way data is stored:
This is now basically working on new projects: desktop, server, and in-memory browser.
This PR drops (for now):