News and Updates

SQLAlchemy 1.4.23 Released
permalink

SQLAlchemy 1.4.23 is now available.

Release 1.4.23 has a significant number of fixes and improvements. Notable changes include:

  • The greenlet dependency used by the asyncio extension now will install by default only on common platforms where greenlet is known to be supported; if asyncio support is needed on less common architectures, the sqlalchemy[asyncio] target needs to be stated explicitly when installing with pip.
  • Support is improved for the sqlalchemy2-stubs package by allowing declaration of "generic" types against SQLAlchemy classes at runtime
  • Changes have been made to the "selectinload" and "lazyload" loader strategies to accommodate various loader and user-defined options scenarios more correctly, by implementing a simplification of these strategies to no longer use the "lambda caching" feature internally.
  • Added a new parameter maintain_column_froms to the Select.with_only_columns method so that it is easier to change the columns being SELECTed from without altering the FROM list.

Thanks to our user and contributor communities for their ongoing help and support and our core team for their excellent work.

The complete changelog for 1.4.23 is at Changelog.

SQLAlchemy 1.4.23 is available on the Download Page.

SQLAlchemy 1.4.22 Released
permalink

SQLAlchemy 1.4.22 is now available.

Release 1.4.22 includes a fix to statement caching regarding INSERT statements rendered by the ORM, particularly those on the PostgreSQL database. The release also includes a short series of fixes for other relatively minor and specific issues.

Thanks to our user and contributor communities for their ongoing help and support and our core team for their excellent work.

The complete changelog for 1.4.22 is at Changelog.

SQLAlchemy 1.4.22 is available on the Download Page.

SQLAlchemy 1.4.21 Released
permalink

SQLAlchemy 1.4.21 is now available.

Release 1.4.21 includes a series of improvements within the ORM and Core components to improve issues regarding column naming in SQL statements and result sets (see issue #6718 and #6710 in the changelog), as well as an adjustment to a particular case where the ORM would emit a lazyload during an attribute set event for one-to-one relationships that's particularly troublesome when using the asyncio extension; this operation has been changed to occur only when enabled using the active_history flag (see issue #6708 in the changelog).

A series of fixes regarding PostgreSQL "ON CONFLICT" statements are also included.

Thanks to all the users who reported and contributed to this release as well as the ongoing efforts of our amazing core team.

The complete changelog for 1.4.21 is at Changelog.

SQLAlchemy 1.4.21 is available on the Download Page.

SQLAlchemy 1.4.20 Released
permalink

SQLAlchemy 1.4.20 is now available.

Release 1.4.20 fixes a range of small issues most of which involve fairly specific use cases. There is also one regression that is fixed due to an ORM related adjustment from release 1.4.19 in the area of deferred columns rendering within subqueries.

Thanks to all the users who reported and contributed to this release as well as the ongoing efforts of our amazing core team.

The complete changelog for 1.4.20 is at Changelog.

SQLAlchemy 1.4.20 is available on the Download Page.

SQLAlchemy 1.4.19 Released
permalink

SQLAlchemy 1.4.19 is now available.

Release 1.4.19 includes a variety of bug fixes in areas such as asyncio support, ORM use, the Mypy plugin, and some dialect-level fixes. In asyncio in particular, an issue was fixed that prevented the asyncio.CancelledError from being intercepted correctly within engine-level error handling, leading to stability issues for applications and web containers that make use of this condition to halt tasks.

Thanks to our users and developers for their continued support and efforts on the project.

The complete changelog for 1.4.19 is at Changelog.

SQLAlchemy 1.4.19 is available on the Download Page.