diff --git a/beets/dbcore/query.py b/beets/dbcore/query.py index dcbecd595..0b0cfa6f7 100644 --- a/beets/dbcore/query.py +++ b/beets/dbcore/query.py @@ -21,7 +21,6 @@ import re from operator import mul from beets import util from datetime import datetime, timedelta -from dateutil.relativedelta import relativedelta import unicodedata from functools import reduce import six @@ -561,14 +560,13 @@ class Period(object): else: m = 1 if timespan == 'y': - date = datetime.now() + m * relativedelta(years=int(quantity)) + date = datetime.now() + m * timedelta(days=int(quantity) * 365) elif timespan == 'm': - date = datetime.now() + m * relativedelta(months=int(quantity)) + date = datetime.now() + m * timedelta(days=int(quantity) * 30) elif timespan == 'w': - date = datetime.now() + m * relativedelta(weeks=int(quantity)) + date = datetime.now() + timedelta(days=int(quantity) * 7) elif timespan == 'd': - date = datetime.now() + m * relativedelta(days=int(quantity)) - + date = datetime.now() + m * timedelta(days=int(quantity)) precision = 'relative' else: if not string: diff --git a/setup.py b/setup.py index 672402603..f6e686d35 100755 --- a/setup.py +++ b/setup.py @@ -93,7 +93,6 @@ setup( 'musicbrainzngs>=0.4', 'pyyaml', 'jellyfish', - 'python-dateutil', ] + (['colorama'] if (sys.platform == 'win32') else []) + (['enum34>=1.0.4'] if sys.version_info < (3, 4, 0) else []), @@ -108,7 +107,6 @@ setup( 'pathlib', 'python-mpd2', 'discogs-client', - 'python-dateutil', ], # Plugin (optional) dependencies: diff --git a/test/test_datequery.py b/test/test_datequery.py index 95e617084..cefc03b61 100644 --- a/test/test_datequery.py +++ b/test/test_datequery.py @@ -17,9 +17,8 @@ """ from __future__ import division, absolute_import, print_function -from dateutil.relativedelta import relativedelta from test import _common -from datetime import datetime +from datetime import datetime, timedelta import unittest import time from beets.dbcore.query import _parse_periods, DateInterval, DateQuery @@ -135,9 +134,8 @@ class DateQueryTestRelative(_common.LibTestCase): self.assertEqual(len(matched), 1) def test_single_month_nonmatch_fast(self): - query = DateQuery('added', - (datetime.now() + relativedelta(months=1)).strftime( - '%Y-%m')) + query = DateQuery('added', (datetime.now() + timedelta(days=30)) + .strftime('%Y-%m')) matched = self.lib.items(query) self.assertEqual(len(matched), 0) @@ -146,9 +144,8 @@ class DateQueryTestRelative(_common.LibTestCase): self.assertTrue(query.match(self.i)) def test_single_month_nonmatch_slow(self): - query = DateQuery('added', - (datetime.now() + relativedelta(months=1)).strftime( - '%Y-%m')) + query = DateQuery('added', (datetime.now() + timedelta(days=30)) + .strftime('%Y-%m')) self.assertFalse(query.match(self.i)) def test_single_day_match_fast(self): @@ -157,9 +154,8 @@ class DateQueryTestRelative(_common.LibTestCase): self.assertEqual(len(matched), 1) def test_single_day_nonmatch_fast(self): - query = DateQuery('added', - (datetime.now() + relativedelta(days=1)).strftime( - '%Y-%m-%d')) + query = DateQuery('added', (datetime.now() + timedelta(days=1)) + .strftime('%Y-%m-%d')) matched = self.lib.items(query) self.assertEqual(len(matched), 0) diff --git a/tox.ini b/tox.ini index 8ba69faff..43bff8014 100644 --- a/tox.ini +++ b/tox.ini @@ -24,7 +24,6 @@ deps = python-mpd2 coverage discogs-client - python-dateutil [_flake8] deps =