Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions .azure-pipelines/breaking-change-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,9 +21,9 @@ jobs:
fetchDepth: 0
fetchTags: true
- task: UsePythonVersion@0
displayName: 'Use Python 3.13'
displayName: 'Use Python 3.14'
inputs:
versionSpec: 3.13
versionSpec: '3.14'
- template: ${{ variables.Pipeline.Workspace }}/.azure-pipelines/templates/azdev_setup.yml
- bash: |
set -ev
Expand Down
2 changes: 1 addition & 1 deletion .azure-pipelines/macos-standalone-release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ parameters:
- name: PythonVersion
displayName: 'Python Version (Homebrew)'
type: string
default: '3.13'
default: '3.14'

# Sign/notarize parameters
- name: BundleId
Expand Down
4 changes: 2 additions & 2 deletions .azure-pipelines/templates/macos/macos-build-jobs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
# Usage: Can be called from main pipeline or standalone wrapper
#
# Parameters:
# - PythonVersion: Homebrew Python version (default: 3.13)
# - PythonVersion: Homebrew Python version (default: 3.14)
# - MacosArm64Image: VM image for ARM64 builds
# - MacosIntelImage: VM image for Intel builds
# - condition: Job execution condition
Expand All @@ -17,7 +17,7 @@
parameters:
- name: PythonVersion
type: string
default: '3.13'
default: '3.14'
- name: MacosArm64Image
type: string
default: 'macos-15-arm64'
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ parameters:
default: 'macos-15'
- name: PythonVersion
type: string
default: '3.13'
default: '3.14'
- name: GitHubRepo
type: string
default: 'placeholder/repo'
Expand Down
2 changes: 1 addition & 1 deletion .azure-pipelines/templates/macos/macos-publish-jobs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,7 @@ parameters:
default: 'macos-15'
- name: PythonVersion
type: string
default: '3.13'
default: '3.14'
- name: Debug
type: boolean
default: false
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ parameters:
default: []
- name: PythonVersion
type: string
default: '3.13'
default: '3.14'
- name: MacosArm64Image
type: string
default: 'macos-15-arm64'
Expand Down
34 changes: 34 additions & 0 deletions azure-pipelines-full-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -83,3 +83,37 @@ jobs:
instance_idx: '$(Instance_idx)'
fullTest: true
jobName: 'FullTest'

- job: AutomationFullTestPython314ProfileLatest
displayName: Automation Full Test Python314 Profile Latest
timeoutInMinutes: 9999
strategy:
maxParallel: 8
matrix:
instance1:
Instance_idx: 1
instance2:
Instance_idx: 2
instance3:
Instance_idx: 3
instance4:
Instance_idx: 4
instance5:
Instance_idx: 5
instance6:
Instance_idx: 6
instance7:
Instance_idx: 7
instance8:
Instance_idx: 8
pool:
name: ${{ variables.ubuntu_pool }}
steps:
- template: .azure-pipelines/templates/automation_test.yml
parameters:
pythonVersion: '3.14'
profile: 'latest'
instance_cnt: '8'
instance_idx: '$(Instance_idx)'
fullTest: true
jobName: 'FullTest'
60 changes: 35 additions & 25 deletions azure-pipelines.yml
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ variables:

# macOS Cask parameters
- name: macos_cask_python_version
value: '3.13'
value: '3.14'

parameters:
- name: architectures
Expand Down Expand Up @@ -137,9 +137,9 @@ jobs:

steps:
- task: UsePythonVersion@0
displayName: 'Use Python 3.13'
displayName: 'Use Python 3.14'
inputs:
versionSpec: 3.13
versionSpec: '3.14'

- bash: ./scripts/ci/dependency_check.sh
displayName: 'Verify src/azure-cli/requirements.py3.Linux.txt'
Expand All @@ -152,9 +152,9 @@ jobs:

steps:
- task: UsePythonVersion@0
displayName: 'Use Python 3.13'
displayName: 'Use Python 3.14'
inputs:
versionSpec: 3.13
versionSpec: '3.14'

- bash: ./scripts/ci/dependency_check.sh
displayName: 'Verify src/azure-cli/requirements.py3.Darwin.txt'
Expand All @@ -167,9 +167,9 @@ jobs:

steps:
- task: UsePythonVersion@0
displayName: 'Use Python 3.13'
displayName: 'Use Python 3.14'
inputs:
versionSpec: 3.13
versionSpec: '3.14'

- task: BatchScript@1
inputs:
Expand All @@ -184,9 +184,9 @@ jobs:
name: ${{ variables.ubuntu_pool }}
steps:
- task: UsePythonVersion@0
displayName: 'Use Python 3.13'
displayName: 'Use Python 3.14'
inputs:
versionSpec: 3.13
versionSpec: '3.14'
- template: .azure-pipelines/templates/azdev_setup.yml
- bash: |
set -ev
Expand Down Expand Up @@ -439,9 +439,9 @@ jobs:
name: ${{ variables.ubuntu_pool }}
steps:
- task: UsePythonVersion@0
displayName: 'Use Python 3.13'
displayName: 'Use Python 3.14'
inputs:
versionSpec: 3.13
versionSpec: '3.14'

- task: PipAuthenticate@1
condition: startsWith(variables['Build.SourceBranch'], 'refs/heads/release')
Expand Down Expand Up @@ -478,6 +478,8 @@ jobs:
python.version: '3.12'
Python313:
python.version: '3.13'
Python314:
python.version: '3.14'
dependsOn: BuildPythonWheel
condition: succeeded()
pool:
Expand Down Expand Up @@ -518,6 +520,8 @@ jobs:
python.version: '3.12'
Python313:
python.version: '3.13'
Python314:
python.version: '3.14'
steps:
- template: .azure-pipelines/templates/automation_test.yml
parameters:
Expand All @@ -535,6 +539,8 @@ jobs:
python.version: '3.12'
Python313:
python.version: '3.13'
Python314:
python.version: '3.14'
steps:
- template: .azure-pipelines/templates/automation_test.yml
parameters:
Expand All @@ -555,6 +561,8 @@ jobs:
python.version: '3.12'
Python313:
python.version: '3.13'
Python314:
python.version: '3.14'
steps:
- task: UsePythonVersion@0
displayName: 'Use Python $(python.version)'
Expand All @@ -574,8 +582,8 @@ jobs:
name: ${{ variables.ubuntu_pool }}
strategy:
matrix:
Python313:
python.version: '3.13'
Python314:
python.version: '3.14'
steps:
- task: UsePythonVersion@0
displayName: 'Use Python $(python.version)'
Expand Down Expand Up @@ -667,7 +675,7 @@ jobs:
set -ev
# Force relink python@3.xx in Homebrew to resolve the conflict with pre-installed python 3.xx on macOS-12 image
# See: https://github.com/Azure/azure-cli/issues/29054
python_version=3.13
python_version=3.14
brew unlink python@$python_version && brew link --overwrite python@$python_version

echo == Remove pre-installed azure-cli ==
Expand Down Expand Up @@ -1087,9 +1095,9 @@ jobs:
name: ${{ variables.ubuntu_pool }}
steps:
- task: UsePythonVersion@0
displayName: 'Use Python 3.13'
displayName: 'Use Python 3.14'
inputs:
versionSpec: 3.13
versionSpec: '3.14'
- template: .azure-pipelines/templates/azdev_setup.yml
- bash: |
set -ev
Expand All @@ -1104,9 +1112,9 @@ jobs:
name: ${{ variables.ubuntu_multi_core_pool }}
steps:
- task: UsePythonVersion@0
displayName: 'Use Python 3.13'
displayName: 'Use Python 3.14'
inputs:
versionSpec: 3.13
versionSpec: '3.14'
- template: .azure-pipelines/templates/azdev_setup.yml
- bash: |
set -ev
Expand All @@ -1120,9 +1128,9 @@ jobs:
name: ${{ variables.ubuntu_pool }}
steps:
- task: UsePythonVersion@0
displayName: 'Use Python 3.13'
displayName: 'Use Python 3.14'
inputs:
versionSpec: 3.13
versionSpec: '3.14'
- template: .azure-pipelines/templates/azdev_setup.yml
- bash: |
set -ev
Expand All @@ -1139,6 +1147,8 @@ jobs:
python.version: '3.12'
Python313:
python.version: '3.13'
Python314:
python.version: '3.14'
pool:
name: ${{ variables.ubuntu_pool }}
steps:
Expand Down Expand Up @@ -1184,9 +1194,9 @@ jobs:
name: ${{ variables.ubuntu_multi_core_pool }}
steps:
- task: UsePythonVersion@0
displayName: 'Use Python 3.13'
displayName: 'Use Python 3.14'
inputs:
versionSpec: 3.13
versionSpec: '3.14'
- template: .azure-pipelines/templates/azdev_setup.yml
- bash: |
set -ev
Expand All @@ -1207,9 +1217,9 @@ jobs:
name: ${{ variables.ubuntu_pool }}
steps:
- task: UsePythonVersion@0
displayName: 'Use Python 3.13'
displayName: 'Use Python 3.14'
inputs:
versionSpec: 3.13
versionSpec: '3.14'
- template: .azure-pipelines/templates/azdev_setup.yml
- bash: |
set -ev
Expand Down Expand Up @@ -1242,7 +1252,7 @@ jobs:
- task: UsePythonVersion@0
displayName: 'Use Python 3.11'
inputs:
versionSpec: 3.11
versionSpec: '3.11'
- template: .azure-pipelines/templates/azdev_setup.yml
- bash: |
set -ev
Expand Down
2 changes: 1 addition & 1 deletion build_scripts/windows/scripts/build.cmd
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ if "%ARCH%"=="x86" (
echo Please set ARCH to "x86" or "x64"
goto ERROR
)
set PYTHON_VERSION=3.13.13
set PYTHON_VERSION=3.14.4

set WIX_DOWNLOAD_URL="https://azurecliprod.blob.core.windows.net/msi/wix310-binaries-mirror.zip"
set PYTHON_DOWNLOAD_URL="https://www.python.org/ftp/python/%PYTHON_VERSION%/python-%PYTHON_VERSION%-embed-%PYTHON_ARCH%.zip"
Expand Down
2 changes: 1 addition & 1 deletion doc/command_guidelines.md
Original file line number Diff line number Diff line change
Expand Up @@ -426,7 +426,7 @@ Follow the [Error Handling Guidelines](https://github.com/Azure/azure-cli/blob/d

## Coding Practices

- All code must support Python 3.10 ~ 3.13
- All code must support Python 3.10 ~ 3.14
- PRs to Azure/azure-cli and Azure/azure-cli-extensions must pass CI
- Code must pass style checks with pylint and pep8
- (*) All commands should have tests
4 changes: 2 additions & 2 deletions doc/extensions/authoring.md
Original file line number Diff line number Diff line change
Expand Up @@ -130,9 +130,9 @@ See [Extension Metadata](metadata.md) for more information.

### Test your extension on Python 3

- The Azure CLI supports Python 3.10 ~ 3.13 so verify that your extension does the same.
- The Azure CLI supports Python 3.10 ~ 3.14 so verify that your extension does the same.
- You can create virtual environments for different versions and run your extension in them.
- e.g. `python3.13 -m venv env313`.
- e.g. `python3.14 -m venv env314`.


Also, see the [FAQ](faq.md).
Expand Down
2 changes: 1 addition & 1 deletion doc/install_linux_prerequisites.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ Some native Linux packages are required when installing the CLI with:
- Interactive installation script
- `pip`

Current supported Python versions are Python 3.10 ~ 3.13.
Current supported Python versions are Python 3.10 ~ 3.14.

The commands to run to install the dependencies for some common distributions are listed below.

Expand Down
2 changes: 1 addition & 1 deletion scripts/ci/test_extensions.sh
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ exit_code=0
# Disable alias temporarily: https://github.com/Azure/azure-cli/pull/27717
# hybridaks is going to be deprecated: https://github.com/Azure/azure-cli/pull/29838
# db-up is going to be deprecated: https://github.com/Azure/azure-cli/pull/29887
# serviceconnector-passwordless's dependency is not compatible with 3.13 https://github.com/Azure/azure-cli/pull/31895
# serviceconnector-passwordless's dependency is not compatible with 3.14 https://github.com/Azure/azure-cli/pull/31895
# partnercenter is not compatible with latest pydantic: https://github.com/Azure/azure-cli/pull/31967
ignore_list='azure-cli-ml fzf arcappliance arcdata connectedk8s k8s-extension alias hybridaks db-up serviceconnector-passwordless partnercenter'

Expand Down
8 changes: 4 additions & 4 deletions scripts/regression_test/regression_test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,8 +20,8 @@ jobs:
steps:
- task: UsePythonVersion@0
inputs:
versionSpec: '3.13'
displayName: "Use Python 3.13"
versionSpec: '3.14'
displayName: "Use Python 3.14"
- task: AzureCLI@2
displayName: 'update version'
inputs:
Expand Down Expand Up @@ -89,8 +89,8 @@ jobs:
steps:
- task: UsePythonVersion@0
inputs:
versionSpec: '3.13'
displayName: "Use Python 3.13"
versionSpec: '3.14'
displayName: "Use Python 3.14"
- task: AzureCLI@2
displayName: 'Checkout Target Branch'
inputs:
Expand Down
2 changes: 1 addition & 1 deletion scripts/release/debian/build.sh
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ set -exv
ls -Rl /mnt/artifacts

WORKDIR=`cd $(dirname $0); cd ../../../; pwd`
PYTHON_VERSION="3.13.13"
PYTHON_VERSION="3.14.4"
SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"

# Update APT packages
Expand Down
2 changes: 1 addition & 1 deletion scripts/release/homebrew/docker/formula_generate.py
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@
CLI_VERSION = os.environ['CLI_VERSION']
HOMEBREW_UPSTREAM_URL = os.environ['HOMEBREW_UPSTREAM_URL']
HOMEBREW_FORMULAR_LATEST = "https://raw.githubusercontent.com/Homebrew/homebrew-core/master/Formula/a/azure-cli.rb"
PYTHON_VERSION = '3.13'
PYTHON_VERSION = '3.14'


def main():
Expand Down
Loading
Loading