summaryrefslogtreecommitdiff
path: root/HACKING.rst
diff options
context:
space:
mode:
authorRadomir Dopieralski <openstack@sheep.art.pl>2014-01-03 17:31:49 +0100
committerRadomir Dopieralski <openstack@sheep.art.pl>2014-01-07 12:26:35 +0100
commit028332da4acb1ef6b9b9a1026affcf97e5501a84 (patch)
treecfbcc14926c8f25faf2331bb9e8f8f5cd12df753 /HACKING.rst
parent6fd1a1522ae88d3b2576473b76164250ee6f2532 (diff)
downloadhorizon-028332da4acb1ef6b9b9a1026affcf97e5501a84.tar.gz
Remove #noqa from most common imports and add them to import_exceptions
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
Diffstat (limited to 'HACKING.rst')
-rw-r--r--HACKING.rst22
1 files changed, 21 insertions, 1 deletions
diff --git a/HACKING.rst b/HACKING.rst
index 8d394d651..b413c8a23 100644
--- a/HACKING.rst
+++ b/HACKING.rst
@@ -3,7 +3,27 @@ Horizon Style Commandments
- Step 1: Read the OpenStack Style Commandments
http://docs.openstack.org/developer/hacking/
-- Step 2: Read on
+- 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
-----------------------------