diff --git a/sdk/network/azure-mgmt-privatedns/CHANGELOG.md b/sdk/network/azure-mgmt-privatedns/CHANGELOG.md index c9f96c0366a5..ec18440d71da 100644 --- a/sdk/network/azure-mgmt-privatedns/CHANGELOG.md +++ b/sdk/network/azure-mgmt-privatedns/CHANGELOG.md @@ -1,5 +1,44 @@ # Release History +## 2.0.0 (2026-07-29) + +### Features Added + + - Client `PrivateDnsManagementClient` added parameter `cloud_setting` in method `__init__` + - Client `PrivateDnsManagementClient` added method `send_request` + - Model `PrivateZone` added property `system_data` + - Model `ProxyResource` added property `system_data` + - Model `RecordSet` added property `system_data` + - Model `Resource` added property `system_data` + - Model `VirtualNetworkLink` added property `system_data` + - Added model `CloudError` + - Added enum `CreatedByType` + - Added model `SystemData` + +### Breaking Changes + + - This version introduces new hybrid models which have dual dictionary and model nature. Please follow https://aka.ms/azsdk/python/migrate/hybrid-models for migration. + - For the method breakings, please refer to https://aka.ms/azsdk/python/migrate/operations for migration. + - Model `PrivateZone` moved instance variable `max_number_of_record_sets`, `number_of_record_sets`, `max_number_of_virtual_network_links`, `number_of_virtual_network_links`, `max_number_of_virtual_network_links_with_registration`, `number_of_virtual_network_links_with_registration`, `provisioning_state` and `internal_id` under property `properties` whose type is `PrivateZoneProperties` + - Model `RecordSet` moved instance variable `metadata`, `ttl`, `fqdn`, `is_auto_registered`, `a_records`, `aaaa_records`, `cname_record`, `mx_records`, `ptr_records`, `soa_record`, `srv_records` and `txt_records` under property `properties` whose type is `RecordSetProperties` + - Model `VirtualNetworkLink` moved instance variable `virtual_network`, `registration_enabled`, `resolution_policy`, `virtual_network_link_state` and `provisioning_state` under property `properties` whose type is `VirtualNetworkLinkProperties` + - Method `PrivateZonesOperations.begin_create_or_update` replaced positional_or_keyword parameters `if_match`/`if_none_match` with keyword_only parameters `etag`/`match_condition` + - Method `PrivateZonesOperations.begin_delete` replaced positional_or_keyword parameter `if_match` with keyword_only parameters `etag`/`match_condition` + - Method `PrivateZonesOperations.begin_update` replaced positional_or_keyword parameter `if_match` with keyword_only parameters `etag`/`match_condition` + - Method `RecordSetsOperations.create_or_update` replaced positional_or_keyword parameters `if_match`/`if_none_match` with keyword_only parameters `etag`/`match_condition` + - Method `RecordSetsOperations.delete` replaced positional_or_keyword parameter `if_match` with keyword_only parameters `etag`/`match_condition` + - Method `RecordSetsOperations.list` changed its parameter `recordsetnamesuffix` from `positional_or_keyword` to `keyword_only` + - Method `RecordSetsOperations.list_by_type` changed its parameter `recordsetnamesuffix` from `positional_or_keyword` to `keyword_only` + - Method `RecordSetsOperations.update` replaced positional_or_keyword parameter `if_match` with keyword_only parameters `etag`/`match_condition` + - Method `VirtualNetworkLinksOperations.begin_create_or_update` replaced positional_or_keyword parameters `if_match`/`if_none_match` with keyword_only parameters `etag`/`match_condition` + - Method `VirtualNetworkLinksOperations.begin_delete` replaced positional_or_keyword parameter `if_match` with keyword_only parameters `etag`/`match_condition` + - Method `VirtualNetworkLinksOperations.begin_update` replaced positional_or_keyword parameter `if_match` with keyword_only parameters `etag`/`match_condition` + +### Other Changes + + - Deleted model `PrivateZoneListResult`/`RecordSetListResult`/`VirtualNetworkLinkListResult` which actually were not used by SDK users + - Deleted model `TrackedResource` which actually were not used by SDK users + ## 2.0.0b1 (2026-07-06) ### Features Added diff --git a/sdk/network/azure-mgmt-privatedns/_metadata.json b/sdk/network/azure-mgmt-privatedns/_metadata.json index f29f4647acc1..b78714d10288 100644 --- a/sdk/network/azure-mgmt-privatedns/_metadata.json +++ b/sdk/network/azure-mgmt-privatedns/_metadata.json @@ -3,9 +3,9 @@ "apiVersions": { "Microsoft.Network": "2024-06-01" }, - "commit": "3d1de464b5576fa149aed429795f6030313e31bb", + "commit": "801a60cdad2669e8f824fedfbabbfe7f7093b940", "repository_url": "https://github.com/Azure/azure-rest-api-specs", "typespec_src": "specification/privatedns/resource-manager/Microsoft.Network/PrivateDns", - "emitterVersion": "0.63.2", - "httpClientPythonVersion": "^0.34.0" + "emitterVersion": "0.63.3", + "httpClientPythonVersion": "^0.34.2" } \ No newline at end of file diff --git a/sdk/network/azure-mgmt-privatedns/api.md b/sdk/network/azure-mgmt-privatedns/api.md index 8cf7e6027655..2ec30a6fece8 100644 --- a/sdk/network/azure-mgmt-privatedns/api.md +++ b/sdk/network/azure-mgmt-privatedns/api.md @@ -1273,21 +1273,6 @@ namespace azure.mgmt.privatedns.types ipv6_address: str - class azure.mgmt.privatedns.types.CloudError(TypedDict, total=False): - key "error": ForwardRef('CloudErrorBody', module='types') - error: CloudErrorBody - - - class azure.mgmt.privatedns.types.CloudErrorBody(TypedDict, total=False): - key "code": str - key "message": str - key "target": str - code: str - details: list[CloudErrorBody] - message: str - target: str - - class azure.mgmt.privatedns.types.CnameRecord(TypedDict, total=False): key "cname": str cname: str diff --git a/sdk/network/azure-mgmt-privatedns/api.metadata.yml b/sdk/network/azure-mgmt-privatedns/api.metadata.yml index 19abd2f5390e..2a78939ce708 100644 --- a/sdk/network/azure-mgmt-privatedns/api.metadata.yml +++ b/sdk/network/azure-mgmt-privatedns/api.metadata.yml @@ -1,3 +1,3 @@ -apiMdSha256: 7d49110682c7ea3f47760f82dd3d8873274e33440a5660d31478459387445062 -parserVersion: 0.3.28 -pythonVersion: 3.13.13 +apiMdSha256: b62fc8b9267ae1d597ccc5c311086bb39ea619309cb908046787f7bb2bcb59aa +parserVersion: 0.3.30 +pythonVersion: 3.13.14 diff --git a/sdk/network/azure-mgmt-privatedns/azure/mgmt/privatedns/_utils/model_base.py b/sdk/network/azure-mgmt-privatedns/azure/mgmt/privatedns/_utils/model_base.py index b93f5120d517..0f2c5bdfe70f 100644 --- a/sdk/network/azure-mgmt-privatedns/azure/mgmt/privatedns/_utils/model_base.py +++ b/sdk/network/azure-mgmt-privatedns/azure/mgmt/privatedns/_utils/model_base.py @@ -458,21 +458,21 @@ def __ne__(self, other: typing.Any) -> bool: def keys(self) -> typing.KeysView[str]: """ - :returns: a set-like object providing a view on D's keys + :returns: a set-like object providing a view on the mapping's keys :rtype: ~typing.KeysView """ return self._data.keys() def values(self) -> typing.ValuesView[typing.Any]: """ - :returns: an object providing a view on D's values + :returns: an object providing a view on the mapping's values :rtype: ~typing.ValuesView """ return self._data.values() def items(self) -> typing.ItemsView[str, typing.Any]: """ - :returns: set-like object providing a view on D's items + :returns: a set-like object providing a view on the mapping's items :rtype: ~typing.ItemsView """ return self._data.items() @@ -482,7 +482,7 @@ def get(self, key: str, default: typing.Any = None) -> typing.Any: Get the value for key if key is in the dictionary, else default. :param str key: The key to look up. :param any default: The value to return if key is not in the dictionary. Defaults to None - :returns: D[k] if k in D, else d. + :returns: The value for key if key is in the dictionary, else default. :rtype: any """ try: @@ -517,19 +517,19 @@ def popitem(self) -> tuple[str, typing.Any]: Removes and returns some (key, value) pair :returns: The (key, value) pair. :rtype: tuple - :raises KeyError: if D is empty. + :raises KeyError: if the dictionary is empty. """ return self._data.popitem() def clear(self) -> None: """ - Remove all items from D. + Remove all items from the dictionary. """ self._data.clear() def update(self, *args: typing.Any, **kwargs: typing.Any) -> None: # pylint: disable=arguments-differ """ - Updates D from mapping/iterable E and F. + Update the dictionary from a mapping or an iterable of key-value pairs. :param any args: Either a mapping object or an iterable of key-value pairs. """ self._data.update(*args, **kwargs) @@ -542,10 +542,11 @@ def setdefault(self, key: str, default: typing.Any) -> typing.Any: ... # pylint def setdefault(self, key: str, default: typing.Any = _UNSET) -> typing.Any: """ - Same as calling D.get(k, d), and setting D[k]=d if k not found + Return the value for key if key is in the dictionary; otherwise set the key to + default and return default. :param str key: The key to look up. :param any default: The value to set if key is not in the dictionary - :returns: D[k] if k in D, else d. + :returns: The value for key if key is in the dictionary, else default. :rtype: any """ if default is _UNSET: diff --git a/sdk/network/azure-mgmt-privatedns/azure/mgmt/privatedns/_version.py b/sdk/network/azure-mgmt-privatedns/azure/mgmt/privatedns/_version.py index 0e00a6283246..8f2350dd3b0c 100644 --- a/sdk/network/azure-mgmt-privatedns/azure/mgmt/privatedns/_version.py +++ b/sdk/network/azure-mgmt-privatedns/azure/mgmt/privatedns/_version.py @@ -6,4 +6,4 @@ # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- -VERSION = "2.0.0b1" +VERSION = "2.0.0" diff --git a/sdk/network/azure-mgmt-privatedns/azure/mgmt/privatedns/types.py b/sdk/network/azure-mgmt-privatedns/azure/mgmt/privatedns/types.py index 896112c7d54b..c16948f7f161 100644 --- a/sdk/network/azure-mgmt-privatedns/azure/mgmt/privatedns/types.py +++ b/sdk/network/azure-mgmt-privatedns/azure/mgmt/privatedns/types.py @@ -36,44 +36,6 @@ class ARecord(TypedDict, total=False): """The IPv4 address of this A record.""" -class CloudError(TypedDict, total=False): - """An error response from the service. - - :ivar error: Cloud error body. - :vartype error: "CloudErrorBody" - """ - - error: "CloudErrorBody" - """Cloud error body.""" - - -class CloudErrorBody(TypedDict, total=False): - """An error response from the service. - - :ivar code: An identifier for the error. Codes are invariant and are intended to be consumed - programmatically. - :vartype code: str - :ivar message: A message describing the error, intended to be suitable for display in a user - interface. - :vartype message: str - :ivar target: The target of the particular error. For example, the name of the property in - error. - :vartype target: str - :ivar details: A list of additional details about the error. - :vartype details: list["CloudErrorBody"] - """ - - code: str - """An identifier for the error. Codes are invariant and are intended to be consumed - programmatically.""" - message: str - """A message describing the error, intended to be suitable for display in a user interface.""" - target: str - """The target of the particular error. For example, the name of the property in error.""" - details: list["CloudErrorBody"] - """A list of additional details about the error.""" - - class CnameRecord(TypedDict, total=False): """A CNAME record. diff --git a/sdk/network/azure-mgmt-privatedns/dev_requirements.txt b/sdk/network/azure-mgmt-privatedns/dev_requirements.txt index 84b01ecf2b01..9efe8918059c 100644 --- a/sdk/network/azure-mgmt-privatedns/dev_requirements.txt +++ b/sdk/network/azure-mgmt-privatedns/dev_requirements.txt @@ -1,2 +1,3 @@ -e ../../../eng/tools/azure-sdk-tools -aiohttp \ No newline at end of file +aiohttp +azure-identity \ No newline at end of file diff --git a/sdk/network/azure-mgmt-privatedns/pyproject.toml b/sdk/network/azure-mgmt-privatedns/pyproject.toml index 4b7caac0b540..a6ba55fcce6c 100644 --- a/sdk/network/azure-mgmt-privatedns/pyproject.toml +++ b/sdk/network/azure-mgmt-privatedns/pyproject.toml @@ -13,7 +13,7 @@ authors = [ description = "Microsoft Azure Privatedns Management Client Library for Python" license = "MIT" classifiers = [ - "Development Status :: 4 - Beta", + "Development Status :: 5 - Production/Stable", "Programming Language :: Python", "Programming Language :: Python :: 3 :: Only", "Programming Language :: Python :: 3", @@ -79,7 +79,7 @@ package_name = "azure-mgmt-privatedns" package_nspkg = "azure-mgmt-nspkg" package_pprint_name = "DNS Private Zones" package_doc_id = "" -is_stable = false +is_stable = true is_arm = true title = "PrivateDnsManagementClient" need_msrestazure = false diff --git a/sdk/network/azure-mgmt-privatedns/tsp-location.yaml b/sdk/network/azure-mgmt-privatedns/tsp-location.yaml index 31ff08baeb0b..f248c26d3c29 100644 --- a/sdk/network/azure-mgmt-privatedns/tsp-location.yaml +++ b/sdk/network/azure-mgmt-privatedns/tsp-location.yaml @@ -1,4 +1,4 @@ directory: specification/privatedns/resource-manager/Microsoft.Network/PrivateDns -commit: 3d1de464b5576fa149aed429795f6030313e31bb +commit: 801a60cdad2669e8f824fedfbabbfe7f7093b940 repo: Azure/azure-rest-api-specs additionalDirectories: