News and Updates

SQLAlchemy 2.0.0rc2 Released
permalink

The second release candidate of SQLAlchemy 2.0 is now available.

Version 2.0.0rc2 includes a small number of relatively minor changes. In particular the MySQL/MariaDB dialect repair a regression that lasted throughout the 1.4 series where the Inspector.has_table() method would not report on the existence of temp tables.

2.0 final is still anticipated for sometime this month.

Links to the detailed changelog for 2.0.0rc2 is at Changelog.

SQLAlchemy 2.0.0rc2 is available on the Download Page.

SQLAlchemy 1.4.46 Released
permalink

SQLAlchemy 1.4.46 is now available.

The first release of the new year, SQLAlchemy 1.4.46 fixes a few fairly important issues, including an issue which could in unlikely circumstances impact connection pool stability for applications that use gevent or eventlet.

Release 1.4.46 is also a step towards the first release of SQLAlchemy 2.0 final, expected this month, introducing a new deprecation warning that emits exactly once when the application in use makes use of an API removed from 2.0, when the SQLALCHEMY_WARN_20 environment variable is not otherwise set. This deprecation warning is intended to give users that may not be following the progress of 2.0 that their requirements files should ensure SQLAlchemy 2.0 won't be installed prematurely.

The complete changelog for 1.4.46 is at Changelog.

SQLAlchemy 1.4.46 is available on the Download Page.

SQLAlchemy 2.0.0rc1 Released
permalink

The first release candidate of SQLAlchemy 2.0 is now available.

Version 2.0.0rc1 is hoped to be very close to the final 2.0.0 release which is anticipated in January. A few additional changes have been added since the 2.0.0b4 release, mostly in the area of Session behavior.

Users of SQLAlchemy 1.4 should ensure that their production requirements.txt files are capped in the 1.4 series, so that the final 2.0.0 release doesn't result in sudden changes due to surprise upgrades; upgrades from 1.4.x to 2.0.x should always be tested, even if the full migration steps were completed for the 1.4 series.

Users looking to upgrade to SQLAlchemy 2.0 are encouraged to work through the 2.0 Migration Guide <https://docs.sqlalchemy.org/en/20/changelog/migration_20.html>, which will allow the vast majority of applications that run under SQLAlchemy 1.4 to run completely under SQLAlchemy 2.0. SQLAlchemy 2.0 may have additional behaviors and API adjustments that as always should be tested against the 2.0 release itself.

Links to the detailed changelog for 2.0.0rc1 is at Changelog.

SQLAlchemy 2.0.0rc1 is available on the Download Page.

SQLAlchemy 1.4.45 Released
permalink

SQLAlchemy 1.4.45 is now available.

Release 1.4.45 includes a variety of fixes within the 1.4 series.

The complete changelog for 1.4.45 is at Changelog.

SQLAlchemy 1.4.45 is available on the Download Page.

SQLAlchemy 2.0.0b4 Released
permalink

The fourth beta release of SQLAlchemy 2.0 is now available.

Version 2.0.0b4 should be close to ready-to-release quality, in particular for the new Declarative and Python Dataclasses features, which have received much attention within the beta testing period. A variety of issues regarding different styles of annotations and dataclass mappings have been reported and fixed, as well as a range of typing related fixes and improvements to continue to allow for full strict typing without the need for plugins.

There's additionally new improvements within the schema, SQL rendering and SQL type systems and several other improvements and fixes that have either already been released in SQLAlchemy 1.4.44 or will be in SQLAlchemy 1.4.45; the changelogs for 2.0.0b3 and 2.0.0b4 now note additional issues that were backported to the 1.4 series.

The release of 2.0 final is hoped to be mid January of 2023.

The 2.0 series is at this point very close to an approximate "feature freeze", having accumulated a series of changes that will likely lead to a long period of adjustment once released; while the beta releases typically see a few thousand downloads per day, the 1.4 releases average about 1.3 million per day on a weekday, so the download base for SQLAlchemy 2.0 is expected to multiply by at least 10000% within the first few months; new issues and usage questions are expected to be extremely heavy after the release, as 2.0 has most backwards-incompatible changes of any SQLAlchemy release.

Users looking to upgrade to SQLAlchemy 2.0 are encouraged to work through the 2.0 Migration Guide <https://docs.sqlalchemy.org/en/20/changelog/migration_20.html>, which will allow the vast majority of applications that run under SQLAlchemy 1.4 to run completely under SQLAlchemy 2.0; from that point, additional migrations towards new 2.0 Declarative mappings can be undertaken, allowing for full typing support of ORM mappings without plugins. These migrations are are described in the Whats New in SQLAlchemy 2.0? document, along with other migration notes for new features and other less central API changes, such as a new API for PostgreSQL RANGE datatypes.

Links to the detailed changelog for 2.0.0b4 is at Changelog.

SQLAlchemy 2.0.0b4 is available on the Download Page.