Skip to content

Conversation

@ketkimnaik
Copy link
Contributor

Notes for this release can be found here:
https://github.com/Azure/azure-iot-cli-extension/releases/tag/v0.28.0


This checklist is used to make sure that common guidelines for a pull request are followed.

Related command

General Guidelines

  • Have you run azdev style <YOUR_EXT> locally? (pip install azdev required)
  • Have you run python scripts/ci/test_index.py -q locally? (pip install wheel==0.30.0 required)
  • My extension version conforms to the Extension version schema

For new extensions:

About Extension Publish

There is a pipeline to automatically build, upload and publish extension wheels.
Once your pull request is merged into main branch, a new pull request will be created to update src/index.json automatically.
You only need to update the version information in file setup.py and historical information in file HISTORY.rst in your PR but do not modify src/index.json.

Copilot AI review requested due to automatic review settings January 23, 2026 18:15
@azure-client-tools-bot-prd
Copy link

azure-client-tools-bot-prd bot commented Jan 23, 2026

️✔️Azure CLI Extensions Breaking Change Test
️✔️Non Breaking Changes

@azure-client-tools-bot-prd
Copy link

Hi @ketkimnaik,
Please write the description of changes which can be perceived by customers into HISTORY.rst.
If you want to release a new extension version, please update the version in setup.py as well.

@yonzhan
Copy link
Collaborator

yonzhan commented Jan 23, 2026

Thank you for your contribution! We will review the pull request and get back to you soon.

@github-actions
Copy link

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).
After that please run the following commands to enable git hooks:

pip install azdev --upgrade
azdev setup -c <your azure-cli repo path> -r <your azure-cli-extensions repo path>

@github-actions
Copy link

Copy link
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 adds version 0.28.0 of the Azure IoT CLI extension to the extension index. The release includes updates to Python version support (adding Python 3.13), a new minimum CLI core version requirement (2.67.0), and the addition of the azure-eventhub dependency.

Changes:

  • Adds azure-iot extension version 0.28.0 with updated Python support and dependencies
  • Introduces "azext.isPreview": false field for stable release metadata
  • Updates minimum Azure CLI core version to 2.67.0

Comment on lines +33260 to +33293
"run_requires": [
{
"requires": [
"azure-core (<2.0.0,>=1.24.0)",
"azure-core<2.0.0,>=1.24.0",
"azure-eventhub (~=5.15.0)",
"azure-eventhub~=5.15.0",
"azure-identity (<1.18.0,>=1.6.1)",
"azure-identity<1.18.0,>=1.6.1",
"azure-iot-device (~=2.11)",
"azure-iot-device~=2.11",
"azure-mgmt-core (<2.0.0,>=1.3.0)",
"azure-mgmt-core<2.0.0,>=1.3.0",
"azure-storage-blob (<13.0.0,>=12.14.0)",
"azure-storage-blob<13.0.0,>=12.14.0",
"jsonschema (~=3.2.0)",
"jsonschema~=3.2.0",
"msrest (>=0.6.21)",
"msrest>=0.6.21",
"msrestazure (<2.0.0,>=0.6.3)",
"msrestazure<2.0.0,>=0.6.3",
"packaging (>=23.2)",
"packaging>=23.2",
"tomli (~=2.0)",
"tomli-w (~=1.0)",
"tomli-w~=1.0",
"tomli~=2.0",
"tqdm (~=4.62)",
"tqdm~=4.62",
"treelib (~=1.6)",
"treelib~=1.6"
]
}
],
Copy link

Copilot AI Jan 23, 2026

Choose a reason for hiding this comment

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

The run_requires array is missing additional entries for the uamqp extra. Comparing with other versions (v0.26.0 at lines 33007-33018, v0.27.0 at lines 33101-33112, and v0.30.0b1 at lines 33198-33209), the run_requires should include three objects: the base requires, an entry with "extra": "uamqp", and an entry with "environment": "extra == "uamqp"". This version only has one object with the base requires, which is incomplete.

Copilot uses AI. Check for mistakes.
Comment on lines +33253 to +33293
"extras": [],
"generator": "bdist_wheel (0.30.0)",
"license": "MIT",
"license_file": "LICENSE",
"metadata_version": "2.0",
"name": "azure-iot",
"requires_python": ">=3.9",
"run_requires": [
{
"requires": [
"azure-core (<2.0.0,>=1.24.0)",
"azure-core<2.0.0,>=1.24.0",
"azure-eventhub (~=5.15.0)",
"azure-eventhub~=5.15.0",
"azure-identity (<1.18.0,>=1.6.1)",
"azure-identity<1.18.0,>=1.6.1",
"azure-iot-device (~=2.11)",
"azure-iot-device~=2.11",
"azure-mgmt-core (<2.0.0,>=1.3.0)",
"azure-mgmt-core<2.0.0,>=1.3.0",
"azure-storage-blob (<13.0.0,>=12.14.0)",
"azure-storage-blob<13.0.0,>=12.14.0",
"jsonschema (~=3.2.0)",
"jsonschema~=3.2.0",
"msrest (>=0.6.21)",
"msrest>=0.6.21",
"msrestazure (<2.0.0,>=0.6.3)",
"msrestazure<2.0.0,>=0.6.3",
"packaging (>=23.2)",
"packaging>=23.2",
"tomli (~=2.0)",
"tomli-w (~=1.0)",
"tomli-w~=1.0",
"tomli~=2.0",
"tqdm (~=4.62)",
"tqdm~=4.62",
"treelib (~=1.6)",
"treelib~=1.6"
]
}
],
Copy link

Copilot AI Jan 23, 2026

Choose a reason for hiding this comment

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

The "extras" field is missing from the metadata. Looking at other versions of this extension (v0.26.0 at line 32967-32968, v0.27.0 at line 33061-33062, and v0.30.0b1 at line 33125-33126), they all include an "extras" field with the value ["uamqp"], and corresponding additional run_requires entries for the uamqp extra. This version should include the same structure to maintain consistency across versions.

Copilot uses AI. Check for mistakes.
Copy link
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

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

Comment on lines +33216 to 33298
{
"downloadUrl": "https://github.com/Azure/azure-iot-cli-extension/releases/download/v0.28.0/azure_iot-0.28.0-py3-none-any.whl",
"filename": "azure_iot-0.28.0-py3-none-any.whl",
"metadata": {
"azext.isPreview": false,
"azext.minCliCoreVersion": "2.67.0",
"classifiers": [
"Development Status :: 4 - Beta",
"Intended Audience :: Developers",
"Intended Audience :: System Administrators",
"Programming Language :: Python",
"Programming Language :: Python :: 3 :: Only",
"Programming Language :: Python :: 3",
"Programming Language :: Python :: 3.9",
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11",
"Programming Language :: Python :: 3.12",
"Programming Language :: Python :: 3.13",
"License :: OSI Approved :: MIT License"
],
"extensions": {
"python.details": {
"contacts": [
{
"email": "[email protected]",
"name": "Microsoft",
"role": "author"
}
],
"document_names": {
"description": "DESCRIPTION.rst"
},
"project_urls": {
"Home": "https://github.com/azure/azure-iot-cli-extension"
}
}
},
"extras": [],
"generator": "bdist_wheel (0.30.0)",
"license": "MIT",
"license_file": "LICENSE",
"metadata_version": "2.0",
"name": "azure-iot",
"requires_python": ">=3.9",
"run_requires": [
{
"requires": [
"azure-core (<2.0.0,>=1.24.0)",
"azure-core<2.0.0,>=1.24.0",
"azure-eventhub (~=5.15.0)",
"azure-eventhub~=5.15.0",
"azure-identity (<1.18.0,>=1.6.1)",
"azure-identity<1.18.0,>=1.6.1",
"azure-iot-device (~=2.11)",
"azure-iot-device~=2.11",
"azure-mgmt-core (<2.0.0,>=1.3.0)",
"azure-mgmt-core<2.0.0,>=1.3.0",
"azure-storage-blob (<13.0.0,>=12.14.0)",
"azure-storage-blob<13.0.0,>=12.14.0",
"jsonschema (~=3.2.0)",
"jsonschema~=3.2.0",
"msrest (>=0.6.21)",
"msrest>=0.6.21",
"msrestazure (<2.0.0,>=0.6.3)",
"msrestazure<2.0.0,>=0.6.3",
"packaging (>=23.2)",
"packaging>=23.2",
"tomli (~=2.0)",
"tomli-w (~=1.0)",
"tomli-w~=1.0",
"tomli~=2.0",
"tqdm (~=4.62)",
"tqdm~=4.62",
"treelib (~=1.6)",
"treelib~=1.6"
]
}
],
"summary": "The Azure IoT extension for Azure CLI.",
"version": "0.28.0"
},
"sha256Digest": "36c29d5ce8e43a1a41ea91e33718aa591077a09b85487c2bb824b0e6e54e29e5"
}
Copy link

Copilot AI Jan 26, 2026

Choose a reason for hiding this comment

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

The PR description states "You only need to update the version information in file setup.py and historical information in file HISTORY.rst in your PR but do not modify src/index.json" and also mentions "a new pull request will be created to update src/index.json automatically." However, this PR directly modifies src/index.json. This appears to be inconsistent with the stated process in the PR description.

Copilot uses AI. Check for mistakes.
Comment on lines +33216 to 33298
{
"downloadUrl": "https://github.com/Azure/azure-iot-cli-extension/releases/download/v0.28.0/azure_iot-0.28.0-py3-none-any.whl",
"filename": "azure_iot-0.28.0-py3-none-any.whl",
"metadata": {
"azext.isPreview": false,
"azext.minCliCoreVersion": "2.67.0",
"classifiers": [
"Development Status :: 4 - Beta",
"Intended Audience :: Developers",
"Intended Audience :: System Administrators",
"Programming Language :: Python",
"Programming Language :: Python :: 3 :: Only",
"Programming Language :: Python :: 3",
"Programming Language :: Python :: 3.9",
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11",
"Programming Language :: Python :: 3.12",
"Programming Language :: Python :: 3.13",
"License :: OSI Approved :: MIT License"
],
"extensions": {
"python.details": {
"contacts": [
{
"email": "[email protected]",
"name": "Microsoft",
"role": "author"
}
],
"document_names": {
"description": "DESCRIPTION.rst"
},
"project_urls": {
"Home": "https://github.com/azure/azure-iot-cli-extension"
}
}
},
"extras": [],
"generator": "bdist_wheel (0.30.0)",
"license": "MIT",
"license_file": "LICENSE",
"metadata_version": "2.0",
"name": "azure-iot",
"requires_python": ">=3.9",
"run_requires": [
{
"requires": [
"azure-core (<2.0.0,>=1.24.0)",
"azure-core<2.0.0,>=1.24.0",
"azure-eventhub (~=5.15.0)",
"azure-eventhub~=5.15.0",
"azure-identity (<1.18.0,>=1.6.1)",
"azure-identity<1.18.0,>=1.6.1",
"azure-iot-device (~=2.11)",
"azure-iot-device~=2.11",
"azure-mgmt-core (<2.0.0,>=1.3.0)",
"azure-mgmt-core<2.0.0,>=1.3.0",
"azure-storage-blob (<13.0.0,>=12.14.0)",
"azure-storage-blob<13.0.0,>=12.14.0",
"jsonschema (~=3.2.0)",
"jsonschema~=3.2.0",
"msrest (>=0.6.21)",
"msrest>=0.6.21",
"msrestazure (<2.0.0,>=0.6.3)",
"msrestazure<2.0.0,>=0.6.3",
"packaging (>=23.2)",
"packaging>=23.2",
"tomli (~=2.0)",
"tomli-w (~=1.0)",
"tomli-w~=1.0",
"tomli~=2.0",
"tqdm (~=4.62)",
"tqdm~=4.62",
"treelib (~=1.6)",
"treelib~=1.6"
]
}
],
"summary": "The Azure IoT extension for Azure CLI.",
"version": "0.28.0"
},
"sha256Digest": "36c29d5ce8e43a1a41ea91e33718aa591077a09b85487c2bb824b0e6e54e29e5"
}
Copy link

Copilot AI Jan 26, 2026

Choose a reason for hiding this comment

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

The version entries should be ordered chronologically, but v0.28.0 appears after v0.30.0b1. Version 0.28.0 is a stable release that should appear before the beta version 0.30.0b1 in the version history. The correct order should be: v0.27.0, v0.28.0, v0.30.0b1.

Copilot uses AI. Check for mistakes.
@necusjz necusjz merged commit 9a88e8d into Azure:main Jan 27, 2026
48 of 50 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Auto-Assign Auto assign by bot IoT/CLI

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants