documentation/Release notes and older versions/Release Notes for Flyway Engine.html
serverId in Maven plugin now correctly respects user-configured value via flyway.serverIdconnectRetries, connectRetriesInterval, and failOnMissingLocations from the flyway extension configurationflyway version and flyway auth-check.generateReport to control whether check should write the result to a fileoutputType=json is setYou can find out more at Flyway V12 - updating from V11
Thanks to 023-dev for reporting these issues.
Thanks to lesniakd for reporting these issues.
check is called with both -drift and -changes flags, -drift is now always run first as there will be a performance improvement when using a build environmentmodel, generate, and prepare commands now return full selection output instead of a list of names of included dependenciesincludeDependencies = false in the [redgateCompare.oracle.options.behavior] section of the config file.check -drift against a database with no snapshot history tableThanks to toadzky and MahogaWeerasinghe for reporting these issues.
outputType=json; it is posted via STDERRdebugMode and quietMode in Loggers. When using Flyway via the Java API, Log level is now configured via LogFactory.setLogLevel(LogLevel). All appropriate loggers will now honor the LogLevel including quietMode (most loggers were previously flawed and would ignore this)Thanks to mendhak, crammond, calou and mmitch for reporting these issues.
Thanks to acarstensen for reporting these issues.
Thanks to numeraltwo for reporting these issues.
beforeDeploy, afterDeploy, and afterDeployError callbacks in locations specified by the callbackLocations parameter. This allows logic to be executed before and after script execution for state-based deployments.callbackLocations parameterCallback interface now extends a generic interface. The compile-time signature is unchanged.Thanks to mokamoto12 for reporting these issues.
generate.usePlaceholders=true to allow the generate verb to place placeholders into generated filesThanks to mokamoto12 for reporting these issues.
prepare" characters in migrationsThanks to marcust for reporting these issues.
Thanks to trainman and axelfontaine for reporting these issues.
STREAMLIT objects to Snowflake parserThanks to andreir229 for reporting these issues.
test databaseThanks to heikkis, swarna7602, lambdaupb, and oimo23 for reporting these issues.
FAILED_BASELINE_MIGRATION to convey failure when migration a baselineThanks to tomwinget for reporting these issues.
deploy command will now succeed with a warning if the deployment script does not exist, allowing for smoother chaining with the prepare command..json migrationsThanks to KarolRoman for reporting these issues.
flyway init now preserves conf defaultsflyway init might not rename the original .conf file to .conf.bakCOMMENT IF EXISTSThanks to nicolashenry and mlorek for reporting these issues.
validateMigrationNamingorg-reactive-streamsThanks to ExtraClock for reporting these issues.
USER PROCEDURES instead of all PROCEDURESThanks to iapethus and vgw-chriskruger for reporting these issues.
Thanks to wangbfqq and ExtraClock for reporting these issues.
org.flywaydb.enterprise group ID on the Redgate Maven Repository. Please use com.redgate.flywaycleanOnValidationError function and configuration has been removed. An error will be thrown if this feature is configuredprepare and deploy flyway commands have been added, enabling a state-based deployment directly from a schema model or another databaseThanks to seungdangdang for reporting these issues.
InnoDBflyway init -init.projectName=test you can now shortcut to flyway init -projectName=test.Thanks to Mihitoko and kantselovich for reporting these issues.
check.url, check.password and check.username. These undocumented historic fields have been deprecated for a while and have confusing impacts (such as not working in all check functionality). It is recommended to use environments to replace this functionality, alternatively, check does support standard url, username and passwordrepair performance when removing failed migrationsThanks to gsmet and tdg5 for reporting these issues.
check -drift is run without setting deployedSnapshotThanks to cowwoc for reporting these issues.
createStatement override not being used in DB2 Z/OSThanks to liununu for reporting these issues.
Thanks to Quairix for reporting these issues.
Thanks to catostrophe for reporting these issues.
placeholderReplacement to true in the script configuration had no effect when it was false in the global configuration.org.flywaydb:flyway-database-cassandra artifact on Maven CentralThanks to janhicken for reporting these issues.
${flyway:workingDirectory} not using configured working directory has been fixedtargetSchemaVersion is not set in API and JSON result objects when migrate fails, or no versioned migrations are appliedThanks to credmond-git and BlueIce for reporting these issues.
outputProgress support to legacy (conf) projectsThanks to BusyByte for reporting these issues.
ErrorCode enum is now an interface with the base enum now residing in CoreErrorCode. Any Java usage of this enum will need to be updated accordingly.init command which will create a project compatible with Flyway Desktopflyway.communityDBSupportEnabled to turn off community db support database types if desiredjava.desktopThanks to axelfontaine for reporting these issues.
workingDirectory parameterpermitMysqlScheme flag in the URLThanks to bhavneshpateloptum for reporting these issues.
check -dryrun for MongoDBThanks to jerdaane for reporting these issues.
flyway-community-db-support/ has been moved to separate repository: flyway/flyway-community-db-support. Any new PRs for database support additions need to be raised there and any existing PRs in flyway/flyway will need to be transferred by the author.Thanks to EugenMayer and frichtarik for reporting these issues.
getEnginesThanks to AdalbertMemSQL for reporting these issues.
Thanks to ashtonbatty for reporting these issues.
auth commandsupported-databases command.flyway-sqlserver into flyway-database folder spaceThanks to fage88 for reporting these issues.
ConfigUtilsThanks to AlejandroYuste for reporting these issues.
FLYWAY_JDBC_PROPERTIES_ACCESSTOKEN environment variable with toml projectssql folder from Flyway CLI and Docker releaseorg.flywaydb.enterprise to com.redgate.flyway. Duplicate packages will be deployed to org.flywaydb.enterprise until a future release.Thanks to kankaiz for reporting these issues.
Thanks to hho for reporting these issues.
Thanks to trourance for reporting these issues.
check.reportFilename parameterBaselineVersion configuration if SchemaHistory table is absent.Thanks to oujesky and iamniche-too for reporting these issues.
Thanks to froque for reporting these issues.
Thanks to TheHenrick for reporting these issues.
WSRERP=ON is present. This is to allow for usage of MariaDB with Galera clustersdriver() method to FluentConfigurationcheck -changes or check -drift now handles schema creation rows in the schema history table.Undoable column to provide this information. Also, there was some inconsistency whereby undo migrations in the AVAILABLE state were already filtered out but others were not.BEGIN ATOMIC.Thanks to sseide for reporting these issues.
-community or -teams. These flags are no longer used by Flyway and have been marked for deprecation. These flags will be removed in V10.html extension on automatically generated reports and prevent generation of reports for currently unsupported verbsinfo call as a tab in a flyway HTML report.WHENEVER SQLERROR EXIT in Oracle SQL*Plus. This now works on its own and no longer needs to be followed by FAILURE or SQL.SQLCODE.Thanks to lm-net, ryangraffy, jdmendozaa and frichtarik for reporting these issues.
Thanks to mihalyr for reporting these issues.
flyway-bom to use correct versioning system and deploy to Maven CentralThanks to eddumelendez, frichtarik and Phil-Factor for reporting these issues.
Thanks to frichtarik for reporting these issues.
Thanks to niegowic for reporting these issues.
Thanks to zihniogmen for reporting these issues.
Thanks to pachu, hackyoMa and frichtarik for reporting these issues.
version or -v or --version) will now list the versions of all plugins (and if they are correctly licensed)Thanks to nafg for reporting these issues.
flyway.executeInTransaction should now correctly set when doing so via an environment variable.setBaselineVersion(MigrationVersion baselineVersion) on ClassicConfigurationThanks to bmarcaur for reporting these issues.
Thanks to gastaldi for reporting these issues.
Thanks to Glavis for reporting these issues.
check -drift allowing the build to be halted should drift exist.Thanks to nycjay, engvalla and basweitjens for reporting these issues.
-code for Enterprise tierThanks to pachu for reporting these issues.
Thanks to dev257, Peter-Laws and oaowren for reporting these issues.
Thanks to cowwoc and ben-peacock-uk for reporting these issues.
check codeThanks to juliahayward and hemberger for reporting these issues.
Thanks to filiprichtarik for reporting these issues.
Thanks to jward-premise for reporting these issues.
Thanks to mihalyr for reporting these issues.
Thanks to ggolawski for reporting these issues.
Thanks to henricook and hackyoMa for reporting these issues.
END AS are not cut off early.Thanks to arshaknorsoyan, matmannion and odin568 for reporting these issues.
.html when generating the JSON result for a check reportThanks to henricook for reporting these issues.
Thanks to pzygielo for reporting these issues.
Thanks to CharmanderJieniJieni, AlexandruKetroy and medwards8 for reporting these issues.
Thanks to sleepkever, csudhirr and alexandrugrigor for reporting these issues.
Thanks to olavquorum and bennyr1003 for reporting these issues.
Thanks to cies for reporting these issues.
Thanks to medwards8 and MMaus for reporting these issues.
Thanks to xmanemran for reporting these issues.
Thanks to Phil-Factor for reporting these issues.
Thanks to caseyhall and lbreuss for reporting these issues.
Thanks to sesgoe for reporting these issues.
Thanks to troosan for reporting these issues.
Thanks to everflux and dblackstock for reporting these issues.
Thanks to everyone who reported these issues.
Thanks to noobgramming, jasouyris and md5 for reporting these issues.
Thanks to zenpaul and hemberger for reporting these issues.
Thanks to chipilov for reporting these issues.
Thanks to plaflamme and leyuzhu for reporting these issues.
Thanks to everyone who reported these issues.
Thanks to kevinrjones, cowwoc, todd-dev, A248, geirolz, klesniewski and md5 for reporting these issues.
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.
Thanks to vincentoconnell and brynjulv for reporting these issues.
Thanks to StefanA2 for reporting these issues.
Thanks to tychokamphuis-accommodatiehuur, ewie, StefanA2 and Phil-Factor for reporting these issues.
Thanks to iilei for reporting these issues.
Thanks to dimw and senthil-yolabs for reporting these issues.
Thanks to spadger, ferrisnorth, kgroble and JaspreetSinghJassal for reporting these issues.
Thanks to everyone who reported these issues.
Thanks to klarajanstova and s-apanasionak for reporting these issues.
Thanks to everyone who reported these issues.
Thanks to magicwerk and esauser for reporting these issues.
Thanks to pw-aowen, Leyren and uwolfer for reporting these issues.
Thanks to donna-156 for reporting these issues.
Thanks to donna-156 and ashetkar for reporting these issues.
Thanks to ashetkar and odin568 for reporting these issues.
-teams in CLIThanks to A248, bb7133, donna-156, dvdtknsn, and johnlinp for reporting these issues.
Thanks to guillaumBrisard for reporting these issues.
Thanks to AigleeK, alexgast, aliusmiles, and polaskj for reporting these issues.
Thanks to AigleeK, alexgast and gastaldi for reporting these issues.
Thanks to artjomsimon, jeanremacle, mabako, rbroth, wparuch, and xiagw for reporting these issues.
Thanks to austek, Eric Sauser and tomikmar for reporting these issues.
Thanks to pzygielo for reporting this issue.
ignoreMigrationPatterns parameter to customize validate0 rows affected at the debug levelThanks to rchurchley, wparuch and esauser for reporting these issues.
PROXY_USER_NAME in JDBC properties to create proxy connections to Oracle databasesThanks to JD-CSTx and nicregez for reporting these issues.
GO in identifiersNOT ATOMIC statements in MariaDBshouldExecute-target=latest for undoinstalledOnUTC field on JSON result for infoThanks to JD-CSTx, aherkarsatish11, bobdoah, rchurchley, and zikato for reporting these issues.
flyway:workingDirectory placeholder.Thanks to everyone who reported these issues.
Thanks to eikek, esauser, and johnwright for reporting these issues.
QUOTED_IDENTIFIERS_IGNORE_CASE = trueshouldExecuteThanks to dvdtknsn, esauser, johnwright, and scottsauber for reporting these issues.
Thanks to Sam-Redgate, StaffanHorke, TonytheEditor, chakrit, and scottsauber for reporting these issues.
Thanks to JeanFrancoeur and wilkinsona for reporting these issues.
Thanks to esauser and Peter Gerrard for reporting these issues.
Thanks to JeanFrancoeur, calvarius7, esauser, and tanguanpeng1234 for reporting these issues.
Thanks to RB14, calvarius7, ericparton, luoy1991, mLarsenAlkaDk, and tobato for reporting these issues.
Thanks to BaburaoLad, cesargomezvela, iggycoder, luoy1991, and rglidden for reporting these issues.
Thanks to adipata, bjaglin, and tatumsu for reporting these issues.
shouldExecute in script configThanks to adipata, axelfontaine, gendolf3d, OliverDTM and scranen for reporting these issues.
Thanks to AigleeK, OliverDTM, axelfontaine, gendolf3d, holgerstolzenberg, and scranen for reporting these issues.
Thanks to AigleeK, OliverDTM, ToBeReplaced, kasgilpofi, and wilkinsona for reporting these issues.
Thanks to kasgilpofi, wilkinsona, and willy0275 for reporting these issues.
Thanks to A248, AigleeK, ToBeReplaced, aherkarsatish11, cheppsn, and yarhamjohn for reporting these issues.
Thanks to everyone who reported these issues.
flyway.password parameterThanks to Dan Carley and sniperrifle2004 for reporting these issues.
Thanks to josephlbarnett for reporting these issues.
Thanks to AigleeK, TheSench, gendolf3d, mLarsenAlkaDk, peng-ran, and pyrocks for reporting these issues.
glogin.sqlRead 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.
beforeRepeatables and afterVersionedlogin.sql-json superseded by -outputType=json-logFile removed (see -outputFile for replacement)SPRING_JDBC, UNDO_SPRING_JDBC removed (use JDBC, UNDO_JDBC instead)-json superseded by -outputType=jsonIssue 2806 Add support for Azure Synapse
Issue 2466 Support for several older databases moved into Enterprise
adoptopenjdk:12-jre-hotspot and openjdk:12-alpineThanks 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.
Thanks to amccarthy and sstrang for reporting these issues and/or submitting pull requests.
Thanks to amccarthy, hauntingEcho, and sdchhabaria for reporting these issues.
Thanks to leoherbie for reporting these issues and/or submitting pull requests.
Thanks to ekennedy247 for reporting these issues and/or submitting pull requests.
Thanks to anake1, ankos, Mauro Molinari and t-kwasniewski for reporting these issues and/or submitting pull requests.
adoptopenjdk:12-jre-hotspot and openjdk:12-alpineThanks to Nathan Ginther and Yvette Cook for reporting these issues and/or submitting pull requests.
Thanks to Sourav1407, XhstormR, geoand, htto, lwasylow, mikhailRo, monmallonga, and wkiszka for reporting these issues and/or submitting pull requests.
Thanks to intacctvaler, monmallonga, and srjonemed for reporting these issues.
Thanks to angusholder, davidjeddy, joachimvda, philippedurocher, and zjwu2000 for reporting these issues.
Thanks to Kenny2912 and LHCGreg for reporting these issues.
Thanks to ChristianFischerJena, Nathan Ginther, Marc Bennewitz, Frank Huster, Damjan Vujnovic, Andreas Müller, laurentgrangier, and Wesley Leung for reporting these issues.
Thanks to Ali Ustek, Jörg Hohwiller, Alexis Deschamps, Ben Manes, Ben Manes, Jonas Natten, Jacquers, Damjan Vujnovic, Matteo Quintiliani, Chris Borckholder, and ln0v for reporting these issues.
Thanks to JFNGO, JamesGuthrie, SamuraiPrinciple, netsrotr, rafael-trevisan, and sergey-selivanov for reporting these issues.
System.console()Thanks to Al Johri, Damjan Vujnovic, James Ball, Jonas Karlsson and stesix for reporting these issues.
DROP TABLE IF EXISTSThanks to AigleeK, feoktant, James Ball, Nick Edwards, Rafael Trevisan, for reporting these issues and/or submitting pull requests.
workingDirectory parameter added to clients which didn't already have itflyway.confDDL IN TRAN = OFFThanks to Komurugesan, artjomsimon, bjornhilstad, fumal4evr, goranpaues-tradedoubler, jakaarl, esauser, jaa2261, kippm, philci52, shadowmanos, and vitas for reporting these issues.
SPOOLThanks to emarcellus, Jonathan Putney, Slaiman Ahmdshah, Sreejith Madhavan, and Valdemar Grange for reporting these issues.
Thanks to marcobehler, mbreevoort, and wjtkp for reporting these issues.
Thanks to the development team at CockroachDB for their assistance with issue 2663, and dohrayme for reporting MariaDB issues.
clean fails on SQL Server 2014 and olderThanks to KiruthikaSS, Kindrat, filiprichtarik, LukeLaz, romaindup, and codicuz for reporting these issues and/or submitting pull requests.
CASE...END in SAP HANAThanks to allenatdecisiv, esauser, Roman Dubinin, Marko K, Nicholas Fechner, stesix, rickselby and morl-la for reporting these issues and/or submitting pull requests.
Q'! ... !' quoted string literalsThanks to codicuz and jaa2261 for reporting these issues and/or submitting pull requests.
PROMPT statement Flyway TeamsEND CASE statementCREATE JAVA statementThanks to David Atkinson, codicuz and fszilinski for reporting these issues and/or submitting pull requests.
migrate and cleanLOOP in Oracle parser-X (DEBUG) modeThanks to esauser, JFNGO, Joe Wu, SDepn, stevenenen and Tyson Gern for reporting these issues.
PROCEDURE in Postgres 12-logFile usedThanks to BartBM, Christoph Dreis, Jeroen Roosen, Joe Wu and Tarcio Saraiva for reporting these issues.
FLYWAY.CURRENT_SCHEMA placeholderflyway.defaultSchemaCREATE TABLE ... AS SELECT not allowed in MySQL when enforcing GTID consistencySET ECHO ON should echo to Flyway's outputThanks to Bob Tierney, David Campbell, esauser, Dennis Jansen, fanticat, fcaponi, Gavin Figueroa, John Yarham, jshayward (no relation!), Mike Breault, Milan Nankov, NEzer2 and rjungwirth for reporting these issues and/or submitting pull requests.
Thanks to David Atkinson, Niklas Lochschmidt, Seb Urbaniak and Tadayuki Onishi for reporting these issues and/or submitting pull requests.
& in comments should not trigger SQL*Plus placeholder replacement Flyway Teams/ delimiter causes migration to failThanks to bramant, Matonen and stevenenen for reporting these issues and/or submitting pull requests.
SET statement is preceded by comments Flyway TeamsSERVEROUTPUT is set to WORD_WRAPPED Flyway TeamsThanks to Axel Fontaine, elieabichar-wk, Richard Kettelerij and sladis for reporting these issues and/or submitting pull requests.
Thanks to esauser and gintsgints for reporting these issues and/or submitting pull requests.
validate() now warns on all checksum failures, rather than stopping at the first one foundThanks to cdalexndr, Ezra Epstein, Martin Konôpka and gorille for reporting these issues and/or submitting pull requests.
Thanks to Garret Wilson, Gerard de Leeuw, Jeroen Meys and GregorKo for reporting these issues and/or submitting pull requests.
DEFINE statements fixed Flyway TeamsThanks to 123Haynes, Kevin George, Morshed Daud, pcable, Piotrek Zygielo, Simon Stelling, Tauri28, and terje2001 for reporting these issues and submitting pull requests.
SELECT statementsimplementation-scoped artifacts, only compileloggerNameMismatch warning disabledALTER TABLE ALTER COLUMN isn't executed in transactionIF EXISTS causes incorrect block depth countThanks to AigleeK, anjo-swe, Árpád Egyed, beyondlov1, Christian Swan, dnk8n, esauser, François Guillot, JohnEgan91, Kirill Vergun, krite, mpe85, Richard Glidden, Ryan McElroy, sdwarwick and voronaam for reporting these issues.
SET/SHOW ECHO/TERMOUT/TIME/TIMING support Flyway TeamsDATABASE_TO_UPPER=falsePull RequestSQL_SAFE_UPDATES and FOREIGN_KEY_CHECKS after each migrationexecuteQuery()Thanks to alexander-semenets-dev, armondoortega, Cristina Petri, Ernst-Udo Wallenborn, Jeremy Fleischman, Joe Barnett, Josh Wheeler, KiruthikaSS, kwood612, Lucas Persson, Mária Jurcovicová, Me1gireesh, pvhors, Richard Glidden, Sofoklis Papasofokli, swanym, tcat2 and Tomáš Poledný for reporting these issues and contributing fixes.
Thanks to AlBa231, armondoortega, asamonov, CobraFlow, esauser, Evan J. Ercolano, Gerd Behrmann, Guy Brand, jankoh, Jason Turim, Jonas Kongslund, jutoft, Lochan08, Renat Sabitov, Sabine Heimsath, smrutikanta-cog, svpace, tinybarks and tomas-silhavy for reporting these issues and contributing fixes.
was unexpected at this time errorThanks to ArunNeo, Jason Hinch, Jean-Pierre Froud, Kevin George, laurre and seb-urbaniak for reporting these issues.
Thanks to Antti Lampinen for reporting this issue.
Thanks to Gerd Behrmann, htto, pjchester, Renat Sabitov, seb-urbaniak and SH.Xue for reporting these issues.
Thanks to edquan, GregorKo, seb-urbaniak and Stéphane Nicoll for reporting these issues.
MigrationResolver.resolveMigrations() now takes a Context parameterMigrationExecutor has been moved to the new org.flywaydb.core.api.executor packageMigrationExecutor.executeInTransaction() has been renamed to canExecuteInTransaction()MigrationExecutor.execute() now takes a Context parameterJdbcMigration and SpringJdbcMigration have been deprecated in favor of JavaMigrationBaseJdbcMigration and BaseSpringJdbcMigration have been deprecated in favor of BaseJavaMigrationMigrationInfoProvider, MigrationChecksumProvider and ConfigurationAware have been deprecated in favor of JavaMigrationThanks to Daniel Scott, DanskerDave, Elvadas NONO, Fabian Bergmark, Gili Tzabari, Guy Brand, hdconradi, HiddenKnowledge, JeP42, JLopeDeB, Joe Lee-Moyet, Matt Sprague, Matthew Burghoffer, Mihir Mehta, raffig, Reinhard Handler, Sajith1988V, swanke00, Tim Hadwen and Valentin Gohard for reporting these issues.
Thanks to CatalinaMoisuc, Craig Davidson, Paul Chown and Uri Hendler for reporting these issues.
Thanks to Dar Brett, Esteban Marin, Piotrek Zygielo, seneiran and sullis for reporting these issues and contributing fixes.
Thanks to Patrick Kohan, Peter Matseykanets and Simon Kissane for reporting these issues.
DO NOT USE: This release contains an important checksum validation regression which has been fixed in 5.1.1.
ignoreIgnoredMigrations Pull RequestConfiguration as part of the APIFlywayConfiguration.getCallbacks() now returns Callback[] instead of FlywayCallback[]Flyway.getCallbacks() now returns Callback[] instead of FlywayCallback[]ignoreIgnoredMigrations to trueoracle.sqlplus flagFlyway now implements Configuration instead of FlywayConfigurationFlywayConfiguration.getLocations() now returns Location[] instead of String[]Flyway.getLocations() now returns Location[] instead of String[]Flyway.getSchemas() now returns an empty array (instead of the connection's default schema) if no schemas were set using setSchemas()FlywayConfiguration.getEncoding() now returns Charset instead of StringFlyway.getEncoding() now returns Charset instead of StringFlywayCallback and BaseFlywayCallback have been deprecated in favor of Callback.FlywayConfiguration has been deprecated in favor of Configuration.Thanks to aebaugh, AndrasJanurik, andrey-poltavskiy, Bartosz Kaminski, Ben Manes, bigslack, Brett Randall, Brian O'Halloran, brodgers-oreilly, Chuck May, cmcmurtrie, Craig Davidson, Daniel Huss, Dmitrii Apanasevich, Jens Doose, jezovuk, jMediaConverter, Kevin Sheedy, Konrad Botor, Leo Breuss, luengnat, Manikanta G, nireno, nkbysani, Oleg Artenii, Peter Wippermann, Punnapulusu, Razvan, Sandra Parsick, Simon Gamma, TimoTHa, umapathy08, Wim Deblauwe and Yannik Hampe for reporting these issues.
Thanks to buuren and David Atkinson for reporting these issues.
Thanks to aebaugh, David Atkinson, Lyor Goldstein and Rob34 for reporting these issues and contributing fixes.
Thanks to David Atkinson, David J. M. Karlsen, ImmanuelRhesa and quentinbricard for reporting these issues and contributing fixes.
Thanks to Gareth Rogers, Jonathan Bregler and Matyas Albert Nagy for reporting these issues and contributing fixes.
Thanks to Ayrat Natfullin, Catchwa, gscht, mahidbdw, mpapetti, Patrik Duditš and vencoreguy for reporting these issues and contributing fixes.
Thanks to David Atkinson, Marceau Dewilde and Tommy Odom for reporting these issues and contributing fixes.
This release is identical to Flyway 5.0.0. It only adds the platform specific distribution of Flyway Command-line which were missing in Flyway 5.0.0.
Important note for users upgrading from Flyway 3.x: This release no longer supports a schema history table upgrade from Flyway 3.x. You must upgrade to Flyway 4.2.0 first before upgrading to Flyway 5.0.0.
Important note for EnterpriseDB, Vertica, SolidDB, Phoenix and Greenplum: Support for these databases has been kept back and will be integrated later in the Flyway 5.0 series. You can keep using Flyway 4.2.0 until then.
FlywayCallback interface has 4 new methods: beforeUndo, beforeEachUndo, afterEachUndo and afterUndoMigrationInfoProvider interface has 1 new method: isUndoMigrationState enum has 2 new elements: AVAILABLE and UNDONEThanks to Alexei Osipov, andrey-poltavskiy, aoksys, Carl Taylor, Christopher Smith, Craig Davidson, czyzby, Dennis Hoer, djohnsonmach, FlakM, Francesco Proietti, George Thomas, Gili Tzabari, hmtelbi, Igor Nikolaev, J0s3f, Jason Hinch, Jasper Brekelmans, Jasper van Wanrooy, jcoulehan, Jeffrey Li, Jens Doose, Jidehem, John McCall, Joshy Austin, jsross, Julien Coupez, Kevin Bloch, masc3d, Mattias Sällström, Mihir Mehta, mstarita, nvartolomei, o2dac, pswrdf, rbatllet, Renat Sabitov, Rob34, RobertRad, Roger Qiu, Sabine Heimsath, sandman24, sasivarnans, Simon Kissane, Stefano Teodorani, Stephan Pauxberger, Tibor Baksa, ToBeReplaced, Victor Osolovskiy, vojbarzz, wanglin0413, xindu and Yogi2803 for reporting these issues and contributing fixes.
allowMixedMigrations to mixedThanks to Brian Chen, Durim Kryeziu, Gili Tzabari, Jamie Swain, mtcremin, Stephan Pauxberger, svitalsky, Thomas Meyer and Victor Osolovskiy for reporting these issues and contributing fixes.
Thanks to ace130-github, Fabian Vogler, Geir Harald Hansen, Sachin Walia and sergey-selivanov for reporting these issues and contributing fixes.
Thanks to Dennis Hoer, Jean Revertera, Lightside Tech and Victor Boldurat for reporting these issues and contributing fixes.
Thanks to Andrew Berglund, Andrew McLaughlin, Antti Lampinen, azalesky, Benoit Devos, blimey74, Brian Krahmer, chrstnk, Craig Pardey, cristalp, David Vázquez Púa, Dustin Conrad, Eugen Pribulla, G. Richard Bellamy, JasonAUnrein, Jason Turim, JB Nizet, Jeremy Bush, Joris Kuipers, Juan Liska, masc3d, Michael Prankl, nathansgreen, Olivier Gérardin, PeeZu, Petar Tahchiev, pswrdf, qwazer, reactormonk, rousej, Stefan Ferstl, Stefan Hausner, sw00, Taufiq Hoven, tomaszglinski toro01 and zvika77 for reporting these issues and contributing fixes.
Special thanks to JustWatch, Porch and Startrack for sponsoring features and fixes.
Thanks to aaltergot and hartrc for reporting these issues and contributing fixes.
Thanks to Dennis Hoer, frbo42, Gili Tzabari, hartrc, John McCall, lrozenblyum, smohara and Sten Røkke for reporting these issues and contributing fixes.
pre around sample configuration Pull RequestThanks to alekseevIN, Alexey Kobyakov, Antti Lampinen, Artem Konenko, Aurélien Mino, azalesky, Erin Drummond, fromi, Gian Marco Gherardi, Gili Tzabari, hntran8, J. Taylor O'Connor, Jeff Johnston, Johannes Brodwall, Kari Häkkinen, Kenji Yoshida, Kevin Wimmer, krispii, lrozenblyum, Maksim Serebro, Marat Abrarov, mezuzza, Nathan Vick, Nick Strecker, oohira, Renat Sabitov, ridiekel, sourcesmith, Sten Røkke, tsbx, Walter Gillett and Werner Mueller for reporting these issues and contributing fixes.
This version comes with a new metadata table format. Migration is transparent and automatic on first run of any Flyway command. This new format is not compatible with older Flyway versions.
Note: DB 2 z/OS, Vertica, and solidDB users may have to manually upgrade the metadata table or drop it and baseline the schema again.
filesystem:src/main/resources/db/migrationignoreFutureMigrations to false.Thanks to aegyed, Aurélien Mino, axaluss, Barry O'Neill, cajnoj, Christian Dedié, crump32, David Phillips, diwa, dukeyin, dzharikhin, Dzmitry Lazerka, Eduardo Piaro, Eric Parton, Fabio Lisboa, Gili Tzabari, gnomff, hamiller, Jason Wong, Jens Berke, Jens Doose, JGMM, Josh Mahonin, Karel Rank, Kevin Sheedy, khelsen, Kristopher Landon, Larivact, Lukas Eder, Luke Pryor, Marc-André Poulin, Mark Petrovic, Markus Umefjord, martin-grofcik, mdaquel, Michael Verrilli, MingoDynasty, mojoo, Nathan Vick, Neo Wu, Nitin Gautam, Pascal Gruen, pentavalle, pingw33n, PredatorVI, Ringerl, Sachin Walia, Salman Haq, sastorsl, Sebastian Tacke, Stephan Pauxberger, stkuehnl, Sylvain Guillopé, thelateperseus, Tim Büthe, Tom Eicher, Yevgeniy Mordovkin and ysobj for reporting these issues and contributing fixes.
Thanks to avesse, David J. M. Karlsen and soemeier for reporting these issues and contributing fixes.
Flyway.setBaselineVersion(String), use setBaselineVersionAsString(String) instead.Flyway.setTarget(String), use setTargetAsString(String) instead.Flyway.setCallbacks(String...), use setCallbacksAsClassNames(String...) instead.Flyway.setResolvers(String...), use setResolversAsClassNames(String...) instead.flyway, use org.flywaydb.flyway instead. Pull RequestjarDir, use jarDirs instead.Thanks to Adrian Christen, Andrew Murray, Armin Gattung, benheilers, Cosmin Stejerean, David M. Carr, david-mas, Diego Plentz, Gili Tzabari, gergelyszakacs, janbols, Marcello Nuccio, Mauro Molinari, Michael Forstner, pete-experimenter, Rahul Prabhakar, Sabine Gallus, Sanjay Deshmukh, sogft, Sudeep Ambekar and vaesbart for reporting these issues and contributing fixes.
flyway.current property Pull RequestFlywayCallback interface has two new methods: beforeBaseline() and afterBaseline().info() now returns INIT migrations as BASELINE.info() now returns PREINIT migrations as BELOW_BASELINE.init(), use baseline() instead.initVersion, use baselineVersion instead.initDescription, use baselineDescription instead.initOnMigrate, use baselineOnMigrate instead.FlywayCallback.beforeInit(), use FlywayCallback.beforeBaseline() instead.FlywayCallback.afterInit(), use FlywayCallback.afterBaseline() instead.MigrationState.PREINIT, use MigrationState.BELOW_BASELINE instead.MigrationType.INIT, use MigrationType.BASELINE instead.Thanks to Adrian Chung, aldas, Armin Gattung, Boris Stumm, Brandon Bremen, Carlo Conserva, Christine Teig, cowwoc, crannym, Dan Nawrocki, Dembach Goo Informatik, Deryl Spielman, everflux, flavor8, Hurricane Hamilton, James Elliott, Jurica Krizanic, larry-s, Lukasz Rozek, Mark Sievers, Michael Yaakoby, Mikhail Chibel, Muni10, Nathan Vick, Nick Golubev, Olivier Adam, orbfish, PeeZu, Ray Holder, rekonvald, Rao Sadhu, Sajan Chandran, Sebastian Vuorinen, Siva Panduranga Stephan Pauxberger, Steve Todd, Tom Eicher, Wilkin Cheung and Yiyu Jia for reporting these issues and providing fixes.
validateOnMigrate is now true by defaultThanks to adelinor, adiGadiG, Andriy Binetskyy, Anthony Galea, Antti Virtanen, awal11, Ben Manes, bobwenx, Brian Hartin, Christian Dedie, cowwoc, Craig Forbes, Dan Bunker, Deryl Spielman, Eric Jain, Eugen Pyanov, Fatos Sopjani, Fernando Correia, Gerald Quintana, ggrussenmeyer, gregul, Jon Todd, Jonathan Holloway, kavithaparameswaran, kongslund, Lidija, Lukasz Rozek, Michal Lisiecki, Mircea Pop, Nicolas Peters, Patrick Kranz, Prismapanda, quiver, rattigan, Regis Leray, Roger Brechbühl, samidha14 and vertex-github for reporting these issues and providing fixes.
MigrationVersion() constructor. Use MigrationVersion.fromVersion(String) instead.Thanks to Adam Green, Baptiste Gaillard, Christian Dedié, Christoffer Eide, Dave O'Flynn, garichner, Kevin Sheedy, Lukasz Rozek, Matt Garner, migore, pimlottc, Pavel Boldyrev, Piotr Wielgolaski, Rajnish Srivastava, Robert Handschmann, Thomas Queste, Tom Eicher and Ulf Bamberg for reporting these issues and providing fixes.
Thanks to Chrissyx, Dario Matonicki, hvvikram, Michael Krotscheck, Piotr Wielgolaski, Thomas Jung and Tom Stordy-Allison for reporting these issues and contributing fixes.
init is now idempotent. Calling init multiple times with the same values no longer throws an exception.flyway-ant-2.2.[zip|tar.gz] (dropped the -dist part)flyway-commandline-2.2.[zip|tar.gz] (dropped the -dist part)flyway (dropped the .sh)Thanks to Alex Zuroff, Brian Hartin, Christian Holzer, David Bellem, Florian Eska, Geoff, Giovanni Toraldo, Jason Januzelli, Jens Berke, Leandro de Oliveira, Mark Garrison, Michael Hirsch, Nayan Hajratwala, Patrick Malouin, Pavel Boldyrev, Pekka Mannisto, Radek Mensik, Roger Brechbühl, Ryan Williams, service (figel.it) and Tim Andersen for reporting these issues and contributing fixes.
Special thanks to David Harrigan for sponsoring the fix for issue 462!
Special thanks to Ben Manes for contributing the Gradle Plugin!
Thanks to Alex Krauss, Alex Panchenko, Alex Zuroff and Greg Case for reporting and contributing fixes for these issues.
This version fixes minor issues with the metadata table. Migration is transparent and automatic on first run.
flyway.driver is now optional. It is auto-detected based on flyway.url when omittedflyway.baseDir property has been removed.flyway.basePackage property has been removed.flyway.initVersion has been changed to 1 (was 0).flyway.locations has been changed to filesystem:<<INSTALL-DIR>>/sql flyway.initialVersion . Use flyway.initVersion instead. flyway.initialDescription . Use flyway.initDescription instead.Thanks to agattiker, Benoit Cantin, Christian Haelg, Constantine Linnick, Daniel Wilmer, Dmitry Bitman, dyou08, Gerd Behrmann, Gerrit Brehmer, Giorgio Gallo, Herve Martin, István Nagy, Joe McCall, Jonathan Tougas, Judith Aigner, Kamil Szymanski, Klas Klassen, Marcin Jancewicz, Marcin Z., Martin Baillie, Michael Meyer, rbrueske, Tero Keski-Valkama, Tom Stordy-Allison, Tomek Kaczanowski and Viktoras Makauskas for reporting these issues and contributing fixes.
Thanks to David Gundersen, Don (dyou08), Mark Allen, turbohappy and Viktoras Makauskas for reporting these issues.
This version performs minor fixes on the metadata table. Migration is transparent and automatic on first run.
Thanks to Leandro de Oliveira, Nelson Loyola, NoSuchLuke and Oliver Heil for reporting these issues.
Thanks to Jens Berke, Nikos Sikalias, Sebastian (movio.co) and Sten Røkke for reporting these issues.
This version comes with a new metadata table format. Migration is transparent and automatic on first run.
Flyway.repair() call for repairing the metadata table after a failed migration on a database without DDL transaction support.initOnMigrate flag to automatically initialize a non-empty schema to initVersion.outOfOrder flag for applying migrations with older version numbers that haven't been applied yetFlyway.info() call for info about both applied and pending migrations and current status of the DB.schemas are now case-sensitive.schemas is set, the first schema in the list is now automatically set as the default one. Version has been renamed to MigrationVersion for consistency.Flyway.getInitVersion() now returns an instance of MigrationVersion (was SchemaVersion).Flyway.getTarget() now returns an instance of MigrationVersion (was SchemaVersion).MigrationInfoProvider.getVersion() now returns an instance of MigrationVersion.schemas is now a nested configuration element instead of a simply configuration property Flyway.status() . Use Flyway.info() instead. Flyway.history() . Use Flyway.info() instead. validationMode . Use validateOnMigrate instead. validationErrorMode . Use cleanOnValidationError instead. disableInitCheck . Use initOnMigrate instead. com.googlecode.flyway.core.exception.FlywayException . Use com.googlecode.flyway.core.api.FlywayException instead. Flyway.setinitVersion(SchemaVersion) . Use Flyway.setinitVersion(MigrationVersion) instead. Flyway.setTarget(SchemaVersion) . Use Flyway.setTarget(MigrationVersion) instead.Thanks to Adam Peresztegi, Adriano Machado, alehby, Alix Warnke, Anssi Huusko, Brian Troutwine, Cornelius Buschka, Daniel Kan, Darragh O'Toole, Dmitry Bedrin, donald87, Emmanuel Potvin, Geir Nerboe, Gilman Tolle, Greg Bujak, Haam Tham, Jochen Munz, Klaus Etkar, Kris Mulica, kwbrockhoff, Luc Degraef, Patrick van Dissel, saran600101, Stefan Röck, Stephen Friedrich, Steve Tarka, Tim Andersen, Tomek Kaczanowski and Vikram Hullukunte for reporting these issues.
Thanks to Anssi Huusko, Cornelius Buschka, cowwoc, Friedrich Schaeuffelhut, Haam Tham, jtucker, Jussi Mononen, Konstantin Zmanovsky, Marco Descher, Mathias Bogaert, Michael Lubavin, Michal Sabo, Stefan Ferstl, Thomas Letsch, Thomas Recloux and Tsai Liming for reporting and providing patches for these issues.
Thanks to Marc Dumontier, Steve Tarka and vtkstef for reporting these issues.
Thanks to Alexander Hansen, Andrew Hunt, asotobu, Corin Fletcher, cowwoc, jaggerjackkurosaki, Juha Komulainen, Klaus Etkar, Kris Mulica, Luc Degraef and vadim for reporting and contributing patches for these issues.
Thanks to Seb Brousse, Christoph Giess, Jeremy Smith, Jon Roler, cowwoc, donald87, Timo Meinen, Octavian, Dileep Hareendran, Kris Mulica, Ulf Bamberg, Luc Degraef and casibbald for contributing patches and reporting these issues.
Thanks to Armin Gattung for reporting this issue.
Thanks to jmarin and floburka for reporting these issues.
Thanks to Armin Gattung, Chris Wewerka, Gili Tzabari, Adriano Machado, everflux and stembler for reporting these issues.
Thanks to Chris Wewerka, Eric Jain, Derek Kwok, Matthew Lai and Julien Dumetier for reporting these issues.
Thanks to Chris Wewerka for contributing the DB2 support!
Thanks to M.Ahyaie, Jonas Kilian and Martin Pletzer for reporting these issues.
Thanks to Adriano Machado for contributing the SQL Server support!
Thanks to Gili Tzabari, René Samselnig, Daniel Garcia, Ulf Bamberg and Gene Gotimer for reporting the other issues
Thanks to jaggerjackkurosaki and Thomas Kruse for reporting these issues
Thanks to Mathias Bogaert for reporting the Flyway.configure issue
Thanks to Mathias Bogaert for reporting the logging issue and Daniel Garcia for reporting and contributing a patch for the new-line issue
Thanks to Mathias Bogaert for reporting this issue
Thanks to Philipp (godhood) for contributing large parts of the PostgreSQL support
Thanks to Hilario Fernandes for reporting this issue.