3.14: Windows on Arm build fails since windows-11-arm migrated to windows-11-vs2026-arm
I maintainer di solito rispondono entro 1 giorno
@chris-eibl ci sta già lavorando.
Dal 27/9/2026.
Valutazione
- Difficoltà
- 2/5
- Tempo stimato
- 1-3 ore
- Idoneità per principianti
- 78/100
- Tipo di issue
- Bug
- Chiarezza
- Specificata chiaramente
- Stato di attività
- Attiva
- Stack tecnologico
- github-actions, python
- Ambito
- build-system, ci-cd
Direzione di ricerca
Inizia da .github/workflows/reusable-windows.yml e analizza come il job arm64 seleziona MSBuild; poi esamina build.bat e PCbuild/pcbuild.proj per l’interazione tra PreferredToolArchitecture e PlatformToolset. Esegui la build CI Windows Arm64 interessata e verifica che _freeze_module venga compilato correttamente con la toolchain nativa.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
The Windows Arm64 jobs in the CI recently started failing on 3.14 (for example). Noted by @StanFromIreland in https://github.com/python/cpython/pull/158188#issuecomment-5837953982: the _freeze_module
https://github.com/python/cpython/blob/9def455ebd4017dfbfcf1377137bb949ff2e29c1/PCbuild/pcbuild.proj#L20-L21
can no longer be compiled for PreferredToolArchitecture=x86 and PlatformToolset=v143:
The build tools for Visual Studio 2022 (Platform Toolset = 'v143') cannot be found.
PreferredToolArchitecture=x86 is chosen, because we use the x86 version of msbuild in CI:
"C:\Program Files\Microsoft Visual Studio\18\Enterprise\MSBuild\Current\Bin\msbuild.exe"
which is chosen by build.bat if no MSBUILD environment variable is set and msbuild is not in the path. [^1]
Compiling the _freeze_module for arm64 on an arm64 host by just using the arm64 version of msbuild would solve this, by e.g. just adding
env:
MSBUILD: ${{ inputs.arch == 'arm64' && 'C:\Program Files\Microsoft Visual Studio\18\Enterprise\MSBuild\Current\Bin\arm64\msbuild.exe' || '' }}
to
https://github.com/python/cpython/blob/e16b12bb982bc916664850da1d0a78109b2145b8/.github/workflows/reusable-windows.yml#L38-L40
because then PreferredToolArchitecture=arm64 and also the arm64 version of the compiler is chosen.
I think running the _freeze_module natively on an arm64 host is anyway the better fit?
[^1]: noticed already in https://github.com/python/cpython/issues/153668#issuecomment-5304195008
- Lingua principale
- Python
- Stelle
- 77.4k
- Fork
- 37k
- Merge medio
- 1g 17h
- PR unite (30g)
- 631
Preparare l'ambiente
Avvia il container di sviluppo del progetto nel browser, con il tuo account GitHub.
- Nessun Dockerfile né file Docker Compose
- Ha un modello di pull request
- Leggi la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di python/cpython
-
extension-modules topic-socket type-bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
python/cpython#158285 · 4 commenti ·
I maintainer di solito rispondono entro 1 giorno
-
stdlib type-bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
I maintainer di solito rispondono entro 1 giorno
-
docs pending
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
python/cpython#157339 · 10 commenti ·
I maintainer di solito rispondono entro 1 giorno
-
stdlib type-feature
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
python/cpython#155601 · 2 commenti ·
I maintainer di solito rispondono entro 1 giorno
-
stdlib type-feature
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
python/cpython#153771 · 5 commenti ·
I maintainer di solito rispondono entro 1 giorno
Tutte le issue di python/cpython
Issue simili
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
conda-forge/conda-build-feedstock#289 · 1 commento · 1 reazione ·
-
`pulptest` no longer works in 4.0.0: `ImportError: Start directory is not importable: 'pulp/tests'`Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
-
remove reddit feedsAperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
TomCasavant/ohio-sites#224 ·