Lumen ChartsLumen Charts
Save & restore

Schemas and migration

Version saved chart data and migrate older layouts when the schema changes.

Download Markdown

Saved state has a version, and the version is what decides compatibility. A similar-looking UI or similar method names don't mean two formats are compatible.

Checked before anything changes

The layout and drawing decoders read and check the whole saved payload before applying any of it. Layout migration happens in its own named decoder. For now, while drawing and template formats are pre-release, only their current versions are accepted. Older payloads aren't migrated automatically.

Keep providers separate

Don't assume a layout saved by another chart provider will work with this runtime. Store each provider's data separately, and don't load another provider's saved payload into this chart.

Upgrade checklist

  1. Back up a sample of real saved layouts and templates.
  2. Load both valid and deliberately broken samples with the new release.
  3. Make sure a rejected load leaves the current chart unchanged.
  4. Check that new saves reload correctly on the same release.
  5. Deploy the docs, wrapper, iframe and optional worker together as one package.

Don't hand-edit schema fields based on screenshots. If you need a migration, write it down and test it as a versioned transformation.

Upgrade guide

On this page