diff --git a/api/funkwhale_api/music/metadata.py b/api/funkwhale_api/music/metadata.py index 481f9a7e2dc4d3584e58ef037201428e44a1f9c3..105bb6fe6cf52e4189f67ab5afe4a040b265a2c6 100644 --- a/api/funkwhale_api/music/metadata.py +++ b/api/funkwhale_api/music/metadata.py @@ -2,7 +2,7 @@ import base64 from collections.abc import Mapping import datetime import logging -import pendulum +import arrow import mutagen._util import mutagen.oggtheora @@ -575,9 +575,9 @@ class PermissiveDateField(serializers.CharField): return datetime.date(parsed.year, parsed.month, parsed.day) try: - parsed = pendulum.parse(str(value)) + parsed = arrow.get(str(value)) return datetime.date(parsed.year, parsed.month, parsed.day) - except (pendulum.exceptions.ParserError, ValueError): + except (arrow.parser.ParserError, ValueError): pass return None diff --git a/api/funkwhale_api/music/models.py b/api/funkwhale_api/music/models.py index cdfb819b70a4c003337a5898738450144d68938d..ecb616b4141529e91aef85fbdffe772ee0233269 100644 --- a/api/funkwhale_api/music/models.py +++ b/api/funkwhale_api/music/models.py @@ -6,7 +6,7 @@ import tempfile import urllib.parse import uuid -import pendulum +import arrow import pydub from django.conf import settings from django.contrib.contenttypes.fields import GenericRelation @@ -286,7 +286,7 @@ def import_artist(v): def parse_date(v): - d = pendulum.parse(v).date() + d = arrow.get(v).date() return d diff --git a/api/requirements/base.txt b/api/requirements/base.txt index e2a21df29179cf6f21d75abf28b58c98e6c854d0..55b495596981d0b852d96351008cb18f412619b7 100644 --- a/api/requirements/base.txt +++ b/api/requirements/base.txt @@ -32,7 +32,7 @@ django-cors-headers>=3.2,<3.3 musicbrainzngs==0.6 djangorestframework>=3.11,<3.12 djangorestframework-jwt>=1.11,<1.12 -pendulum>=2,<3 +arrow>=0.15.5,<0.16 persisting-theory>=0.2,<0.3 django-versatileimagefield>=2.0,<2.1 django-filter>=2.1,<2.2