I'm having trouble getting flake8 v3's --enable-extensions feature to work the
way I want it. It's possible that I'm misunderstanding how it's supposed to
work.
I have a checker plugin that starts out like:
class ImportOrder:
name = 'flufl-import-order'
version = '0.2'
off_by_default = True
def __init__(self, tree, filename):
# ...
def run(self):
# ...
and it registers itself via an entry point like so:
setup(
# ...
entry_points={
'flake8.extensions': ['U4 = flufl.testhelpers.imports:ImportOrder'],
},
# ...
)
All of the plugin's errors are U40X and U41X codes.
What I'd like to be able to do is to tell users to add this to say their
tox.ini file:
[flake8]
enable-extensions = U4
and that would enable my extension. This doesn't seem to work though.
I know that the extension runs just fine if I don't include the
off_by_default=True class attribute, but as soon as I add that, there doesn't
seem to be a way to re-enable it. I don't want to have to tell users that the
plugin always runs and that they have to suppress the U4 errors if they don't
want it.
What am I doing wrong? Or can I not do what I think I want to do? ;)
Cheers,
-Barry