Running migrations using one of the included migrators on separate Database objects in separate threads simultaneously is now supported. Previously, the migrators were not thread-safe.
On Ruby 2.5+, :db_type entries in the schema hashes are now deduped for a slight memory savings when using many columns with the same database type.
The schema_caching extension now freezes string values in the resulting hashes, just as the default schema parsing code started doing in 5.5.0.
The schema_caching extension now supports the :callable_default schema values used by the pg_json, pg_array, and pg_hstore extensions, by removing the entry before caching and resetting it after restoring the cache.
Identifier mangling rules are now respected when renaming columns on Microsoft SQL Server.
The migrator internals were modified in order to support thread-safety. The private Migrator#remove_migration_classes method has been removed, and load_migration_file now returns the migration object/class instead of populating Migration.descendants. Migration.descendants is now only used for temporary storage, and will no longer contain all migration objects/classes used by the migrator.