I recently attempted to upgrade from Spring Boot 3.0.6 to 3.1.0, but encountered an incompatibility with FlyWay Enterprise 9.0.0 (the most recent version of this library). There's no mention in the release notes that this was an intentional breaking change, so I assume it was unintentional.

Application startup error:

***************************
APPLICATION FAILED TO START
***************************

Description:

An attempt was made to call a method that does not exist. The attempt was made from the following location:

    org.springframework.boot.autoconfigure.flyway.FlywayAutoConfiguration$FlywayConfiguration.configureProperties(FlywayAutoConfiguration.java:248)

The following method did not exist:

    'org.flywaydb.core.api.configuration.FluentConfiguration org.flywaydb.core.api.configuration.FluentConfiguration.executeInTransaction(boolean)'

Related commit: https://github.com/spring-projects/spring-boot/commit/cf95ae92eae42a23916f7c7112e3da2a1526c88d

Comment From: wilkinsona

Thanks for the report. I don't think cf95ae9 is the cause as it did not introduce the call to executeInTransaction. It was introduced in https://github.com/spring-projects/spring-boot/commit/238b85fabc43f9ba4160a6c1d387165777e00069 in 3.1.0-M1. We can look at restoring compatibility with older versions of Flyway. In the future, it would also be much appreciated if you could test our milestones or even just release candidates so that we can catch this sort of problem before GA.

Comment From: jpicton

Cheers for the quick turnaround @wilkinsona . Sorry about the incorrect commit reference too. I just looked at the git blame for the tag and didn’t realise that the commit I referenced had just relocated the offending method (not introduced it).