replace pytz with datetime.timezone and zoneinfo
This commit is contained in:
parent
53cb42117b
commit
5262d58a0b
@ -11,7 +11,6 @@ import string
|
|||||||
import datetime
|
import datetime
|
||||||
import collections
|
import collections
|
||||||
from contextlib import closing
|
from contextlib import closing
|
||||||
import pytz
|
|
||||||
import requests
|
import requests
|
||||||
from requests.models import urlencode
|
from requests.models import urlencode
|
||||||
import dateutil
|
import dateutil
|
||||||
@ -3928,11 +3927,11 @@ class Mastodon:
|
|||||||
"""
|
"""
|
||||||
date_time_utc = None
|
date_time_utc = None
|
||||||
if date_time.tzinfo is None:
|
if date_time.tzinfo is None:
|
||||||
date_time_utc = date_time.replace(tzinfo=pytz.utc)
|
date_time_utc = date_time.replace(tzinfo=datetime.timezone.utc)
|
||||||
else:
|
else:
|
||||||
date_time_utc = date_time.astimezone(pytz.utc)
|
date_time_utc = date_time.astimezone(datetime.timezone.utc)
|
||||||
|
|
||||||
epoch_utc = datetime.datetime.utcfromtimestamp(0).replace(tzinfo=pytz.utc)
|
epoch_utc = datetime.datetime.utcfromtimestamp(0).replace(tzinfo=datetime.timezone.utc)
|
||||||
|
|
||||||
return (date_time_utc - epoch_utc).total_seconds()
|
return (date_time_utc - epoch_utc).total_seconds()
|
||||||
|
|
||||||
@ -3967,7 +3966,7 @@ class Mastodon:
|
|||||||
if v is not None:
|
if v is not None:
|
||||||
try:
|
try:
|
||||||
if isinstance(v, int):
|
if isinstance(v, int):
|
||||||
json_object[k] = datetime.datetime.fromtimestamp(v, pytz.utc)
|
json_object[k] = datetime.datetime.fromtimestamp(v, datetime.timezone.utc)
|
||||||
else:
|
else:
|
||||||
json_object[k] = dateutil.parser.parse(v)
|
json_object[k] = dateutil.parser.parse(v)
|
||||||
except:
|
except:
|
||||||
@ -4023,7 +4022,7 @@ class Mastodon:
|
|||||||
every time instead of randomly doing different things on some systems
|
every time instead of randomly doing different things on some systems
|
||||||
and also it represents that time as the equivalent UTC time.
|
and also it represents that time as the equivalent UTC time.
|
||||||
"""
|
"""
|
||||||
isotime = datetime_val.astimezone(pytz.utc).strftime("%Y-%m-%dT%H:%M:%S%z")
|
isotime = datetime_val.astimezone(datetime.timezone.utc).strftime("%Y-%m-%dT%H:%M:%S%z")
|
||||||
if isotime[-2] != ":":
|
if isotime[-2] != ":":
|
||||||
isotime = isotime[:-2] + ":" + isotime[-2:]
|
isotime = isotime[:-2] + ":" + isotime[-2:]
|
||||||
return isotime
|
return isotime
|
||||||
|
1
setup.py
1
setup.py
@ -33,7 +33,6 @@ setup(name='Mastodon.py',
|
|||||||
'requests>=2.4.2',
|
'requests>=2.4.2',
|
||||||
'python-dateutil',
|
'python-dateutil',
|
||||||
'six',
|
'six',
|
||||||
'pytz',
|
|
||||||
'python-magic',
|
'python-magic',
|
||||||
'decorator>=4.0.0',
|
'decorator>=4.0.0',
|
||||||
] + blurhash_deps,
|
] + blurhash_deps,
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
import pytest
|
import pytest
|
||||||
from mastodon.Mastodon import MastodonAPIError, MastodonNotFoundError
|
from mastodon.Mastodon import MastodonAPIError, MastodonNotFoundError
|
||||||
import datetime
|
import datetime
|
||||||
import pytz
|
import zoneinfo
|
||||||
import vcr
|
import vcr
|
||||||
import time
|
import time
|
||||||
import pickle
|
import pickle
|
||||||
@ -154,7 +154,7 @@ def test_status_pin_unpin(status, api):
|
|||||||
|
|
||||||
@pytest.mark.vcr(match_on=['path'])
|
@pytest.mark.vcr(match_on=['path'])
|
||||||
def test_scheduled_status(api):
|
def test_scheduled_status(api):
|
||||||
base_time = datetime.datetime(4000, 1, 1, 12, 13, 14, 0, pytz.timezone("Etc/GMT+2"))
|
base_time = datetime.datetime(4000, 1, 1, 12, 13, 14, 0, zoneinfo.ZoneInfo("Etc/GMT+2"))
|
||||||
the_future = base_time + datetime.timedelta(minutes=20)
|
the_future = base_time + datetime.timedelta(minutes=20)
|
||||||
scheduled_toot = api.status_post("please ensure adequate headroom", scheduled_at=the_future)
|
scheduled_toot = api.status_post("please ensure adequate headroom", scheduled_at=the_future)
|
||||||
assert scheduled_toot
|
assert scheduled_toot
|
||||||
|
Loading…
x
Reference in New Issue
Block a user