1.18.5
Released: June 25, 2026
usecase
-
[usecase] [commands] Added
--splicesupport to themerge()command. Previously, the
merge command would suggest using--splicewhen attempting to merge
non-head revisions, but the flag was not actually accepted by the command.
Thespliceparameter is now available in both the command-line
interface and thecommand.merge()function, matching the existing
support incommand.revision(). Pull request courtesy Kadir Can
Ozden.References: #1712
-
[usecase] [environment] Added
ScriptDirectory.get_heads.consider_depends_on
parameter toScriptDirectory.get_heads(). When set toTrue,
head revisions that are also a dependency of another revision via
depends_onare excluded from the result, matching the effective
heads that would be present in thealembic_versiontable after
running all upgrades.References: #1806
bug
-
[bug] [autogenerate] Fixed rendering of dialect keyword arguments containing
~sqlalchemy.schema.Columnobjects within sequences, such as
postgresql_include. These were previously rendered usingrepr(),
producing invalid Python in the generated migration scripts. Column
objects within list or tuple values are now correctly rendered as their
string column names. Pull request courtesy Ajay Singh.References: #1258
-
[bug] [mysql] Implemented type comparison for
ENUMdatatypes on MySQL, which
checks that the individual enum values are equivalent. If additional
entries are on either side, this generates a diff. Changes of order do not
generate a diff. Pull request courtesy Furkan Köykıran. -
[bug] [operations] Fixed bug where the
inline_referencesparameter of
Operations.add_column()did not include foreign key referential
actions such asON DELETE,ON UPDATE,DEFERRABLE,
INITIALLY, andMATCHwhen rendering the inlineREFERENCES
clause.References: #1820