1.4.4
Released: March 30, 2021
orm
-
[orm] [bug] Fixed critical issue in the new
_orm.PropComparator.and_()
feature
where loader strategies that emit secondary SELECT statements such as
_orm.selectinload()
and_orm.lazyload()
would fail to
accommodate for bound parameters in the user-defined criteria in terms of
the current statement being executed, as opposed to the cached statement,
causing stale bound values to be used.This also adds a warning for the case where an object that uses
_orm.lazyload()
in conjunction with_orm.PropComparator.and_()
is attempted to be serialized; the loader criteria cannot reliably
be serialized and deserialized and eager loading should be used for this
case.References: #6139
-
[orm] [bug] [regression] Fixed missing method
_orm.Session.get()
from the
_orm.ScopedSession
interface.References: #6144
engine
-
[engine] [usecase] Modified the context manager used by
_engine.Transaction
so that
an "already detached" warning is not emitted by the ending of the context
manager itself, if the transaction were already manually rolled back inside
the block. This applies to regular transactions, savepoint transactions,
and legacy "marker" transactions. A warning is still emitted if the
.rollback()
method is called explicitly more than once.References: #6155
-
[engine] [bug] Repair wrong arguments to exception handling method
in CursorResult.References: #6138
postgresql
-
[postgresql] [bug] [reflection] Fixed issue in PostgreSQL reflection where a column expressing "NOT NULL"
will supersede the nullability of a corresponding domain.This change is also backported to: 1.3.24
References: #6161
-
[postgresql] [bug] Modified the
is_disconnect()
handler for the pg8000 dialect, which now
accommodates for a newInterfaceError
emitted by pg8000 1.19.0. Pull
request courtesy Hamdi Burak Usul.References: #6099
misc
- [misc] [bug] Adjusted the usage of the
importlib_metadata
library for loading
setuptools entrypoints in order to accommodate for some deprecation
changes.