diff --git a/docs/changes.rst b/docs/changes.rst index 81bb8592..a8a4fb0e 100644 --- a/docs/changes.rst +++ b/docs/changes.rst @@ -19,6 +19,9 @@ v0.10.0 (in development) ``glib``. The bug can be worked around by overriding the settings that includes offending `$XDG_` variables. +- Make ``mopidy-scan`` ignore invalid dates, e.g. dates in years outside the + range 1-9999. + v0.9.0 (2012-11-21) =================== diff --git a/mopidy/scanner.py b/mopidy/scanner.py index d84c262c..829b501a 100644 --- a/mopidy/scanner.py +++ b/mopidy/scanner.py @@ -62,8 +62,12 @@ def translator(data): if gst.TAG_DATE in data and data[gst.TAG_DATE]: date = data[gst.TAG_DATE] - date = datetime.date(date.year, date.month, date.day) - track_kwargs['date'] = date + try: + date = datetime.date(date.year, date.month, date.day) + except ValueError: + pass # Ignore invalid dates + else: + track_kwargs['date'] = date.isoformat() _retrieve(gst.TAG_TITLE, 'name', track_kwargs) _retrieve(gst.TAG_TRACK_NUMBER, 'track_no', track_kwargs)