Skip to content

Use cached Python 3.13 in Azure pipelines - #2018

Merged
Eduardo Villalpando Mello (edvilme) merged 1 commit into
mainfrom
fix-pipeline-python-versions
Nov 13, 2026
Merged

Eduardo Villalpando Mello (edvilme) merged 1 commit into
mainfrom
fix-pipeline-python-versions

Conversation

@edvilme

Copy link
Copy Markdown
Contributor

Summary

  • Use Python 3.13 instead of Python 3.9 in both legacy Azure stable and pre-release pipelines.
  • Preserve build steps, release versions, supported extension Python versions, publication defaults, and manual approval gates.

Why

Monaco release build 496307 for release/1.44.0 failed because Python 3.9 is not cached. The fallback installer downloads Python, but its pip upgrade is blocked by the proxy with HTTP 403. The failing Linux agents already contain Python 3.13.

Validation

  • Prettier passes for both pipeline files.
  • Parsed YAML comparison confirms the only semantic changes are the two Python version selectors.
  • Executed both actual Python build commands from each pipeline on Python 3.13 against isolated stable 1.44.0 and pre-release 1.45.0 manifests; all pass with versions preserved.
  • git diff --check passes.

Scope and rollout

This PR targets main. The existing release/1.44.0 branch will need the fix backported before its Monaco release is rerun. No pipelines were enabled or queued; DevDiv stable remains disabled.

Weekly Azure runtime tracking is not implemented here: the pinned check-python-versions action only accepts GitHub Actions test matrices and explicitly excludes build-runtime pins. Adding these Azure YAML files to its files input would fail the weekly workflow. Supporting them requires a separate shared-action enhancement and a decision on build-runtime policy rather than reusing newest-RC test coverage.

Replace Python 3.9 in stable and pre-release build steps with Python 3.13, which is already available in the agent tool cache. Avoid the fallback installation that fails when the proxy blocks pip downloads.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 956d3afd-ae0b-486c-a60c-3a6276c23213
@StellaHuang95

Copy link
Copy Markdown
Contributor

🔒 Automated review in progress — Stella Huang (@StellaHuang95) is auto-reviewing this PR.

@StellaHuang95

Copy link
Copy Markdown
Contributor

Reviewed commit: 69546302be43407c65817b3bfe2b88f8a4aa0b64

Result: 🔴 could-not-verify

Verification details

Verification: Automated verification is best effort. The PR author remains responsible for testing.

Summary: [unavailable] Container verification could not start and local execution was not authorized for this PR HEAD: Podman CLI is not installed or is not on PATH.

Test runs: none recorded.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Approved via Review Center.

@StellaHuang95 Stella Huang (StellaHuang95) added the review-auto:approved Automated review: no blocking findings (approval posted). label Nov 12, 2026
@edvilme
Eduardo Villalpando Mello (edvilme) merged commit 7ef5f5a into main Nov 13, 2026
119 checks passed
@edvilme
Eduardo Villalpando Mello (edvilme) deleted the fix-pipeline-python-versions branch November 13, 2026 00:11
Eduardo Villalpando Mello (edvilme) added a commit that referenced this pull request Nov 13, 2026
## Summary
Cherry-pick `7ef5f5a166447aaac9eb4ac44a6d953a1ec4c5b1` from #2018 onto
`release/1.44.0` using `git cherry-pick -x`.

- Change only the stable and pre-release Azure `UsePythonVersion@0`
selectors from Python 3.9 to cached Python 3.13.
- Preserve the release manifest at `1.44.0`, publishing settings,
approval gates, and all other release contents.
- Backport commit: `613baac414fab7e9cc18c972dc7982e44cfd8aa6`.

## Validation
- Backported pipeline files exactly match the merged source commit.
- Parsed YAML comparison confirms only the two Python selectors change.
- Both actual stable Python build commands pass on Python 3.13 against
an isolated copy of the release manifest, preserving `1.44.0`.
- Prettier, whitespace checks, and clean-worktree verification pass.

## Branch protection
A direct, non-forced push was rejected because `release/1.44.0` requires
pull requests and the `VS Code PR Check` status. This PR follows that
policy; no protection bypass, manual pipeline queue, or publishing
action was attempted.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 956d3afd-ae0b-486c-a60c-3a6276c23213
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

debt Code quality issues review-auto:approved Automated review: no blocking findings (approval posted).

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants