Flyway V12 - updating from V11
Published 28 January 2026
Native Connectors MongoDB Driver
In Flyway v12 we're removing removing the integration with the legacy MongoDB driver and no longer shipping it. We've replaced it with the Native Connectors driver that uses the MongoDB API and mongosh tool (see Flyway Native Connectors - MongoDB). This has been the default driver since Flyway 11.5.0 (2025-03-26) and will be moving from being a preview feature to being GA
Some specific things to call out:
- Script migrations aren't (yet) supported with the Native Connectors driver
- If you were using
check -codeand your own regex rules then these won't work (yet) and you will see a "no database plugin found"error
If either of these are major issues then please contact Redgate support and we can review the priority on addressing these.
Redgate Compare now uses .NET 10
This shouldn't cause any problems as most dependencies are included but be aware that there are still a few external dependency requirements that need to be fulfilled by the OS you are running Flyway on
This could have an impact if you are using Enterprise functionality and building your own docker containers that include Flyway.
Flyway reporting output
Flyway's reports have been refactored so they no longer record a chronological set of Flyway events. If you want to keep a history of changes then we suggest you archive a copy of the generated report before running the next similar Flyway operation
Code Analysis Changes
Stopped supporting SQLFluff v1.2.1
Flyway used to only integrate with SQLFluff v1.2.1 because of changes in the output format of SQLFluff after that release. We removed that limitation in Flyway 10.15.1 (2024-06-27).
SQLFluff is now up to v4 and is so much better and more capable that keeping compatibility with this version makes no sense.
- For Community users you'll need to update your local version of SQLFluff to something more recent than v1.3.0
- For Enterprise users - we have a built-in instance of SQLFluff so you don't need to change anything
Removed support for legacy violation configuration
We're removing support for the following parameters in favor of doing this in your SQLFluff configuration
check.majorRulescheck.minorRulescheck.majorTolerancecheck.minorTolerance
This blog post give a path to migrate over.
No longer shipping Redgate Regex rules
These were present in the /rules folder of every release.
We've replaced these with equivalent SQLFluff rules, see Replacing Redgate regex rules with SQLFluff rules.
We're stopping shipping these to avoid the nuisance of duplicate warnings if you run both regex and SQLFluff analysis.
Removed regex rules field passOnRegexMatch
This was an option that could be put in the Flyway TOML file that encapsulated the regex rule.
This inverted the logic of the regex (so you could look for the absence of a pattern rather than the presence).
The same can be accomplished with the regex itself
Other housekeeping changes
Removed cleanOnValidationError parameter
You can find out what to do instead here Deprecation of Clean On Validation Error
Updated the commandExtension method signature
We've removed Command from the method signature, this is an API in the public interface as part of flyway-core that we use to extend Flyway.
- We've changed the method signature so if you are using this then you'll need to update your code and rebuild your module. and we've removed this because it is redundant.
We've updated the interface to return a generic type so code that implements this can be more expressive and do less casting
Removed REDGATE_LICENSING_PERMIT_PATH
This was how you supplied Flyway with an offline permit, this has now been replaced with the Offline Permit Path that is more useful as it available through more than just an environment variable.
It is the same contents, just a different name for the environment variable if you are using it that way.
Removed flyway.plugins namespace items
We announced the deprecation of this in Flyway V11 and that post includes what to use instead