Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 8 additions & 0 deletions sdk/keyvault/azure-keyvault-secrets/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,14 @@

### Other Changes

- Refactored package structure to use generation-focused design with `_patch.py` patching layers
- Public API remains unchanged and fully backward compatible
- Internal structure now matches `azure-keyvault-securitydomain` pattern
- Models moved to `models/` subdirectory with patch-based imports
- Client implementation moved to root `_patch.py`
- Created `_internal/` directory for utilities
- Updated `__init__.py` files to use patch-based import pattern

## 4.10.0 (2025-06-16)

### Features Added
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,18 +2,39 @@
# Copyright (c) Microsoft Corporation.
# Licensed under the MIT License.
# ------------------------------------
from ._models import DeletedSecret, KeyVaultSecret, KeyVaultSecretIdentifier, SecretProperties
from ._shared.client_base import ApiVersion
from ._client import SecretClient
# pylint: disable=wrong-import-position

from typing import TYPE_CHECKING

if TYPE_CHECKING:
from ._patch import * # pylint: disable=unused-wildcard-import

from ._version import VERSION

__version__ = VERSION

try:
from ._patch import __all__ as _patch_all
from ._patch import * # type: ignore
except ImportError:
_patch_all = []
from ._patch import patch_sdk as _patch_sdk

from .models import ( # type: ignore
DeletedSecret,
KeyVaultSecret,
KeyVaultSecretIdentifier,
SecretProperties,
)

__all__ = [
"ApiVersion",
"SecretClient",
"DeletedSecret",
"KeyVaultSecret",
"KeyVaultSecretIdentifier",
"SecretProperties",
"DeletedSecret"
]
__all__.extend([p for p in _patch_all if p not in __all__]) # pyright: ignore

from ._version import VERSION
__version__ = VERSION
_patch_sdk()
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
# ------------------------------------
# Copyright (c) Microsoft Corporation.
# Licensed under the MIT License.
# ------------------------------------
"""Internal utilities for azure-keyvault-secrets."""

from .._shared.challenge_auth_policy import ChallengeAuthPolicy
from .._shared._polling import DeleteRecoverPollingMethod, KeyVaultOperationPoller
from .._shared import parse_key_vault_id

__all__ = [
"ChallengeAuthPolicy",
"DeleteRecoverPollingMethod",
"KeyVaultOperationPoller",
"parse_key_vault_id",
]

try:
from .._shared.async_challenge_auth_policy import AsyncChallengeAuthPolicy
from .._shared._polling_async import AsyncKeyVaultOperationPoller, AsyncDeleteRecoverPollingMethod

__all__.extend([
"AsyncChallengeAuthPolicy",
"AsyncKeyVaultOperationPoller",
"AsyncDeleteRecoverPollingMethod",
])
except (SyntaxError, ImportError):
pass
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
# coding=utf-8
# --------------------------------------------------------------------------
# Copyright (c) Microsoft Corporation. All rights reserved.
# Licensed under the MIT License. See License.txt in the project root for license information.
# --------------------------------------------------------------------------
# pylint: disable=wrong-import-position

from typing import TYPE_CHECKING

if TYPE_CHECKING:
from ._patch import * # pylint: disable=unused-wildcard-import

from ._patch import __all__ as _patch_all
from ._patch import *
from ._patch import patch_sdk as _patch_sdk

__all__ = []
__all__.extend([p for p in _patch_all if p not in __all__]) # pyright: ignore
_patch_sdk()
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
# coding=utf-8
# --------------------------------------------------------------------------
# Copyright (c) Microsoft Corporation. All rights reserved.
# Licensed under the MIT License. See License.txt in the project root for license information.
# --------------------------------------------------------------------------
"""Customize generated code here.

Follow our quickstart for examples: https://aka.ms/azsdk/python/dpcodegen/python/customize
"""
from typing import List

__all__: List[str] = [] # Add all objects you want publicly available to users at this package level


def patch_sdk():
"""Do not remove from this file.

`patch_sdk` is a last resort escape hatch that allows you to do customizations
you can't accomplish using the techniques described in
https://aka.ms/azsdk/python/dpcodegen/python/customize
"""
Loading
Loading