Skip to content

[AutoPR azure-keyvault-certificates]-generated-from-SDK Generation - Python-6075667#45974

Open
azure-sdk wants to merge 4 commits intomainfrom
sdkauto/azure-keyvault-certificates-6075667
Open

[AutoPR azure-keyvault-certificates]-generated-from-SDK Generation - Python-6075667#45974
azure-sdk wants to merge 4 commits intomainfrom
sdkauto/azure-keyvault-certificates-6075667

Conversation

@azure-sdk
Copy link
Copy Markdown
Collaborator

Configurations: 'specification/keyvault/data-plane/Certificates/tspconfig.yaml', API Version: 2025-07-01, SDK Release Type: stable, and CommitSHA: '80cf521033f9499c3c86305d11c7de6451e796e5' in SpecRepo: 'https://github.com/Azure/azure-rest-api-specs' Pipeline run: https://dev.azure.com/azure-sdk/internal/_build/results?buildId=6075667 Refer to https://eng.ms/docs/products/azure-developer-experience/develop/sdk-release/sdk-release-prerequisites to prepare for SDK release.

…nfig.yaml', API Version: 2025-07-01, SDK Release Type: stable, and CommitSHA: '80cf521033f9499c3c86305d11c7de6451e796e5' in SpecRepo: 'https://github.com/Azure/azure-rest-api-specs' Pipeline run: https://dev.azure.com/azure-sdk/internal/_build/results?buildId=6075667 Refer to https://eng.ms/docs/products/azure-developer-experience/develop/sdk-release/sdk-release-prerequisites to prepare for SDK release.
@rohitsinghal4u rohitsinghal4u marked this pull request as ready for review March 27, 2026 23:51
@rohitsinghal4u rohitsinghal4u requested a review from a team as a code owner March 27, 2026 23:51
Copilot AI review requested due to automatic review settings March 27, 2026 23:51
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 auto-generated PR updates azure-keyvault-certificates from the TypeSpec configuration for Key Vault Certificates (API version 2025-07-01) and bumps generated artifacts/metadata accordingly.

Changes:

  • Updates the TypeSpec source location/commit pins and adds generation metadata files (_metadata.json, apiview-properties.json).
  • Regenerates the _generated client/models/utilities for API version 2025-07-01 and bumps the generated version to 4.11.0.
  • Restructures packaging/layout (adds setup.py, removes sdk_packaging.toml, and changes the public azure.keyvault.certificates package content).

Reviewed changes

Copilot reviewed 71 out of 71 changed files in this pull request and generated 8 comments.

Show a summary per file
File Description
sdk/keyvault/azure-keyvault-certificates/tsp-location.yaml Updates the TypeSpec source directory/commit and common additional directory.
sdk/keyvault/azure-keyvault-certificates/tests/test_certificates_client_async.py Adds file-level pylint disables.
sdk/keyvault/azure-keyvault-certificates/tests/test_certificates_client.py Adds file-level pylint disables; reformats a test callsite.
sdk/keyvault/azure-keyvault-certificates/tests/certs.py Adds file-level pylint disables.
sdk/keyvault/azure-keyvault-certificates/setup.py Adds a setuptools-based packaging script for the generated namespace.
sdk/keyvault/azure-keyvault-certificates/sdk_packaging.toml Removes packaging config file.
sdk/keyvault/azure-keyvault-certificates/samples/recover_purge_operations_async.py Adds file-level pylint disables.
sdk/keyvault/azure-keyvault-certificates/samples/recover_purge_operations.py Adds file-level pylint disables.
sdk/keyvault/azure-keyvault-certificates/samples/parse_certificate_async.py Adds file-level pylint disables.
sdk/keyvault/azure-keyvault-certificates/samples/parse_certificate.py Adds file-level pylint disables.
sdk/keyvault/azure-keyvault-certificates/samples/list_operations_async.py Adds file-level pylint disables.
sdk/keyvault/azure-keyvault-certificates/samples/list_operations.py Adds file-level pylint disables.
sdk/keyvault/azure-keyvault-certificates/samples/issuers_async.py Adds file-level pylint disables.
sdk/keyvault/azure-keyvault-certificates/samples/issuers.py Adds file-level pylint disables.
sdk/keyvault/azure-keyvault-certificates/samples/import_certificate_async.py Adds file-level pylint disables.
sdk/keyvault/azure-keyvault-certificates/samples/import_certificate.py Adds file-level pylint disables.
sdk/keyvault/azure-keyvault-certificates/samples/hello_world_async.py Adds file-level pylint disables.
sdk/keyvault/azure-keyvault-certificates/samples/hello_world.py Adds file-level pylint disables.
sdk/keyvault/azure-keyvault-certificates/samples/contacts_async.py Adds file-level pylint disables.
sdk/keyvault/azure-keyvault-certificates/samples/contacts.py Adds file-level pylint disables.
sdk/keyvault/azure-keyvault-certificates/samples/backup_restore_operations_async.py Adds file-level pylint disables.
sdk/keyvault/azure-keyvault-certificates/samples/backup_restore_operations.py Adds file-level pylint disables.
sdk/keyvault/azure-keyvault-certificates/pyproject.toml Reformats TOML; moves/updates packaging config; still uses dynamic version wiring.
sdk/keyvault/azure-keyvault-certificates/azure/keyvault/certificates/py.typed Removes the root package py.typed marker file content (and relocates type marker usage elsewhere).
sdk/keyvault/azure-keyvault-certificates/azure/keyvault/certificates/aio/_polling_async.py Removes the legacy async polling implementation.
sdk/keyvault/azure-keyvault-certificates/azure/keyvault/certificates/aio/_client.py Removes the legacy async high-level CertificateClient.
sdk/keyvault/azure-keyvault-certificates/azure/keyvault/certificates/aio/init.py Removes the async package exports.
sdk/keyvault/azure-keyvault-certificates/azure/keyvault/certificates/_version.py Removes the legacy package version module.
sdk/keyvault/azure-keyvault-certificates/azure/keyvault/certificates/_shared/http_challenge_cache.py Removes legacy challenge cache implementation.
sdk/keyvault/azure-keyvault-certificates/azure/keyvault/certificates/_shared/http_challenge.py Removes legacy challenge parsing implementation.
sdk/keyvault/azure-keyvault-certificates/azure/keyvault/certificates/_shared/client_base.py Removes legacy sync client base and API version enum.
sdk/keyvault/azure-keyvault-certificates/azure/keyvault/certificates/_shared/challenge_auth_policy.py Removes legacy sync challenge auth policy.
sdk/keyvault/azure-keyvault-certificates/azure/keyvault/certificates/_shared/async_client_base.py Removes legacy async client base.
sdk/keyvault/azure-keyvault-certificates/azure/keyvault/certificates/_shared/async_challenge_auth_policy.py Removes legacy async challenge auth policy.
sdk/keyvault/azure-keyvault-certificates/azure/keyvault/certificates/_shared/_polling_async.py Removes legacy async delete/recover polling method.
sdk/keyvault/azure-keyvault-certificates/azure/keyvault/certificates/_shared/_polling.py Removes legacy sync polling helpers.
sdk/keyvault/azure-keyvault-certificates/azure/keyvault/certificates/_shared/init.py Removes legacy shared exports + helper parsing code.
sdk/keyvault/azure-keyvault-certificates/azure/keyvault/certificates/_sdk_moniker.py Removes legacy sdk moniker module (previously derived from _version).
sdk/keyvault/azure-keyvault-certificates/azure/keyvault/certificates/_polling.py Removes legacy sync create-certificate polling method.
sdk/keyvault/azure-keyvault-certificates/azure/keyvault/certificates/_generated/models/_patch.py Updates generated patch scaffolding typing/header.
sdk/keyvault/azure-keyvault-certificates/azure/keyvault/certificates/_generated/models/_models.py Regenerated models (notably typing modernizations and SAN fields additions).
sdk/keyvault/azure-keyvault-certificates/azure/keyvault/certificates/_generated/models/_enums.py Minor enum docstring punctuation/format updates.
sdk/keyvault/azure-keyvault-certificates/azure/keyvault/certificates/_generated/aio/_vendor.py Removes generated typing-only vendor mixin.
sdk/keyvault/azure-keyvault-certificates/azure/keyvault/certificates/_generated/aio/_patch.py Updates generated patch scaffolding typing/header.
sdk/keyvault/azure-keyvault-certificates/azure/keyvault/certificates/_generated/aio/_operations/_patch.py Updates generated patch scaffolding typing/header.
sdk/keyvault/azure-keyvault-certificates/azure/keyvault/certificates/_generated/aio/_operations/_operations.py Regenerates async operations (paging return types, error deserialization, decompress option, etc.).
sdk/keyvault/azure-keyvault-certificates/azure/keyvault/certificates/_generated/aio/_operations/init.py Renames operations mixin symbol and adjusts exports.
sdk/keyvault/azure-keyvault-certificates/azure/keyvault/certificates/_generated/aio/_configuration.py Updates default API version to 2025-07-01 and docs.
sdk/keyvault/azure-keyvault-certificates/azure/keyvault/certificates/_generated/aio/_client.py Updates operations mixin base and docs for API version 2025-07-01.
sdk/keyvault/azure-keyvault-certificates/azure/keyvault/certificates/_generated/_version.py Bumps generated version to 4.11.0.
sdk/keyvault/azure-keyvault-certificates/azure/keyvault/certificates/_generated/_vendor.py Removes generated typing-only vendor mixin.
sdk/keyvault/azure-keyvault-certificates/azure/keyvault/certificates/_generated/_utils/serialization.py Updates serialization typing and removes eval usage in basic serializer.
sdk/keyvault/azure-keyvault-certificates/azure/keyvault/certificates/_generated/_utils/model_base.py Updates model base internals (typing modernizations + new serialization/deserialization helpers).
sdk/keyvault/azure-keyvault-certificates/azure/keyvault/certificates/_generated/_patch.py Updates generated patch scaffolding typing/header.
sdk/keyvault/azure-keyvault-certificates/azure/keyvault/certificates/_generated/_operations/_patch.py Updates generated patch scaffolding typing/header.
sdk/keyvault/azure-keyvault-certificates/azure/keyvault/certificates/_generated/_operations/init.py Renames operations mixin symbol and adjusts exports.
sdk/keyvault/azure-keyvault-certificates/azure/keyvault/certificates/_generated/_configuration.py Updates default API version to 2025-07-01 and docs.
sdk/keyvault/azure-keyvault-certificates/azure/keyvault/certificates/_generated/_client.py Updates operations mixin base and docs for API version 2025-07-01.
sdk/keyvault/azure-keyvault-certificates/azure/keyvault/certificates/_enums.py Removes legacy public enums module.
sdk/keyvault/azure-keyvault-certificates/azure/keyvault/certificates/_client.py Removes legacy sync high-level CertificateClient.
sdk/keyvault/azure-keyvault-certificates/azure/keyvault/certificates/init.py Converts azure.keyvault.certificates into a namespace-only package.
sdk/keyvault/azure-keyvault-certificates/azure/keyvault/init.py Removes header; keeps namespace package path extension.
sdk/keyvault/azure-keyvault-certificates/azure/init.py Removes header; keeps namespace package path extension.
sdk/keyvault/azure-keyvault-certificates/apiview-properties.json Adds APIView cross-language mapping metadata.
sdk/keyvault/azure-keyvault-certificates/_metadata.json Adds generation metadata (API version, commit, emitter version).
sdk/keyvault/azure-keyvault-certificates/MANIFEST.in Adjusts included py.typed location and includes certificates __init__.py.
sdk/keyvault/azure-keyvault-certificates/CHANGELOG.md Adds a 4.11.0 section (currently placeholder text).

Comment on lines +67 to +71
install_requires=[
"isodate>=0.6.1",
"azure-core>=1.37.0",
"typing-extensions>=4.6.0",
],
Copy link

Copilot AI Mar 28, 2026

Choose a reason for hiding this comment

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

setup.py declares azure-core>=1.37.0, but pyproject.toml declares azure-core>=1.31.0. Having two build definitions with different dependency minimums is error-prone and can lead to inconsistent environments depending on which build backend/path is used. Align dependency requirements (or remove the duplicate build config).

Copilot uses AI. Check for mistakes.
Comment on lines +3 to 8
## 4.11.0 (2026-03-27)

skip changelog generation for data-plane package and please add changelog manually.

## 4.10.1 (Unreleased)

Copy link

Copilot AI Mar 28, 2026

Choose a reason for hiding this comment

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

The 4.11.0 changelog entry is currently a placeholder (“skip changelog generation…”). For a stable release, this needs to be replaced with real release notes describing the customer-facing changes, and the version sections should be ordered/marked consistently (e.g., an "Unreleased" section should be for the next version).

Suggested change
## 4.11.0 (2026-03-27)
skip changelog generation for data-plane package and please add changelog manually.
## 4.10.1 (Unreleased)
## 4.11.1 (Unreleased)
### Features Added
### Breaking Changes
### Bugs Fixed
### Other Changes
## 4.11.0 (2026-03-27)

Copilot uses AI. Check for mistakes.
@@ -1,3 +1,4 @@
# pylint: disable=line-too-long,useless-suppression
Copy link

Copilot AI Mar 28, 2026

Choose a reason for hiding this comment

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

File-level # pylint: disable=line-too-long,useless-suppression was added. Disabling useless-suppression at the file level makes it easy to accidentally accumulate ineffective suppressions, and disabling line-too-long for the whole file hides unrelated formatting issues. Prefer wrapping the specific long lines (or using a targeted inline disable) instead of suppressing these checks for the entire file.

Copilot uses AI. Check for mistakes.
create_certificate_poller = client.begin_create_certificate(
certificate_name=cert_name, policy=cert_policy
)
create_certificate_poller = client.begin_create_certificate(certificate_name=cert_name, policy=cert_policy)
Copy link

Copilot AI Mar 28, 2026

Choose a reason for hiding this comment

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

This call was reformatted onto a single very long line, which is likely what triggered the new file-level line-too-long suppression. Please keep the call wrapped across multiple lines (as it was before) so linting can remain enabled and the test stays readable.

Copilot uses AI. Check for mistakes.
@@ -1,3 +1,4 @@
# pylint: disable=line-too-long,useless-suppression
Copy link

Copilot AI Mar 28, 2026

Choose a reason for hiding this comment

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

File-level # pylint: disable=line-too-long,useless-suppression was added. As with the sync tests, consider avoiding file-wide disables here and instead wrap the few long lines (or use targeted inline disables) to keep lint signals meaningful.

Copilot uses AI. Check for mistakes.

from ._version import VERSION
__version__ = VERSION
__path__ = __import__("pkgutil").extend_path(__path__, __name__) # type: ignore
Copy link

Copilot AI Mar 28, 2026

Choose a reason for hiding this comment

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

azure.keyvault.certificates is now turned into a namespace-only package (only extend_path), which removes all previously exported public symbols (e.g., CertificateClient, models/enums) and __version__. This is a breaking change for a stable release and will also break existing imports/tests. Restore the public surface (or provide a compatibility shim that re-exports the previous API) rather than leaving this package empty.

Suggested change
__path__ = __import__("pkgutil").extend_path(__path__, __name__) # type: ignore
__path__ = __import__("pkgutil").extend_path(__path__, __name__) # type: ignore
from ._client import CertificateClient
from ._models import * # type: ignore[F401,F403] # re-export models for compatibility
from ._enums import * # type: ignore[F401,F403] # re-export enums for compatibility
from ._version import VERSION
__version__ = VERSION
# Define the public surface of this package. This mirrors the previous behavior
# by exposing the client, models, enums, and version at the package root.
__all__ = [name for name in globals() if not name.startswith("_")]

Copilot uses AI. Check for mistakes.
Comment on lines +47 to +49
[tool.setuptools.dynamic.version]
attr = "azure.keyvault.certificates._version.VERSION"

Copy link

Copilot AI Mar 28, 2026

Choose a reason for hiding this comment

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

[tool.setuptools.dynamic.version] points to azure.keyvault.certificates._version.VERSION, but this module no longer exists in this PR (version is now under _generated/_version.py). This will break packaging/version resolution. Update the dynamic version attr to the correct module path or restore azure.keyvault.certificates._version as a re-export of the generated version.

Copilot uses AI. Check for mistakes.
Comment on lines +54 to +61
packages=find_packages(
exclude=[
"tests",
# Exclude packages that will be covered by PEP420 or nspkg
"azure",
"azure.keyvault",
"azure.keyvault.certificates",
]
Copy link

Copilot AI Mar 28, 2026

Choose a reason for hiding this comment

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

setup.py excludes the azure.keyvault.certificates package itself. If this file is used for packaging, that exclusion can prevent azure.keyvault.certificates._generated from being importable because the parent package may not be included in the wheel. Either remove setup.py in favor of the repo-standard pyproject.toml build, or ensure packaging includes the parent package/modules needed for imports.

Copilot uses AI. Check for mistakes.
…dings for 2025-07-01

- Restore handwritten files deleted by auto-generator (_client.py, _models.py, _enums.py, _shared/*, aio/*, etc.)
- Add san_ip_addresses and san_uris properties to CertificatePolicy
- Add V2025_07_01 API version and set as default
- Add 'Accept' to ignored_headers in conftest.py per reviewer feedback
- Add 23 unit tests for SAN IP/URI feature (test_san_ip_uri.py)
- Add live traffic tests (test_san_live_traffic.py)
- Record sync and async tests for 2025-07-01 API version
- Update assets.json with new recording tag
@github-actions
Copy link
Copy Markdown

github-actions bot commented Mar 28, 2026

API Change Check

APIView identified API level changes in this PR and created the following API reviews

azure-keyvault-certificates

…live_traffic.py, fix async Accept header mismatch, revert assets.json tag
…CI issues

- Restore V2025_07_01 in ApiVersion enum with DEFAULT_VERSION = V2025_07_01
- Restore test_san_live_traffic.py standalone live traffic test script
- Record all missing 2025-07-01 test recordings (14 examples + 1 parse_id)
- Update assets.json tag to include all recorded tests for 2025-07-01
- Add collect_ignore in conftest.py to exclude live traffic script from pytest
- Add sdk/keyvault/cspell.json to allow 'spiffe' word in spell check
- Keep async test_recover_and_purge Accept header matcher fix
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

Status: Untriaged

Development

Successfully merging this pull request may close these issues.

3 participants