Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Viewer Config Versioning, Migrations, and X/Y Scatter Serialization Updates #2401

Closed

Conversation

ada-x64
Copy link
Contributor

@ada-x64 ada-x64 commented Oct 26, 2023

This PR is based on #2399.

This PR adds versioning to the viewer configuration API. In particular, I've implemented a semver-style versioning system. Everything up to this point has been version "0.0.0" of the API. The semver allows build-style extensions a la cargo so we can, in the future, add a more nuanced migration tool to chain migrations from previous versions of perspective, e.g. from 0.0.0+1.5.0, where the build extension denotes the perspective version. I would also like to see backwards compatibility in the future, i.e. migrating existing viewer configs by directly importing them into the viewer.

This PR updates migration scripts to include the new expression API and the new X/Y scatter plot plugin symboi serialization.

  • Migration versioning
  • Expression migrations from string[] to {name: string, expr: string}[]
  • X/Y Scatter plot symbol styles from {key: string, value: string} to {[x: string]: string}
  • X/Y Scatter plot padding is improved
  • Remove extraneous imports from xy-scatter.js

@ada-x64 ada-x64 force-pushed the bugs/xy-scatter-symbol-serialization branch from 0b713a8 to 4b4159e Compare October 31, 2023 18:26
@ada-x64 ada-x64 changed the title Some X/Y Scatter Fixes Viewer Config Versioning, Migrations, and X/Y Scatter Serialization Updates Oct 31, 2023
@ada-x64 ada-x64 marked this pull request as draft October 31, 2023 18:36
@ada-x64
Copy link
Contributor Author

ada-x64 commented Oct 31, 2023

Converting this to draft for now. I would like the draft changes on #2399 to be complete, and in addition, naive integer versioning is probably not what we should be going for. I'm working on implementing semver for this.
Finished.

@ada-x64 ada-x64 force-pushed the bugs/xy-scatter-symbol-serialization branch from 4b4159e to 38de641 Compare November 6, 2023 16:48
@ada-x64 ada-x64 marked this pull request as ready for review November 6, 2023 16:53

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
@ada-x64 ada-x64 force-pushed the bugs/xy-scatter-symbol-serialization branch from 38de641 to c5541fc Compare November 6, 2023 18:12
Update X/Y Scatter symbols serialization
Fix X/Y Scatter padding issues
@ada-x64 ada-x64 force-pushed the bugs/xy-scatter-symbol-serialization branch from c5541fc to cb34c31 Compare November 6, 2023 20:43

import { cmp_semver, parse_semver } from "../migrate";
/**
* Migrates to 1.0.0
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm still not entirely certain if this is the right versioning schema. We may want to link API versions to Perspective releases instead of decoupling them like this.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Definitely use the Perspective version.

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
fix datagrid boolean click bug
@ada-x64
Copy link
Contributor Author

ada-x64 commented Nov 13, 2023

This PR has been split.
#2430
#2429

@ada-x64 ada-x64 closed this Nov 13, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants