Maintenance¶
This page documents what needs to be updated in various maintenance scenarios.
Python Version Added or Removed¶
When adding or removing a supported Python version, update the following:
File |
What to update |
|---|---|
|
|
|
|
|
|
|
|
|
|
|
add or remove the row in the ZIP packages table |
|
|
|
|
|
|
|
|
Blender Version Updated¶
When a new Blender version is released and supported:
File |
What to update |
|---|---|
|
|
|
Blender download URL |
Blender’s Bundled Python Version Updated¶
When Blender ships with a new Python version:
File |
What to update |
|---|---|
|
|
|
|
|
|
|
|
Release¶
Notes:
Typically all packages are released at once using the same version schema
The
README.mdbadges can serve as a visual reference for what versions have been releasedCorrective Release (if needed after a standard release):
Create a new branch from the release tag (e.g., from the
ifcopenshell-0.8.5tag)Update
VERSIONwith the-post1suffix (e.g.,0.8.5-post1, not.post1)The hyphen is required for semantic versioning compliance; Blender will not process
.post1suffixes correctlyFollow the standard release process for the corrective version
Multiple Blender Python Versions:
Blender does not allow multiple builds for the same platform with different Python versions (e.g., cannot have both
bonsai_py311-0.8.5-windows-x64.zipandbonsai_py313-0.8.5-windows-x64.zip)Workaround: publish different Python versions as different extension versions (e.g., py313 as
0.8.5and py311 as0.8.5-post1)Set the maximum Blender version on the Blender extensions platform UI to prevent conflicts (e.g., set max version
5.1.0for0.8.5-post1, which restricts it to versions below 5.1.0)
Things to update:
.github/workflows/ci-bcf-pypi.yml- release bcf-client to PyPI.github/workflows/ci-bonsai.yml- release bonsai in GitHub releases.github/workflows/ci-bsdd-pypi.yaml- release bsdd to PyPI.github/workflows/ci-ifc4d-pypi.yaml- release ifc4d to PyPI.github/workflows/ci-ifc5d-pypi.yaml- release ifc5d to PyPI.github/workflows/ci-ifcclash-pypi.yaml- release ifcclash to PyPI.github/workflows/ci-ifcconvert.yml- release ifcconvert binaries in GitHub releases.github/workflows/ci-ifccsv-pypi.yaml- release ifccsv to PyPI.github/workflows/ci-ifcdiff-pypi.yaml- release ifcdiff to PyPI.github/workflows/ci-ifcedit-pypi.yaml- release ifcedit to PyPI.github/workflows/ci-ifcfm-pypi.yaml- release ifcfm to PyPI.github/workflows/ci-ifccityjson-pypi.yaml- release ifccityjson to PyPI.github/workflows/ci-ifcmcp-pypi.yaml- release ifcopenshell-mcp to PyPI.github/workflows/ci-ifcopenshell-python.yml- release ifcopenshell-python binaries in GitHub releases.github/workflows/ci-ifcopenshell-python-pypi.yml- release ifcopenshell wheels to PyPI.github/workflows/ci-ifcpatch-pypi.yaml- release ifcpatch to PyPI.github/workflows/ci-ifcquery-pypi.yaml- release ifcquery to PyPI.github/workflows/ci-ifcsverchok.yml- release ifcsverchok Blender add-on in GitHub releases.github/workflows/ci-ifctester-pypi.yml- release ifctester to PyPI.github/workflows/ci-pyodide-wasm-release.yml- release pyodide wasm wheel to wasm-wheels.github/workflows/publish-bonsai-releases.yml- publish Bonsai Blender extension to Blender extensions platform❗ Requires
BLENDER_EXTENSIONS_TOKENsecret to be set - ❗ not yet configured
Publishing documentation and websites (see website repository):
ifcopenshell-docs.yml - builds and publishes IfcOpenShell documentation to docs.ifcopenshell.org (ifcopenshell_org_docs repo)
bonsai-docs.yml - builds and publishes Bonsai documentation to docs.bonsaibim.org (bonsaibim_org_docs repo)
publish-websites.yml - publishes bonsaibim.org (bonsaibim_org_static_html repo) and ifcopenshell.org (ifcopenshell_org_static_html repo)
VERSIONto the release version - UPDATE THIS LAST as all workflows above typically depend on it to set the version correctly