NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
Maven Central · #787 by repository stars
Last release today
24 Sep 2026
Ships on a steady schedule
a new release about every 2 weeks
Nearly every release is documented
notes for 60 of the last 60 stable releases
Nothing withdrawn
no release was ever pulled
12 years old
307 releases · first in 2014
Update Google dependencies to fix DoS vulnerability in protobuf
Bump Log4J suggested version to 2.17.1 to mitigate CVE-2021-44832
Extract Firebird code to plugin. This will need to be added as a new dependency. See Firebird documentation.
Bump Log4J suggested version to 2.17.1 to mitigate CVE-2021-44832
Issue 3372 Bump H2 to 2.0.206 due to GHSA-h376-j262-vhq6
Thanks to everflux and dblackstock for reporting these issues.
One column per quarter.
Upgrade suggested version of Log4J to 2.17
Thanks to everyone who reported these issues.
Issue 3347 Fix NPE when parsing single-line 'BEGIN' statements in SQL Server and detect 'BEGIN CONVERSATION' and 'BEGIN DIALOG'
Thanks to noobgramming, jasouyris and md5 for reporting these issues.
Upgrade suggested version of Log4J to 2.16
Upgrade suggested version of Log4J to 2.15
Upgrade suggested version of Log4J to 2.15
Issue 3339 Upgrade H2 version to 2.0.202
Issue 3341 Remove unnecessary warning for MariaDB driver when connecting to a MySQL database on compatible database versions
Thanks to zenpaul and hemberger for reporting these issues.
Escape db name during doExists in MSSQL
Removing MySQL Driver from inclusion in Flyway distribution due to License. MariaDB will be used as fallback driver if no MySQL driver is present on t
Thanks to chipilov for reporting these issues.
Grab DBMS_OUTPUT from Oracle when handling errors
Extract SQLServer code to plugin. This will need to be added as a new dependency. See SQL Server documentation .
Clean XML Schema Collections in SQL Server
Issue 3329 Allow null values for installed on by using commit timestamp in GCP Cloud Spanner
Issue 3332 Update GSON to 2.8.9
Thanks to plaflamme and leyuzhu for reporting these issues.
fix bug where notice level logs ignored the minimum log level configured
Clean XML Schema Collections in SQL Server
Rename 'FlywayExtension' in the API to 'PluginMetadata'
Issue 3327 Replace SET SQLBLANKLINES warning with debug message
Add 'beforeConnect' callback to Teams that executes before Flyway establishes a connection
Add support for SQL*Plus variable concatenation
Thanks to everyone who reported these issues.
Replace 'ApiExtension' with 'ConfigurationExtension'. Instead of calling 'getExtensionConfiguration()' on a Configuration object, you must now call 'g
Add look ahead to parser to fix wrapped sql statements
Fix bug with logs not appearing when using 'jarDirs'
Issue 3304 Fix bug in parsing MySQL with multiple 'CASE' statements inside 'ORDER BY'
Issue 3304 Fix bug in parsing MySQL with multiple 'CASE' statements inside 'ORDER BY'
Issue 3310 Fix bug in detecting emptiness in non-existent schemas
Issue 3311 Fix bug in time function used when updating BigQuery lock
Issue 3309 Support MariaDB 10.6
Issue 3313 Add support for PostgreSQL 14
Add ability to specify 'target=next' to apply just the next migration
Add Kerberos authentication support for SQL Server
Issue 3306 Add 'ignoreMigrationPatterns' setter that takes an array of 'ValidatePattern's
Thanks to kevinrjones, cowwoc, todd-dev, A248, geirolz, klesniewski and md5 for reporting these issues.
The JSON output for 'flyway migrate' now contains additional information about successful migrations run up to the point of failure when a migration f
Fix bug where encoding detection would fail if the file was empty
Fix bug where encoding detection would fail if the file was empty
Issue 3299 Fix bug in the availability of custom placeholders in script migrations
Thanks to Phil-Factor for reporting these issues.
Flyway V8 introduced breaking changes incrementally over 3 beta releases. Check them below to see all breaking changes when upgrading to Flyway V8.
Flyway V8 introduced breaking changes incrementally over 3 beta releases. Check them below to see all breaking changes when upgrading to Flyway V8.
Fix issues in applying new migrations on top of baseline migrations
Issue 3291 Fix parsing of multiline configuration parameters that contain a '='
Issue 3292 Fix parsing of empty statements in SQLServer
Thanks to vincentoconnell and brynjulv for reporting these issues.
change Configuration boolean getter methods to match Java standard naming convention. (FailOnMissingTarget, DetectEncoding, OutputQueryResults, Create
Issue 3279 Fix constantly repairing migrations with an empty description
Issue 3284 HSQLDB not parsing DECLARE CURSOR foo FOR SELECT ... correctly
Set 10GB data size limit to using GCP BigQuery in Community Edition
Rename State Scripts to Baseline Migrations
Add Command-line extensibility point to allow custom CLI verbs
Add support for DAPR and GCSM Secrets Managers
Thanks to StefanA2 for reporting these issues.
Issue 3275 Fix parsing of identifiers with quotes in PostgreSQL
Issue 3275 Fix parsing of identifiers with quotes in PostgreSQL
Issue 3279 Repair now checks for an empty description
Thanks to tychokamphuis-accommodatiehuur, ewie, StefanA2 and Phil-Factor for reporting these issues.
Remove fields and methods marked as deprecated in V7. This includes the old '-json' flag and 'installedOn' in the JSON output from running info
Remove fields and methods marked as deprecated in V7. This includes the old '-json' flag and 'installedOn' in the JSON output from running info
Remove android support
Thanks to iilei for reporting these issues.
Issue 3256 Fix issue with CockroachDB delete lock statement timestamp not updating
Add the ability to configure which logger to use
Issue 3257 Added 'connectionRetriesInterval' property to set customizable connection retry interval (Default: 2 minutes)
Thanks to dimw and senthil-yolabs for reporting these issues.
Fix unlocking bug in PostgreSQL
Fix unlocking bug in PostgreSQL
Issue 3258 Adding FUNCTION to the list of special cases for IF EXISTS in HSQL
Issue 3261 Fix various parsing issues in BigQuery
Issue 3266 Detecting abstract Java callback classes no longer cause Flyway to fail.
Issue 3269 Simplify MySQL query to fix compatibility with third party tool Vitess
Thanks to spadger, ferrisnorth, kgroble and JaspreetSinghJassal for reporting these issues.
Resolve a nesting issue with BigQuery parsing
Resolve a nesting issue with BigQuery parsing
Fix cases of CLI hanging when no credentials are provided
Thanks to everyone who reported these issues.
Fix casing in Azure Synapse queries
Thanks to klarajanstova and s-apanasionak for reporting these issues.
DatabaseTypeRegister and VersionPrinter always use their class' classloader
Thanks to everyone who reported these issues.
Issue 3197 Fix resolving resources with the same name in multiple classpath locations
Issue 3197 Fix resolving resources with the same name in multiple classpath locations
Issue 3241 Simplify migration sorting to fix 'Comparison method violates its general contract'
Add VaultConfiguration object for configuring Vault in Maven and Gradle Plugins
Release Vault integration to Maven as a separate artifact
Thanks to magicwerk and esauser for reporting these issues.
Issue 3165 Fix execution of migrations without a transaction over a single connection
Issue 3165 Fix execution of migrations without a transaction over a single connection
Issue 3232 Fix Gradle location configuration override order
Issue 3237 Fix deadlock due to exhausted connections when creating result objects
Thanks to pw-aowen, Leyren and uwolfer for reporting these issues.
Issue 3227 Bump GCP Spanner JDBC version to fix CVE
Thanks to donna-156 for reporting these issues.
Fix in-product links that contain a reference
Include the community DB support package in the CLI
Issue 3186 Add YugabyteDB (community)
Thanks to donna-156 and ashetkar for reporting these issues.
Override vulnerable Jackson versions
Update Maven version to 3.8.1
Override vulnerable Jackson versions
Issue 3214 Make PostgreSQL database classes extendable
Issue 3229 Fail faster when checking for updates
Thanks to ashetkar and odin568 for reporting these issues.
Enable Flyway Teams for 28 days for new schemas in CLI
Enable Flyway Teams for 28 days for new schemas in CLI
Remove the need to specify -teams in CLI
Issue 3207 Fix interleaved repeatable migrations running indefinitely
Ensure that (g)login.sql doesn't fail name validation in SQL*Plus
Fix copyright symbol for better platform compatibility
Make GCP Spanner and BigQuery beta publicly available
Bump MSAL4J to fix transitive dependency CVE
Add Cockroach v21.1 support
Issue 2918 Add community-level TiDB support
Issue 3221 Verify support for HSQLDB 2.6
Thanks to A248, bb7133, donna-156, dvdtknsn, and johnlinp for reporting these issues.
Issue 3188 - Add flyway:table placeholder
Issue 3188 - Add flyway:table placeholder
Add Cockroach v21.1 support
Closed beta signup for Google Cloud Platform ( Cloud Spanner & Big Query )
Thanks to guillaumBrisard for reporting these issues.
Issue 3177 Use an instance of DatabaseTypeRegister when getting the ClassLoader
Issue 3177 Use an instance of DatabaseTypeRegister when getting the ClassLoader
Fix connecting to Snowflake with role which has special characters
Fix handling of PL/SQL / "slash" delimiters that are not in first column
Thanks to AigleeK, alexgast, aliusmiles, and polaskj for reporting these issues.
Issue 3173 Use the ClassLoader specified to Flyway when using the ServiceLoader
Issue 3173 Use the ClassLoader specified to Flyway when using the ServiceLoader
Oracle - Fix parsing of GOTO statements
Inline method to fix compatibility with GraalVM
Thanks to AigleeK, alexgast and gastaldi for reporting these issues.
Update S3 dependency to fix vulnerabilities in transitive dependencies
Issue 2205 Add failOnMissingLocations parameter
Issue 3155 Allow targets that don't exist with '?'
Add Flyway update checking in command line
Add support for auto detecting file encoding for SQL migrations.
Add Spanner Beta support
Issue 3160 Fix parsing of Oracle ACCESSIBLE BY
Issue 3161 Clean all SQLServer objects in a 2-pass approach
Issue 3132 'n rows affected' is now debug level in logs
Issue 3162 Update MySQL driver version
Update S3 dependency to fix vulnerabilities in transitive dependencies
Detect Hikari pooled connections automatically when using Oracle proxy users
Thanks to artjomsimon, jeanremacle, mabako, rbroth, wparuch, and xiagw for reporting these issues.
Add support for Oracle proxy users when using Hikari pooled connections
Add support for Oracle proxy users when using Hikari pooled connections
Issue 3139 Add GNU-standard command line help options
Issue 3152 Fix MySQL parsing nested blocks with labels
Issue 3153 Only show warning about missing default schema when relevant
Fix issue with comparator resulting (rarely) in failure during sorting migrations
Thanks to austek, Eric Sauser and tomikmar for reporting these issues.
Issue 3150 Fix a regression in 7.8.0 maven plugin
Thanks to pzygielo for reporting this issue.
Add ignoreMigrationPatterns parameter to customize validate
Add ignoreMigrationPatterns parameter to customize validate
Add support for Oracle proxy user connections
Thanks to rchurchley, wparuch and esauser for reporting these issues.
Issue 3130 Fix parsing DISTRIBUTED TRANSACTION in SQL Server
Issue 3123 Use new MariaDB parser
Issue 3131 Update MariaDB support to 10.5
Update dependencies
Ship MSAL4J dependencies for AAD auth
Update GCS dependency
Update DB2 driver
Update log4j dependency
Update Amazon SDK dependency
Make flyway.cmd more robust
Thanks to JD-CSTx and nicregez for reporting these issues.
Issue 3110 Correctly parse GO in identifiers
Issue 3110 Correctly parse GO in identifiers
Issue 3115 Handle NOT ATOMIC statements in MariaDB
Issue 3116 Fix cleaning of computed columns in SQL Server
Fix JDBC properties environment variables not trimming underscores
Issue 2847 Display link to docs page upon PostgreSQL lock fail
Issue 3105 Promote update query debug logs to info logs
Update various dependencies
SQL callbacks support shouldExecute
Fix -target=latest for undo
Add installedOnUTC field on JSON result for info
Update copyright headers
Thanks to JD-CSTx, aherkarsatish11, bobdoah, rchurchley, and zikato for reporting these issues.
Issue 3100 Add flyway:workingDirectory placeholder.
Thanks to everyone who reported these issues.
Issue 3084 Allow loading Gradle configuration artifacts outside of a Java project
Issue 3090 Fix cleaning SQL Server computed columns which are primary keys
Issue 3091 Fix exception in migration comparator by sorting ignored migrations by version
Issue 3092 Fix NPE by checking CodeSource location isn't null
Issue 3098 Throw upgrade required exception when using shouldExecute in community
Remove experimental annotations from Vault parameters
Thanks to eikek, esauser, and johnwright for reporting these issues.
Issue 3088 Fix comparator exception in migration comparator
Issue 3088 Fix comparator exception in migration comparator
Issue 3090 Fix cleaning of SQL Server computed columns which are primary keys
Fix incorrectly updating dropped schema list in clean JSON result
Issue 2761 Support SnowflakeDB QUOTED_IDENTIFIERS_IGNORE_CASE = true
Issue 3071 Support multiline boolean expressions for shouldExecute
Issue 3081 Log output from script migrations at the info level
Thanks to dvdtknsn, esauser, johnwright, and scottsauber for reporting these issues.
Issue 3063 Drop SQLServer types at the database level
Issue 3063 Drop SQLServer types at the database level
Issue 3071 Support multiline boolean expressions for shouldExecute
Issue 3074 Log referenced scripts used when calculating checksums
Issue 3066 Get MySQL and MariaDB version from the database
Check that PostgreSQL unlock result is true
Thanks to Sam-Redgate, StaffanHorke, TonytheEditor, chakrit, and scottsauber for reporting these issues.
Check that PostgreSQL advisory unlock result returns true
Check that PostgreSQL advisory unlock result returns true
Allow 'pro' in FLYWAY_EDITION environment variable
Remove warning following tests against Snowflake 5.1
Issue 3042 Add fulltext database to SQL Server non-transactional list
Issue 3060 Add Flyway upgrade exceptions when setting secret management parameters
Thanks to JeanFrancoeur and wilkinsona for reporting these issues.
Alpine Docker image rebuilt based on openjdk:16-alpine to fix CVE (as 12-alpine is no longer maintained)
Alpine Docker image rebuilt based on openjdk:16-alpine to fix CVE (as 12-alpine is no longer maintained)
Issue 3049 HSQLDB: case-sensitivity bug on PROCEDURE fixed
Issue 3053 HSQLDB: failure to parse END inside a query fixed
Vault integration: configuration now allows multiple locations for secrets
Vault integration: now support V1 of key-value secret engine
Thanks to esauser and Peter Gerrard for reporting these issues.
Issue 3037 Only use external authentication if it is required
Issue 3037 Only use external authentication if it is required
Issue 3041 Correctly parse nested multi-line comments
Issue 3043 Case-insensitive HSQLDB parsing
Thanks to JeanFrancoeur, calvarius7, esauser, and tanguanpeng1234 for reporting these issues.
Issue 3026 Fix parsing of wrapped Oracle SQL
Issue 3026 Fix parsing of wrapped Oracle SQL
Issue 3029 Include classpath variable in bash script
Issue 3034 HSQLDB - successfully parse drop procedure
Issue 2239 New callback for custom schema creation SQL
Issue 3028 Support p6spy in URLs
Support reading configurations from Vault and Conjur
Thanks to RB14, calvarius7, ericparton, luoy1991, mLarsenAlkaDk, and tobato for reporting these issues.
Issue 3021 Don't cascade when dropping SAP HANA views
Issue 3021 Don't cascade when dropping SAP HANA views
Issue 3025 Check that connected keywords are on the same line when parsin in Oracle
Issue 3029 Use classpath environment variable in bash script
Issue 3031 Calculate correct 'undoable' value when using info filters
Correct name for MSSQL integrated security DLL
Only validate cherry-picked migrations
Use correct execution time in migrate result
Thanks to BaburaoLad, cesargomezvela, iggycoder, luoy1991, and rglidden for reporting these issues.
Issue 3010 Fix MariaDB block parsing
Issue 3010 Fix MariaDB block parsing
Issue 3019 Fix NPE when repairing failed repeatables
Thanks to adipata, bjaglin, and tatumsu for reporting these issues.
Nothing published for this version
Issue 2953 Exponential backoff scheme for connect intervals
Issue 2932 Add a timeout to Flyway's custom table lock
Issue 2987 Display all validate messages in exceptions
Issue 2999 Allow 'alter type' in transactions for PostgreSQL 12 and up
Issue 2698 Execute migrations in cherryPick defined order
Issue 3005 Only drop PostgreSQL extensions owned by current user
Issue 2914 Full filename in filename default placeholder
Thanks to AigleeK, OliverDTM, axelfontaine, gendolf3d, holgerstolzenberg, and scranen for reporting these issues.
Issue 960 Read MySQL credentials from option files
Issue 960 Read MySQL credentials from option files
Issue 2914 Add filename as a default placeholder
Option to filter info by migration state
Issue 2987 Display all validate messages in exceptions
Issue 2987 Ignore superseded repeatables when validating
Thanks to AigleeK, OliverDTM, ToBeReplaced, kasgilpofi, and wilkinsona for reporting these issues.
Issue 2991 Fix Teams upgrade exception incorrectly appearing in Community edition
Thanks to kasgilpofi, wilkinsona, and willy0275 for reporting these issues.
Issue 960 Support pgpass for authentication
Issue 960 Support pgpass for authentication
Issue 2847 Allow number of lock retries to be configured.
Issue 2984 Support for SLF4J v1.8+
Issue 2967 Add schema support for Cockroach 20.2
Issue 2694 Add windows native folder
Issue 2881 Allow for filtering info output by date or version
Allow arbitrary script callbacks
Issue 2820 Add validate error codes and improve validate result object
Issue 2986 Create the schema history table when using skipExecutingMigrations without baseline
Make validate fix suggestions copy-pastable.
Thanks to A248, AigleeK, ToBeReplaced, aherkarsatish11, cheppsn, and yarhamjohn for reporting these issues.
Fix cherryPick feature name in exception
Fix cherryPick feature name in exception
Fix issue with licensing
Thanks to everyone who reported these issues.
Issue 2921 Support for Log4J v2
Issue 2921 Support for Log4J v2
Issue 2966 Passwords embedded in Flyway URLs redacted analogously to flyway.password parameter
Issue 2977 MySQL parser: BEGIN [WORK] not being parsed correctly
Thanks to Dan Carley and sniperrifle2004 for reporting these issues.
Issue 2969 Drop support for setting s3 client via fluent configuration
Issue 2969 Drop support for setting s3 client via fluent configuration
Issue 2907 Log instead of throwing exception when PostgreSQL advisory locking fails
Thanks to josephlbarnett for reporting these issues.
Issue 2952 Confirm PostgreSQL 13 support
Issue 2921 Add Log4J v2 support
Issue 2919 Allow custom S3Client to be supplied
Issue 2871 Double quote migration names in logs
Issue 2957 Make AWS S3 SDK optional
Issue 2898 Don't prompt for credentials with H2 in-memory databases
Issue 2949 Fix table locking retry logic
Issue 2954 Fix getting Oracle database name
Issue 2959 Fix handling of wrapped SQL in Oracle parser
Issue 2961 Fix SQLServer parser block handling
Make outputQueryResults public
Thanks to AigleeK, TheSench, gendolf3d, mLarsenAlkaDk, peng-ran, and pyrocks for reporting these issues.
Make validate messages suggest actions
Introduce Flyway Teams edition
Make validate messages suggest actions
Issue 2507 Add machine readable output for all commands
Issue 2780 Add jdbc-secretsmanager support
Oracle SQL*Plus support for glogin.sql
Make cherry pick work for repair
Issue 2208 clean assemblies at the database level
Issue 2924 Improve mysql parser block handling
Issue 2926 Reapply java repeatables when checksum changes from null
Issue 2928 Fix parser error when using repeated placeholders
Issue 2940 Fix sql server parser error
Issue 2448 Drop extensions in PostgreSQL when running clean
Issue 2736 Reintroduce Testcontainers support
Issue 2872 Batch SQL doesn't error out
Issue 2917 Resolve maven configuration files relatively
Make dry run work for repair
Add envvar support for validate migration naming
Read about more features that were released in the beta .
Thanks to AigleeK, JeanRev, LuisUrrutia, amccarthy, belugabehr, cdalexndr, hauntingEcho, lbreuss, mschirmacher, sdchhabaria, stankiewicz, will-sargent-eero, and yarhamjohn for reporting these issues.
Deprecated command-line argument -logFile removed (see -outputFile for replacement)
Issue 1986 Allow skipping the execution of a migration
Issue 2458 Support for SQL migrations in AWS S3 storage
Issue 2594 Postgres driver updated to support SCRAM authentication
Issue 2133 Add new callbacks beforeRepeatables and afterVersioned
Issue 2688 Enable passing JDBC properties through to clients
Support for SQL migrations in Google Cloud Storage
Oracle SQL*Plus support for login.sql
Allow cherry picking which migrations to run
Support deleting migrations
Update gradle plugin to 6.1.1
Command-line option -json superseded by -outputType=json
Issue 2805 The CLI default flyway.conf now specifies the location filesystem:sql
Issue 2808 Placeholder names are now case insensitive
Issue 1801 Ignore hidden directories on the classpath when finding resources
Issue 2785 Allow loading callbacks by scanning a provided package
Issue 2324 Invalid targets now cause an error
Issue 2859 Only load from std in when a config file with the name '-' is given
Non existent migration locations now display an error in the output
Deprecated command-line argument -logFile removed (see -outputFile for replacement)
Deprecated migration types SPRING_JDBC, UNDO_SPRING_JDBC removed (use JDBC, UNDO_JDBC instead)
Deprecated dots as location path separators
Issue 2805 The CLI default flyway.conf now specifies the location filesystem:sql
Issue 2808 Placeholder names are now case insensitive
Issue 1801 Ignore hidden directories on the classpath when finding resources
Issue 2785 Allow loading callbacks by scanning a provided package
Update gradle plugin to 6.1.1
Command-line option -json superseded by -outputType=json
Issue 2806 Add support for Azure Synapse
Issue 2466 Support for several older databases moved into Enterprise
HSQLDB 2.3 (2010)
PostgreSQL 9.4 (2014)
Sybase ASE 16.0 (2014)
Sybase ASE 16.1 (2015)
Thanks to JonLally, KrzysztofMadejski, Me1gireesh, PetterKraabol, belugabehr, fkoehler, hdgarrood, leoherbie, nelvadas, qoomon, stankiewicz, olavloite, laurentgrangier, jitu1983, and radzimir for reporting these issues and/or submitting pull requests.
Your coding agent can read these notes before it upgrades. Set up the MCP server →