From: Mike Bayer Date: Wed, 8 Jan 2014 17:26:07 +0000 (-0500) Subject: - fixes X-Git-Tag: rel_0_9_2~82 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=245dab384e7ac2c540097c06b33bb74eac7064be;p=thirdparty%2Fsqlalchemy%2Fsqlalchemy.git - fixes --- diff --git a/doc/build/changelog/migration_09.rst b/doc/build/changelog/migration_09.rst index c68dfdda3f..f318b0346c 100644 --- a/doc/build/changelog/migration_09.rst +++ b/doc/build/changelog/migration_09.rst @@ -417,9 +417,10 @@ made use of it:: if condition is not None: stmt = stmt.where(condition) -The above sequence, when ``condition`` is non-empty, will on 0.9 produce +The above sequence, when ``conditions`` is non-empty, will on 0.9 produce ``SELECT .. WHERE AND NULL``. The ``None`` is no longer implicitly -ignored. +ignored, and is instead consistent with when ``None`` is interpreted in other +contexts besides that of a conjunction. The correct code for both 0.8 and 0.9 should read:: @@ -438,8 +439,7 @@ backends that support boolean constants:: for cond in conditions: condition = cond & condition - if condition is not None: - stmt = stmt.where(condition) + stmt = stmt.where(condition) On 0.8, this will produce a SELECT statement that always has ``AND true`` in the WHERE clause, which is not accepted by backends that don't support