Release Notes
Thank you all for reporting all these issues and contributing fixes!
Flyway 4.2.0 (2017-04-27)
New features
Changes
-
Issue 1585
Rename `allowMixedMigrations` to `mixed`
-
Issue 1588
Enable single-connection mode for SQL Server
-
Issue 1589
Enable single-connection mode for DB2
-
Issue 1590
Enable single-connection mode for Derby
Bug fixes
Thanks 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.
Flyway 4.1.2 (2017-03-06)
Bug fixes
-
Issue 1531
SAP HANA: CREATE PROCEDURE statements with embedded semicola don't work
Pull Request
-
Issue 1534
MetaDataTable not updated with autoCommit false
-
Issue 1537
PostgreSQL: Flyway fails after applying migration containing SET ROLE statement
-
Issue 1539
Gradle: Unable to instantiate JDBC driver declared as buildscript dependency
-
Issue 1540
WITH (OIDS=FALSE) fails on CockroachDB
Thanks to ace130-github, Fabian Vogler, Geir Harald Hansen, Sachin Walia
and sergey-selivanov for reporting these issues and contributing fixes.
Flyway 4.1.1 (2017-02-16)
Bug fixes
-
Issue 1095
MSSQL Server: exclude microsoft tools procedures/functions from empty schema detection
Pull Request
-
Issue 1525
JRE missing from 4.1.0 release
-
Issue 1527
Unable to instantiate JDBC driver defined in compile scope from Gradle plugin
-
Issue 1533
NullPointerException while applying repeatable migration with Maven
Thanks to Dennis Hoer, Jean Revertera, Lightside Tech
and Victor Boldurat for reporting these issues and contributing fixes.
Flyway 4.1.0 (2017-02-08)
New features
Incompatible Changes
Changes
- Schema marker metadata table entries (generated when Flyway creates a schema) do not have an explicit version anymore
- H2 Jdbc driver: Flyway is now tested with 1.4.193 (was 1.4.191)
- Hsql Jdbc driver: Flyway is now tested with 2.3.4 (was 2.3.3)
- The Gradle plugin has now been rewritten in Java (used to be written in Groovy)
Bug fixes
-
Issue 1067
Metadata table creation failure with fresh db
-
Issue 1163
DB2 change delimiter using --#SET TERMINATOR
-
Issue 1180
sqlite: flyway migrate fails, reports database is locked
-
Issue 1261
classpath scanner does not find db.migration package or resources
€
Sponsored by Startrack
-
Issue 1318
sqlite DB locked when you specify flywayDriver
-
Issue 1331
Validation fails on migrate when schema doesn't exist
-
Issue 1333
OracleDB failed to migrate while schema name contains character "-"
-
Issue 1346
Migration hanging with HsqlDB 2.3.4
-
Issue 1348
Remove warning when using flyway.version maven property
-
Issue 1351
Repair does not fix "Migration Description mismatch" error
-
Issue 1358
Reverted version of a repeatable script should be reapplied
-
Issue 1363
ValidateOnMigrate should fail for unapplied migration when outOfOrder=false
Pull Request
-
Issue 1364
Validate with target=current should fail on unapplied migration
-
Issue 1368
Possible race condition on MetaDataTable-Upgrade
-
Issue 1369
support for IBM DB2 users with dashes in username (like 'A-A')
-
Issue 1382
Inconsistent usage documentation: conf/flyway.conf vs conf/flyway.properties vs ./flyway.conf
Pull Request
-
Issue 1387
schema_version column version not nullable on Sybase ASE
-
Issue 1396
Log the inner exception thrown from JdbcMigrationResolver.resolveMigrations()
-
Issue 1401
Not getting the full stack error
-
Issue 1415
performance improvements when installing a large number of migration scripts
-
Issue 1428
Repeatable migrations - error in case of checksum mismatch
-
Issue 1430
Having only Repeatable Migrations crashes Flyway
-
Issue 1446
SQL parsing problem when combining Postgres's COPY ... FROM stdin and SQL domains
-
Issue 1457
When migrations have been applied by enabling out-of-order Flyway displays the wrong current version
-
Issue 1463
Unable to clean schema that contains function calling another function and both have SCHEMABINDING
-
Issue 1468
Using flyway.serverId produces WARNING log
-
Issue 1470
Add support for Oracle editionable objects
Pull Request
-
Issue 1474
ClassCastException in AndroidScanner
Pull Request
-
Issue 1483
Flyway doesn't recognize Sybase ASE 12.5
-
Issue 1487
Exception "Unable to resolve Jdbc Java migrations in location" due to wrong assumption on classloader behavior
-
Issue 1499
Sqlite locks when attempting a migration result in SQLException: [SQLITE_BUSY]
-
Issue 1512
Warnings when application is packaged as a Spring Boot executable war
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.
Flyway 4.0.3 (2016-06-17)
Bug fixes
Thanks to aaltergot and hartrc for reporting these issues and contributing fixes.
Flyway 4.0.2 (2016-06-09)
Changes
-
Issue 1319
Update MariaDB driver to latest version
Bug fixes
-
Issue 1211
PostgreSQL upper case schema names end up double quoted
-
Issue 1307
Removed drop table because of issues with partitioned tables
Pull Request
-
Issue 1309
Maven plugin : warning about flyway.configFile
-
Issue 1326
SqlScriptFlywayCallback errors in ALL_CALLBACKS list
-
Issue 1327
Option to Suppress "SQLServer does not support setting the schema..." messages
Documentation fixes
Thanks to Dennis Hoer, frbo42, Gili Tzabari, hartrc, John McCall, lrozenblyum, smohara and Sten Røkke
for reporting these issues and contributing fixes.
Flyway 4.0.1 (2016-05-06)
Bug fixes
Documentation fixes
Thanks 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.
Flyway 4.0 (2016-02-29)
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.
New features
Incompatible Changes
-
Issue 477
When a location is not found a warning is now emitted instead of an exception
-
Issue 724
When using the command-line tool with no database user or password, you must now pass in an empty value to
avoid being prompted
-
Issue 767
mvn flyway:clean is now executed in the clean phase by default
-
Issue 891
The Flyway SBT plugin now requires SBT 0.13.7
-
Issue 935
Command-line: error messages are now sent to stderr instead of stdout
Pull Request
-
Issue 979
The default location for the Flyway Maven, Gradle and SBT plugins is now
filesystem:src/main/resources/db/migration
-
Issue 988
Fail validate if an already applied migration couldn't be found
-
Issue 989
To ignore failed future migrations, you must now also set
ignoreFutureMigrations
to
false
.
-
Issue 1116
Removed all deprecated API from Flyway 3.x
Changes
-
Issue 977
Flyway now warns on invalid command-line options
-
Issue 1152
Upgrade Command-line tool bundled JRE to 8u74
-
Issue 1214
Upgrade Command-line tool bundled JDBC drivers to latest versions
Bug fixes
-
Issue 178
Support for reference-partitioned tables (Oracle 11g)
Pull Request
-
Issue 253
Ignore line endings when calculating checksums
-
Issue 669
Ignore sqlplus set define off command
-
Issue 737
search_path is not restored after migration
-
Issue 763
sbt tasks do not use scope specific settings
Pull Request
-
Issue 788
Provide default implementation for FlywayCallback
-
Issue 905
NullPointerException at org.flywaydb.maven.MigrateMojo.doExecute(MigrateMojo.java:35)
-
Issue 917
After running flywayMigrate in SBT there is no straightforward way to know current db version
-
Issue 983
Redshift COPY not working
-
Issue 995
Error setting current schema to "public"
-
Issue 999
ClassCastException in PostgreSQLDbSupport.executePgCopy when using BasicDataSource
Pull Request
-
Issue 1000
SQL exception in COPY statement when the DELIMITER is set to a semicolon
-
Issue 1001
Gradle plugin can not set placeholderReplacement property
-
Issue 1023
Flyway should not expect "org/flywaydb/core/internal/version.txt" to be on the custom classpath
-
Issue 1025
afterEachMigrate fails, migration succeeds, but migration not written to schema_version
-
Issue 1033
Missing Import-package MANIFEST.MF headers for postgresql
-
Issue 1036
ORA-00911: invalid character
-
Issue 1042
Single connection in DriverDataSource can never be closed
-
Issue 1043
Migration with Flyway.setPlaceholderReplacement(false) fails with "org.flywaydb.core.api.FlywayException: No
value provided for placeholder expressions"
-
Issue 1049
ORA-32794 in Oracle 12c using identity columns
-
Issue 1075
Support option to use Slf4j/Commons Logging/JUL when using the command line tool
-
Issue 1077
Oracle JDBC issue on Linux - IO Error: Connection reset
-
Issue 1080
ORA-00911: Invalid character on 'From'
Pull Request
-
Issue 1081
Change of Delimiter does not work correct for SQLite
-
Issue 1085
Clean on embedded derby database does not clean triggers
-
Issue 1089
SQL cannot be parsed when using binary type "char (16) for bit data": X'0123'
Pull Request
-
Issue 1093
ORA-01950 on schema baseline/init in Oracle 12.1
-
Issue 1099
Flyway fails to connect with the database if the OS user name is longer than 30 characters
-
Issue 1106
A tableName """t""" cause error on PostgreSQLSchema.doAllTables()
-
Issue 1108
Flyway does not reset the current schema between migrations
-
Issue 1109
ORA-65040 error when trying to clean different schema with system user
-
Issue 1111
Support for Vertica (or replace) Function
Pull Request
-
Issue 1124
Fix flyway script on Git Bash for Windows
Pull Request
-
Issue 1129
Fails to clean materialized view that has dependent view on postgres
-
Issue 1136
Multi Line comments are not handled correctly
Pull Request
-
Issue 1142
OsgiClassPathLocationScanner supports only current bundle
Pull Request
-
Issue 1154
Drop functions with length attributes in DB2
Pull Request
-
Issue 1164
Use nanoTime() for StopWatch
Pull Request
-
Issue 1165
Sql file callbacks does not work with empty sqlMigrationPrefix
-
Issue 1171
GAE uses different Driver: Unable to obtain Jdbc connection from DataSource
Pull Request
-
Issue 1190
PostgreSQL: Filter functions and views from extensions during clean
Pull Request
-
Issue 1193
Unable to clean schema that contain a Computed Column Defined with a User-Defined Function
-
Issue 1196
PostgreSQL: trim schema name
-
Issue 1197
Improved JavaDoc for callbacks, resolvers and migrations
Pull Request
-
Issue 1217
Fixed flyway 4.0 upgrade for Redshift (it does not support alter column)
Pull Request
Documentation fixes
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.
Flyway 3.2.1 (2015-03-20)
Bug fixes
Thanks to avesse, David J. M. Karlsen and soemeier for reporting these issues and contributing fixes.
Flyway 3.2 (2015-03-16)
New features
Changes
-
Issue 752
Deprecated
Flyway.setBaselineVersion(String)
, use
setBaselineVersionAsString(String)
instead.
-
Issue 752
Deprecated
Flyway.setTarget(String)
, use setTargetAsString(String)
instead.
-
Issue 752
Deprecated
Flyway.setCallbacks(String...)
, use setCallbacksAsClassNames(String...)
instead.
-
Issue 752
Deprecated
Flyway.setResolvers(String...)
, use setResolversAsClassNames(String...)
instead.
-
Issue 895
Deprecated Gradle plugin ID
flyway
, use org.flywaydb.flyway
instead.
Pull Request
-
Issue 966
Commandline: Deprecated
jarDir
, use jarDirs
instead.
Bug fixes
-
Issue 598
No "current" schema in flyway.url causes a Flyway exception
-
Issue 752
Overloaded setters break Spring XML usage €
Sponsored by David Harrigan
-
Issue 892
Using (deprecated) init goal in Maven takes wrong baseline version
-
Issue 893
Add command images to Javadoc
-
Issue 898
Flyway baselines new schemas, since they always have a schema_version table
-
Issue 902
slf4j optional package import missing from OSGi manifest
-
Issue 903
Fix an error where MigrationVersion wouldn't parse correctly
Pull Request
-
Issue 905
NullPointerException at org.flywaydb.maven.MigrateMojo.doExecute(MigrateMojo.java:35)
-
Issue 918
Explicitly drop Views then doing a Flyway.clean() on a PostgreSQL db
-
Issue 921
Incorrect parsing when space is missing between end quote and next token
-
Issue 922
Escape command-line arguments
-
Issue 939
Multiline comment closing not detected properly
-
Issue 940
Implicit baseline triggered by baselineOnMigrate does not respect baselineVersion
-
Issue 951
Still issues with the Gradle plugin under Java 6
-
Issue 955
Loading configFile from relative path seems to be broken
-
Issue 957
Improve DataSource not set error message for non-API clients
-
Issue 958
Backslashes are not treated properly in conf file
-
Issue 965
Problem with double quotes
Documentation fixes
-
Issue 959
Gradle documentation should have commas to separate placeholders
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 3.1 (2014-11-27)
New Features
Incompatible Changes
-
Issue 860
The
FlywayCallback
interface has two new methods: beforeBaseline()
and afterBaseline()
.
-
Issue 860
info()
now returns INIT migrations as BASELINE.
-
Issue 860
info()
now returns PREINIT migrations as BELOW_BASELINE.
Changes
-
Issue 860
Deprecated
init()
, use baseline()
instead.
-
Issue 860
Deprecated
initVersion
, use baselineVersion
instead.
-
Issue 860
Deprecated
initDescription
, use baselineDescription
instead.
-
Issue 860
Deprecated
initOnMigrate
, use baselineOnMigrate
instead.
-
Issue 860
Deprecated
FlywayCallback.beforeInit()
, use FlywayCallback.beforeBaseline()
instead.
-
Issue 860
Deprecated
FlywayCallback.afterInit()
, use FlywayCallback.afterBaseline()
instead.
-
Issue 860
Deprecated
MigrationState.PREINIT
, use MigrationState.BELOW_BASELINE
instead.
-
Issue 860
Deprecated
MigrationType.INIT
, use MigrationType.BASELINE
instead.
- Derby Jdbc driver: Flyway is now tested with 10.11.1.1 (was 10.8.2.2)
- Hsql Jdbc driver: Flyway is now tested with 2.3.2 (was 2.2.8)
- PostgreSQL Jdbc driver: Flyway is now tested with 9.3-1102-jdbc4 (was 9.0-801.jdbc4)
- SQLite Jdbc driver: Flyway is now tested with sqlite-jdbc 3.7.15-M1 (was sqlite-jdbc 3.7.2)
Bug fixes
-
Issue 691
Clean fix #664 breaks DB2 clean in some cases
-
Issue 718
SQLServer: no exception thrown when statement fails
Pull Request
-
Issue 735
cygwin classpath problem
Pull Request
-
Issue 742
flyway info does cuts off or truncates information
-
Issue 746
Unhelpful error when forgetting "flyway.driver" with xerial sqlite-jdbc
-
Issue 754
flyway fails to remove forward slash from a script if it contains a comment
Pull Request
-
Issue 758
Fixed OSGi metadata table create script loading
Pull Request
-
Issue 761
Clean Oracle scheduled jobs
Pull Request
-
Issue 770
Improve Oracle error - show the ORA code
-
Issue 774
Informational message from database logged at WARN level
Pull Request
-
Issue 779
Restore JDK6 compatibility for Gradle plugin
Pull Request
-
Issue 783
Spring Jdbc not available from command line
-
Issue 793
MySQL flywayMigrate fails due to user permission
-
Issue 800
Handle Oracle java source
Pull Request
-
Issue 801
ClassPathScanner fails with enum
-
Issue 802
Clean on DB2 does not clean triggers
Pull Request
-
Issue 806
Flyway does not clean sequences on SQL Server 2012
-
Issue 816
Allow newer migrations to exist and be skipped by validateOnMigrate
-
Issue 824
Classpath scanner does not detect sql-files in WEB-INF/classes in (non-exploded) war-file
-
Issue 825
Warn instead of fail when clean cannot find a schema
-
Issue 830
Allow gradle plugin to create multiple migrate tasks for different schemas
Pull Request
-
Issue 842
migrate [initOnMigrate, initVersion] should use initVersion when the schema does not exist
-
Issue 843
Flyway suppresses warnings silently on SQLException
-
Issue 866
Classpath Scanner swallows Instantiation Exceptions
-
Issue 867
DB2 schema clean fails for expression-based index
-
Issue 868
Update filed for MSSQL scripts containing 'Go'
-
Issue 871
Please include SQLException message when failing to connect
-
Issue 877
Exception cause lost in classutils instantiateAll
-
Issue 884
Flyway incorrectly handles paths with a + in their name
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.
Flyway 3.0 (2014-04-20)
New Features
-
Issue 76
SQLite & Android support
-
Issue 353
Command-line tool: Multiple operations can now be specified at once
-
Issue 469
Custom MigrationResolver support
-
Issue 618
Repair: update checksums after migration
-
Issue 626
Custom ClassLoader support
-
Issue 651
Pre and post hooks for each operation Pull Request
-
Issue 655
Disable transaction for a particular migration
-
Issue 667
MariaDB support
-
Issue 679
Allow to configure maven plugin from a property file
-
Issue 730
Configurable separator between version and description
Incompatible Changes
- Dropped compatibility with the Flyway 1.X metadata table format. If you are upgrading from 1.X, you must
upgrade
to 2.3 first, before upgrading to 3.0.
-
Issue 97
Validate should fail if there are migrations in source that have not been run on the database
-
Issue 536
Drop Java 5 support & remove deprecated API
-
Issue 537
Move packages & groupId from
com.googlecode.flyway
to org.flywaydb
-
Issue 695
validateOnMigrate
is now true by default
Changes
- DB2 Jdbc driver: Flyway is now tested with db2jcc4 4.17.29 (was db2jcc 3.62.56)
- Oracle Jdbc driver: Flyway is now tested with OJDBC6 12.1.0.1 (was OJDBC5 11.2.0.2.0)
- PostgreSQL Jdbc driver: Flyway is now tested with 9.0-801.jdbc4 (was 9.0-801.jdbc3)
- SQL Server Jdbc driver: Flyway is now tested with Jtds 1.3.1 (was 1.2.7)
Bug fixes
-
Issue 430
Display the connection url
-
Issue 484
IllegalArgument when executing Flyway Ant build script several times in the same JVM
-
Issue 489
Validate does not report different descriptions for same version
-
Issue 496
Need sql print statements to be logged in Flyway logs
-
Issue 540
ORA-00900: invalid SQL statement - bug in the parser
-
Issue 543
Parser does not properly recognize some multiline string literals
-
Issue 557
MySQL statement not recognized due to a space character at the end of a comment directive
-
Issue 584
NumberFormatException thrown when using command line tools
-
Issue 606
Found more than one migration with version when multiple locations named with the same roots
-
Issue 612
Inconsistent definition of "locations" parameter
-
Issue 621
flyway clean does not remove mysql events
-
Issue 639
Flyway migrates correctly. but in the schema_version table the scriptname is prefixed with a /
-
Issue 642
Local migration file overwrites database's description
-
Issue 673
Some Unicode characters can still lead to StringIndexOutOfBoundsException Pull Request
-
Issue 678
flyway fails recognizing sql server delimiter while parsing sql migration
-
Issue 681
Maven site complains that repository url 'http://flywaydb.org/repo' is invalid
-
Issue 682
Maven Plugin - Cannot set boolean system property Pull Request
-
Issue 684
Allow passing custom initialization SQL for database connections Pull Request
-
Issue 687
Oracle cleanup - flyway fails on tables that have Flashback enabled Pull Request
-
Issue 688
Support for Oracle cluster Pull Request
-
Issue 692
Flyway doesn't remove trailing slash in PL/SQL block
-
Issue 694
sbt: Allow specifying URL through system properties Pull Request
-
Issue 697
flyway:clean doesn't remove compiled java source Pull Request
-
Issue 706
Info marks schema creation as missing (should be success)
-
Issue 708
flyway.repair() doesn't commit when data source is not autocommit
-
Issue 716
Load and inject configured Custom MigrationResolver implementations
-
Issue 720
FlywayException message is not saying anything usefull Pull Request
-
Issue 725
NullPointerException in quoteReplacement
-
Issue 727
fix placeholders override by property configuration and add sbt large test for placeholders
Thanks 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.
Flyway 2.3 (2013-12-17)
New Features
Changes
- Flyway is now tested with Ant 1.8.4 (was 1.8.2)
- Deprecated the
MigrationVersion()
constructor. Use
MigrationVersion.fromVersion(String)
instead.
Bug fixes
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.
Flyway 2.2.1 (2013-08-20)
Bug fixes
-
Issue 555
True exception causes lost when there is no cause chain
-
Issue 559
NullPointerException on database without default schema
-
Issue 563
MigrationVersion compareTo is very slow Pull
Request
-
Issue 570
Flyway failing with single quote as part of MySQL Stored Procedure Create Statement
-
Issue 571
Plugin fails with Maven 3.1 - An API incompatibility was encountered during configuration of mojo
-
Issue 572
NumberFormatException with file names like V1..1__desc.sql Pull
Request
-
Issue 574
Passing in target property causes GroovyCastExtention Pull
Request
Thanks to Chrissyx, Dario Matonicki, hvvikram, Michael Krotscheck, Piotr Wielgolaski, Thomas Jung and Tom
Stordy-Allison
for reporting these issues and contributing fixes.
Flyway 2.2 (2013-07-15)
New Features
Incompatible Changes
- Flyway now throws an exception if a placeholder is missing a replacement value
init
is now idempotent. Calling init
multiple times with the same values no longer
throws an exception.
- Ant: Dropped support for the separate Spring distribution.
Spring is still supported by
adding the
Spring jars yourself on Flyway's classpath
- Ant: The distribution is now called
flyway-ant-2.2.[zip|tar.gz]
(dropped the
-dist part)
- Command-line: Dropped support for the Spring distribution.
Spring is still supported by
adding the
Spring jars yourself in the /jars directory
- Command-line: The distribution is now called
flyway-commandline-2.2.[zip|tar.gz]
(dropped the -dist part)
- Command-line: The root directory is now called flyway-2.2 (dropped the -commandline part)
- Command-line: On Linux and OSX the script is now called
flyway
(dropped the
.sh)
Changes
- Flyway is now tested with the Microsoft JDBC Driver 4.0.2206.100 (was 3.0.1301.101)
Bug fixes
-
Small Bug in Flyway.getLocations() -> flyway-test-extension crash
-
Issue 453
flyway.cmd cannot determine console width on windows 7
-
Issue 456
"Migrate" command fails when the SQL Server login doesn't have a default schema
-
Issue 458
FlywayException executing flyway:info with -f maven option
-
Issue 459
Flyway.migrate() leaves the metadata table locked if it throws an exception
-
Issue 462
Flyway 2.1.1 hangs on ANALYZE command €
Sponsored
-
Issue 463
Clean on DB2 functions or procedures fails when two procedures have the same name
-
Issue 464
Clean on DB2 fails to clean schemas with ARRAY TYPES
-
Issue 471
Dropping queue tables throws Exception
-
Issue 472
SQL Server Unable to drop schema when functions exist
-
Issue 473
SQL Server: flyway:clean should drop synonyms
-
Issue 474
MySql - Cannot create table or query data from tables in migration steps because meta data table is locked
-
Issue 477
Fail fast for missing placeholders
-
Issue 481
Hexadecimal Value using x'1234' notation not parsed correctly
-
Issue 491
Oracle COMPOUND TRIGGER with initialization section not working properly
-
Issue 497
MySQLSqlStatementBuilder gets confused with lines containing escaped single quote
-
Issue 499
MySQL dump file's Views are not migrated
-
Issue 501
Flyway Clean on PostgreSQL leaves TYPES
-
Issue 505
Ant Tasks "validate" and "migrate" do not show actual and expected checksums
-
Issue 542
zero-length delimited identifier at or near """" on Postgres
-
Issue 548
Need a way to find out from FlywayException which SQL command failed
-
Pull Request 23
Consider colons as a token separator
-
Pull Request 25
Version in child projects is redundant, since it is inherited from the parent
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!
Flyway 2.1.1 (2013-03-15)
Bug fixes
-
Issue 443
Property flyway.consoleWidth should be optional in 2.1 command line
-
Issue 444
Add -X option to command line tool help
-
Issue 445
T-SQL Unicode string syntax broken in 2.1
-
Issue 449
Maven plugin raises NPE when url configuration is missing
-
Issue 450
MySQL - schema_version table remains LOCKed after Flyway runs
Thanks to Alex Krauss, Alex Panchenko, Alex Zuroff and Greg Case for reporting and contributing fixes for
these issues.
Flyway 2.1 (2013-03-05)
This version fixes minor issues with the metadata table. Migration is transparent and automatic
on first
run.
New Features
-
Issue 74
Automatic schema creation
-
Issue 219
Allow 'skip' in Maven Plugin
-
Maven Plugin: Support encrypted passwords in settings.xml
-
Issue 223
Command-line: Customizible location of jars folder
-
Issue 247
Allow loading SQL migrations from Filesystem (instead of only from classpath)
-
Issue 277
Command-line: Allow to load sql-migrations from different directory
-
Issue 324
flyway.driver
is now optional. It is auto-detected based on flyway.url
when
omitted
Incompatible Changes
- The deprecated
flyway.baseDir
property has been removed.
- The deprecated
flyway.basePackage
property has been removed.
- The default for
flyway.initVersion
has been changed to 1 (was 0).
-
Issue 340
Invalid locations now result in an exception being thrown instead of being silently ignored.
- Command-line: The default for
flyway.locations
has been changed to filesystem:<<INSTALL-DIR>>/sql
Changes
- Deprecated
flyway.initialVersion
. Use flyway.initVersion
instead.
- Deprecated
flyway.initialDescription
. Use flyway.initDescription
instead.
- Flyway now enforces the rules for what constitutes a
valid
version.
- SqlServer: Flyway is now tested with Jtds 1.2.7 (was 1.2.4).
- H2: Flyway is now tested with H2 1.3.170 (still compatible with 1.2.137 and above).
-
Issue 244
Flyway can now also be built with JDK 7 and above. (Minimum is still JDK 6)
Bug fixes
-
Issue 351
better log messages of DBMigrator
-
Issue 377
db/migration-test not recognized as location
-
Issue 381
setLocations does not override deprecated baseDir or basePackage
-
Issue 383
Support longer usernames
-
Issue 384
Special umlauts create IndexOutOfBoundsExceptions
-
Issue 387
schema_version table could have a primary key
-
Issue 394
HSQLDB : Quote in comment breaks parser
-
Issue 404
Bash script compatibility
-
Issue 407
OSGi: Add support for felix framework
-
Issue 413
Uninstantiatable JdbcMigration tests should throw exception
-
Issue 415
Support of db2 stored procedures
-
Issue 423
Classpath issue with EAR and Websphere
-
Issue 426
Current version of schema is always 0
-
Issue 427
Support for anonymous blocks in postgresql
-
Issue 428
Unclosed string literals in comments break statement parsing
-
Issue 430
H2 breaks when DATABASE_TO_UPPER=FALSE
-
Issue 432
Maven Plugin does not scan the test classpath for sql files
-
Issue 436
Description field isn't long enough
-
Issue 439
mysql cluster synchronize fail
-
Pull Request 9
Command-line Unix: Resolve symlinks in flyway.sh
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 Szymański,
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.
Flyway 2.0.3 (2012-12-05)
Bug fixes
-
Issue 372
Schemas property bug in AbstractFlywayMojo
-
Issue 374
OracleDbSupport assumes XML DB installed
-
Issue 375
Flyway is extremely slow on MySQL with a lot of schemas
-
Issue 379
maven flyway:migrate initOnMigrate and initVersion
-
Issue 380
First character of migration script name is removed in schema_version.
Thanks to David Gundersen, Don (dyou08), Mark Allen, turbohappy and Viktoras Makauskas
for reporting these issues.
Flyway 2.0.2 (2012-11-22)
This version performs minor fixes on the metadata table. Migration is transparent and automatic
on first
run.
Bug fixes
-
Issue 362
NPE when using "Serve modules without publishing"
-
Issue 367
Migrations fail with escaped single quote characters from mysqldump
-
Issue 368
flyway2.0.1 #setOutOfOrder() fails due to constraint violations
-
Issue 369
Broken link in documentation
Thanks to Leandro de Oliveira, Nelson Loyola, NoSuchLuke and Oliver Heil
for reporting these issues.
Flyway 2.0.1 (2012-11-20)
Bug fixes
-
Issue 358
Flyway 2.0 can break validation of applied PostgreSQL migrations because it removes "public" from the search
path
-
Issue 360
Command-line: OutOfOrder property doesn't get applied
-
Issue 361
flyway:clean does not work with Oracle XML DB and XMLIndex
-
Issue 364
Wrong DDL upgradeTo20FormatPart1.sql for Oracle
Thanks to Jens Berke, Nikos Sikalias, Sebastian (movio.co) and Sten Røkke
for reporting these issues.
Flyway 2.0 (2012-11-14)
This version comes with a new metadata table format. Migration is transparent and automatic on
first
run.
New Features
- Issue 99 New
Flyway.repair()
call for repairing the metadata table after a failed migration on a database
without DDL
transaction support.
-
Issue 105
initOnMigrate
flag to automatically initialize a non-empty schema to initVersion.
-
Issue 138
outOfOrder
flag for applying migrations with older version numbers that haven't been applied
yet
- Issue 248 New
Flyway.info()
call for info about both applied and pending migrations and current status of the
DB.
Incompatible Changes
- Migrations now always require a description.
- The name of the schemas specified with
schemas
are now case-sensitive.
- Issue 273 When
schemas
is
set, the first schema in the list is now automatically set as the default one.
- Core:
Version
has been renamed to MigrationVersion
for consistency.
- Core:
Flyway.getInitVersion()
now returns an instance of MigrationVersion
(was
SchemaVersion
).
- Core:
Flyway.getTarget()
now returns an instance of MigrationVersion
(was SchemaVersion
).
- Core:
MigrationInfoProvider.getVersion()
now returns an
instance of
MigrationVersion
.
- Maven:
schemas
is now a nested configuration element instead of a simply configuration property
Changes
- Issue 290 Commons-Logging
Dependency is now optional.
- Deprecated
Flyway.status()
. Use Flyway.info()
instead.
- Deprecated
Flyway.history()
. Use Flyway.info()
instead.
- Deprecated
validationMode
. Use validateOnMigrate
instead.
- Deprecated
validationErrorMode
. Use cleanOnValidationError
instead.
- Deprecated
disableInitCheck
. Use initOnMigrate
instead.
- Core: Deprecated
com.googlecode.flyway.core.exception.FlywayException
. Use
com.googlecode.flyway.core.api.FlywayException
instead.
- Core: Deprecated
Flyway.setinitVersion(SchemaVersion)
. Use
Flyway.setinitVersion(MigrationVersion)
instead.
- Core: Deprecated
Flyway.setTarget(SchemaVersion)
. Use
Flyway.setTarget(MigrationVersion)
instead.
- Command-line: Distribution without Spring no longer contains logging jars
- Ant: Distribution without Spring no longer contains logging jars
- HsqlDb: Flyway is now tested against HsqlDb 2.2.6 (was 1.8.0.10). Still compatible with HsqlDb 1.8.
- HsqlDb: Concurrent migration support for HsqlDb 2.0 and newer.
- Oracle: To be compatible with SqlPlus, Flyway now always expects /
to terminate a create type statement.
- DB2: Flyway is now tested against 9.7.0.7 (was 9.7.0.2). Fix Pack 7 fixes important issues related to
calling REORG from JDBC.
Bug fixes
-
Issue 145
SQL Scripts with wrong description separator fail due to DB constraints
-
Issue 183
Calculation of checksum is platform encoding dependent.
- Issue 199 Trimming of
whitespaces in SQL migrations breaks stored procedures formatting.
-
Issue 218
createMetaDataTable.sql doesn't escape schema, table and field names
- Issue 228 Oracle - SQL
hints
- Issue 231 Oracle Sql
Parser: support comments inside package body
- Issue 240 Empty lines are
stripped from multi-line string inserts
-
Issue 276
Older DB2 versions limit the length of constraint names causing schema_version creation to fail
- Issue 285
OracleSqlScript does not support delimiter for TYPE(s) in
1.6.1
- Issue 287 JNLP classloader not supported
- Issue 293 1.7 issues
warnings about deprecated baseDir and basePackage even if they are not defined
- Issue 296 "unexpected
end of statement" in flyway 1.7 when creating multi-statement TRIGGER in HSQL
- Issue 298 Java migrations:
ignore abstract classes
- Issue 300 flyway:clean
doesn't remove Schema-level triggers on Oracle
-
Issue 303
dropping aggregate function fails with clean
-
Issue 304
SQL migration with multiline INSERT takes too long
-
Issue 305
SqlScript parser misses */ closing comment if line starts with --
-
Issue 307
CommandLine 1.7 --- More than one migration with same version
-
Issue 309
SQL script multiple comments issue
-
Issue 310
Having Delimiter keyword within block comment
-
Issue 313
Flyway breaks on quotes inside comments
-
Issue 315
Oracle clean schema fails to drop SYS_IOT_OVER tables
-
Issue 341
NTLM Authentication
-
Issue 348
ORA-00933 in case of schema name containing a dot symbol
-
Issue 355
Flyway clean fails with Oracle nested tables
-
Issue 356
Cannot create multi-statement triggers on DB2
- Added JBoss VFS v2 support to enable deployment inside JBoss 5.
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.
Flyway 1.7 (2012-07-10)
New Features
- Issue 174 Multiple
differently named base dirs for SQL Migrations
Changes
- Issue 59 Spring Dependency
is now optional.
- Core: Flyway now directly depends on commons-logging. This previously happened transitively through the
spring-jdbc dependency.
- Core: Removed deprecated Flyway.get/setTransactionManager() methods. They already had no effect anymore
since 1.6
- Core: Deprecated JavaMigration. Use
SpringJdbcMigration instead.
- Core: Deprecated JavaMigrationInfoProvider. Use MigrationInfoProvider instead.
- Core: Deprecated JavaMigrationChecksumProvider. Use MigrationChecksumProvider instead.
- Core: Deprecated flyway.baseDir and flyway.basePackage properties. Use the new flyway.locations instead.
- Command-line: New download distribution without Spring dependencies
- Ant: New download distribution without Spring dependencies
- Ant: Deprecated direct nesting of placeholder elements. They must now be wrapped inside a placeholders
container.
Bug Fixes
- Issue 156 OSGI: Incorrect
Unable to find path for sql migrations
- Issue 181 Deploying
flyway-core in virgo (Spring DM Server) fails with ClassNotFoundException: javax.sql.DataSource
- Issue 182 Allow spring
3.0.x in osgi import-package
- Issue 198 Angled-brackets
need to be escaped in Javadoc
- Issue 211 Validation
package missing from OSGi exported packages
- Issue 227 Deployment in a
WAR on JBoss
- Issue 252 1.6.1 flyway.sh
classloader problem
- Issue 256 Enable File
Scanning for Zip Protocol
- Issue 262 Fix incorrect
handling of nested dollar quotes in PostgreSQL scripts
- Issue 263 Flyway
commandline 1.6.1 no available on Maven central
- Issue 264 Getting
FlywayException when running maven flyway:migrate goal in
Jenkins
- Issue 269
FileSystemLocationScanner and Symbolic Links on
Unix
- Issue 271 Flyway clean
fails to clean db2 when using views with materialized query tables
- Issue 272 Flyway clean
doesn't drop DB2 aliases
- Issue 279 Migrate fails on
.sql files with utf-8 signature
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.
Flyway 1.6.1 (2012-04-21)
Bug Fixes
- Issue 239 Flyway 1.6
classpath scanner does not find files unless baseDir has trailing '/'
- Issue 241 1.6 ant task no
longer works with sql migrations
- Issue 242 Fail to properly
load resource files (SQL) in WebappClassLoader
Thanks to Marc Dumontier, Steve Tarka and vtkstef for reporting these issues.
Flyway 1.6 (2012-04-09)
New Features
Changes
- Flyway is now built with JDK 6, but still compatible with JDK 5.
- Flyway is now tested against the SQL Server sqljdbc4 driver (was sqljdbc).
- Flyway.get/setTransactionManager are now deprecated and have no effect anymore. More info
Bug Fixes
- Issue 79 Migrations don't
support semicolons within quotes
- Issue 184 Huge SQL
migrations force huge heap space for doing flyway migrate
- Issue 186 Javadoc of
getBaseDir method of Flyway class is not consistent with implementation.
- Issue 192 Regression in
1.5 -- Oracle parsing of SQL Script fails due to fieldname 'Function'
- Issue 200 Cannot invoke
setDataSource() multiple times
- Issue 208 Incorrect
Javadoc for Flyway.setBaseDir(String)
- Issue 209 Support dropping
custom domains and enums in PostgreSQL
- Issue 212 Multiline
inserts not supported by PostgreSQLSqlScript
- Issue 217 Command-line
tool may fail to find config on windows machine
- Issue 220 Maximum open
cursors
- Issue 224 Oracle triggers
- Issue 225 Clean for SQL
Server does not remove User Defined Table Types
- Issue 232
SqlMigrationResolver ignores scripts in a multi-module
environment
- Issue 236 Flyway clean
fails for table created by Oracle text
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.
Flyway 1.5 (2011-11-09)
New Features
- Issue 39 Ant Tasks for
Flyway
- Issue 136 Support for
server credentials from settings.xml (Maven plugin)
Changes
- Calling validate either through the API, the Maven plugin, the Command-Line client or the Ant Tasks now
automatically sets the validationMode to ALL
- Removed the deprecated Flyway.init(version,description) method
- Removed the deprecated BaseJavaMigration class and the pre
1.0 inheritance-based Java Migration support (update to implements JavaMigration
if you haven't already done so)
Bug Fixes
- Issue 135 Include URL of
offending migrations in case of conflict
- Issue 143 flyway.sh clean
fails due to dependencies (PostgreSQL cleaning of base types & functions)
- Issue 144 Postgresql
functions defined in multiple-lines with $_$ placeholders fail to migrate
- Issue 146 Allow
placeholder to disable sql code
- Issue 148 Flyway command
line returns exit status 0, even on failure
- Issue 152 NullPointerExcpetion
Null
- Issue 153 Command line
tool 1.4.2 (Windows) - sql folder - unexpected behavior
- Issue 154 Command line
tool 1.4.2 (Windows) - validating changes to executed migrations not happening
- Issue 159 Delimiter change
happens outside of FUNCTIONS, PROCEDUREs and PACKAGES in Oracle
- Issue 160 Not dropping
database object types during a Clean (Oracle)
- Issue 161 Maven validate
goal doesn't validate
- Issue 162 Migrations won't
work on MS SQL Server with case sensitive collation
- Issue 168 flyway:clean
doesn't work in PostgreSQL on tables with child tables
- Issue 170 Must not apply
migration if migration pattern is violated
- Issue 173 Oracle: create
procedure parser issue
- Issue 175 HsqlDB does not
cleanup sequences
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.
Flyway 1.4.2 (2011-06-29)
Bug Fixes
Thanks to Armin Gattung for reporting this issue.
Flyway 1.4.1 (2011-05-27)
New Features
- Issue 129 Use user
supplied TransactionManager
Bug Fixes
Thanks to jmarin and floburka for reporting these issues.
Flyway 1.4 (2011-05-13)
New Features
Changes
- Flyway is now tested with the DB2 Db2jcc driver (was Db2jcc4)
- Flyway is now tested with the Oracle Ojdbc5 driver (was Ojdbc6)
- Flyway is now tested with the PostgreSQL Jdbc3 driver (was Jdbc4)
Bug Fixes
- Issue 93 Include paths of
offenders in migration conflict error message
- Issue 94 "Found more
than one migration" error for duplicate resources
- Issue 96 Migration fails of
version description is excessive
- Issue 124 Maven:
flyway.schemas seems not be recognized
- Issue 125 Oracle
Materialized View logs cause an exception during cleaning.
- Issue 126 Cleaning Oracle
Materialized Views causes exception
- Issue 128 H2SqlScript does
not correctly detect statements
Thanks to Armin Gattung, Chris Wewerka, Gili Tzabari, Adriano Machado, everflux and stembler for reporting these
issues.
Flyway 1.3.1 (2011-04-06)
New Features
Bug Fixes
- Issue 102 Oracle: Flyway
now throws an exception when a clean is attempted on the SYSTEM schema
- Issue 108 DB2Support:
Detection of tables for schema cleaning also includes views
- Issue 110 H2 Problem: drop
table statements are created for views
- Issue 111 Flyway should
not attempt to clean generated sequences on H2
- Issue 113 DB2Support
Clean: Generation of drop sequences should not include system generated sequences
- Issue 115 The command line
tool does not support -target property
- Issue 120 Accept "go"
delimiter in small caps for SQL Server
- Fixed cleaning of views for HsqlDb
Thanks to Chris Wewerka, Eric Jain, Derek Kwok, Matthew Lai and Julien Dumetier for reporting these
issues.
Flyway 1.3 (2011-03-18)
New Features
Bug Fixes
- Issue 103 Flyway can now
clean sequences, constants and domains on H2
- Issue 104 mvn flyway:clean
fails with SQL-Exception when db user does not have DBA permissions (Oracle XE)
Thanks to Chris Wewerka for contributing the DB2 support!
Thanks to M.Ahyaie, Jonas Kilian and Martin
Pletzer for reporting these issues.
Flyway 1.2 (2011-02-27)
New Features
Changes
- Flyway is now tested with MySQL version 5.1 (up from 5.0)
- Flyway is now tested with the Oracle OJDBC6 JDBC driver (up from OJDBC14)
Bug Fixes
- Issue 92 Flyway might be
leaking database connections
- Issue 95 The clean command
needs to quote table names
- Support for semicolon at the end of a line inside a string literal (H2)
- Support for CREATE PACKAGE statements (Oracle)
- Issue 63 Support trailing
single line comments
- Issue 97 Maven Plugin
should not log spring messages to console
- Issue 89 Restore capability
to use non-empty database without init
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
Flyway 1.1 (2011-02-03)
New Features
- Issue 43 Standalone tool to
run Flyway directly from the command-line
- Issue 77 The Flyway Maven
plugin now suggests running mvn compile if no migrations have been found.
- Issue 80 Prevent migrate()
or validate() on a non-empty schema without a metadata table with at least one applied migration.
Bug Fixes
- Issue 78 Spring JDBC
dependency missing from POM.
- Support for semicolon at the end of a line inside a string literal (Hsql only for now)
- Issue 81 Validation fails
with type mismatch for INIT
Thanks to jaggerjackkurosaki and Thomas Kruse for reporting these issues
Flyway 1.0.1 (2010-12-27)
Bug Fixes
- Issue 75 Wrong detection of
Spatial Extensions on Oracle 10g (but works on XE)
Flyway 1.0 (2010-12-26)
New Features
- Clean now purges the Oracle recycle bin
Bug Fixes
- Issue 72
Flyway.configure(Properties) also works when the DataSource is
set explicitly beforehand.
Thanks to Mathias Bogaert for reporting the Flyway.configure issue
Flyway 0.9.5 (2010-12-12)
New Features
- Issue 36 Added support for
specifying a target version up to which Flyway should run migrations.
- Added new property ignoreFailedFutureMigration to ignore migration failures that happened while
deploying a newer version of the software. This allows for software rollbacks without having to do database
rollbacks, at the cost of weakening fail fast.
- Issue 31 Flyway now has its
own exception hierarchy. All exceptions thrown are now of type FlywayException.
- Issue 44 Flyway can now
find SQL migrations even if they are in subfolders of baseDir.
Changes
- Removed support for upgrading from pre 0.9 versions. If you need to upgrade from 0.8.5 and earlier, you must
migrate to 0.9.4 first before migrating to this version.
- Removed support for the deprecated metaDataTable property. Use table instead.
- Removed the deprecated Flyway.init(SchemaVersion version) method. Use Flyway.init(SchemaVersion
version,
String description) instead.
- Issue 30 Java migrations
are now based on interfaces instead of inheritance. The existing BaseJavaMigration class has been
deprecated and retrofitted to
this new model.
Bug Fixes
- Fixed an issue with Oracle Spatial Index tables causing a failure when attempting to clean.
Flyway 0.9.4 (2010-11-24)
Changes
- Issue 61 Reduced the info
logging to a single line per migration
Bug Fixes
- Fixed a bug in the Oracle Sql Parser which caused it to trip over column names starting with 'begin'
- Fixed custom version table name handling. Setting the datasource before the table name was causing an error.
This also affected the Maven plugin.
- Issue 65 New-lines are now
preserved in statements to improve the readability of stored procedures.
Thanks to Mathias Bogaert for reporting the logging issue and Daniel Garcia for reporting and contributing a
patch for the new-line issue
Flyway 0.9.3 (2010-11-09)
New Features
- Issue 62 Added support for
MySQL comment directives (/*!...*/;) so MySQL dumps can be used as migrations
Thanks to Mathias Bogaert for reporting this issue
Flyway 0.9.2 (2010-11-05)
New Features
- Issue 51 The Flyway class
can now be configured using a Properties object
- Issue 41 Support for
PostgreSQL, including stored procedures (CREATE FUNCTION with $$ escapes)
Changes
- Issue 38 The
SchemaVersion class doesn't contain the description
anymore
- Issue 57 Ignoring oracle
recycle bin tables when running clean
- Issue 55 Maven plugin does
not trigger phase compile anymore (use mvn compile flyway:migrate instead). Fixes Hudson problems.
- Issue 53 Added default
phase pre-integration-test to clean and migrate mojos
Thanks to Philipp (godhood) for contributing large parts of the PostgreSQL support
Flyway 0.9.1 (2010-09-14)
Bug fixes
- Fixed parsing of CREATE FUNCTION and CREATE PROCEDURE statements in PL/SQL
Thanks to Hilario Fernandes for reporting this issue.
Flyway 0.9 (2010-08-25)
New Features
- Support for migration checksums (CRC-32 for SQL Migrations, optional custom implementation for Java
migrations)
- Optional accidental change detection running validation (including checksums) before migration
- mvn flyway:validate goal to validate the applied migrations against the available ones in the
classpath
- Sql migrations file names can now have a configurable prefix (Default: V) and suffix (Default: .sql)
Changes
- The metadata table format has been extended with new columns (type, checksum, installed_by). Existing
metadata tables will be upgraded automatically on the first run, no manual intervention is required.
- The schemaMetaDataTable property has been renamed to table in both the Flyway class and
the Maven plugin. The old property still works, but has been deprecated and will be removed in 0.9.5
- mvn flyway:migrate now automatically triggers the compile phase to ensure that new migrations are found
by the plugin
Bug Fixes
- Fixed a problem where Flyway could not clean an Oracle database when the spatial extensions where
missing
Flyway 0.8.5 (2010-07-26)
- Added mvn flyway:history goal to display the complete migration history of the schema
- The encoding of the Sql migration files is now configurable
- mvn flyway:clean is now more robust and available for all supported databases
- Added mvn flyway:init to initialize an existing schema with a metadata table and an initial version
- mvn flyway:status show installation date instead of execution time
- Added MySQL stored procedure support
- Java migrations now inherit from
com.googlecode.flyway.core.migration.java.BaseJavaMigration
- Fixed all known bugs
Flyway 0.8 (2010-07-15)
- Added mvn flyway:status goal to display the current version of the schema
- Fixed logging in Maven Plugin
- Base package changed to com.googlecode.flyway to match Maven groupId
- Restored Spring 2.5 compatibility
- Added an example of a Java Migration to the sample application
Flyway 0.7 (2010-06-29)
- Added support for parallel migrations. Flyway is now safe to deploy in a cluster.
- [Alpha] Added initial mvn flyway:clean goal to remove all objects from the
schema. Note: Only for Oracle in 0.7
Flyway 0.6 (2010-06-13)
- Updated maven groupId to com.googlecode.flyway
- Added HsqlDb support
- Added Maven Plugin with Migrate mojo (mvn flyway:migrate)
- Added Sample application
- Fail-fast when a previous migration failed
- Improved performance and logging output
- Added H2 database support
Flyway 0.0.5 (2010-05-13)
- Fixed connection leaks
- Improved support for PL/SQL blocks having a declare section
Flyway 0.0.4 (2010-05-09)
- Display exact script name and line number when a statement could not be executed
- Added support for multi-line comments /* */ in sql scripts
Flyway 0.0.3 (2010-04-26)
- Added support for Ant-style ${placeholder} replacement in sql migrations
- Added support for oracle pl/sql blocks in sql migrations
Flyway 0.0.2 (2010-04-23)
- Fixed current version index on Oracle
Flyway 0.0.1 (2010-04-20)
Roadmap