﻿id	summary	reporter	owner	description	type	status	component	version	severity	resolution	keywords	cc	stage	has_patch	needs_docs	needs_tests	needs_better_patch	easy	ui_ux
27182	Some import statement use backslashes instead of parentheses	Chris Jerdonek	nobody	"Some import statements in Django's code base use backslashes to break long lines instead of parentheses (at least 21 occurrences if you search the code base for ""`import \`""). Here is one example (direct link [https://github.com/django/django/blob/9a2a52558e080f109a27d40a033a135c9d0e7e50/django/contrib/gis/db/backends/mysql/base.py#L1 here]):

{{{#!python
from django.db.backends.mysql.base import \
    DatabaseWrapper as MySQLDatabaseWrapper
}}}

These go against Django's coding style standards, which say in the ""Imports"" section [https://docs.djangoproject.com/en/dev/internals/contributing/writing-code/coding-style/#imports to use parentheses]:

 Break long lines using parentheses and indent continuation lines by 4 spaces.
 
Django's coding style also says to follow PEP 8, which says this:

 The preferred way of wrapping long lines is by using Python's implied line continuation inside parentheses, brackets and braces. Long lines can be broken over multiple lines by wrapping expressions in parentheses. These should be used in preference to using a backslash for line continuation.

I believe this issue is caused by a bug in isort, since the isort section of Django's `setup.cfg` [https://github.com/django/django/blob/9a2a52558e080f109a27d40a033a135c9d0e7e50/setup.cfg#L16 already sets] `multi_line_output=5` (which means to use parentheses). I tried filing an issue about this [https://github.com/timothycrosley/isort/issues/466 here].
"	Cleanup/optimization	closed	Core (Other)	1.10	Normal	needsinfo			Someday/Maybe	0	0	0	0	0	0
