-
Notifications
You must be signed in to change notification settings - Fork 3.3k
{Core} Revert #32518 using threads to build command table for performance #32695
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: dev
Are you sure you want to change the base?
{Core} Revert #32518 using threads to build command table for performance #32695
Conversation
…zure#32518)" This reverts commit 6a70dae.
️✔️AzureCLI-FullTest
|
|
Hi @DanielMicrosoft, |
️✔️AzureCLI-BreakingChangeTest
|
|
Thank you for your contribution! We will review the pull request and get back to you soon. |
|
The git hooks are available for azure-cli and azure-cli-extensions repos. They could help you run required checks before creating the PR. Please sync the latest code with latest dev branch (for azure-cli) or main branch (for azure-cli-extensions). pip install azdev --upgrade
azdev setup -c <your azure-cli repo path> -r <your azure-cli-extensions repo path>
|
There was a problem hiding this 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 reverts commit 6a70dae (PR #32518), which had introduced threading to the command table building process for performance improvements. The revert removes the concurrent module loading implementation and restores sequential, synchronous loading of command modules and extensions.
Changes:
- Removed threading-based parallel module loading infrastructure and restored sequential loading
- Removed
ModuleLoadResultclass and associated helper methods for parallel processing - Deleted the
test_command_table_integrity.pytest file that was specific to threading implementation - Updated test assertions to check for deterministic ordering instead of unordered sets
Reviewed changes
Copilot reviewed 5 out of 5 changed files in this pull request and generated 2 comments.
Show a summary per file
| File | Description |
|---|---|
src/azure-cli-core/azure/cli/core/__init__.py |
Removed threading imports, constants, and methods; restored sequential module loading in _update_command_table_from_modules |
src/azure-cli-core/azure/cli/core/commands/__init__.py |
Modified _load_command_loader to populate cmd_to_loader_map and changed return signature |
src/azure-cli-core/azure/cli/core/tests/test_parser.py |
Updated mock function return signature to match reverted implementation |
src/azure-cli-core/azure/cli/core/tests/test_command_registration.py |
Updated mock function and changed assertions from unordered set to ordered list comparison |
src/azure-cli-core/azure/cli/core/tests/test_command_table_integrity.py |
Deleted entire file as it was specific to threading implementation testing |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
|
/azp run |
|
Azure Pipelines successfully started running 3 pipeline(s). |
This reverts commit 6a70dae, after this issue was found: #32518 (comment)
Related command
Description
Testing Guide
History Notes
[Component Name 1] BREAKING CHANGE:
az command a: Make some customer-facing breaking change[Component Name 2]
az command b: Add some customer-facing featureThis checklist is used to make sure that common guidelines for a pull request are followed.
The PR title and description has followed the guideline in Submitting Pull Requests.
I adhere to the Command Guidelines.
I adhere to the Error Handling Guidelines.