Skip to content

Migration Guide 3.5

Guillaume Smet edited this page Oct 4, 2023 · 13 revisions

Qute

A user tag is now executed as an isolated template by default, i.e. without access to the context of the template that calls the tag. If you need to change the default behavior and disable the isolation, just add _isolated=false or _unisolated argument to the call site. For example {#itemDetail item showImage=true _isolated=false /} or {#itemDetail item showImage=true _unisolated /}. See also the discussion for more details.

io.quarkus.qute.ResultNode is now an abstract class (it was an interface). In general, the ResultNode should not be implemented by users but it’s part of the public API.

The Qute API is built on top of java.util.concurrent.CompletionStage. Up to now, any implementation could be used in the API. Since Quarkus 3.5 only the java.util.concurrent.CompletableFuture and the internal io.quarkus.qute.CompletedStage are supported by default. The behavior can be changed with the system property -Dquarkus.qute.unrestricted-completion-stage-support=true.

Hibernate ORM

Database version now gets verified on startup even if relying on defaults

The Hibernate ORM extension for Quarkus now verifies that the database version it connects to at runtime is at least as high as the one configured at build time, even when that configuration is not explicit (i.e. when relying on the defaults that target Quarkus' minimum supported DB versions.

This change was made to make application developers aware they use a version of the database that is no longer considered as supported by Hibernate ORM or Quarkus: in that case, Quarkus will refuse to start with an exception.

This change should only affect a supported database subset and only for older versions:

  • MariaDB older than 10.6

  • MySQL older than 8

  • Oracle Database older than 12

  • Microsoft SQL Server older than 13 (2016)

If the database cannot be upgraded to a supported version, it is still possible to use it, although some features might not work. To continue using an older, unsupported version of a database:

Dev Services

Microsoft SQL Server

The Microsoft SQL Server Dev Services have been upgraded to 2022-latest (and azure-sql-edge:latest for Mx Macs).

You will need to adjust your container-license-acceptance.txt file accordingly.

Clone this wiki locally