-
Notifications
You must be signed in to change notification settings - Fork 2.7k
Migration Guide 2.5
We upgraded the Flyway dependency from 7.15 to version 8.0. Please refer to the Flyway release notes to see all the changes.
One important breaking change is that Flyway deprecated the Community support for database versions older than 5 years, for example: MySQL 5.7 and PostgreSQL 9.6. Therefore, users using the Flyway community and an unsupported database will have a failure at startup similar to:
Caused by: org.flywaydb.core.internal.license.FlywayEditionUpgradeRequiredException: Flyway Teams Edition or MySQL upgrade required:
MySQL 5.7 is no longer supported by Flyway Community Edition, but still supported by Flyway Teams Edition.
To avoid split packages, the following classes was deprecated in 2.1 and are now removed:
-
io.quarkus.hibernate.orm.panache.ProjectedFieldName
has been removed in favor ofio.quarkus.hibernate.orm.panache.common.ProjectedFieldName
.
To avoid split packages, the following classes was deprecated in 2.1 and are now removed:
-
io.quarkus.mongodb.panache.MongoEntity
has been removed in favor ofio.quarkus.mongodb.panache.common.MongoEntity
. -
io.quarkus.mongodb.panache.ProjectionFor
has been removed in favor ofio.quarkus.mongodb.panache.common.ProjectionFor
. -
io.quarkus.mongodb.panache.PanacheUpdate
has been removed in favor ofio.quarkus.mongodb.panache.common.PanacheUpdate
. -
io.quarkus.mongodb.panache.reactive.ReactivePanacheUpdate
has been removed in favor ofio.quarkus.mongodb.panache.common.reactive.ReactivePanacheUpdate
.
The quarkus-vertx
extension no longer depends on the quarkus-jackson
extension.
As a result, if your application depends on quarkus-vertx
and makes use of the io.vertx.core.json.JsonObject.mapFrom()
or the io.vertx.core.json.JsonObject.mapTo()
methods then the quarkus-jackson
extension should be added (either manually or as a transient dependency) to the project dependencies.
The templates
directories are also scanned in all application archives and in extension runtime modules.
Previously, only the templates
directory from the application root was considered.
Note that it's possible to exclude any file from any templates
directory via the quarkus.qute.template-path-exclude
configuration property.
Excluded files are neither parsed nor validated during build and are not automatically available at runtime.
The keys used to access the iteration metadata inside a loop cannot be used directly anymore.
Instead, a prefix is used to avoid possible collisions with variables from the outer scope.
By default, the alias of an iterated element suffixed with an underscore is used as a prefix.
For example, the hasNext
key must be prefixed with it_
inside an {#each}
section: {it_hasNext}
.
And must be used in a form of {item_hasNext}
inside a {#for}
section with the item
element alias.
The prefix is configurable either via EngineBuilder.iterationMetadataPrefix()
for standalone Qute or via the quarkus.qute.iteration-metadata-prefix
configuration property in a Quarkus application. Three special constants can be used:
-
<alias_>
- the alias of an iterated element suffixed with an underscore is used (default); e.g.{item_hasNext}
-
<alias?>
- the alias of an iterated element suffixed with a question mark is used; e.g.{item?hasNext}
-
<none>
- no prefix is used - the default behavior in previous versions; e.g.{hasNext}