028332da4a
We have a lot of import with #noqa that is there to ignore h302, because it's traditional to import and use a name directly, instead of a whole module. This hides other errors and gives people the impression that it's actually fine to import non-modules, you just have to slap #noqa on those lines. I went through the code and identified about a dozen names that are most commonly imported this way. I remove the #noqa tag from them, and added them to the list in import_exceptions. I also removed a few unused imports that were revealed in the process. Change-Id: I27afb8e2b1d4759ec974ded9464d8f010312ee78
1.0 KiB
1.0 KiB
Horizon Style Commandments
Step 1: Read the OpenStack Style Commandments http://docs.openstack.org/developer/hacking/
Step 2: The following names can be imported directly, without triggering the "H302: import only modules" flake8 warning:
collections.defaultdict, django.conf.settings, django.core.urlresolvers.reverse, django.core.urlresolvers.reverse_lazy, django.template.loader.render_to_string, django.utils.datastructures.SortedDict, django.utils.encoding.force_unicode, django.utils.html.conditional_escape, django.utils.html.escape, django.utils.http.urlencode, django.utils.safestring.mark_safe, django.utils.translation.pgettext_lazy, django.utils.translation.ugettext_lazy, django.utils.translation.ungettext_lazy, operator.attrgetter, StringIO.StringIO
Step 3: Read on
Horizon Specific Commandments
- Read the Horizon contributing documentation at http://docs.openstack.org/developer/horizon/contributing.html