Skip to content

Commit d7783ab

Browse files
author
SDKAuto
committed
CodeGen from PR 31749 in Azure/azure-rest-api-specs
Merge c207b927e4e57e4c379e86895d5741763bd5cfdd into 5f84fd4cb51170b038e4f3987970ed1aecc55ab2
1 parent 523fe37 commit d7783ab

File tree

8 files changed

+208
-248
lines changed

8 files changed

+208
-248
lines changed
Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
2-
"commit": "6132d27fe22b7876e0064827a5ac70f7a6166ab9",
2+
"commit": "60c791f3c818acc8ba2b522b956e9ed3b0794937",
33
"repository_url": "https://github.com/Azure/azure-rest-api-specs",
44
"typespec_src": "specification/deviceregistry/DeviceRegistry.Management",
5-
"@azure-tools/typespec-python": "0.36.5"
5+
"@azure-tools/typespec-python": "0.38.1"
66
}

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

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -894,6 +894,22 @@ def _deserialize(
894894
return _deserialize_with_callable(deserializer, value)
895895

896896

897+
def _failsafe_deserialize(
898+
deserializer: typing.Any,
899+
value: typing.Any,
900+
module: typing.Optional[str] = None,
901+
rf: typing.Optional["_RestField"] = None,
902+
format: typing.Optional[str] = None,
903+
) -> typing.Any:
904+
try:
905+
return _deserialize(deserializer, value, module, rf, format)
906+
except DeserializationError:
907+
_LOGGER.warning(
908+
"Ran into a deserialization error. Ignoring since this is failsafe deserialization", exc_info=True
909+
)
910+
return None
911+
912+
897913
class _RestField:
898914
def __init__(
899915
self,

sdk/deviceregistry/azure-mgmt-deviceregistry/azure/mgmt/deviceregistry/_serialization.py

Lines changed: 5 additions & 71 deletions
Original file line numberDiff line numberDiff line change
@@ -185,73 +185,7 @@ def deserialize_from_http_generics(cls, body_bytes: Optional[Union[AnyStr, IO]],
185185
except NameError:
186186
_long_type = int
187187

188-
189-
class UTC(datetime.tzinfo):
190-
"""Time Zone info for handling UTC"""
191-
192-
def utcoffset(self, dt):
193-
"""UTF offset for UTC is 0.
194-
195-
:param datetime.datetime dt: The datetime
196-
:returns: The offset
197-
:rtype: datetime.timedelta
198-
"""
199-
return datetime.timedelta(0)
200-
201-
def tzname(self, dt):
202-
"""Timestamp representation.
203-
204-
:param datetime.datetime dt: The datetime
205-
:returns: The timestamp representation
206-
:rtype: str
207-
"""
208-
return "Z"
209-
210-
def dst(self, dt):
211-
"""No daylight saving for UTC.
212-
213-
:param datetime.datetime dt: The datetime
214-
:returns: The daylight saving time
215-
:rtype: datetime.timedelta
216-
"""
217-
return datetime.timedelta(hours=1)
218-
219-
220-
try:
221-
from datetime import timezone as _FixedOffset # type: ignore
222-
except ImportError: # Python 2.7
223-
224-
class _FixedOffset(datetime.tzinfo): # type: ignore
225-
"""Fixed offset in minutes east from UTC.
226-
Copy/pasted from Python doc
227-
:param datetime.timedelta offset: offset in timedelta format
228-
"""
229-
230-
def __init__(self, offset) -> None:
231-
self.__offset = offset
232-
233-
def utcoffset(self, dt):
234-
return self.__offset
235-
236-
def tzname(self, dt):
237-
return str(self.__offset.total_seconds() / 3600)
238-
239-
def __repr__(self):
240-
return "<FixedOffset {}>".format(self.tzname(None))
241-
242-
def dst(self, dt):
243-
return datetime.timedelta(0)
244-
245-
def __getinitargs__(self):
246-
return (self.__offset,)
247-
248-
249-
try:
250-
from datetime import timezone
251-
252-
TZ_UTC = timezone.utc
253-
except ImportError:
254-
TZ_UTC = UTC() # type: ignore
188+
TZ_UTC = datetime.timezone.utc
255189

256190
_FLATTEN = re.compile(r"(?<!\\)\.")
257191

@@ -310,7 +244,7 @@ def _create_xml_node(tag, prefix=None, ns=None):
310244
return ET.Element(tag)
311245

312246

313-
class Model(object):
247+
class Model:
314248
"""Mixin for all client request body/response body models to support
315249
serialization and deserialization.
316250
"""
@@ -563,7 +497,7 @@ def _decode_attribute_map_key(key):
563497
return key.replace("\\.", ".")
564498

565499

566-
class Serializer(object): # pylint: disable=too-many-public-methods
500+
class Serializer: # pylint: disable=too-many-public-methods
567501
"""Request object model serializer."""
568502

569503
basic_types = {str: "str", int: "int", bool: "bool", float: "float"}
@@ -1441,7 +1375,7 @@ def xml_key_extractor(attr, attr_desc, data): # pylint: disable=unused-argument
14411375
return children[0]
14421376

14431377

1444-
class Deserializer(object):
1378+
class Deserializer:
14451379
"""Response object model deserializer.
14461380
14471381
:param dict classes: Class type dictionary for deserializing complex types.
@@ -2051,7 +1985,7 @@ def deserialize_rfc(attr):
20511985
try:
20521986
parsed_date = email.utils.parsedate_tz(attr) # type: ignore
20531987
date_obj = datetime.datetime(
2054-
*parsed_date[:6], tzinfo=_FixedOffset(datetime.timedelta(minutes=(parsed_date[9] or 0) / 60))
1988+
*parsed_date[:6], tzinfo=datetime.timezone(datetime.timedelta(minutes=(parsed_date[9] or 0) / 60))
20551989
)
20561990
if not date_obj.tzinfo:
20571991
date_obj = date_obj.astimezone(tz=TZ_UTC)

sdk/deviceregistry/azure-mgmt-deviceregistry/azure/mgmt/deviceregistry/_version.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,4 +6,4 @@
66
# Changes may cause incorrect behavior and will be lost if the code is regenerated.
77
# --------------------------------------------------------------------------
88

9-
VERSION = "1.0.0b2"
9+
VERSION = "1.0.0b1"

0 commit comments

Comments
 (0)