The pixi/Python build system (#309) supersedes the shell and PowerShell
entry points, but they cannot be removed yet: remote modules fetch three
of them by URL at a pinned tag, so deleting them breaks those consumers
until each one is updated. #309 marks them "backward compatibility" in
the README; this issue tracks actually retiring them.
Not urgent. Nothing is broken today. This is cleanup to schedule once
the consumer workflows move.
What is left
Ten files, 1,469 lines, in three tiers.
Tier 1 — already dead, no consumer (313 lines)
| File |
Lines |
Superseded by |
scripts/make_tarballs.sh |
120 |
wheel_packaging.py |
scripts/make_windows_zip.ps1 |
157 |
wheel_packaging.py |
docs/make.bat |
36 |
docs/Makefile + a pixi task |
Referenced only by each other and the .rst docs. docs/make.bat is the
Sphinx Windows helper and has no caller at all.
Tier 2 — internal plumbing, reachable only through tier 3 (602 lines)
dockcross-manylinux-build-module-wheels.sh (219),
dockcross-manylinux-build-wheels.sh (148),
dockcross-manylinux-download-cache.sh (135),
docker_build_environment_driver.sh (100).
Tier 3 — the published API (554 lines)
| File |
Lines |
dockcross-manylinux-download-cache-and-build-module-wheels.sh |
134 |
macpython-download-cache-and-build-module-wheels.sh |
174 |
windows-download-cache-and-build-module-wheels.ps1 |
246 |
These are fetched from raw.githubusercontent.com at a pinned tag.
Removing them is the compatibility break.
Why the break is smaller than it looks
Remote modules do not curl these directly. They call the reusable
workflow in
ITKRemoteModuleBuildTestPackageAction,
and the curl happens there. So the lockstep change is one file in one
repository, and modules tracking @main pick it up on their next run.
Modules pinned to an older tag keep fetching the old scripts from that
tag, which still resolves.
Suggested order
- Update the reusable workflow to call
build_wheels.py directly.
- Confirm a real remote module builds on all four platforms through the
updated workflow.
- Delete tier 3, then tier 2 (unreachable once tier 3 is gone).
- Delete tier 1 independently; nothing depends on it.
Tier 1 could be done at any time, including before the rest.
Related
The pixi/Python build system (#309) supersedes the shell and PowerShell
entry points, but they cannot be removed yet: remote modules fetch three
of them by URL at a pinned tag, so deleting them breaks those consumers
until each one is updated. #309 marks them "backward compatibility" in
the README; this issue tracks actually retiring them.
Not urgent. Nothing is broken today. This is cleanup to schedule once
the consumer workflows move.
What is left
Ten files, 1,469 lines, in three tiers.
Tier 1 — already dead, no consumer (313 lines)
scripts/make_tarballs.shwheel_packaging.pyscripts/make_windows_zip.ps1wheel_packaging.pydocs/make.batdocs/Makefile+ a pixi taskReferenced only by each other and the
.rstdocs.docs/make.batis theSphinx Windows helper and has no caller at all.
Tier 2 — internal plumbing, reachable only through tier 3 (602 lines)
dockcross-manylinux-build-module-wheels.sh(219),dockcross-manylinux-build-wheels.sh(148),dockcross-manylinux-download-cache.sh(135),docker_build_environment_driver.sh(100).Tier 3 — the published API (554 lines)
dockcross-manylinux-download-cache-and-build-module-wheels.shmacpython-download-cache-and-build-module-wheels.shwindows-download-cache-and-build-module-wheels.ps1These are fetched from
raw.githubusercontent.comat a pinned tag.Removing them is the compatibility break.
Why the break is smaller than it looks
Remote modules do not curl these directly. They call the reusable
workflow in
ITKRemoteModuleBuildTestPackageAction,
and the curl happens there. So the lockstep change is one file in one
repository, and modules tracking
@mainpick it up on their next run.Modules pinned to an older tag keep fetching the old scripts from that
tag, which still resolves.
Suggested order
build_wheels.pydirectly.updated workflow.
Tier 1 could be done at any time, including before the rest.
Related