Breaking Changes
- set column null by default unless identity by @MasterOdin in #1872. Previously columns were created as
NOT NULL
by default, and to now get that behavior, you will need to explicitly pass'null' => false
in the column options. - remove remove
$direction
argument topreFlightCheck
andpostFlightCheck
(useisMigratingUp
property) by @MasterOdin in #1892 - make
utf8mb4
default charset and collation for new mysql tables by @MasterOdin in #1875 (Setcharset
andcollation
setting in phinx.php toutf8mb3
for prior behavior) - make default PKs for mysql unsigned by default by @MasterOdin in #1899. When defining foreign keys, you will need to now need to set
$signed => false
. To restore prior behavior, pass$signed => true
when defining the default PK. - Add type hints to codebase by @MasterOdin in #1995 (This does not affect the
up
,down
, orchange
methods forAbstractMigration
. If you extend from phinx, you will need to add type hinting to your code) - remove deprecated hasSchemaTable function from
AdapterInterface
by @MasterOdin in #1877 - remove deprecated
insert
,dropTable
methods fromMigrationInterface
by @MasterOdin in #1878 - Do not set code when recasting PDOException when connecting to DB by @MasterOdin in #2101
- Implement identity in
PostgresAdapter
by @ajibarra in #2085 (identity columns for postgres 10+ will now be generated asINTEGER NOT NULL GENERATED ALWAYS AS IDENTITY
instead ofSERIAL NOT NULL
)
Deprecations
- Deprecate the
default_migration_table
config setting, usemigration_table
instead by @MasterOdin in #1961
New Features
- add createSchema and dropSchema methods on MigrationInterface by @MasterOdin in #1871
Improvements
- remove check on column type for setting collation / encoding by @MasterOdin in #1881
- trigger deprecation notice when using default_database by @MasterOdin in #1890 (function had been marked as deprecated in 0.12.0)
- add support for smallserial alias for postgres by @MasterOdin in #1915 (note, using
smallinteger
on an identity column will now use the typesmallserial
) - allow setting migration_table per environment by @MasterOdin in #1961
- Add new
shouldExecute
method toAbstractMigration
andAbstractSeed
by @AdrienPoupa in #1939 - Add for geometry column type to
SqlServerAdapter
by @tedce in #1969 - Add optional
$params
argument to query/execute adapter methods to allow usage of prepared queries by @MasterOdin in #1962 - Allow specifying template style for create command by @MasterOdin in #2013 (note, the name of the base migration file has changed, argument has changed for
AbstractCommand::getMigrationTemplateFilename
) - Improve associative array phpdocs by @dereuromark in #2034
- Pass environment to seed from manager by @martenb in #2102 (note, parameter change to
Manager::getSeeds
method)
Full Changelog: 0.12.13...0.13.0