Bump sqlalchemy from 1.3.20 to 1.4.18
Bumps sqlalchemy from 1.3.20 to 1.4.18.
Release notes
Sourced from sqlalchemy's releases.
1.4.18
Released: June 10, 2021
orm
[orm] [performance] [bug] [regression] Fixed regression involving how the ORM would resolve a given mapped column to a result row, where under cases such as joined eager loading, a slightly more expensive "fallback" could take place to set up this resolution due to some logic that was removed since 1.3. The issue could also cause deprecation warnings involving column resolution to be emitted when using a 1.4 style query with joined eager loading.
References: #6596
[orm] [bug] Clarified the current purpose of the
_orm.relationship.bake_queries
flag, which in 1.4 is to enable or disable "lambda caching" of statements within the "lazyload" and "selectinload" loader strategies; this is separate from the more foundational SQL query cache that is used for most statements. Additionally, the lazy loader no longer uses its own cache for many-to-one SQL queries, which was an implementation quirk that doesn't exist for any other loader scenario. Finally, the "lru cache" warning that the lazyloader and selectinloader strategies could emit when handling a wide array of class/relationship combinations has been removed; based on analysis of some end-user cases, this warning doesn't suggest any significant issue. While settingbake_queries=False
for such a relationship will remove this cache from being used, there's no particular performance gain in this case as using no caching vs. using a cache that needs to refresh often likely still wins out on the caching being used side.[orm] [bug] [regression] Adjusted the means by which classes such as
_orm.scoped_session
and_asyncio.AsyncSession
are generated from the base_orm.Session
class, such that custom_orm.Session
subclasses such as that used by Flask-SQLAlchemy don't need to implement positional arguments when they call into the superclass method, and can continue using the same argument styles as in previous releases.References: #6285
[orm] [bug] [regression] Fixed issue where query production for joinedload against a complex left hand side involving joined-table inheritance could fail to produce a correct query, due to a clause adaption issue.
References: #6595
[orm] [bug] Fixed issue in experimental "select ORM objects from INSERT/UPDATE" use
... (truncated)
Commits
- See full diff in compare view