diff --git a/beet b/beet index 99dbd8cf5..21fa085b9 100755 --- a/beet +++ b/beet @@ -15,6 +15,8 @@ # The above copyright notice and this permission notice shall be # included in all copies or substantial portions of the Software. +from __future__ import division, absolute_import, print_function + import beets.ui if __name__ == '__main__': diff --git a/beets/art.py b/beets/art.py index 60f9dce88..7a65a2b80 100644 --- a/beets/art.py +++ b/beets/art.py @@ -17,6 +17,8 @@ music and items' embedded album art. """ +from __future__ import division, absolute_import, print_function + import subprocess import platform from tempfile import NamedTemporaryFile diff --git a/beetsplug/cue.py b/beetsplug/cue.py index 3e545c9a8..63051bfc1 100644 --- a/beetsplug/cue.py +++ b/beetsplug/cue.py @@ -2,6 +2,8 @@ # Copyright 2016 Bruno Cauet # Split an album-file in tracks thanks a cue file +from __future__ import division, absolute_import, print_function + import subprocess from os import path from glob import glob diff --git a/beetsplug/filefilter.py b/beetsplug/filefilter.py index 2481390f6..72b5ea9ea 100644 --- a/beetsplug/filefilter.py +++ b/beetsplug/filefilter.py @@ -16,6 +16,8 @@ """Filter imported files using a regular expression. """ +from __future__ import division, absolute_import, print_function + import re from beets import config from beets.plugins import BeetsPlugin diff --git a/beetsplug/ipfs.py b/beetsplug/ipfs.py index 6e5a5c7d4..87a100b14 100644 --- a/beetsplug/ipfs.py +++ b/beetsplug/ipfs.py @@ -14,6 +14,9 @@ """Adds support for ipfs. Requires go-ipfs and a running ipfs daemon """ + +from __future__ import division, absolute_import, print_function + from beets import ui, util, library, config from beets.plugins import BeetsPlugin diff --git a/beetsplug/metasync/__init__.py b/beetsplug/metasync/__init__.py index 219d73474..3fc0be4cc 100644 --- a/beetsplug/metasync/__init__.py +++ b/beetsplug/metasync/__init__.py @@ -15,6 +15,9 @@ """Synchronize information from music player libraries """ + +from __future__ import division, absolute_import, print_function + from abc import abstractmethod, ABCMeta from importlib import import_module diff --git a/beetsplug/metasync/amarok.py b/beetsplug/metasync/amarok.py index 78241dc1b..aaa1ee91e 100644 --- a/beetsplug/metasync/amarok.py +++ b/beetsplug/metasync/amarok.py @@ -16,6 +16,8 @@ """Synchronize information from amarok's library via dbus """ +from __future__ import division, absolute_import, print_function + from os.path import basename from datetime import datetime from time import mktime diff --git a/beetsplug/metasync/itunes.py b/beetsplug/metasync/itunes.py index ead77cd39..a62746848 100644 --- a/beetsplug/metasync/itunes.py +++ b/beetsplug/metasync/itunes.py @@ -15,6 +15,9 @@ """Synchronize information from iTunes's library """ + +from __future__ import division, absolute_import, print_function + from contextlib import contextmanager import os import shutil diff --git a/docs/conf.py b/docs/conf.py index ad100b467..e6eae663a 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -1,5 +1,7 @@ # -*- coding: utf-8 -*- +from __future__ import division, absolute_import, print_function + AUTHOR = u'Adrian Sampson' # General configuration diff --git a/docs/serve.py b/docs/serve.py index 48673ea8d..d54c8b64d 100644 --- a/docs/serve.py +++ b/docs/serve.py @@ -1,5 +1,9 @@ #!/usr/bin/env python + +from __future__ import division, absolute_import, print_function + from livereload import Server, shell + server = Server() server.watch('*.rst', shell('make html')) server.serve(root='_build/html') diff --git a/setup.cfg b/setup.cfg index 40eda74ec..b093a20b5 100644 --- a/setup.cfg +++ b/setup.cfg @@ -4,7 +4,15 @@ logging-clear-handlers=1 eval-attr="!=slow" [flake8] -# E241 missing whitespace after ',' (used to align visually) -# E221 multiple spaces before operator (used to align visually) -# E731 do not assign a lambda expression, use a def -ignore=E241,E221,E731 +# Default pyflakes errors we ignore: +# - E241: missing whitespace after ',' (used to align visually) +# - E221: multiple spaces before operator (used to align visually) +# - E731: do not assign a lambda expression, use a def +# `flake8-future-import` errors we ignore: +# - FI50: `__future__` import "division" present +# - FI51: `__future__` import "absolute_import" present +# - FI12: `__future__` import "with_statement" missing +# - FI53: `__future__` import "print_function" present +# - FI14: `__future__` import "unicode_literals" missing +# - FI15: `__future__` import "generator_stop" missing +ignore=E241,E221,E731,FI50,FI51,FI12,FI53,FI14,FI15 diff --git a/test/__init__.py b/test/__init__.py index 72fb5d544..8214c3b8e 100644 --- a/test/__init__.py +++ b/test/__init__.py @@ -1,3 +1,5 @@ # -*- coding: utf-8 -*- # Make python -m testall.py work. + +from __future__ import division, absolute_import, print_function diff --git a/test/test_filefilter.py b/test/test_filefilter.py index aec96977e..9e6a71099 100644 --- a/test/test_filefilter.py +++ b/test/test_filefilter.py @@ -15,17 +15,20 @@ """Tests for the `filefilter` plugin. """ + +from __future__ import division, absolute_import, print_function + import os import shutil -from _common import unittest +from test import _common +from test._common import unittest +from test.helper import capture_log +from test.test_importer import ImportHelper from beets import config from beets.mediafile import MediaFile from beets.util import displayable_path from beetsplug.filefilter import FileFilterPlugin -from test import _common -from test.helper import capture_log -from test.test_importer import ImportHelper class FileFilterPluginTest(unittest.TestCase, ImportHelper): diff --git a/test/test_ipfs.py b/test/test_ipfs.py index 2b2acdc2d..87ca3f2ec 100644 --- a/test/test_ipfs.py +++ b/test/test_ipfs.py @@ -12,6 +12,8 @@ # The above copyright notice and this permission notice shall be # included in all copies or substantial portions of the Software. +from __future__ import division, absolute_import, print_function + from mock import patch from beets import library diff --git a/test/test_metasync.py b/test/test_metasync.py index 6404ea1d8..f4a5f4d49 100644 --- a/test/test_metasync.py +++ b/test/test_metasync.py @@ -12,6 +12,9 @@ # # The above copyright notice and this permission notice shall be # included in all copies or substantial portions of the Software. + +from __future__ import division, absolute_import, print_function + import os import platform import time diff --git a/test/test_ui_commands.py b/test/test_ui_commands.py index ed7620725..e71db3ca9 100644 --- a/test/test_ui_commands.py +++ b/test/test_ui_commands.py @@ -15,6 +15,9 @@ """Test module for file ui/commands.py """ + +from __future__ import division, absolute_import, print_function + import os import shutil diff --git a/test/test_ui_init.py b/test/test_ui_init.py index 98a2aac99..35fd99cc5 100644 --- a/test/test_ui_init.py +++ b/test/test_ui_init.py @@ -15,6 +15,9 @@ """Test module for file ui/__init__.py """ + +from __future__ import division, absolute_import, print_function + from test import _common from test._common import unittest diff --git a/tox.ini b/tox.ini index d220f1895..cd29693a1 100644 --- a/tox.ini +++ b/tox.ini @@ -47,4 +47,5 @@ commands = [testenv:flake8] deps = flake8 + flake8-future-import commands = flake8 beets beetsplug beet test setup.py docs