News and Updates
SQLAlchemy 1.4.8 Released
April 15, 2021 permalink
SQLAlchemy 1.4.8 is now available.
Release 1.4.8 includes four regression fixes, two of them minor, one more significant issue regarding the fairly new with_expression() feature, and finally a critical fix for the SQL Server dialect involving LIMIT/OFFSET rendering; all SQL Server users on the 1.4 series should ensure 1.4.8 or greater is installed.
The additional changes in release 1.4.8 are fixes for new 1.4 features and behaviors, including several for the Mypy plugin which continues to be under development; Mypy integration is an extremely complicated task and we are fortunate to have additional developers continuing to improve this extension as well as developing the new sqlalchemy2-stubs package.
The 1.4 series has had an incredible eight releases within less than a one month period; contrast to the 1.3 series, which from its 1.3.0 release had only three releases total within the same time period. The unusual cadence of the 1.4 series is due to the very fundamental and far ranging architectural changes that have taken place for this series, brought on by the overall "SQLAlchemy 2.0" project and its focus on making something of a fresh start from over a decade of older architectural patterns, as well as the introduction of native caching support for all SQL constructs and similar features which are essentially "game changer" kinds of changes. The SQLAlchemy userbase is now very broad, so we have benefitted from rapid reporting of a significant range of edge case regressions that for a new project would have taken months if not years to identify. To date, all of the regression fixes have been of the "one liner" variety (literally in most cases, figuratively in a few others ;) ), meaning no changes to any architectural approaches have been necessary, only the correct application of newer internal patterns in various areas that were missed by the existing tests (which are of course expanded each time to exercise each new identified use case).
We would like to encourage users to take the leap and work through the new 1.4/2.0 Unified Tutorial, which describes SQLAlchemy from top to bottom all at once, and hopes to provide a contextual foundation for what's needed to jump into the reference documentation.
We'd like to extend a huge thanks to our userbase for helping us solidify the 1.4 series as well as the ever growing base of SQLAlchemy core developers and regular contributors who are making a huge difference.
The complete changelog for 1.4.8 is at Changelog.
SQLAlchemy 1.4.8 is available on the Download Page.
SQLAlchemy 1.4.7 Released
April 09, 2021 permalink
SQLAlchemy 1.4.7 is now available.
Release 1.4.7 includes two ORM related fixes relating to the "autobegin" feature of the Session as well as some new eager loading features, and is recommended for all users of the ORM.
While the releases are coming fast as we get 1.4 fully adapted to an ever growing expanse of existing SQLAlchemy codebases, every release still relies on our great userbase and core dev team to report, triage and fix as fast as possible; thanks to everyone involved.
The complete changelog for 1.4.7 is at Changelog.
SQLAlchemy 1.4.7 is available on the Download Page.
SQLAlchemy 1.4.6 Released
April 06, 2021 permalink
SQLAlchemy 1.4.6 is now available.
Continuing with the fastest series of SQLAlchemy releases ever, 1.4.6 has a handful of fixes, two of which are further small but potentially impactful regressions from the 1.3 series.
Release 1.4.6 has additional fixes for LIMIT/OFFSET queries on Oracle and SQL Server as well as a fix to the methodology of the "yield_per" feature when used with the legacy ORM Query object.
Also included are significant improvements to the stability of the Mypy plugin.
Huge thanks to our userbase and core development team for working to make release 1.4.6 possible.
The complete changelog for 1.4.6 is at Changelog.
SQLAlchemy 1.4.6 is available on the Download Page.
SQLAlchemy 1.4.5 Released
April 02, 2021 permalink
SQLAlchemy 1.4.5 is now available.
Release 1.4.5 includes the next round of mostly small regressions and bug fixes for the 1.4 series. The most major change in this release is that the "statement caching" feature has been changed to be "opt in" for third party dialects, after the identification of some patterns in some dialects that are not compatible with statement caching. Third party dialects that want to add support for statement caching should set the supports_statement_cache flag on each dialect subclass that they implement, and then test that SQL statements which include literal Python values, particularly those used for LIMIT/OFFSET, are rendered correctly as they change across executions for the same statement. See the changelog for further details.
The above issue was also identified in the Oracle dialect, so all Oracle installations using the 1.4 series should upgrade to 1.4.5.
Support for the Mypy plugin is still ongoing; while there are some Mypy fixes in this release, there are still additional known issues which will be resolved in upcoming releases. The sqlalchemy2-stubs package is also undergoing rapid development and should be improving significantly in the coming weeks.
Huge thanks to our userbase and core development team for working to make release 1.4.5 possible.
The complete changelog for 1.4.5 is at Changelog.
SQLAlchemy 1.4.5 is available on the Download Page.
SQLAlchemy 1.4.4 Released
March 31, 2021 permalink
SQLAlchemy 1.4.4 is now available.
Release 1.4.4 includes a short set of mostly minor bug fixes, and a small fix for one significant issue in the new PropComparator.and_() method which can be used to apply custom criteria to relationship loads where bound parameters would not be applied correctly.
The primary development effort within the 1.4 series is further fixes and improvements to the Mypy plugin as well as the related sqlalchemy2-stubs package. Upcoming fixes to those features involve more significant development of new test suites so are not included in 1.4.4 as of yet. Mypy plugin work continues to go well as some difficult issues integrating with Mypy have been figured out.
Huge thanks to our userbase and core development team for working to make release 1.4.4 possible.
For users migrating from 1.3, the first stop is the What's New in 1.4? document which will provide an overview of how to get started with SQLAlchemy 1.4.
The complete changelog for 1.4.4 as well as all the beta releases is at Changelog.
SQLAlchemy 1.4.4 is available on the Download Page.