← ChangeRadar
sqlalchemy: changelog & breaking changes
Auto-tracked from github.com/sqlalchemy/sqlalchemy. Updated Jun 28, 2026.
rel_2_1_0b3
2026-06-27
⚠ Potential breaking changes
- relationship load no longer raises `InvalidRequestError` when no nested
- collection joinedload is in effect, since `.unique()` is no longer called
- row. This removes the per-row `Row` construction that the
- removed use of `groupby()` + `lambda` against `Row` objects
- features are fundamentally incompatible for ORM results, an
- deprecation warning is emitted when an unqualified name resolves to a
- [engine] [reflection]** Removed the legacy `include_columns` key from the dictionary returned
rel_2_0_51
2026-06-15
No breaking-change keywords detected in release notes.
rel_2_0_50
2026-05-24
No breaking-change keywords detected in release notes.
rel_2_1_0b2
2026-04-16
⚠ Potential breaking changes
- column names such as `add`, `remove`, `update`, `extend`, and
- such as `Table.c` no longer includes mutation methods that raised
- accessed naturally, e.g. `table.c.add`, `table.c.remove`,
- MetaData` of the parent table in the migration script.
rel_2_0_49
2026-04-03
⚠ Potential breaking changes
- [mssql] [usecase]** Remove warning for SQL Server dialect when a new version is detected.
rel_2_0_48
2026-03-02
No breaking-change keywords detected in release notes.
rel_2_0_47
2026-02-24
⚠ Potential breaking changes
- that no longer requires "future annotations", where the ORM's introspection
- To maintain backwards compatibility, when using the MariaDB dialect with
- the corresponding `mariadb_` prefixed options, a deprecation warning will
- the deprecation period. Users should update their code to additionally
rel_2_0_46
2026-01-21
No breaking-change keywords detected in release notes.