This PR fixes #720, by replacing each use of pytz.utc with the standard-library datetime.timezone.utc object. This is only detectable by introspecting twilio.base.deserialize.iso8601_datetime("2023-08-24T12:34:56Z").tzinfo.__class__, but from the docs that function isn't even part of the public API. Overall I think it's fair to say that users won't be able to tell any difference at all, aside from having slightly fewer dependencies to manage!
While making this change I noticed that there were a few functions annotated as -> Optional[...] which could never return None, so I've also included a commit removing the redundant part of the annotation.
This PR fixes #720, by replacing each use of
pytz.utc
with the standard-librarydatetime.timezone.utc
object. This is only detectable by introspectingtwilio.base.deserialize.iso8601_datetime("2023-08-24T12:34:56Z").tzinfo.__class__
, but from the docs that function isn't even part of the public API. Overall I think it's fair to say that users won't be able to tell any difference at all, aside from having slightly fewer dependencies to manage!While making this change I noticed that there were a few functions annotated as
-> Optional[...]
which could never returnNone
, so I've also included a commit removing the redundant part of the annotation.