From 128c39bbb7d140d3f696e2b01823c2806b87f721 Mon Sep 17 00:00:00 2001 From: Konsta Vesterinen Date: Sat, 22 Feb 2014 14:20:34 +0200 Subject: [PATCH] Remove toolz dependency --- setup.py | 1 - sqlalchemy_utils/batch.py | 3 +-- sqlalchemy_utils/functions/orm.py | 12 +++--------- 3 files changed, 4 insertions(+), 12 deletions(-) diff --git a/setup.py b/setup.py index 426a6b7..53f1a20 100644 --- a/setup.py +++ b/setup.py @@ -63,7 +63,6 @@ setup( install_requires=[ 'six', 'SQLAlchemy>=0.9.3', - 'toolz>=0.4.1', 'total_ordering>=0.1' if sys.version_info[0] == 2 and sys.version_info[1] < 7 else '' ], diff --git a/sqlalchemy_utils/batch.py b/sqlalchemy_utils/batch.py index f4f5e40..afdd6ba 100644 --- a/sqlalchemy_utils/batch.py +++ b/sqlalchemy_utils/batch.py @@ -16,7 +16,6 @@ from sqlalchemy_utils.functions.orm import ( local_values, local_column_names, local_remote_expr, - mapfirst, remote_column_names, remote_values, remote @@ -295,7 +294,7 @@ class Fetcher(object): if len(names) == 1: attr = getattr(remote(self.prop), names[0]) return attr.in_( - mapfirst(list_local_values(self.prop, self.path.entities)) + v[0] for v in list_local_values(self.prop, self.path.entities) ) elif len(names) > 1: return sa.or_( diff --git a/sqlalchemy_utils/functions/orm.py b/sqlalchemy_utils/functions/orm.py index 6ebae55..4b7feef 100644 --- a/sqlalchemy_utils/functions/orm.py +++ b/sqlalchemy_utils/functions/orm.py @@ -1,6 +1,6 @@ from functools import partial from operator import attrgetter -from toolz import curry, first +from toolz import first import six import sqlalchemy as sa from sqlalchemy import inspect @@ -41,24 +41,18 @@ def getattrs(obj, attrs): return map(partial(getattr, obj), attrs) -def mapfirst(iterable): - return map(first, iterable) - - -@curry def local_values(prop, entity): return tuple(getattrs(entity, local_column_names(prop))) def list_local_values(prop, entities): - return map(local_values(prop), entities) + return map(partial(local_values, prop), entities) def remote_values(prop, entity): return tuple(getattrs(entity, remote_column_names(prop))) -@curry def local_remote_expr(prop, entity): return sa.and_( *[ @@ -72,7 +66,7 @@ def local_remote_expr(prop, entity): def list_local_remote_exprs(prop, entities): - return map(local_remote_expr(prop), entities) + return map(partial(local_remote_expr, prop), entities) def remote(prop):