From 3e98a720cc870dc62193751d1713f504140f9bab Mon Sep 17 00:00:00 2001 From: Ren Silva Date: Fri, 8 Aug 2025 03:43:28 +0000 Subject: [PATCH 01/12] updated package for py 3.13 compatibility --- .github/workflows/python_compatibility.yml | 106 ++++++++++++++++++++ HISTORY.rst | 9 ++ azdev/__init__.py | 2 +- azure-pipelines.yml | 3 + scripts/test/requirements.txt | 17 ++++ scripts/test/test_compatibility_unix.sh | 34 +++++++ scripts/test/test_compatibility_windows.ps1 | 38 +++++++ setup.py | 11 +- tox.ini | 3 + 9 files changed, 218 insertions(+), 5 deletions(-) create mode 100644 .github/workflows/python_compatibility.yml create mode 100644 scripts/test/requirements.txt create mode 100755 scripts/test/test_compatibility_unix.sh create mode 100644 scripts/test/test_compatibility_windows.ps1 diff --git a/.github/workflows/python_compatibility.yml b/.github/workflows/python_compatibility.yml new file mode 100644 index 000000000..0a1d8fb4f --- /dev/null +++ b/.github/workflows/python_compatibility.yml @@ -0,0 +1,106 @@ +# Python Compatibility Testing Workflow +# +# Tests azdev package build and aaz-dev-tools compatibility across: +# - Operating Systems: Ubuntu, macOS, Windows +# - Python Versions: 3.11, 3.12, 3.13 +# +# Validates that the package can be built and installed correctly +# and is compatible with aaz-dev-tools dependencies on all supported +# platforms and Python versions. + +name: Python Compatibility Check + +concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: true + +on: + workflow_dispatch: + push: + branches: + - '*' + pull_request: + +env: + # Change this to invalidate existing cache. + CACHE_PREFIX: v0 + PYTHON_PATH: ./ + +permissions: + contents: read + +jobs: + build: + name: Build Python Wheel + runs-on: ubuntu-latest + timeout-minutes: 15 + steps: + - uses: actions/checkout@v4 + + - name: Setup Python 3.12 + uses: actions/setup-python@v4 + with: + python-version: '3.12' + + - name: Install prerequisites + run: | + python -m pip install --upgrade pip setuptools wheel + + - name: Build wheel + run: | + python setup.py check + python setup.py bdist_wheel sdist + + - name: Upload wheel artifacts + uses: actions/upload-artifact@v4 + with: + name: python-wheel + path: dist/ + retention-days: 1 + + compatibility-test: + name: Python ${{ matrix.python }} - ${{ matrix.os }} - aaz-dev-tools compatibility + runs-on: ${{ matrix.os }} + needs: build + timeout-minutes: 30 + strategy: + fail-fast: false + matrix: + os: [ubuntu-latest, macos-latest, windows-latest] + python: ['3.11', '3.12', '3.13'] + + steps: + - uses: actions/checkout@v4 + + - name: Setup Python ${{ matrix.python }} + uses: actions/setup-python@v4 + with: + python-version: ${{ matrix.python }} + + - name: Download wheel artifacts + uses: actions/download-artifact@v4 + with: + name: python-wheel + path: dist/ + + - name: Test aaz-dev-tools compatibility - Unix/Linux/macOS + if: runner.os != 'Windows' + run: | + ./scripts/tests/test_compatibility_unix.sh "${{ matrix.python }}" "${{ matrix.os }}" + shell: bash + + - name: Test aaz-dev-tools compatibility - Windows + if: runner.os == 'Windows' + run: | + .\scripts\tests\test_compatibility_windows.ps1 -PythonVersion "${{ matrix.python }}" -OSName "${{ matrix.os }}" + shell: pwsh + + - name: Cleanup test environment - Unix/Linux/macOS + if: always() && runner.os != 'Windows' + run: rm -rf test_env || true + shell: bash + + - name: Cleanup test environment - Windows + if: always() && runner.os == 'Windows' + run: if (Test-Path "test_env") { Remove-Item -Recurse -Force test_env } + shell: pwsh diff --git a/HISTORY.rst b/HISTORY.rst index a27c8265b..24ae22c8c 100644 --- a/HISTORY.rst +++ b/HISTORY.rst @@ -2,6 +2,15 @@ Release History =============== +0.2.5 +++++++ +* Add support for Python 3.11, 3.12, and 3.13 +* Update dependency versions for better compatibility: + - sphinx: updated from ==1.6.7 to >=4.0.0 + - wheel: updated from ==0.30.0 to >=0.30.0 + - setuptools: updated from ==70.0.0 to >=70.0.0 +* Add aaz-dev-tools compatibility testing pipeline + 0.2.4 ++++++ * pin setuptools to 70.0.0 diff --git a/azdev/__init__.py b/azdev/__init__.py index 031203697..186ca1f63 100644 --- a/azdev/__init__.py +++ b/azdev/__init__.py @@ -4,4 +4,4 @@ # license information. # ----------------------------------------------------------------------------- -__VERSION__ = '0.2.4' +__VERSION__ = '0.2.5' diff --git a/azure-pipelines.yml b/azure-pipelines.yml index 99d2f6d3a..013f3fc52 100644 --- a/azure-pipelines.yml +++ b/azure-pipelines.yml @@ -24,6 +24,9 @@ jobs: Python312: python.version: '3.12' tox_env: 'py312' + Python313: + python.version: '3.13' + tox_env: 'py313' steps: - task: UsePythonVersion@0 displayName: 'Use Python $(python.version)' diff --git a/scripts/test/requirements.txt b/scripts/test/requirements.txt new file mode 100644 index 000000000..737dc984b --- /dev/null +++ b/scripts/test/requirements.txt @@ -0,0 +1,17 @@ +schematics~=2.1.1 +pyyaml~=6.0.2 +fuzzywuzzy~=0.18.0 +pluralizer~=1.2.0 +lxml>=5.0.0 +flask~=3.0.3 +cachelib~=0.13.0 +xmltodict~=0.13.0 +packaging>=21.3 +Jinja2~=3.1.4 +MarkupSafe>=2.1.5 +jsonschema~=4.23.0 +click~=8.1.2 +setuptools>=70.0.0 +python-Levenshtein +azure-mgmt-core +wrapt>=1.11 diff --git a/scripts/test/test_compatibility_unix.sh b/scripts/test/test_compatibility_unix.sh new file mode 100755 index 000000000..d2cf07ac3 --- /dev/null +++ b/scripts/test/test_compatibility_unix.sh @@ -0,0 +1,34 @@ +#!/bin/bash +set -e + +PYTHON_VERSION="$1" +OS_NAME="$2" +SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" + +echo "=== Testing aaz-dev-tools compatibility with Python ${PYTHON_VERSION} on ${OS_NAME} ===" + +# Create virtual environment +python -m venv test_env +source test_env/bin/activate + +# Upgrade pip and install build tools +python -m pip install --upgrade pip setuptools wheel + +# Install built azdev wheel +WHEEL_FILE=$(find dist/ -name "azdev-*.whl" | head -n1) +if [ -z "$WHEEL_FILE" ]; then + echo "Error: No azdev wheel found" + exit 1 +fi +echo "Installing azdev wheel: $WHEEL_FILE" +python -m pip install "$WHEEL_FILE" + +# Install aaz-dev-tools requirements from shared file +echo "Installing aaz-dev-tools dependencies..." +python -m pip install --only-binary=:all: -r "${SCRIPT_DIR}/requirements.txt" + +# Test azdev can be imported and basic functionality works +echo "Testing azdev import and basic functionality..." +python "${SCRIPT_DIR}/test_imports.py" + +echo "=== aaz-dev-tools compatibility test PASSED for Python ${PYTHON_VERSION} on ${OS_NAME} ===" diff --git a/scripts/test/test_compatibility_windows.ps1 b/scripts/test/test_compatibility_windows.ps1 new file mode 100644 index 000000000..b40004e51 --- /dev/null +++ b/scripts/test/test_compatibility_windows.ps1 @@ -0,0 +1,38 @@ +param( + [Parameter(Mandatory=$true)] + [string]$PythonVersion, + + [Parameter(Mandatory=$true)] + [string]$OSName +) + +$ScriptDir = Split-Path -Parent $MyInvocation.MyCommand.Path + +Write-Host "=== Testing aaz-dev-tools compatibility with Python $PythonVersion on $OSName ===" + +# Create virtual environment +python -m venv test_env +test_env\Scripts\Activate.ps1 + +# Upgrade pip and install build tools +python -m pip install --upgrade pip setuptools wheel + +# Install built azdev wheel +$WHEEL_FILE = Get-ChildItem -Path "dist\" -Name "azdev-*.whl" | Select-Object -First 1 +if (-not $WHEEL_FILE) { + Write-Host "Error: No azdev wheel found" + exit 1 +} +$WHEEL_PATH = "dist\$WHEEL_FILE" +Write-Host "Installing azdev wheel: $WHEEL_PATH" +python -m pip install $WHEEL_PATH + +# Install aaz-dev-tools requirements from shared file +Write-Host "Installing aaz-dev-tools dependencies..." +python -m pip install --only-binary=:all: -r "$ScriptDir\requirements.txt" + +# Test azdev can be imported and basic functionality works +Write-Host "Testing azdev import and basic functionality..." +python "$ScriptDir\test_imports.py" + +Write-Host "=== aaz-dev-tools compatibility test PASSED for Python $PythonVersion on $OSName ===" diff --git a/setup.py b/setup.py index de7067d0c..d304aade2 100644 --- a/setup.py +++ b/setup.py @@ -44,7 +44,10 @@ 'Programming Language :: Python :: 3.7', 'Programming Language :: Python :: 3.8', 'Programming Language :: Python :: 3.9', - 'Programming Language :: Python :: 3.10' + 'Programming Language :: Python :: 3.10', + 'Programming Language :: Python :: 3.11', + 'Programming Language :: Python :: 3.12', + 'Programming Language :: Python :: 3.13' ], keywords='azure', python_requires='>=3.6', @@ -79,15 +82,15 @@ 'pytest>=5.0.0', 'pyyaml', 'requests', - 'sphinx==1.6.7', + 'sphinx>=4.0.0', 'tox', 'jsbeautifier~=1.14.7', 'deepdiff~=6.3.0', 'azure-cli-diff-tool~=0.1.0', 'packaging', 'tqdm', - 'wheel==0.30.0', - 'setuptools==70.0.0', + 'wheel>=0.30.0', + 'setuptools>=70.0.0', 'microsoft-security-utilities-secret-masker~=1.0.0b4' ], package_data={ diff --git a/tox.ini b/tox.ini index d9f5beb32..09f83d14a 100644 --- a/tox.ini +++ b/tox.ini @@ -5,6 +5,9 @@ envlist = py38 py39 py310 + py311 + py312 + py313 [testenv] whitelist_externals = From 3c11bd74a86e91f6e2f6ed4183ac6d1da73fa58e Mon Sep 17 00:00:00 2001 From: Ren Silva Date: Fri, 8 Aug 2025 03:48:48 +0000 Subject: [PATCH 02/12] Fix GitHub Actions workflow path and add missing test_imports.py - Update workflow to use scripts/test/ instead of scripts/tests/ - Add missing test_imports.py for shared testing logic --- .github/workflows/python_compatibility.yml | 4 ++-- scripts/test/test_imports.py | 0 2 files changed, 2 insertions(+), 2 deletions(-) create mode 100644 scripts/test/test_imports.py diff --git a/.github/workflows/python_compatibility.yml b/.github/workflows/python_compatibility.yml index 0a1d8fb4f..1c5d96b93 100644 --- a/.github/workflows/python_compatibility.yml +++ b/.github/workflows/python_compatibility.yml @@ -86,13 +86,13 @@ jobs: - name: Test aaz-dev-tools compatibility - Unix/Linux/macOS if: runner.os != 'Windows' run: | - ./scripts/tests/test_compatibility_unix.sh "${{ matrix.python }}" "${{ matrix.os }}" + ./scripts/test/test_compatibility_unix.sh "${{ matrix.python }}" "${{ matrix.os }}" shell: bash - name: Test aaz-dev-tools compatibility - Windows if: runner.os == 'Windows' run: | - .\scripts\tests\test_compatibility_windows.ps1 -PythonVersion "${{ matrix.python }}" -OSName "${{ matrix.os }}" + .\scripts\test\test_compatibility_windows.ps1 -PythonVersion "${{ matrix.python }}" -OSName "${{ matrix.os }}" shell: pwsh - name: Cleanup test environment - Unix/Linux/macOS diff --git a/scripts/test/test_imports.py b/scripts/test/test_imports.py new file mode 100644 index 000000000..e69de29bb From a52f24e764002047032af18e2e0183ac3ca700d8 Mon Sep 17 00:00:00 2001 From: Ren Silva Date: Fri, 8 Aug 2025 03:50:29 +0000 Subject: [PATCH 03/12] removed test_imports.py --- scripts/test/test_imports.py | 0 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 scripts/test/test_imports.py diff --git a/scripts/test/test_imports.py b/scripts/test/test_imports.py deleted file mode 100644 index e69de29bb..000000000 From 5c8025fb9c32f205a434fbbc2245cd8f18c03df3 Mon Sep 17 00:00:00 2001 From: Ren Silva Date: Fri, 8 Aug 2025 03:54:31 +0000 Subject: [PATCH 04/12] simplified workflow triggering --- .github/workflows/python_compatibility.yml | 2 -- 1 file changed, 2 deletions(-) diff --git a/.github/workflows/python_compatibility.yml b/.github/workflows/python_compatibility.yml index 1c5d96b93..4199eb23c 100644 --- a/.github/workflows/python_compatibility.yml +++ b/.github/workflows/python_compatibility.yml @@ -17,8 +17,6 @@ concurrency: on: workflow_dispatch: push: - branches: - - '*' pull_request: env: From 918e811206546f3e4a952dafef0054c4a8abee59 Mon Sep 17 00:00:00 2001 From: Ren Silva Date: Fri, 8 Aug 2025 03:59:50 +0000 Subject: [PATCH 05/12] recreated test_imports.py --- .github/workflows/python_compatibility.yml | 2 +- scripts/test/test_imports.py | 22 ++++++++++++++++++++++ 2 files changed, 23 insertions(+), 1 deletion(-) create mode 100644 scripts/test/test_imports.py diff --git a/.github/workflows/python_compatibility.yml b/.github/workflows/python_compatibility.yml index 4199eb23c..d43d39f88 100644 --- a/.github/workflows/python_compatibility.yml +++ b/.github/workflows/python_compatibility.yml @@ -65,7 +65,7 @@ jobs: fail-fast: false matrix: os: [ubuntu-latest, macos-latest, windows-latest] - python: ['3.11', '3.12', '3.13'] + python: ['3.9', '3.10', '3.11', '3.12', '3.13'] steps: - uses: actions/checkout@v4 diff --git a/scripts/test/test_imports.py b/scripts/test/test_imports.py new file mode 100644 index 000000000..2a96cff1d --- /dev/null +++ b/scripts/test/test_imports.py @@ -0,0 +1,22 @@ +""" +Test script for verifying aaz-dev-tools compatibility +""" +import azdev +print(f"azdev version: {azdev.__VERSION__}") +print("azdev imported successfully") + +# Test core modules can be loaded +import azdev.utilities +import azdev.operations +print("Core azdev modules loaded successfully") + +# Test that dependencies are compatible +import schematics +import yaml +import flask +import jinja2 +import jsonschema +import packaging +print("All aaz-dev-tools dependencies imported successfully") + +print("=== SUCCESS: No dependency conflicts detected ===") From 476bfdf133918d566149bed7c66475e6f2a37851 Mon Sep 17 00:00:00 2001 From: Ren Silva Date: Wed, 13 Aug 2025 01:28:09 +0000 Subject: [PATCH 06/12] removed github action tests - will run it offiline --- .github/workflows/python_compatibility.yml | 104 -------------------- scripts/test/requirements.txt | 17 ---- scripts/test/test_compatibility_unix.sh | 34 ------- scripts/test/test_compatibility_windows.ps1 | 38 ------- scripts/test/test_imports.py | 22 ----- 5 files changed, 215 deletions(-) delete mode 100644 .github/workflows/python_compatibility.yml delete mode 100644 scripts/test/requirements.txt delete mode 100755 scripts/test/test_compatibility_unix.sh delete mode 100644 scripts/test/test_compatibility_windows.ps1 delete mode 100644 scripts/test/test_imports.py diff --git a/.github/workflows/python_compatibility.yml b/.github/workflows/python_compatibility.yml deleted file mode 100644 index d43d39f88..000000000 --- a/.github/workflows/python_compatibility.yml +++ /dev/null @@ -1,104 +0,0 @@ -# Python Compatibility Testing Workflow -# -# Tests azdev package build and aaz-dev-tools compatibility across: -# - Operating Systems: Ubuntu, macOS, Windows -# - Python Versions: 3.11, 3.12, 3.13 -# -# Validates that the package can be built and installed correctly -# and is compatible with aaz-dev-tools dependencies on all supported -# platforms and Python versions. - -name: Python Compatibility Check - -concurrency: - group: ${{ github.workflow }}-${{ github.ref }} - cancel-in-progress: true - -on: - workflow_dispatch: - push: - pull_request: - -env: - # Change this to invalidate existing cache. - CACHE_PREFIX: v0 - PYTHON_PATH: ./ - -permissions: - contents: read - -jobs: - build: - name: Build Python Wheel - runs-on: ubuntu-latest - timeout-minutes: 15 - steps: - - uses: actions/checkout@v4 - - - name: Setup Python 3.12 - uses: actions/setup-python@v4 - with: - python-version: '3.12' - - - name: Install prerequisites - run: | - python -m pip install --upgrade pip setuptools wheel - - - name: Build wheel - run: | - python setup.py check - python setup.py bdist_wheel sdist - - - name: Upload wheel artifacts - uses: actions/upload-artifact@v4 - with: - name: python-wheel - path: dist/ - retention-days: 1 - - compatibility-test: - name: Python ${{ matrix.python }} - ${{ matrix.os }} - aaz-dev-tools compatibility - runs-on: ${{ matrix.os }} - needs: build - timeout-minutes: 30 - strategy: - fail-fast: false - matrix: - os: [ubuntu-latest, macos-latest, windows-latest] - python: ['3.9', '3.10', '3.11', '3.12', '3.13'] - - steps: - - uses: actions/checkout@v4 - - - name: Setup Python ${{ matrix.python }} - uses: actions/setup-python@v4 - with: - python-version: ${{ matrix.python }} - - - name: Download wheel artifacts - uses: actions/download-artifact@v4 - with: - name: python-wheel - path: dist/ - - - name: Test aaz-dev-tools compatibility - Unix/Linux/macOS - if: runner.os != 'Windows' - run: | - ./scripts/test/test_compatibility_unix.sh "${{ matrix.python }}" "${{ matrix.os }}" - shell: bash - - - name: Test aaz-dev-tools compatibility - Windows - if: runner.os == 'Windows' - run: | - .\scripts\test\test_compatibility_windows.ps1 -PythonVersion "${{ matrix.python }}" -OSName "${{ matrix.os }}" - shell: pwsh - - - name: Cleanup test environment - Unix/Linux/macOS - if: always() && runner.os != 'Windows' - run: rm -rf test_env || true - shell: bash - - - name: Cleanup test environment - Windows - if: always() && runner.os == 'Windows' - run: if (Test-Path "test_env") { Remove-Item -Recurse -Force test_env } - shell: pwsh diff --git a/scripts/test/requirements.txt b/scripts/test/requirements.txt deleted file mode 100644 index 737dc984b..000000000 --- a/scripts/test/requirements.txt +++ /dev/null @@ -1,17 +0,0 @@ -schematics~=2.1.1 -pyyaml~=6.0.2 -fuzzywuzzy~=0.18.0 -pluralizer~=1.2.0 -lxml>=5.0.0 -flask~=3.0.3 -cachelib~=0.13.0 -xmltodict~=0.13.0 -packaging>=21.3 -Jinja2~=3.1.4 -MarkupSafe>=2.1.5 -jsonschema~=4.23.0 -click~=8.1.2 -setuptools>=70.0.0 -python-Levenshtein -azure-mgmt-core -wrapt>=1.11 diff --git a/scripts/test/test_compatibility_unix.sh b/scripts/test/test_compatibility_unix.sh deleted file mode 100755 index d2cf07ac3..000000000 --- a/scripts/test/test_compatibility_unix.sh +++ /dev/null @@ -1,34 +0,0 @@ -#!/bin/bash -set -e - -PYTHON_VERSION="$1" -OS_NAME="$2" -SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" - -echo "=== Testing aaz-dev-tools compatibility with Python ${PYTHON_VERSION} on ${OS_NAME} ===" - -# Create virtual environment -python -m venv test_env -source test_env/bin/activate - -# Upgrade pip and install build tools -python -m pip install --upgrade pip setuptools wheel - -# Install built azdev wheel -WHEEL_FILE=$(find dist/ -name "azdev-*.whl" | head -n1) -if [ -z "$WHEEL_FILE" ]; then - echo "Error: No azdev wheel found" - exit 1 -fi -echo "Installing azdev wheel: $WHEEL_FILE" -python -m pip install "$WHEEL_FILE" - -# Install aaz-dev-tools requirements from shared file -echo "Installing aaz-dev-tools dependencies..." -python -m pip install --only-binary=:all: -r "${SCRIPT_DIR}/requirements.txt" - -# Test azdev can be imported and basic functionality works -echo "Testing azdev import and basic functionality..." -python "${SCRIPT_DIR}/test_imports.py" - -echo "=== aaz-dev-tools compatibility test PASSED for Python ${PYTHON_VERSION} on ${OS_NAME} ===" diff --git a/scripts/test/test_compatibility_windows.ps1 b/scripts/test/test_compatibility_windows.ps1 deleted file mode 100644 index b40004e51..000000000 --- a/scripts/test/test_compatibility_windows.ps1 +++ /dev/null @@ -1,38 +0,0 @@ -param( - [Parameter(Mandatory=$true)] - [string]$PythonVersion, - - [Parameter(Mandatory=$true)] - [string]$OSName -) - -$ScriptDir = Split-Path -Parent $MyInvocation.MyCommand.Path - -Write-Host "=== Testing aaz-dev-tools compatibility with Python $PythonVersion on $OSName ===" - -# Create virtual environment -python -m venv test_env -test_env\Scripts\Activate.ps1 - -# Upgrade pip and install build tools -python -m pip install --upgrade pip setuptools wheel - -# Install built azdev wheel -$WHEEL_FILE = Get-ChildItem -Path "dist\" -Name "azdev-*.whl" | Select-Object -First 1 -if (-not $WHEEL_FILE) { - Write-Host "Error: No azdev wheel found" - exit 1 -} -$WHEEL_PATH = "dist\$WHEEL_FILE" -Write-Host "Installing azdev wheel: $WHEEL_PATH" -python -m pip install $WHEEL_PATH - -# Install aaz-dev-tools requirements from shared file -Write-Host "Installing aaz-dev-tools dependencies..." -python -m pip install --only-binary=:all: -r "$ScriptDir\requirements.txt" - -# Test azdev can be imported and basic functionality works -Write-Host "Testing azdev import and basic functionality..." -python "$ScriptDir\test_imports.py" - -Write-Host "=== aaz-dev-tools compatibility test PASSED for Python $PythonVersion on $OSName ===" diff --git a/scripts/test/test_imports.py b/scripts/test/test_imports.py deleted file mode 100644 index 2a96cff1d..000000000 --- a/scripts/test/test_imports.py +++ /dev/null @@ -1,22 +0,0 @@ -""" -Test script for verifying aaz-dev-tools compatibility -""" -import azdev -print(f"azdev version: {azdev.__VERSION__}") -print("azdev imported successfully") - -# Test core modules can be loaded -import azdev.utilities -import azdev.operations -print("Core azdev modules loaded successfully") - -# Test that dependencies are compatible -import schematics -import yaml -import flask -import jinja2 -import jsonschema -import packaging -print("All aaz-dev-tools dependencies imported successfully") - -print("=== SUCCESS: No dependency conflicts detected ===") From 81f2cd3b99df4ecfb76178d70a651afb4045eb50 Mon Sep 17 00:00:00 2001 From: Ren Silva Date: Wed, 13 Aug 2025 02:02:23 +0000 Subject: [PATCH 07/12] reverting setup.py to understand why tox fails --- setup.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/setup.py b/setup.py index d304aade2..d39c06fc4 100644 --- a/setup.py +++ b/setup.py @@ -82,15 +82,15 @@ 'pytest>=5.0.0', 'pyyaml', 'requests', - 'sphinx>=4.0.0', + 'sphinx==1.6.7', 'tox', 'jsbeautifier~=1.14.7', 'deepdiff~=6.3.0', 'azure-cli-diff-tool~=0.1.0', 'packaging', 'tqdm', - 'wheel>=0.30.0', - 'setuptools>=70.0.0', + 'wheel==0.30.0', + 'setuptools==70.0.0', 'microsoft-security-utilities-secret-masker~=1.0.0b4' ], package_data={ From d2a825cbc46d79b9b653e1c0ed0503333d620da0 Mon Sep 17 00:00:00 2001 From: Ren Silva Date: Wed, 13 Aug 2025 08:11:02 +0000 Subject: [PATCH 08/12] updated history --- HISTORY.rst | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/HISTORY.rst b/HISTORY.rst index 24ae22c8c..8532e784f 100644 --- a/HISTORY.rst +++ b/HISTORY.rst @@ -5,11 +5,8 @@ Release History 0.2.5 ++++++ * Add support for Python 3.11, 3.12, and 3.13 -* Update dependency versions for better compatibility: - - sphinx: updated from ==1.6.7 to >=4.0.0 - - wheel: updated from ==0.30.0 to >=0.30.0 - - setuptools: updated from ==70.0.0 to >=70.0.0 -* Add aaz-dev-tools compatibility testing pipeline +* Tested compatibility (externally via GitHub Actions https://github.com/RenSilvaAU/compat-test-azdev/actions/workflows/cross-python-build-and-test.yml +and https://github.com/RenSilvaAU/compat-test-azdev/actions/workflows/same-python-build-and-test.yml) 0.2.4 ++++++ From 269f85379dd22c9a63ce996ec3ba4ea3ae61bc1d Mon Sep 17 00:00:00 2001 From: Ren Silva Date: Wed, 13 Aug 2025 08:17:42 +0000 Subject: [PATCH 09/12] simplified history --- HISTORY.rst | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/HISTORY.rst b/HISTORY.rst index 8532e784f..6fa923964 100644 --- a/HISTORY.rst +++ b/HISTORY.rst @@ -5,8 +5,7 @@ Release History 0.2.5 ++++++ * Add support for Python 3.11, 3.12, and 3.13 -* Tested compatibility (externally via GitHub Actions https://github.com/RenSilvaAU/compat-test-azdev/actions/workflows/cross-python-build-and-test.yml -and https://github.com/RenSilvaAU/compat-test-azdev/actions/workflows/same-python-build-and-test.yml) +* Tested compatibility (externally via External GitHub Actions) 0.2.4 ++++++ From f978ccff5b8ae807477344fde283260b9f6d97a7 Mon Sep 17 00:00:00 2001 From: Ren Silva Date: Wed, 13 Aug 2025 08:52:13 +0000 Subject: [PATCH 10/12] removed py 3.6 ~ 3.8 from setup.py --- setup.py | 3 --- 1 file changed, 3 deletions(-) diff --git a/setup.py b/setup.py index d39c06fc4..e774c98aa 100644 --- a/setup.py +++ b/setup.py @@ -40,9 +40,6 @@ 'Environment :: Console', 'License :: OSI Approved :: MIT License', 'Natural Language :: English', - 'Programming Language :: Python :: 3.6', - 'Programming Language :: Python :: 3.7', - 'Programming Language :: Python :: 3.8', 'Programming Language :: Python :: 3.9', 'Programming Language :: Python :: 3.10', 'Programming Language :: Python :: 3.11', From c6466695e87835f68879eece5b2dc775bcdc47a8 Mon Sep 17 00:00:00 2001 From: Ren Silva Date: Wed, 13 Aug 2025 08:53:47 +0000 Subject: [PATCH 11/12] bumped min python to 3.9 --- setup.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/setup.py b/setup.py index e774c98aa..1f8dd146f 100644 --- a/setup.py +++ b/setup.py @@ -47,7 +47,7 @@ 'Programming Language :: Python :: 3.13' ], keywords='azure', - python_requires='>=3.6', + python_requires='>=3.9', packages=[ 'azdev', 'azdev.config', From 2fc62f1bdba705fae6ce4d17da4738939dcde6ec Mon Sep 17 00:00:00 2001 From: Ren Silva Date: Wed, 13 Aug 2025 08:54:46 +0000 Subject: [PATCH 12/12] removed py 3.6 ~ 3.8 from tox --- tox.ini | 3 --- 1 file changed, 3 deletions(-) diff --git a/tox.ini b/tox.ini index 09f83d14a..360f45d07 100644 --- a/tox.ini +++ b/tox.ini @@ -1,8 +1,5 @@ [tox] envlist = - py36 - py37 - py38 py39 py310 py311