Flyway v10 - upgrading from Flyway V9
Published 02 November 2023
There are a few things to be aware of when migrating your project from Flyway v9 to v10.
Things that may affect you
Flyway reports
- If you are using the
check.reportFilename
you will have to now usereportFilename
instead, see the reportFilename Documentation - Report generation is now off by default, see the reportEnabled documentation for information on how to change Flyway's reporting behavior.
SQL folder
This was a default location for Flyway to look for your migration scripts but it is regarded as bad practice to have your migrations located in the same place as the tool itself so we have removed the folder altogether. You can direct Flyway to look in a specific location using the Locations parameter.
Retiring flyway.plugins parameter namespace
With more pieces of functionality coming to Flyway we decided that flyway.plugins wasn't a great namespace for everything.
We've retained backwards compatibility but you'll want to rename your parameter usage at some point and we will begin the process of deprecating the flyway.plugins namespace.
Previous parameter | New parameter | Notes |
---|---|---|
flyway.plugins.clean | sqlserver.clean.mode | This was previously undocumented and made public now, see sqlserver.clean.mode for details. |
flyway.plugins.clean.schemas.exclude | sqlserver.clean.schemas.exclude | |
flyway.plugins..vault | flyway.vault | |
flyway.plugins.dapr | flyway.dapr | |
flyway.plugins.gcsm | flyway.gcsm |
API Users (Java/Maven/Gradle)
Database modules
Be aware that a number of databases have moved into their own modules from flyway-core.
In most cases you will need to update your dependencies - see the specific database support page for further information.
Changed Configuration Parameters
These only exists in the Redgate distribution
licenseKey - this has moved, see License Key for further information
undoSqlMigrationPrefix - this has moved, see undoSqlMigrationPrefix for more information
cherryPick - this has moved, see Cherry Pick for more information
Opportunities to update
Support for older databases included in Community
We are keen for our users to adopt the latest version of Flyway and previously this required purchasing a license key to use old versions of databases. We've taken away this requirement so now there is no reason not to upgrade Flyway.
TOML
Flyway now supports a new configuration format that is clearer and more extensible than the existing conf format. We haven't removed support for the .conf file but it won't be developed further.
You can find out more in: What is TOML ? and the TOML Configuration File documentation. If you want to get started then Flyway Desktop can convert your existing .conf file into a toml format automatically
Redgate Licensing
We've added online licensing to Flyway so you can use the Auth verb to get your license online and avoid the pain of managing the legacy Flyway license key. The legacy system still works though but we don't plan on issuing new license keys this way.