1.2.16
Released: January 11, 2019
-
Fixed issue in "expanding IN" feature where using the same bound parameter
name more than once in a query would lead to a KeyError within the process
of rewriting the parameters in the query.References: #4394
-
[bug] [postgresql] Fixed issue where a
postgresql.ENUM
or a custom domain present
in a remote schema would not be recognized within column reflection if
the name of the enum/domain or the name of the schema required quoting.
A new parsing scheme now fully parses out quoted or non-quoted tokens
including support for SQL-escaped quotes.References: #4416
-
[bug] [postgresql] Fixed issue where multiple
postgresql.ENUM
objects referred to
by the sameMetaData
object would fail to be created if
multiple objects had the same name under different schema names. The
internal memoization the PostgreSQL dialect uses to track if it has
created a particularpostgresql.ENUM
in the database during
a DDL creation sequence now takes schema name into account. -
[bug] [engine] Fixed a regression introduced in version 1.2 where a refactor
of theSQLAlchemyError
base exception class introduced an
inappropriate coercion of a plain string message into Unicode under
python 2k, which is not handled by the Python interpreter for characters
outside of the platform's encoding (typically ascii). The
SQLAlchemyError
class now passes a bytestring through under
Py2K for__str__()
as is the behavior of exception objects in general
under Py2K, does a safe coercion to unicode utf-8 with
backslash fallback for__unicode__()
. For Py3K the message is
typically unicode already, but if not is again safe-coerced with utf-8
with backslash fallback for the__str__()
method.References: #4429
-
[bug] [mysql] [oracle] [sql] Fixed issue where the DDL emitted for
DropTableComment
, which
will be used by an upcoming version of Alembic, was incorrect for the MySQL
and Oracle databases.References: #4436
-
[bug] [sqlite] Reflection of an index based on SQL expressions are now skipped with a
warning, in the same way as that of the Postgresql dialect, where we currently
do not support reflecting indexes that have SQL expressions within them.
Previously, an index with columns of None were produced which would break
tools like Alembic.References: #4431