Update min version (3.10) and requirements#643
Merged
Conversation
369a5a6 to
9f658a1
Compare
Contributor
There was a problem hiding this comment.
Pull request overview
This PR updates the project’s minimum supported Python version from 3.9 to 3.10 across development tooling, CI workflows, and deployment pipelines, and refreshes pinned Python dependencies (including pylint) via uv pip compile.
Changes:
- Raise the minimum Python version to 3.10 in devcontainer, nox sessions, runtime configuration, GitHub Actions workflows, and Azure DevOps pipelines, and add shared variables/inputs for that version where appropriate.
- Regenerate and update
requirements*.txtanddev-requirements*.txtwith newer versions of pylint (4.0.4) and related toolchain libraries, usinguv pip compile --generate-hashes. - Update documentation comments around environment creation to reference Python 3.10 and the Python devguide for “oldest supported version”.
Reviewed changes
Copilot reviewed 15 out of 17 changed files in this pull request and generated no comments.
Show a summary per file
| File | Description |
|---|---|
src/test/python_tests/requirements.txt |
New, fully pinned and hashed test requirements file generated by uv, aligned with updated pytest and related tooling for Python 3.10+. |
src/test/python_tests/requirements.in |
Updates commentary to state that uv should be run with Python 3.10 (or the oldest supported version) when generating test requirements. |
runtime.txt |
Bumps the runtime Python version from 3.9.13 to 3.10.19 to match the new minimum supported version. |
requirements.txt |
Regenerates pinned runtime/language-server dependencies (including upgrading pylint to 4.0.4 and its transitive deps) with uv and an explicit compile command comment. |
requirements.in |
Updates environment-creation comment to reference Python 3.10 (or oldest supported version) when generating the main requirements.txt. |
noxfile.py |
Switches nox sessions install_bundled_libs and setup to run under Python 3.10 instead of 3.9. |
dev-requirements.txt |
Regenerates and upgrades development tooling dependencies (black, nox, pip, pip-tools, flake8, etc.) and their hashes for Python 3.10+. |
dev-requirements.in |
Updates guidance to use Python 3.10 (or oldest supported version) when generating dev-requirements.txt. |
build/azure-pipeline.stable.yml |
Introduces a PythonVersion variable set to 3.10 and uses it for the UsePythonVersion task in the stable pipeline. |
build/azure-pipeline.pre-release.yml |
Same as stable pipeline: defines PythonVersion (3.10) and wires it into the UsePythonVersion task for pre-release builds. |
build/azure-devdiv-pipeline.stable.yml |
Adds a PythonVersion variable (3.10) and updates the UsePythonVersion task to use that variable instead of the literal 3.9. |
build/azure-devdiv-pipeline.pre-release.yml |
Mirrors the stable DevDiv pipeline by introducing PythonVersion (3.10) and using it in the UsePythonVersion task. |
.github/workflows/push-check.yml |
Sets PYTHON_VERSION env to 3.10, updates test matrix to 3.10–3.14, and ensures bundled libs are installed using the minimum supported Python version. |
.github/workflows/pr-check.yml |
Same as push-check: adds PYTHON_VERSION env, moves the matrix baseline from 3.9 to 3.10, and uses the minimum supported version to install bundled libs. |
.github/actions/lint/action.yml |
Adds a python_version input (default 3.10) so the lint composite action installs the configured Python version instead of a hard-coded 3.9. |
.github/actions/build-vsix/action.yml |
Adds a python_version input (default 3.10) and uses it to select Python for building the VSIX and running nox in the composite action. |
.devcontainer/Dockerfile |
Updates the devcontainer base image from Python 3.9 to Python 3.10 to align local dev environments with the new minimum version. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
rchiodo
previously approved these changes
Feb 4, 2026
8db5bfd to
ff9a26d
Compare
heejaechang
previously approved these changes
Feb 4, 2026
Contributor
Author
|
Tests failing because of #645, will rebase once merged |
d9ff38c to
7a686c8
Compare
heejaechang
approved these changes
Feb 5, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This pull request updates the minimum supported Python version across the development environment, CI workflows, and pipelines from 3.9 to 3.10, and ensures all tooling and documentation reflect this change. It also updates several development dependencies to their latest versions.
Upgraded packages versions and requirements.txt running
Closes #628