-
Notifications
You must be signed in to change notification settings - Fork 795
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
refactor: Centralize Vega
project versioning
#3720
base: main
Are you sure you want to change the base?
Conversation
- Defines `[tool.altair.vega]` in `pyproject.toml` - Adds tooling to propagate these versions throughout `altair`
vega
project versioningVega
project versioning
Need more info on `vegafusion`, @jonmmease
#### `vegafusion` | ||
|
||
|
||
> [!WARNING] | ||
> *TODO: Find out how the constraint for `vegafusion` is decided* |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@jonmmease do you have any thoughts on what should go here?
AFAIK we haven't documented this before - but it seems like something that would be helpful if you weren't available
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The VegaFusion constraint isn't tied to the Vega-Lite version (since VegaFusion works at the Vega level). In theory it could be connected to the Vega version, but Vega has been so stable that this hasn't come up in practice.
I think the VegaFusion version constraint is determined by the API we depend on, just like a regular Python dependency.
Single entrypoint for both `pyproject.toml` and `vl_convert` sourced versions
Description
This PR seeks to simplify version bumps of projects we depend on within the https://github.com/vega org.
The new process I'm proposing is documented in https://github.com/vega/altair/blob/5aec51ef8eaf345936436abddd903ea87b86b968/NOTES_FOR_MAINTAINERS.md.
In short, we bump versions in
pyproject.toml
and they propagate to everywhere they were previously manually maintained:altair/pyproject.toml
Lines 103 to 110 in 5aec51e
The new module https://github.com/vega/altair/blob/5aec51ef8eaf345936436abddd903ea87b86b968/tools/versioning.py handles said propagation.
Motivation
Vega-Lite
I think it was unintentional, but we missed a
vega-lite
bump in https://github.com/vega/altair/releases/tag/v5.5.0.We're still on https://github.com/vega/vega-lite/releases/tag/v5.20.1 but we should be on https://github.com/vega/vega-lite/releases/tag/v5.21.0 and now the latest is https://github.com/vega/vega-lite/releases/tag/v5.23.0
Additionally, these appear to be out-of-sync?
vl-convert
altair/pyproject.toml
Lines 56 to 58 in 1208c5d
altair/altair/utils/_importers.py
Lines 47 to 48 in 1208c5d
VegaFusion
altair/pyproject.toml
Line 66 in 1208c5d
altair/altair/utils/_importers.py
Lines 12 to 13 in 1208c5d
Future
I'm planning to pin
vega-datasets
for (#3631).There are also likely to be a lot of version changes coming up as a result of (vega/vega#3990).
IMO having a single, highly visible place to update will make this process hopefully painless for us
Tasks
tomllib
whensys.version_info < (3, 11)
RELEASING.md
(dc0215c)NOTES_FOR_MAINTAINERS.md