fix: populate sha256 in resource files and fix Windows PythonConfiguration
- Add sha256 field to Windows PythonConfiguration (PyPy/GraalPy have direct download URLs on Windows too) - Pass sha256 to install_pypy() and install_graalpy() in windows.py - Fix update_pythons.py: handle empty sha256 from CPython API (older versions) by streaming download to compute it; fix condition to check 'not sha256' rather than 'not in dict' - Fix update_virtualenv.py: compute sha256 even when version unchanged but sha256 is empty (first-time population) - Fix update_python_build_standalone.py: resolve file path relative to the script itself (not the installed package) so writes go to source checkout, not the uv cache - Populate actual sha256 values by running all three update scripts Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Assisted-by: copilot-cli:claude-sonnet-4.6
This commit is contained in:
co-authored by
Copilot
parent
97537fe937
commit
b597cb5aff
@@ -535,9 +535,11 @@ class AllVersions:
|
||||
|
||||
# Fill in sha256 for URL-based configs if not already provided by the
|
||||
# update_version_* method (e.g. PyPy, BeeWare iOS, Maven have no sidecar).
|
||||
# Also fills in sha256 when the CPython API doesn't return a sha256_sum
|
||||
# (e.g. for older releases).
|
||||
# Widen the type to allow arbitrary key access on the underlying dict.
|
||||
config_update_dict: dict[str, str] = config_update # type: ignore[assignment]
|
||||
if "url" in config_update_dict and "sha256" not in config_update_dict:
|
||||
if "url" in config_update_dict and not config_update_dict.get("sha256"):
|
||||
url = config_update_dict["url"]
|
||||
existing_sha256 = config.get("sha256", "")
|
||||
if url == config.get("url") and existing_sha256:
|
||||
|
||||
Reference in New Issue
Block a user