Skip to content

Commit 1d1ef87

Browse files
author
SDKAuto
committed
CodeGen from PR 33581 in Azure/azure-rest-api-specs
Merge efc5c09ac76420e669ba217b83c81ce263ad5453 into cb5ef7fc4cb443bd5f6b21d02cbce41051beb6ae
1 parent ce204aa commit 1d1ef87

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

42 files changed

+845
-408
lines changed

sdk/fabric/azure-mgmt-fabric/CHANGELOG.md

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,18 @@
11
# Release History
22

3+
## 1.1.0b1 (2025-04-15)
4+
5+
### Features Added
6+
7+
- Added model `Quota`
8+
- Added model `QuotaName`
9+
- Model `FabricCapacitiesOperations` added method `list_usages`
10+
- Method `Operation.__init__` has a new overload `def __init__(self: None, display: Optional[_models.OperationDisplay])`
11+
- Method `Quota.__init__` has a new overload `def __init__(self: None, unit: str, current_value: int, limit: int)`
12+
- Method `Quota.__init__` has a new overload `def __init__(self: None, mapping: Mapping[str, Any])`
13+
- Method `QuotaName.__init__` has a new overload `def __init__(self: None, value: Optional[str], localized_value: Optional[str])`
14+
- Method `QuotaName.__init__` has a new overload `def __init__(self: None, mapping: Mapping[str, Any])`
15+
316
## 1.0.0 (2024-10-21)
417

518
### Other Changes

sdk/fabric/azure-mgmt-fabric/README.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
# Microsoft Azure SDK for Python
22

33
This is the Microsoft Azure Fabric Management Client Library.
4-
This package has been tested with Python 3.8+.
4+
This package has been tested with Python 3.9+.
55
For a more complete view of Azure libraries, see the [azure sdk python release](https://aka.ms/azsdk/python/all).
66

77
## _Disclaimer_
@@ -12,7 +12,7 @@ _Azure SDK Python packages support for Python 2.7 has ended 01 January 2022. For
1212

1313
### Prerequisites
1414

15-
- Python 3.8+ is required to use this package.
15+
- Python 3.9+ is required to use this package.
1616
- [Azure subscription](https://azure.microsoft.com/free/)
1717

1818
### Install the package
@@ -24,7 +24,7 @@ pip install azure-identity
2424

2525
### Authentication
2626

27-
By default, [Azure Active Directory](https://aka.ms/awps/aad) token authentication depends on correct configure of following environment variables.
27+
By default, [Azure Active Directory](https://aka.ms/awps/aad) token authentication depends on correct configuration of the following environment variables.
2828

2929
- `AZURE_CLIENT_ID` for Azure client ID.
3030
- `AZURE_TENANT_ID` for Azure tenant ID.
Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
2-
"commit": "9ce76c4f113368361dac4de5d0a71eb058602756",
2+
"commit": "6e702986ee542ebd38d0ab2e2f2c00ab48a50b45",
33
"repository_url": "https://github.com/Azure/azure-rest-api-specs",
44
"typespec_src": "specification/fabric/Microsoft.Fabric.Management",
5-
"@azure-tools/typespec-python": "0.36.0"
5+
"@azure-tools/typespec-python": "0.42.3"
66
}
Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
1+
{
2+
"CrossLanguagePackageId": "Microsoft.Fabric",
3+
"CrossLanguageDefinitionId": {
4+
"azure.mgmt.fabric.models.CapacityAdministration": "Microsoft.Fabric.CapacityAdministration",
5+
"azure.mgmt.fabric.models.CheckNameAvailabilityRequest": "Azure.ResourceManager.CommonTypes.CheckNameAvailabilityRequest",
6+
"azure.mgmt.fabric.models.CheckNameAvailabilityResponse": "Azure.ResourceManager.CommonTypes.CheckNameAvailabilityResponse",
7+
"azure.mgmt.fabric.models.ErrorAdditionalInfo": "Azure.ResourceManager.CommonTypes.ErrorAdditionalInfo",
8+
"azure.mgmt.fabric.models.ErrorDetail": "Azure.ResourceManager.CommonTypes.ErrorDetail",
9+
"azure.mgmt.fabric.models.ErrorResponse": "Azure.ResourceManager.CommonTypes.ErrorResponse",
10+
"azure.mgmt.fabric.models.Resource": "Azure.ResourceManager.CommonTypes.Resource",
11+
"azure.mgmt.fabric.models.TrackedResource": "Azure.ResourceManager.CommonTypes.TrackedResource",
12+
"azure.mgmt.fabric.models.FabricCapacity": "Microsoft.Fabric.FabricCapacity",
13+
"azure.mgmt.fabric.models.FabricCapacityProperties": "Microsoft.Fabric.FabricCapacityProperties",
14+
"azure.mgmt.fabric.models.FabricCapacityUpdate": "Azure.ResourceManager.Foundations.ResourceUpdateModel",
15+
"azure.mgmt.fabric.models.FabricCapacityUpdateProperties": "Azure.ResourceManager.Foundations.ResourceUpdateModelProperties",
16+
"azure.mgmt.fabric.models.Operation": "Azure.ResourceManager.CommonTypes.Operation",
17+
"azure.mgmt.fabric.models.OperationDisplay": "Azure.ResourceManager.CommonTypes.OperationDisplay",
18+
"azure.mgmt.fabric.models.Quota": "Microsoft.Fabric.Quota",
19+
"azure.mgmt.fabric.models.QuotaName": "Microsoft.Fabric.QuotaName",
20+
"azure.mgmt.fabric.models.RpSku": "Microsoft.Fabric.RpSku",
21+
"azure.mgmt.fabric.models.RpSkuDetailsForExistingResource": "Microsoft.Fabric.RpSkuDetailsForExistingResource",
22+
"azure.mgmt.fabric.models.RpSkuDetailsForNewResource": "Microsoft.Fabric.RpSkuDetailsForNewResource",
23+
"azure.mgmt.fabric.models.SystemData": "Azure.ResourceManager.CommonTypes.SystemData",
24+
"azure.mgmt.fabric.models.CreatedByType": "Azure.ResourceManager.CommonTypes.createdByType",
25+
"azure.mgmt.fabric.models.ProvisioningState": "Microsoft.Fabric.ProvisioningState",
26+
"azure.mgmt.fabric.models.ResourceState": "Microsoft.Fabric.ResourceState",
27+
"azure.mgmt.fabric.models.RpSkuTier": "Microsoft.Fabric.RpSkuTier",
28+
"azure.mgmt.fabric.models.CheckNameAvailabilityReason": "Azure.ResourceManager.CommonTypes.CheckNameAvailabilityReason",
29+
"azure.mgmt.fabric.models.Origin": "Azure.ResourceManager.CommonTypes.Origin",
30+
"azure.mgmt.fabric.models.ActionType": "Azure.ResourceManager.CommonTypes.ActionType",
31+
"azure.mgmt.fabric.FabricMgmtClient.fabric_capacities.get": "Microsoft.Fabric.FabricCapacities.get",
32+
"azure.mgmt.fabric.FabricMgmtClient.fabric_capacities.begin_create_or_update": "Microsoft.Fabric.FabricCapacities.createOrUpdate",
33+
"azure.mgmt.fabric.FabricMgmtClient.fabric_capacities.begin_update": "Microsoft.Fabric.FabricCapacities.update",
34+
"azure.mgmt.fabric.FabricMgmtClient.fabric_capacities.begin_delete": "Microsoft.Fabric.FabricCapacities.delete",
35+
"azure.mgmt.fabric.FabricMgmtClient.fabric_capacities.list_by_resource_group": "Microsoft.Fabric.FabricCapacities.listByResourceGroup",
36+
"azure.mgmt.fabric.FabricMgmtClient.fabric_capacities.list_by_subscription": "Microsoft.Fabric.FabricCapacities.listBySubscription",
37+
"azure.mgmt.fabric.FabricMgmtClient.fabric_capacities.begin_resume": "Microsoft.Fabric.FabricCapacities.resume",
38+
"azure.mgmt.fabric.FabricMgmtClient.fabric_capacities.begin_suspend": "Microsoft.Fabric.FabricCapacities.suspend",
39+
"azure.mgmt.fabric.FabricMgmtClient.fabric_capacities.check_name_availability": "Microsoft.Fabric.FabricCapacities.checkNameAvailability",
40+
"azure.mgmt.fabric.FabricMgmtClient.fabric_capacities.list_skus_for_capacity": "Microsoft.Fabric.FabricCapacities.listSkusForCapacity",
41+
"azure.mgmt.fabric.FabricMgmtClient.fabric_capacities.list_skus": "Microsoft.Fabric.FabricCapacities.listSkus",
42+
"azure.mgmt.fabric.FabricMgmtClient.fabric_capacities.list_usages": "Microsoft.Fabric.FabricCapacities.listUsages",
43+
"azure.mgmt.fabric.FabricMgmtClient.operations.list": "Azure.ResourceManager.Operations.list"
44+
}
45+
}

sdk/fabric/azure-mgmt-fabric/azure/mgmt/fabric/__init__.py

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,15 +5,21 @@
55
# Code generated by Microsoft (R) Python Code Generator.
66
# Changes may cause incorrect behavior and will be lost if the code is regenerated.
77
# --------------------------------------------------------------------------
8+
# pylint: disable=wrong-import-position
89

9-
from ._client import FabricMgmtClient
10+
from typing import TYPE_CHECKING
11+
12+
if TYPE_CHECKING:
13+
from ._patch import * # pylint: disable=unused-wildcard-import
14+
15+
from ._client import FabricMgmtClient # type: ignore
1016
from ._version import VERSION
1117

1218
__version__ = VERSION
1319

1420
try:
1521
from ._patch import __all__ as _patch_all
16-
from ._patch import * # pylint: disable=unused-wildcard-import
22+
from ._patch import *
1723
except ImportError:
1824
_patch_all = []
1925
from ._patch import patch_sdk as _patch_sdk

sdk/fabric/azure-mgmt-fabric/azure/mgmt/fabric/_client.py

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -36,8 +36,9 @@ class FabricMgmtClient:
3636
:type subscription_id: str
3737
:param base_url: Service host. Default value is "https://management.azure.com".
3838
:type base_url: str
39-
:keyword api_version: The API version to use for this operation. Default value is "2023-11-01".
40-
Note that overriding this default value may result in unsupported behavior.
39+
:keyword api_version: The API version to use for this operation. Default value is
40+
"2025-01-15-preview". Note that overriding this default value may result in unsupported
41+
behavior.
4142
:paramtype api_version: str
4243
:keyword int polling_interval: Default waiting time between two polls for LRO operations if no
4344
Retry-After header is present.

sdk/fabric/azure-mgmt-fabric/azure/mgmt/fabric/_configuration.py

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -29,8 +29,9 @@ class FabricMgmtClientConfiguration: # pylint: disable=too-many-instance-attrib
2929
:type subscription_id: str
3030
:param base_url: Service host. Default value is "https://management.azure.com".
3131
:type base_url: str
32-
:keyword api_version: The API version to use for this operation. Default value is "2023-11-01".
33-
Note that overriding this default value may result in unsupported behavior.
32+
:keyword api_version: The API version to use for this operation. Default value is
33+
"2025-01-15-preview". Note that overriding this default value may result in unsupported
34+
behavior.
3435
:paramtype api_version: str
3536
"""
3637

@@ -41,7 +42,7 @@ def __init__(
4142
base_url: str = "https://management.azure.com",
4243
**kwargs: Any
4344
) -> None:
44-
api_version: str = kwargs.pop("api_version", "2023-11-01")
45+
api_version: str = kwargs.pop("api_version", "2025-01-15-preview")
4546

4647
if credential is None:
4748
raise ValueError("Parameter 'credential' must not be None.")

sdk/fabric/azure-mgmt-fabric/azure/mgmt/fabric/_model_base.py

Lines changed: 95 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,11 @@
22
# coding=utf-8
33
# --------------------------------------------------------------------------
44
# Copyright (c) Microsoft Corporation. All rights reserved.
5-
# Licensed under the MIT License. See License.txt in the project root for
6-
# license information.
5+
# Licensed under the MIT License. See License.txt in the project root for license information.
6+
# Code generated by Microsoft (R) Python Code Generator.
7+
# Changes may cause incorrect behavior and will be lost if the code is regenerated.
78
# --------------------------------------------------------------------------
8-
# pylint: disable=protected-access, arguments-differ, signature-differs, broad-except, too-many-lines
9+
# pylint: disable=protected-access, broad-except
910

1011
import copy
1112
import calendar
@@ -21,18 +22,14 @@
2122
from datetime import datetime, date, time, timedelta, timezone
2223
from json import JSONEncoder
2324
import xml.etree.ElementTree as ET
25+
from collections.abc import MutableMapping
2426
from typing_extensions import Self
2527
import isodate
2628
from azure.core.exceptions import DeserializationError
2729
from azure.core import CaseInsensitiveEnumMeta
2830
from azure.core.pipeline import PipelineResponse
2931
from azure.core.serialization import _Null
3032

31-
if sys.version_info >= (3, 9):
32-
from collections.abc import MutableMapping
33-
else:
34-
from typing import MutableMapping
35-
3633
_LOGGER = logging.getLogger(__name__)
3734

3835
__all__ = ["SdkJSONEncoder", "Model", "rest_field", "rest_discriminator"]
@@ -347,7 +344,7 @@ def _get_model(module_name: str, model_name: str):
347344
_UNSET = object()
348345

349346

350-
class _MyMutableMapping(MutableMapping[str, typing.Any]): # pylint: disable=unsubscriptable-object
347+
class _MyMutableMapping(MutableMapping[str, typing.Any]):
351348
def __init__(self, data: typing.Dict[str, typing.Any]) -> None:
352349
self._data = data
353350

@@ -373,50 +370,97 @@ def __ne__(self, other: typing.Any) -> bool:
373370
return not self.__eq__(other)
374371

375372
def keys(self) -> typing.KeysView[str]:
373+
"""
374+
:returns: a set-like object providing a view on D's keys
375+
:rtype: ~typing.KeysView
376+
"""
376377
return self._data.keys()
377378

378379
def values(self) -> typing.ValuesView[typing.Any]:
380+
"""
381+
:returns: an object providing a view on D's values
382+
:rtype: ~typing.ValuesView
383+
"""
379384
return self._data.values()
380385

381386
def items(self) -> typing.ItemsView[str, typing.Any]:
387+
"""
388+
:returns: set-like object providing a view on D's items
389+
:rtype: ~typing.ItemsView
390+
"""
382391
return self._data.items()
383392

384393
def get(self, key: str, default: typing.Any = None) -> typing.Any:
394+
"""
395+
Get the value for key if key is in the dictionary, else default.
396+
:param str key: The key to look up.
397+
:param any default: The value to return if key is not in the dictionary. Defaults to None
398+
:returns: D[k] if k in D, else d.
399+
:rtype: any
400+
"""
385401
try:
386402
return self[key]
387403
except KeyError:
388404
return default
389405

390406
@typing.overload
391-
def pop(self, key: str) -> typing.Any: ...
407+
def pop(self, key: str) -> typing.Any: ... # pylint: disable=arguments-differ
392408

393409
@typing.overload
394-
def pop(self, key: str, default: _T) -> _T: ...
410+
def pop(self, key: str, default: _T) -> _T: ... # pylint: disable=signature-differs
395411

396412
@typing.overload
397-
def pop(self, key: str, default: typing.Any) -> typing.Any: ...
413+
def pop(self, key: str, default: typing.Any) -> typing.Any: ... # pylint: disable=signature-differs
398414

399415
def pop(self, key: str, default: typing.Any = _UNSET) -> typing.Any:
416+
"""
417+
Removes specified key and return the corresponding value.
418+
:param str key: The key to pop.
419+
:param any default: The value to return if key is not in the dictionary
420+
:returns: The value corresponding to the key.
421+
:rtype: any
422+
:raises KeyError: If key is not found and default is not given.
423+
"""
400424
if default is _UNSET:
401425
return self._data.pop(key)
402426
return self._data.pop(key, default)
403427

404428
def popitem(self) -> typing.Tuple[str, typing.Any]:
429+
"""
430+
Removes and returns some (key, value) pair
431+
:returns: The (key, value) pair.
432+
:rtype: tuple
433+
:raises KeyError: if D is empty.
434+
"""
405435
return self._data.popitem()
406436

407437
def clear(self) -> None:
438+
"""
439+
Remove all items from D.
440+
"""
408441
self._data.clear()
409442

410-
def update(self, *args: typing.Any, **kwargs: typing.Any) -> None:
443+
def update(self, *args: typing.Any, **kwargs: typing.Any) -> None: # pylint: disable=arguments-differ
444+
"""
445+
Updates D from mapping/iterable E and F.
446+
:param any args: Either a mapping object or an iterable of key-value pairs.
447+
"""
411448
self._data.update(*args, **kwargs)
412449

413450
@typing.overload
414451
def setdefault(self, key: str, default: None = None) -> None: ...
415452

416453
@typing.overload
417-
def setdefault(self, key: str, default: typing.Any) -> typing.Any: ...
454+
def setdefault(self, key: str, default: typing.Any) -> typing.Any: ... # pylint: disable=signature-differs
418455

419456
def setdefault(self, key: str, default: typing.Any = _UNSET) -> typing.Any:
457+
"""
458+
Same as calling D.get(k, d), and setting D[k]=d if k not found
459+
:param str key: The key to look up.
460+
:param any default: The value to set if key is not in the dictionary
461+
:returns: D[k] if k in D, else d.
462+
:rtype: any
463+
"""
420464
if default is _UNSET:
421465
return self._data.setdefault(key)
422466
return self._data.setdefault(key, default)
@@ -574,7 +618,7 @@ def __init__(self, *args: typing.Any, **kwargs: typing.Any) -> None:
574618
def copy(self) -> "Model":
575619
return Model(self.__dict__)
576620

577-
def __new__(cls, *args: typing.Any, **kwargs: typing.Any) -> Self: # pylint: disable=unused-argument
621+
def __new__(cls, *args: typing.Any, **kwargs: typing.Any) -> Self:
578622
if f"{cls.__module__}.{cls.__qualname__}" not in cls._calculated:
579623
# we know the last nine classes in mro are going to be 'Model', '_MyMutableMapping', 'MutableMapping',
580624
# 'Mapping', 'Collection', 'Sized', 'Iterable', 'Container' and 'object'
@@ -585,8 +629,8 @@ def __new__(cls, *args: typing.Any, **kwargs: typing.Any) -> Self: # pylint: di
585629
annotations = {
586630
k: v
587631
for mro_class in mros
588-
if hasattr(mro_class, "__annotations__") # pylint: disable=no-member
589-
for k, v in mro_class.__annotations__.items() # pylint: disable=no-member
632+
if hasattr(mro_class, "__annotations__")
633+
for k, v in mro_class.__annotations__.items()
590634
}
591635
for attr, rf in attr_to_rest_field.items():
592636
rf._module = cls.__module__
@@ -597,12 +641,12 @@ def __new__(cls, *args: typing.Any, **kwargs: typing.Any) -> Self: # pylint: di
597641
cls._attr_to_rest_field: typing.Dict[str, _RestField] = dict(attr_to_rest_field.items())
598642
cls._calculated.add(f"{cls.__module__}.{cls.__qualname__}")
599643

600-
return super().__new__(cls) # pylint: disable=no-value-for-parameter
644+
return super().__new__(cls)
601645

602646
def __init_subclass__(cls, discriminator: typing.Optional[str] = None) -> None:
603647
for base in cls.__bases__:
604-
if hasattr(base, "__mapping__"): # pylint: disable=no-member
605-
base.__mapping__[discriminator or cls.__name__] = cls # type: ignore # pylint: disable=no-member
648+
if hasattr(base, "__mapping__"):
649+
base.__mapping__[discriminator or cls.__name__] = cls # type: ignore
606650

607651
@classmethod
608652
def _get_discriminator(cls, exist_discriminators) -> typing.Optional["_RestField"]:
@@ -613,7 +657,7 @@ def _get_discriminator(cls, exist_discriminators) -> typing.Optional["_RestField
613657

614658
@classmethod
615659
def _deserialize(cls, data, exist_discriminators):
616-
if not hasattr(cls, "__mapping__"): # pylint: disable=no-member
660+
if not hasattr(cls, "__mapping__"):
617661
return cls(data)
618662
discriminator = cls._get_discriminator(exist_discriminators)
619663
if discriminator is None:
@@ -754,7 +798,7 @@ def _get_deserialize_callable_from_annotation( # pylint: disable=too-many-retur
754798
except AttributeError:
755799
model_name = annotation
756800
if module is not None:
757-
annotation = _get_model(module, model_name)
801+
annotation = _get_model(module, model_name) # type: ignore
758802

759803
try:
760804
if module and _is_model(annotation):
@@ -894,6 +938,35 @@ def _deserialize(
894938
return _deserialize_with_callable(deserializer, value)
895939

896940

941+
def _failsafe_deserialize(
942+
deserializer: typing.Any,
943+
value: typing.Any,
944+
module: typing.Optional[str] = None,
945+
rf: typing.Optional["_RestField"] = None,
946+
format: typing.Optional[str] = None,
947+
) -> typing.Any:
948+
try:
949+
return _deserialize(deserializer, value, module, rf, format)
950+
except DeserializationError:
951+
_LOGGER.warning(
952+
"Ran into a deserialization error. Ignoring since this is failsafe deserialization", exc_info=True
953+
)
954+
return None
955+
956+
957+
def _failsafe_deserialize_xml(
958+
deserializer: typing.Any,
959+
value: typing.Any,
960+
) -> typing.Any:
961+
try:
962+
return _deserialize_xml(deserializer, value)
963+
except DeserializationError:
964+
_LOGGER.warning(
965+
"Ran into a deserialization error. Ignoring since this is failsafe deserialization", exc_info=True
966+
)
967+
return None
968+
969+
897970
class _RestField:
898971
def __init__(
899972
self,

0 commit comments

Comments
 (0)