summaryrefslogtreecommitdiff
path: root/lib/sqlalchemy/processors.py
diff options
context:
space:
mode:
authorMike Bayer <mike_mp@zzzcomputing.com>2017-10-11 17:56:14 -0400
committerMike Bayer <mike_mp@zzzcomputing.com>2017-10-12 13:39:06 -0400
commitc63658973c95996b73251e0953cf4c598cdb262b (patch)
tree1d9aba0b27f2f096369b95cf0a6dbb95f87825ac /lib/sqlalchemy/processors.py
parent3306d4d34d0f78bdda6f85a0a3be81beb2850676 (diff)
downloadsqlalchemy-c63658973c95996b73251e0953cf4c598cdb262b.tar.gz
Disallow all ambiguous boolean values for Boolean
In release 1.1, the :class:`.Boolean` type was broken in that boolean coercion via ``bool()`` would occur for backends that did not feature "native boolean", but would not occur for native boolean backends, meaning the string ``"0"`` now behaved inconsistently. After a poll, a consensus was reached that non-boolean values should be raising an error, especially in the ambiguous case of string ``"0"``; so the :class:`.Boolean` datatype will now raise ``ValueError`` if an incoming value is not within the range ``None, True, False, 1, 0``. Change-Id: If70c4f79c266f0dd1a0306c0ffe7acb9c66c4cc3 Fixes: #4102
Diffstat (limited to 'lib/sqlalchemy/processors.py')
-rw-r--r--lib/sqlalchemy/processors.py7
1 files changed, 0 insertions, 7 deletions
diff --git a/lib/sqlalchemy/processors.py b/lib/sqlalchemy/processors.py
index 17f7eccda..8ee4f470f 100644
--- a/lib/sqlalchemy/processors.py
+++ b/lib/sqlalchemy/processors.py
@@ -49,13 +49,6 @@ def str_to_datetime_processor_factory(regexp, type_):
return process
-def boolean_to_int(value):
- if value is None:
- return None
- else:
- return int(bool(value))
-
-
def py_fallback():
def to_unicode_processor_factory(encoding, errors=None):
decoder = codecs.getdecoder(encoding)