]> git.ipfire.org Git - thirdparty/sqlalchemy/sqlalchemy.git/commitdiff
- make a note in 1.1 migration notes for ref #4102
authorMike Bayer <mike_mp@zzzcomputing.com>
Thu, 12 Oct 2017 15:15:11 +0000 (11:15 -0400)
committerMike Bayer <mike_mp@zzzcomputing.com>
Thu, 12 Oct 2017 15:15:38 +0000 (11:15 -0400)
Change-Id: If9edba3af476bc4303246e55d0ecb53009084342
(cherry picked from commit 9ffee8c94a2ed586b2d1abe404276a044078b8ca)

doc/build/changelog/migration_11.rst

index c790e4641165c322314f3bf85526b59cba67ca32..aa751a6c3e8a9f4acdb4b0214b2d7d3dcd7dc637 100644 (file)
@@ -1646,6 +1646,21 @@ with the pure-Python int-to-boolean processor and is more forgiving of
 existing data already within the database.   Values of None/NULL are as before
 retained as None/NULL.
 
+.. note::
+
+   this change had an unintended side effect that the interpretation of non-
+   integer values, such as strings, also changed in behavior such that the
+   string value ``"0"`` would be interpreted as "true", but only on backends
+   that don't have a native boolean datatype - on "native boolean" backends
+   like Postgresql, the string value ``"0"`` is passed directly to the driver
+   and is interpreted as "false".  This is an inconsistency that did not occur
+   with the previous implementation.It should be noted that passing strings or
+   any other value outside of ``None``, ``True``, ``False``, ``1``, ``0`` to
+   the :class:`.Boolean` datatype is **not supported** and version 1.2 will
+   raise an error for this scenario (or possibly just emit a warning, TBD).
+   See also :ticket:`4102`.
+
+
 :ticket:`3730`
 
 .. _change_2837: