summaryrefslogtreecommitdiff
path: root/lib/sqlalchemy
diff options
context:
space:
mode:
authorMike Bayer <mike_mp@zzzcomputing.com>2019-05-30 11:31:03 -0400
committerMike Bayer <mike_mp@zzzcomputing.com>2019-06-20 13:50:41 -0400
commit190e0139e834e4271268652e058c280787ae69eb (patch)
tree21e93907a58cd2f390f687ddc5e0c1da1eb25454 /lib/sqlalchemy
parentff8e7732b9f656f8cea05544660c18d57dd37864 (diff)
downloadsqlalchemy-190e0139e834e4271268652e058c280787ae69eb.tar.gz
Enable F841
This is a very useful assertion which prevents unused variables from being set up allows code to be more readable and sometimes even more efficient. test suites seem to be where the most problems are and there do not seem to be documentation examples that are using this, or at least the linter is not taking effect within rst blocks. Change-Id: I2b3341d8dd14da34879d8425838e66a4b9f8e27d
Diffstat (limited to 'lib/sqlalchemy')
-rw-r--r--lib/sqlalchemy/dialects/mssql/base.py1
-rw-r--r--lib/sqlalchemy/dialects/mssql/pyodbc.py2
-rw-r--r--lib/sqlalchemy/engine/result.py2
-rw-r--r--lib/sqlalchemy/orm/events.py24
-rw-r--r--lib/sqlalchemy/sql/coercions.py1
-rw-r--r--lib/sqlalchemy/sql/functions.py8
-rw-r--r--lib/sqlalchemy/testing/plugin/pytestplugin.py1
-rw-r--r--lib/sqlalchemy/testing/suite/test_reflection.py34
-rw-r--r--lib/sqlalchemy/testing/suite/test_results.py2
-rw-r--r--lib/sqlalchemy/util/compat.py1
-rw-r--r--lib/sqlalchemy/util/deprecations.py2
-rw-r--r--lib/sqlalchemy/util/langhelpers.py2
12 files changed, 14 insertions, 66 deletions
diff --git a/lib/sqlalchemy/dialects/mssql/base.py b/lib/sqlalchemy/dialects/mssql/base.py
index 8c3d5b3fa..99abba2c6 100644
--- a/lib/sqlalchemy/dialects/mssql/base.py
+++ b/lib/sqlalchemy/dialects/mssql/base.py
@@ -2674,7 +2674,6 @@ class MSDialect(default.DefaultDialect):
# group rows by constraint ID, to handle multi-column FKs
fkeys = []
- fknm, scols, rcols = (None, [], [])
def fkey_rec():
return {
diff --git a/lib/sqlalchemy/dialects/mssql/pyodbc.py b/lib/sqlalchemy/dialects/mssql/pyodbc.py
index 02d70a373..2246886a3 100644
--- a/lib/sqlalchemy/dialects/mssql/pyodbc.py
+++ b/lib/sqlalchemy/dialects/mssql/pyodbc.py
@@ -269,7 +269,7 @@ class MSExecutionContext_pyodbc(MSExecutionContext):
# without closing it (FreeTDS particularly)
row = self.cursor.fetchall()[0]
break
- except self.dialect.dbapi.Error as e:
+ except self.dialect.dbapi.Error:
# no way around this - nextset() consumes the previous set
# so we need to just keep flipping
self.cursor.nextset()
diff --git a/lib/sqlalchemy/engine/result.py b/lib/sqlalchemy/engine/result.py
index d0b16a745..740565f5e 100644
--- a/lib/sqlalchemy/engine/result.py
+++ b/lib/sqlalchemy/engine/result.py
@@ -503,7 +503,6 @@ class ResultMetaData(object):
def _merge_textual_cols_by_position(
self, context, cursor_description, result_columns
):
- dialect = context.dialect
num_ctx_cols = len(result_columns) if result_columns else None
if num_ctx_cols > len(cursor_description):
@@ -558,7 +557,6 @@ class ResultMetaData(object):
yield idx, colname, mapped_type, coltype, obj, untranslated
def _merge_cols_by_none(self, context, cursor_description):
- dialect = context.dialect
for (
idx,
colname,
diff --git a/lib/sqlalchemy/orm/events.py b/lib/sqlalchemy/orm/events.py
index 5bf6ff418..6cc0e2eba 100644
--- a/lib/sqlalchemy/orm/events.py
+++ b/lib/sqlalchemy/orm/events.py
@@ -194,11 +194,7 @@ class InstanceEvents(event.Events):
@classmethod
def _listen(cls, event_key, raw=False, propagate=False, **kw):
- target, identifier, fn = (
- event_key.dispatch_target,
- event_key.identifier,
- event_key._listen_fn,
- )
+ target, fn = (event_key.dispatch_target, event_key._listen_fn)
if not raw:
@@ -444,11 +440,7 @@ class _EventsHold(event.RefCollection):
def _listen(
cls, event_key, raw=False, propagate=False, retval=False, **kw
):
- target, identifier, fn = (
- event_key.dispatch_target,
- event_key.identifier,
- event_key.fn,
- )
+ target = event_key.dispatch_target
if target.class_ in target.all_holds:
collection = target.all_holds[target.class_]
@@ -472,11 +464,7 @@ class _EventsHold(event.RefCollection):
)
def remove(self, event_key):
- target, identifier, fn = (
- event_key.dispatch_target,
- event_key.identifier,
- event_key.fn,
- )
+ target = event_key.dispatch_target
if isinstance(target, _EventsHold):
collection = target.all_holds[target.class_]
@@ -1974,11 +1962,7 @@ class AttributeEvents(event.Events):
propagate=False,
):
- target, identifier, fn = (
- event_key.dispatch_target,
- event_key.identifier,
- event_key._listen_fn,
- )
+ target, fn = event_key.dispatch_target, event_key._listen_fn
if active_history:
target.dispatch._active_history = True
diff --git a/lib/sqlalchemy/sql/coercions.py b/lib/sqlalchemy/sql/coercions.py
index ccd506a73..39e6628e4 100644
--- a/lib/sqlalchemy/sql/coercions.py
+++ b/lib/sqlalchemy/sql/coercions.py
@@ -101,7 +101,6 @@ class RoleImpl(object):
self._use_inspection = issubclass(role_class, roles.UsesInspection)
def _resolve_for_clause_element(self, element, argname=None, **kw):
- literal_coercion = self._literal_coercion
original_element = element
is_clause_element = False
diff --git a/lib/sqlalchemy/sql/functions.py b/lib/sqlalchemy/sql/functions.py
index 173789998..04fb16a80 100644
--- a/lib/sqlalchemy/sql/functions.py
+++ b/lib/sqlalchemy/sql/functions.py
@@ -50,14 +50,14 @@ def register_function(identifier, fn, package="_default"):
"""
reg = _registry[package]
- raw_identifier = identifier
identifier = identifier.lower()
# Check if a function with the same identifier is registered.
if identifier in reg:
util.warn(
"The GenericFunction '{}' is already registered and "
- "is going to be overriden.".format(identifier))
+ "is going to be overriden.".format(identifier)
+ )
reg[identifier] = fn
@@ -389,8 +389,6 @@ class FunctionElement(Executable, ColumnElement, FromClause):
class FunctionAsBinary(BinaryExpression):
def __init__(self, fn, left_index, right_index):
- left = fn.clauses.clauses[left_index - 1]
- right = fn.clauses.clauses[right_index - 1]
self.sql_function = fn
self.left_index = left_index
self.right_index = right_index
@@ -611,7 +609,7 @@ class _GenericMeta(VisitableType):
cls.type = clsdict["__return_type__"]
# Check _register attribute status
- cls._register = getattr(cls, '_register', True)
+ cls._register = getattr(cls, "_register", True)
# Register the function if required
if cls._register:
diff --git a/lib/sqlalchemy/testing/plugin/pytestplugin.py b/lib/sqlalchemy/testing/plugin/pytestplugin.py
index 99106d7e5..e0335c135 100644
--- a/lib/sqlalchemy/testing/plugin/pytestplugin.py
+++ b/lib/sqlalchemy/testing/plugin/pytestplugin.py
@@ -147,7 +147,6 @@ def pytest_collection_modifyitems(session, config, items):
if sub_cls is not test_class.cls:
per_cls_dict = rebuilt_items[test_class.cls]
- names = [i.name for i in items]
for inst in pytest.Class(
sub_cls.__name__, parent=test_class.parent.parent
).collect():
diff --git a/lib/sqlalchemy/testing/suite/test_reflection.py b/lib/sqlalchemy/testing/suite/test_reflection.py
index e8d75bafa..e529a0753 100644
--- a/lib/sqlalchemy/testing/suite/test_reflection.py
+++ b/lib/sqlalchemy/testing/suite/test_reflection.py
@@ -300,11 +300,7 @@ class ComponentReflectionTest(fixtures.TablesTest):
"remote_table_2",
]
meta = self.metadata
- users, addresses, dingalings = (
- self.tables.users,
- self.tables.email_addresses,
- self.tables.dingalings,
- )
+
insp = inspect(meta.bind)
if table_type == "view":
@@ -413,11 +409,7 @@ class ComponentReflectionTest(fixtures.TablesTest):
def _test_get_columns(self, schema=None, table_type="table"):
meta = MetaData(testing.db)
- users, addresses, dingalings = (
- self.tables.users,
- self.tables.email_addresses,
- self.tables.dingalings,
- )
+ users, addresses = (self.tables.users, self.tables.email_addresses)
table_names = ["users", "email_addresses"]
if table_type == "view":
table_names = ["users_v", "email_addresses_v"]
@@ -597,11 +589,7 @@ class ComponentReflectionTest(fixtures.TablesTest):
@testing.provide_metadata
def _test_get_foreign_keys(self, schema=None):
meta = self.metadata
- users, addresses, dingalings = (
- self.tables.users,
- self.tables.email_addresses,
- self.tables.dingalings,
- )
+ users, addresses = (self.tables.users, self.tables.email_addresses)
insp = inspect(meta.bind)
expected_schema = schema
# users
@@ -739,11 +727,7 @@ class ComponentReflectionTest(fixtures.TablesTest):
@testing.provide_metadata
def _test_get_indexes(self, schema=None):
meta = self.metadata
- users, addresses, dingalings = (
- self.tables.users,
- self.tables.email_addresses,
- self.tables.dingalings,
- )
+
# The database may decide to create indexes for foreign keys, etc.
# so there may be more indexes than expected.
insp = inspect(meta.bind)
@@ -995,11 +979,6 @@ class ComponentReflectionTest(fixtures.TablesTest):
@testing.provide_metadata
def _test_get_view_definition(self, schema=None):
meta = self.metadata
- users, addresses, dingalings = (
- self.tables.users,
- self.tables.email_addresses,
- self.tables.dingalings,
- )
view_name1 = "users_v"
view_name2 = "email_addresses_v"
insp = inspect(meta.bind)
@@ -1021,11 +1000,6 @@ class ComponentReflectionTest(fixtures.TablesTest):
@testing.provide_metadata
def _test_get_table_oid(self, table_name, schema=None):
meta = self.metadata
- users, addresses, dingalings = (
- self.tables.users,
- self.tables.email_addresses,
- self.tables.dingalings,
- )
insp = inspect(meta.bind)
oid = insp.get_table_oid(table_name, schema)
self.assert_(isinstance(oid, int))
diff --git a/lib/sqlalchemy/testing/suite/test_results.py b/lib/sqlalchemy/testing/suite/test_results.py
index 8bf66d2eb..4fc0bb79d 100644
--- a/lib/sqlalchemy/testing/suite/test_results.py
+++ b/lib/sqlalchemy/testing/suite/test_results.py
@@ -345,7 +345,7 @@ class ServerSideCursorsTest(
def test_roundtrip(self):
md = self.metadata
- engine = self._fixture(True)
+ self._fixture(True)
test_table = Table(
"test_table",
md,
diff --git a/lib/sqlalchemy/util/compat.py b/lib/sqlalchemy/util/compat.py
index 11bfe7a03..b655a55f3 100644
--- a/lib/sqlalchemy/util/compat.py
+++ b/lib/sqlalchemy/util/compat.py
@@ -74,7 +74,6 @@ def inspect_getfullargspec(func):
nkwargs = co.co_kwonlyargcount if py3k else 0
args = list(names[:nargs])
kwonlyargs = list(names[nargs : nargs + nkwargs])
- step = 0
nargs += nkwargs
varargs = None
diff --git a/lib/sqlalchemy/util/deprecations.py b/lib/sqlalchemy/util/deprecations.py
index 9abf4a6be..9af800591 100644
--- a/lib/sqlalchemy/util/deprecations.py
+++ b/lib/sqlalchemy/util/deprecations.py
@@ -112,8 +112,6 @@ def deprecated_params(**specs):
check_defaults = ()
check_kw = set(messages)
- has_kw = spec.varkw is not None
-
@decorator
def warned(fn, *args, **kwargs):
for m in check_defaults:
diff --git a/lib/sqlalchemy/util/langhelpers.py b/lib/sqlalchemy/util/langhelpers.py
index 7a7faff60..d923a6aa1 100644
--- a/lib/sqlalchemy/util/langhelpers.py
+++ b/lib/sqlalchemy/util/langhelpers.py
@@ -276,7 +276,7 @@ def _inspect_func_args(fn):
nargs = co.co_argcount
return (
list(co.co_varnames[:nargs]),
- bool(co.co_flags & inspect.CO_VARKEYWORDS),
+ bool(co.co_flags & co_varkeywords),
)