chore: Drop dependency on pytz
by using stdlib datetime.timezone.utc
#721
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
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.