You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: NOTES_FOR_MAINTAINERS.md
+49-28Lines changed: 49 additions & 28 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -27,11 +27,56 @@ The script output is designed to be deterministic; if the vega-lite version
27
27
is not changed, then running the script should overwrite the schema wrappers
28
28
with identical copies.
29
29
30
-
## Updating the Vega-Lite version
30
+
## Updating Vega versions
31
+
All versions are maintained in [pyproject.toml](pyproject.toml).
31
32
32
-
The vega & vega-lite versions for the Python code can be updated by manually
33
-
changing the ``SCHEMA_VERSION`` definition within
34
-
``tools/generate_schema_wrapper.py``, and then re-running the script.
33
+
### Python Packages
34
+
35
+
Projects which publish a package to PyPI are listed with a version bound in one of the following tables:
36
+
37
+
-[`project.dependencies`](https://packaging.python.org/en/latest/specifications/pyproject-toml/#dependencies-optional-dependencies): Published dependencies.
38
+
-[`project.optional-dependencies`](https://packaging.python.org/en/latest/specifications/pyproject-toml/#dependencies-optional-dependencies): Published optional dependencies, or "extras".
39
+
-[`dependency-groups`](https://peps.python.org/pep-0735/): Local dependencies for development.
40
+
41
+
> [!NOTE]
42
+
> All are currently declared in sub-tables of `project.optional-dependencies`.
43
+
44
+
The lower version bounds defined here are reused for [altair/utils/_importers.py](altair/utils/_importers.py).
45
+
46
+
#### `vl-convert`
47
+
48
+
We need to ensure that [vl-convert](https://github.com/vega/vl-convert) includes support for the new Vega-Lite version.
49
+
Check the [vl-convert releases](https://github.com/vega/vl-convert/releases) to find the minimum
50
+
version of `vl-convert` that includes support for the desired version of Vega-Lite (and [open
51
+
an issue](https://github.com/vega/vl-convert/issues) if this version hasn't been
52
+
included in a released yet).
53
+
54
+
### Javascript/other
55
+
56
+
Additional version constraints, including for [`Vega-Lite`](https://github.com/vega/vega-lite) itself are declared in `[tool.altair.vega]`.
57
+
58
+
Whereas the [previous dependencies](#python-packages) are used primarily at *install-time*; this group is embedded into `altair` for use at *runtime* or when [generating the python code](#auto-generating-the-python-code):
1. Make sure to have an environment set up with `hatch` installed. See `CONTRIBUTING.md`.
1
+
1. Check all [Vega project](https://github.com/orgs/vega/repositories?type=source) versions are up-to-date. See [NOTES_FOR_MAINTAINERS.md](NOTES_FOR_MAINTAINERS.md)
2
+
3
+
2. Make sure to have an environment set up with `hatch` installed. See [CONTRIBUTING.md](CONTRIBUTING.md).
2
4
Remove any existing environments managed by `hatch` so that it will create new ones
3
5
with the latest dependencies when executing the commands further below:
4
6
5
7
hatch env prune
6
8
7
-
2. Make certain your branch is in sync with head, and that you have no uncommitted modifications. If you work on a fork, replace `origin` with `upstream`:
9
+
3. Make certain your branch is in sync with head, and that you have no uncommitted modifications. If you work on a fork, replace `origin` with `upstream`:
8
10
9
11
git checkout main
10
12
git pull origin main
11
13
git status # Should show "nothing to commit, working tree clean"
12
14
13
-
3. Do a clean doc build:
15
+
4. Do a clean doc build:
14
16
15
17
hatch run doc:clean-all
16
18
hatch run doc:build-html
@@ -19,62 +21,62 @@
19
21
Navigate to http://localhost:8000 and ensure it looks OK (particularly
20
22
do a visual scan of the gallery thumbnails).
21
23
22
-
4. Create a new release branch:
24
+
5. Create a new release branch:
23
25
24
26
git switch -c version_5.0.0
25
27
26
-
5. Update version to, e.g. 5.0.0:
28
+
6. Update version to, e.g. 5.0.0:
27
29
28
30
- in ``altair/__init__.py``
29
31
- in ``doc/conf.py``
30
32
31
-
6. Commit changes and push:
33
+
7. Commit changes and push:
32
34
33
35
git add . -u
34
36
git commit -m "chore: Bump version to 5.0.0"
35
37
git push
36
38
37
-
7. Merge release branch into main, make sure that all required checks pass
39
+
8. Merge release branch into main, make sure that all required checks pass
38
40
39
-
8. On main, build source & wheel distributions. If you work on a fork, replace `origin` with `upstream`:
41
+
9. On main, build source & wheel distributions. If you work on a fork, replace `origin` with `upstream`:
40
42
41
43
git switch main
42
44
git pull origin main
43
45
hatch clean # clean old builds & distributions
44
46
hatch build # create a source distribution and universal wheel
45
47
46
-
9. publish to PyPI (Requires correct PyPI owner permissions):
48
+
10. publish to PyPI (Requires correct PyPI owner permissions):
47
49
48
50
hatch publish
49
51
50
-
10. build and publish docs (Requires write-access to altair-viz/altair-viz.github.io):
52
+
11. build and publish docs (Requires write-access to altair-viz/altair-viz.github.io):
51
53
52
54
hatch run doc:publish-clean-build
53
55
54
-
11. On main, tag the release. If you work on a fork, replace `origin` with `upstream`:
56
+
12. On main, tag the release. If you work on a fork, replace `origin` with `upstream`:
55
57
56
58
git tag -a v5.0.0 -m "Version 5.0.0 release"
57
59
git push origin v5.0.0
58
60
59
-
12. Create a new branch:
61
+
13. Create a new branch:
60
62
61
63
git switch -c maint_5.1.0dev
62
64
63
-
13. Update version and add 'dev' suffix, e.g. 5.1.0dev:
65
+
14. Update version and add 'dev' suffix, e.g. 5.1.0dev:
64
66
65
67
- in ``altair/__init__.py``
66
68
- in ``doc/conf.py``
67
69
68
-
14. Commit changes and push:
70
+
15. Commit changes and push:
69
71
70
72
git add . -u
71
73
git commit -m "chore: Bump version to 5.1.0dev"
72
74
git push
73
75
74
-
15. Merge maintenance branch into main
76
+
16. Merge maintenance branch into main
75
77
76
-
16. Double-check that a conda-forge pull request is generated from the updated
78
+
17. Double-check that a conda-forge pull request is generated from the updated
77
79
pip package by the conda-forge bot (may take up to several hours):
0 commit comments