Skip to content

Remove tox infrastructure and rename legacy tox references#46579

Merged
scbedd merged 9 commits intoAzure:mainfrom
JennyPng:final-remove-tox
May 8, 2026
Merged

Remove tox infrastructure and rename legacy tox references#46579
scbedd merged 9 commits intoAzure:mainfrom
JennyPng:final-remove-tox

Conversation

@JennyPng
Copy link
Copy Markdown
Member

Summary

Removes all tox infrastructure and renames legacy tox references throughout the repo, completing the migration to azpysdk.

Changes

Deleted:

  • Entire eng/tox/ directory (25 files, ~2800 lines) including tox.ini, toxfile.py, and all legacy check scripts

Relocated:

  • eng/tox/run_coverage.pyeng/scripts/run_coverage.py (still actively used by azpysdk)
  • eng/tox/verify_installed_packages.pyeng/scripts/verify_installed_packages.py (still actively used by azpysdk)

Renamed variables:

  • ToxEnvParallel pipeline parameter → removed (was unused)
  • UnsupportedToxEnvironmentsUnsupportedChecks in pipeline YAML and platform-matrix JSON files
  • TOX_PIP_IMPLAZPYSDK_PIP_IMPL in pipeline YAML and GitHub Actions (Python code falls back to TOX_PIP_IMPL for backward compatibility)

Updated comments/docstrings across ~15 files to remove tox references

Preserved .tox path exclusions in pytest/lint configs (users may have old local .tox directories)

- Delete entire eng/tox/ directory (tox.ini, toxfile.py, and all legacy
  check scripts that were only invoked via tox environments)
- Relocate actively-used scripts (run_coverage.py, verify_installed_packages.py)
  to eng/scripts/ and update references in azpysdk
- Remove unused ToxEnvParallel pipeline parameter from all YAML templates
- Rename UnsupportedToxEnvironments to UnsupportedChecks in pipeline YAML
  and platform-matrix JSON files
- Rename TOX_PIP_IMPL to AZPYSDK_PIP_IMPL in pipeline YAML and GitHub
  Actions, with backward-compatible fallback to TOX_PIP_IMPL in Python code
- Update comments and docstrings referencing tox across the codebase
- Keep .tox path exclusions in pytest/lint configs (users may have old dirs)

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@github-actions github-actions Bot added Azure.Identity Evaluation Issues related to the client library for Azure AI Evaluation labels Apr 28, 2026
JennyPng and others added 4 commits April 28, 2026 13:14
…x script

The get_build_info function was referencing eng/tox/run_pylint.py which
no longer exists. Updated to parse the dispatch_checks.py grouped log
format (##[group] markers) from the 'Run Tests' CI task instead of the
old tox 'Run Pylint Next' task.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
The weekly analysis pipeline (python-analyze-weekly.yml) uses
'Run Pylint Next' as the task displayName, not 'Run Tests'.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@JennyPng JennyPng marked this pull request as ready for review May 6, 2026 21:57
Copilot AI review requested due to automatic review settings May 6, 2026 21:57
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

This PR completes the repo-wide migration from tox-based CI orchestration to azpysdk by removing the legacy eng/tox/ infrastructure, relocating the few still-used helper scripts, and renaming remaining “tox” references (variables, comments, and docs) to “checks” / azpysdk.

Changes:

  • Removed the entire eng/tox/ directory (tox config/plugin and legacy check runner scripts).
  • Renamed pipeline/platform-matrix skip metadata from UnsupportedToxEnvironments to UnsupportedChecks and updated pipeline templates accordingly.
  • Switched pip-backend environment variable naming from TOX_PIP_IMPL to AZPYSDK_PIP_IMPL (with Python-side fallback to the legacy name) and relocated coverage / installed-package verification helpers into eng/scripts/.

Reviewed changes

Copilot reviewed 44 out of 46 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
sdk/identity/platform-matrix.json Renames skip metadata key to UnsupportedChecks.
sdk/evaluation/platform-matrix.json Renames skip metadata key to UnsupportedChecks.
scripts/devops_tasks/verify_autorest.py Updates comment to remove tox-related wording.
scripts/devops_tasks/create_coverage.py Renames collect_tox_coverage_files() to collect_coverage_files() and updates logging/call site.
eng/tox/verify_whl.py Deleted legacy tox wheel verification script.
eng/tox/verify_sdist.py Deleted legacy tox sdist verification script.
eng/tox/try_import.py Deleted legacy tox “try import” helper.
eng/tox/toxfile.py Deleted tox plugin file.
eng/tox/tox.ini Deleted tox configuration.
eng/tox/tox_helper_tasks.py Deleted tox helper utilities.
eng/tox/sanitize_setup.py Deleted legacy tox setup sanitizer.
eng/tox/run_verifytypes.py Deleted legacy tox verifytypes runner.
eng/tox/run_sphinx_build.py Deleted legacy tox sphinx build runner.
eng/tox/run_sphinx_apidoc.py Deleted legacy tox sphinx apidoc runner.
eng/tox/run_pyright.py Deleted legacy tox pyright runner.
eng/tox/run_pylint.py Deleted legacy tox pylint runner.
eng/tox/run_optional.py Deleted legacy tox optional-check runner.
eng/tox/run_mypy.py Deleted legacy tox mypy runner.
eng/tox/run_black.py Deleted legacy tox black runner.
eng/tox/run_bandit.py Deleted legacy tox bandit runner.
eng/tox/run_apistubgen.py Deleted legacy tox apistub generator runner.
eng/tox/prep_sphinx_env.py Deleted legacy tox sphinx prep script.
eng/tox/install_dev_build_dependency.py Deleted legacy tox dev-feed dependency installer.
eng/tox/install_depend_packages.py Deleted legacy tox dependency-resolution entrypoint.
eng/tox/import_all.py Deleted legacy tox import-all runner.
eng/tox/create_package_and_install.py Deleted legacy tox package build/install entrypoint.
eng/tox/create_dependencies_and_install.py Deleted legacy tox dependency build/install entrypoint.
eng/tools/azure-sdk-tools/gh_tools/update_issue.py Updates issue updater to parse next-pylint output from grouped CI logs; adjusts docstrings.
eng/tools/azure-sdk-tools/devtools_testutils/proxy_startup.py Rewords comment to “check parallelization” (tox → checks).
eng/tools/azure-sdk-tools/ci_tools/venv.py Implements AZPYSDK_PIP_IMPL selection with fallback to TOX_PIP_IMPL.
eng/tools/azure-sdk-tools/ci_tools/scenario/generation.py Updates doc wording from tox runs to checks.
eng/tools/azure-sdk-tools/ci_tools/scenario/dependency_resolution.py Updates module docstring to remove legacy tox entrypoint wording.
eng/tools/azure-sdk-tools/ci_tools/functions.py Updates doc wording and reference comment to match current check runner architecture.
eng/tools/azure-sdk-tools/azpysdk/proxy_ports.py Updates module docs to remove tox.ini mirroring language and align with check naming.
eng/tools/azure-sdk-tools/azpysdk/main.py Defaults AZPYSDK_PIP_IMPL to uv when available; updates error text and env lookups.
eng/tools/azure-sdk-tools/azpysdk/install_and_test.py Updates coverage and comments to use relocated eng/scripts/run_coverage.py.
eng/tools/azure-sdk-tools/azpysdk/dependency_check.py Updates to use relocated eng/scripts/verify_installed_packages.py.
eng/scripts/verify_installed_packages.py New location for installed package version verifier; adds PEP 503 name normalization.
eng/scripts/run_coverage.py New location for coverage enforcement/metric emission helper.
eng/scripts/Language-Settings.ps1 Updates TODO comment to remove tox reference.
eng/pipelines/templates/steps/build-test.yml Removes unused ToxEnvParallel, renames unsupported list var, switches env var to AZPYSDK_PIP_IMPL.
eng/pipelines/templates/stages/archetype-sdk-client.yml Removes ToxEnvParallel parameter passthrough.
eng/pipelines/templates/jobs/ci.yml Removes ToxEnvParallel, renames UnsupportedToxEnvironments to UnsupportedChecks.
eng/pipelines/templates/jobs/ci.tests.yml Removes ToxEnvParallel, renames UnsupportedToxEnvironments to UnsupportedChecks.
conda/conda_helper_functions.py Updates comment to remove .tox mention.
.github/workflows/azure-sdk-tools.yml Updates workflow env var to AZPYSDK_PIP_IMPL.

Comment thread eng/tools/azure-sdk-tools/gh_tools/update_issue.py
Comment thread scripts/devops_tasks/verify_autorest.py
Copy link
Copy Markdown
Member

@scbedd scbedd left a comment

Choose a reason for hiding this comment

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

Lets double check the artifacts at the end. Nothing is jumping out at me here though.

  1. Verify that test results still publish
  2. Verify that coverage results still publish

@JennyPng
Copy link
Copy Markdown
Member Author

JennyPng commented May 8, 2026

@scbedd ran core and storage and I think it looks as expected

@scbedd scbedd merged commit bd930bc into Azure:main May 8, 2026
33 checks passed
@github-project-automation github-project-automation Bot moved this from Untriaged to Done in Azure Identity SDK Improvements May 8, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Azure.Identity Evaluation Issues related to the client library for Azure AI Evaluation

Projects

Development

Successfully merging this pull request may close these issues.

3 participants