# Quarkus changelog > A Kubernetes-native Java framework tuned for fast startup and low memory. - Vendor: Red Hat - Category: Frameworks & Libraries - Official site: https://quarkus.io - Tracked by: What's New (https://whatsnew.fyi/product/quarkus) - Harvested from: GitHub (quarkusio/quarkus) - Entries below: 10 (newest first) What's New is an index, not a publisher: every entry below links to the vendor's own release notes, which are the authoritative source. Entries are labelled where they are hand-curated sample data, pre-releases, or drawn from a secondary source such as a developer blog. Reuse: the summaries, labels and curation here are © What's New. Quote freely with attribution and a link back; wholesale republication of the corpus is not permitted — terms: https://whatsnew.fyi/terms. The vendors' own release notes remain their publishers'. ## Releases ### 3.27.5.1 - Date: 2026-08-04 - Version: 3.27.5.1 - Original notes: https://github.com/quarkusio/quarkus/releases/tag/3.27.5.1 - Permalink: https://whatsnew.fyi/product/quarkus/releases/3.27.5.1 - **fixed** — Fix native image regression caused by Netty 4.1.136 SslContext API change - **changed** — Bump org.postgresql:postgresql from 42.7.11 to 42.7.13 - **fixed** — Fix unbounded multipart part-header accumulation in Quarkus REST ###### Complete changelog * [#55627](https://github.com/quarkusio/quarkus/pull/55627) - [3.27] Fix native image regression caused by Netty 4.1.136 SslContext API change * [#55721](https://github.com/quarkusio/quarkus/pull/55721) - [3.27] Bump org.postgresql:postgresql from 42.7.11 to 42.7.13 * [#55793](https://github.com/quarkusio/quarkus/pull/55793) - [3.27] Quarkus REST - Fix unbounded multipart part-header accumulation ### 3.33.3.1 - Date: 2026-08-04 - Version: 3.33.3.1 - Original notes: https://github.com/quarkusio/quarkus/releases/tag/3.33.3.1 - Permalink: https://whatsnew.fyi/product/quarkus/releases/3.33.3.1 - **fixed** — Fix native image regression caused by Netty 4.1.136 SslContext API change - **fixed** — Fix unbounded multipart part-header accumulation in Quarkus REST ###### Complete changelog * [#55628](https://github.com/quarkusio/quarkus/pull/55628) - [3.33] Fix native image regression caused by Netty 4.1.136 SslContext API change * [#55792](https://github.com/quarkusio/quarkus/pull/55792) - [3.33] Quarkus REST - Fix unbounded multipart part-header accumulation ### 3.38.1 - Date: 2026-08-04 - Version: 3.38.1 - Original notes: https://github.com/quarkusio/quarkus/releases/tag/3.38.1 - Permalink: https://whatsnew.fyi/product/quarkus/releases/3.38.1 - **fixed** — Vert.x FileSystemOptions constants are now initialized at runtime for native image instead of at build time - **fixed** — Tests that do not start due to missing initialization - **added** — Support management interface dynamic port in integration tests - **fixed** — REST Client Content-Type header is now set when provided via jakarta.ws.rs.client.Entity - **fixed** — @QuarkusTest bootstrap no longer deadlocks during parallel deployment-dependency resolution - **fixed** — Maven resolver HTTP transport classes are pre-initialized to avoid class loading deadlock - **fixed** — JaCoCo now instruments classes for dev mode tests and QuarkusExtensionTest contributes to coverage report - **fixed** — executionMaxDelay and description are now copied in CompositeScheduler - **fixed** — Kotlin 2.4.0 generic suspend functions in JAX-RS resources no longer break endpoint scanning - **fixed** — Synthetic methods are now ignored in RESTEasy Reactive sub-resource scan - **fixed** — EnumMap ClassCastException in bytecode recorder on method split is fixed - **fixed** — Access log cookie masking now checks all cookie pairs instead of only the first one - **fixed** — quarkus-rest-jackson reflection-free serializers now correctly deserialize JsonAlias with same value as field name - **fixed** — @JsonFormat pattern annotation on java.util.Date field is no longer ignored by reflection-free Jackson serializers - **fixed** — OIDC GraphQL client no longer throws NPE when default OIDC client is configured in native mode - **fixed** — reflection-free Jackson serializers now skip @JsonAlias having the same name as the field during deserialization - **fixed** — @TestHTTPEndpoint is now propagated to @Nested subclasses - **fixed** — reflection-free serializers now recognize @JsonValue declared on superinterface methods at multiple inheritance levels - **fixed** — @Transient annotated methods are no longer serialized in reflection-free Jackson serializers - **fixed** — multi-level @JsonValue inheritance is now correctly handled in reflection-free serializers - **fixed** — REST Client no longer hangs on 3xx responses without Location header when followRedirects is enabled and HttpClientRequest customizer is registered ###### Complete changelog * [#54725](https://github.com/quarkusio/quarkus/pull/54725) - Improve Basic authentication how-to * [#54781](https://github.com/quarkusio/quarkus/issues/54781) - Vert.x's FileSystemOptions contains constants getting defined at build time * [#54885](https://github.com/quarkusio/quarkus/issues/54885) - Tests do not start * [#55023](https://github.com/quarkusio/quarkus/pull/55023) - Support management interface dynamic port in integration tests * [#55062](https://github.com/quarkusio/quarkus/issues/55062) - REST Client: Content-Type header not set when provided via jakarta.ws.rs.client.Entity * [#55138](https://github.com/quarkusio/quarkus/pull/55138) - Overwrite content-type header provided via the variant of the entity * [#55267](https://github.com/quarkusio/quarkus/pull/55267) - Initialize Vert.x FileSystemOptions at runtime for native image * [#55317](https://github.com/quarkusio/quarkus/issues/55317) - `@QuarkusTest` bootstrap deadlocks during parallel deployment-dependency resolution * [#55345](https://github.com/quarkusio/quarkus/pull/55345) - Pre-init Maven resolver HTTP transport classes to avoid class loading deadlock * [#55405](https://github.com/quarkusio/quarkus/pull/55405) - Bump smallrye-open-api.version from 4.3.3 to 4.3.5 * [#55498](https://github.com/quarkusio/quarkus/pull/55498) - Remove the CI job that runs k8s tests on Windows * [#55520](https://github.com/quarkusio/quarkus/pull/55520) - JaCoCo: also instrument classes for dev mode tests * [#55525](https://github.com/quarkusio/quarkus/issues/55525) - JaCoCo: QuarkusExtensionTest does not contribute to coverage report * [#55549](https://github.com/quarkusio/quarkus/pull/55549) - Copy executionMaxDelay and description in CompositeScheduler * [#55564](https://github.com/quarkusio/quarkus/pull/55564) - Bump keycloak-client.version from 26.0.10 to 26.0.11 * [#55578](https://github.com/quarkusio/quarkus/issues/55578) - Kotlin 2.4.0: overriding a generic suspend fun in a JAX-RS resource breaks endpoint scanning * [#55588](https://github.com/quarkusio/quarkus/pull/55588) - Bump io.rest-assured:rest-assured from 6.0.0 to 6.0.1 * [#55595](https://github.com/quarkusio/quarkus/pull/55595) - Ignore synthetic methods in RESTEasy Reactive sub-resource scan * [#55618](https://github.com/quarkusio/quarkus/issues/55618) - Limit of 18 OpenAPI Profiles * [#55620](https://github.com/quarkusio/quarkus/pull/55620) - Fix EnumMap ClassCastException in bytecode recorder on method split * [#55633](https://github.com/quarkusio/quarkus/pull/55633) - Bump com.google.cloud.tools:jib-core from 0.28.1 to 0.28.2 * [#55636](https://github.com/quarkusio/quarkus/pull/55636) - Fix JaCoCo coverage for QuarkusExtensionTest * [#55640](https://github.com/quarkusio/quarkus/pull/55640) - Enforce managed versions on direct dependencies of an application artifact provided as a JAR * [#55643](https://github.com/quarkusio/quarkus/issues/55643) - Access log cookie masking bypassed for cookies not first in the header * [#55644](https://github.com/quarkusio/quarkus/pull/55644) - Fix access log cookie masking to check all cookie pairs * [#55652](https://github.com/quarkusio/quarkus/issues/55652) - quarkus-rest-jackson Reflection-free-serializers fails on deserializing JsonAlias with same value as fieldname * [#55655](https://github.com/quarkusio/quarkus/pull/55655) - Remove value registry, not used * [#55678](https://github.com/quarkusio/quarkus/issues/55678) - `@JsonFormat`(pattern = "...") on a java.util.Date field is ignored by Reflection-free Jackson serializers * [#55686](https://github.com/quarkusio/quarkus/issues/55686) - GraphQL+OIDC issue with default configuration and native * [#55687](https://github.com/quarkusio/quarkus/issues/55687) - quarkus-rest-jackson Reflection-free-serializers serializes `@Transient` annotated methods * [#55691](https://github.com/quarkusio/quarkus/pull/55691) - OIDC GraphQL client: fix _[Truncated at 4000 characters — full notes: https://github.com/quarkusio/quarkus/releases/tag/3.38.1]_ ### 3.38.0 - Date: 2026-07-29 - Version: 3.38.0 - Original notes: https://github.com/quarkusio/quarkus/releases/tag/3.38.0 - Permalink: https://whatsnew.fyi/product/quarkus/releases/3.38.0 - **fixed** — Fix handling of multiple `@RegisterForProxy` annotations on the same type by using `getAnnotationsWithRepeatable` in proxy registration logic - **changed** — Update Infinispan to 16.0.14 - **added** — Add Gradle-version dependent warnings in Gradle plugin - **fixed** — Fix scalpel configuration ###### Complete changelog * [#55401](https://github.com/quarkusio/quarkus/issues/55401) - `@RegisterForProxy` is silently ignored when used more than once on the same type * [#55402](https://github.com/quarkusio/quarkus/pull/55402) - Use `getAnnotationsWithRepeatable` for handling repeatable annotations in proxy registration logic * [#55469](https://github.com/quarkusio/quarkus/pull/55469) - Updates to Infinispan 16.0.14 * [#55501](https://github.com/quarkusio/quarkus/pull/55501) - Gradle: Add Gradle-version dependent warnings * [#55536](https://github.com/quarkusio/quarkus/pull/55536) - Fix scalpel configuration ### 3.33.3 - Date: 2026-07-29 - Version: 3.33.3 - Original notes: https://github.com/quarkusio/quarkus/releases/tag/3.33.3 - Permalink: https://whatsnew.fyi/product/quarkus/releases/3.33.3 - **fixed** — Fix duplicate gauge registration for mysql.queue.size metric - **fixed** — Fix Quarkus CLI failure when offering is set but empty - **changed** — Update Azure function host.json default bundle versions to supported version - **fixed** — Filter out package names before proxy generation to fix spurious warning - **fixed** — Fix Micrometer Prometheus http_server_bytes_read registration failure with management interface enabled and random test port - **fixed** — Update Azure Functions default ExtensionBundle to [4.0.0, 5.0.0) - **fixed** — Fix OpenAPI build failure with mp.openapi.scan.packages - **fixed** — Fix Quarkus build with vertx-hazelcast after upgrade to 3.33.1 - **fixed** — Handle edge-case with kapt plugin missing generated sources - **fixed** — Fix potential NPE and warn if trustall is being used in the exporter - **fixed** — Fix @ConfigProperty with Google Cloud Function throwing Exception when executing QuarkusTest - **fixed** — Use proper classloader when running Google Cloud Functions - **fixed** — Fix QuarkusEntryPoint path decoding issue where + is incorrectly converted to space in file paths - **fixed** — Fix Liquibase native resolution when included changelogs use logicalFilePath - **fixed** — Cleanup temporary files in QuarkusServerFileBodyHandler even when Jakarta REST Interceptors exist - **changed** — Don't use ordered execution for @RunOnVertxContext - **changed** — Upgrade gRPC to 1.81.0 and fix substitutions - **fixed** — Fix mTLS auth mechanism NPE when proxy forwarded header indicates HTTPS in HTTP request - **fixed** — Fix NPE in RemoteUserAttribute with anonymous identity - **fixed** — Fix @ServerExceptionMapper bridge method handling for generic types ###### Complete changelog * [#47504](https://github.com/quarkusio/quarkus/issues/47504) - This Gauge has been already registered "mysql.queue.size" * [#50480](https://github.com/quarkusio/quarkus/issues/50480) - Quarkus CLI fail if the offering is set but empty * [#50504](https://github.com/quarkusio/quarkus/issues/50504) - Azure function host.json default bundle versions must be updated tu supported version * [#50572](https://github.com/quarkusio/quarkus/issues/50572) - HibernateOrmProcessor causes Warning that package cannot be indexed due to package-info.java * [#52927](https://github.com/quarkusio/quarkus/pull/52927) - Filter out package names before proxy generation to fix spurious warning * [#53274](https://github.com/quarkusio/quarkus/pull/53274) - Add CLAUDE.local.md to .gitignore * [#53279](https://github.com/quarkusio/quarkus/issues/53279) - Micrometer Prometheus: http_server_bytes_read registration fails with management interface enabled and random test port * [#53347](https://github.com/quarkusio/quarkus/pull/53347) - Fix Azure-functions: update default ExtensionBundle to [4.0.0, 5.0.0) * [#53471](https://github.com/quarkusio/quarkus/issues/53471) - Index does not contain the annotation definition: `io.quarkus.security.PermissionsAllowed` * [#53499](https://github.com/quarkusio/quarkus/pull/53499) - Call reusable workflow for Quarkus Ecosystem CI * [#53515](https://github.com/quarkusio/quarkus/pull/53515) - OpenAPI build failure with mp.openapi.scan.packages * [#53613](https://github.com/quarkusio/quarkus/issues/53613) - Quarkus build with vertx-hazelcast fails after upgrade to 3.33.1 * [#53737](https://github.com/quarkusio/quarkus/pull/53737) - Handle edge-case with kapt plugin missing generated sources * [#53807](https://github.com/quarkusio/quarkus/pull/53807) - Fix potential NPE and warn if trustall is being used in the exporter * [#53808](https://github.com/quarkusio/quarkus/pull/53808) - Wrap shorthand admonition blocks in ==== delimiters * [#53812](https://github.com/quarkusio/quarkus/issues/53812) - Using `@ConfigProperty` with Google Cloud Function throws Exception when executing QuarkusTest * [#53824](https://github.com/quarkusio/quarkus/pull/53824) - Use proper CL when running Google Cloud Functions * [#53836](https://github.com/quarkusio/quarkus/pull/53836) - Bump org.mariadb.jdbc:mariadb-java-client from 3.5.7 to 3.5.8 * [#53877](https://github.com/quarkusio/quarkus/issues/53877) - QuarkusEntryPoint uses URLDecoder.decode() which incorrectly converts `+` to space in file paths * [#53885](https://github.com/quarkusio/quarkus/pull/53885) - Fix `QuarkusEntryPoint` path decoding issue * [#53982](https://github.com/quarkusio/quarkus/issues/53982) - Quarkus Liquibase `logicalFilePath` in Native-Mode * [#54039](https://github.com/quarkusio/quarkus/issues/54039) - `QuarkusServerFileBodyHandler` leaks temp files when any ReaderInterceptor is registered * [#54049](https://github.com/quarkusio/quarkus/pull/54049) - Fix Liquibase native resolution when included changelogs use logicalFilePath * [#54079](https://github.com/quarkusio/quarkus/pull/54079) - Cleanup temp files even when Jakarta REST Interceptors exist * [#54080](https://github.com/quarkusio/quarkus/pull/54080) - Don't use `ordered` execution for `@RunOnVertxContext` * [#54087](https://github.com/quarkusio/quarkus/pull/54087) - Upgrade gRPC to 1.81.0, fix substitutions * [#54091](https://github.com/quarkusio/quarkus/issues/54091) - mTLS auth mechanism throws NPE when proxy "forwarded" header indicate HTTPS in the HTTP request * [#54100](https://github.com/quarkusio/quarkus/pull/54100) - Add condition to Quarkiverse ecosystem CI workflow * [#54122](https://github.com/quarkusio/quarkus/pull/54122) - Use Quarkus Gauge builder * [#54188](https://github.com/quarkusio/quarkus/pull/54188) - Update JAXB to 4.0.8 * [#54199](https://github.com/quarkusio/quarkus/pull/54199) - docs: replace Markdown xml _[Truncated at 4000 characters — full notes: https://github.com/quarkusio/quarkus/releases/tag/3.33.3]_ ### 3.27.5 - Date: 2026-07-29 - Version: 3.27.5 - Original notes: https://github.com/quarkusio/quarkus/releases/tag/3.27.5 - Permalink: https://whatsnew.fyi/product/quarkus/releases/3.27.5 - **fixed** — Fix ContextNotActiveException in the middle of a request handler - **fixed** — Fix CDI request context activation race when Quarkus REST and Reactive Routes are used during the same request - **fixed** — Fix Lambda extension NoSuchMethodError on startup by merging LambdaConfig with same fully qualified name - **fixed** — Fix null Vert.x log messages showing as NULL in native mode - **fixed** — Fix memory leak in REST Client reactive pipelines - **changed** — Harden OIDC debug logs - **changed** — Bump Agroal to 2.8.2 - **changed** — Bump to Vert.x 4.5.28 and Netty 4.1.135.Final - **changed** — Bump Hibernate to latest updates - **changed** — Switch from org.fusesource.jansi to org.jline:jansi - **changed** — Reduce allocation in HTTP instrumentation - **changed** — Bump Jackson to 2.21.4 - **changed** — Bump com.ongres.scram:scram-client from 3.2 to 3.3 - **fixed** — Apply DevUI CORS and Host checks to DevMCP ###### Complete changelog * [#51230](https://github.com/quarkusio/quarkus/issues/51230) - ContextNotActiveException in the middle of a request handler * [#51299](https://github.com/quarkusio/quarkus/pull/51299) - Fix CDI request context activation race when Quarkus REST and Reactive Routes are used during the same request * [#51408](https://github.com/quarkusio/quarkus/issues/51408) - Lambda extension: Failed to start quarkus because of NoSuchMethodError * [#51410](https://github.com/quarkusio/quarkus/pull/51410) - Merge LambdaConfig with same FQN * [#54201](https://github.com/quarkusio/quarkus/pull/54201) - [3.27] Harden OIDC debug logs * [#54597](https://github.com/quarkusio/quarkus/pull/54597) - Fix null Vert.x log messages showing as NULL in native mode * [#54615](https://github.com/quarkusio/quarkus/pull/54615) - [3.27] Bump Agroal to 2.8.2 * [#54639](https://github.com/quarkusio/quarkus/issues/54639) - Memory Leak with Quarkus Rest Client in a Reactive pipeline * [#54649](https://github.com/quarkusio/quarkus/pull/54649) - Bump to Vert.x 4.5.28 and Netty 4.1.135.Final * [#54659](https://github.com/quarkusio/quarkus/pull/54659) - Fix memory leak in REST Client reactive pipelines * [#54738](https://github.com/quarkusio/quarkus/pull/54738) - [3.27] Bump the hibernate group with 8 updates * [#54908](https://github.com/quarkusio/quarkus/pull/54908) - Bump graalvm/setup-graalvm from v1.5.3 to v1.5.6 * [#55006](https://github.com/quarkusio/quarkus/pull/55006) - Bump the hibernate group across 1 directory with 7 updates * [#55026](https://github.com/quarkusio/quarkus/pull/55026) - [3.27] Switch from org.fusesource.jansi to org.jline:jansi * [#55030](https://github.com/quarkusio/quarkus/pull/55030) - Reduce allocation in HTTP instrumentation * [#55109](https://github.com/quarkusio/quarkus/pull/55109) - [3.27] Bump jackson to 2.21.4 * [#55163](https://github.com/quarkusio/quarkus/pull/55163) - [3.27] Bump the hibernate group across 1 directory with 7 updates * [#55229](https://github.com/quarkusio/quarkus/pull/55229) - Bump com.ongres.scram:scram-client from 3.2 to 3.3 in /bom/application * [#55353](https://github.com/quarkusio/quarkus/pull/55353) - Apply DevUI CORS and Host checks to DevMCP ### 3.37.4 - Date: 2026-07-23 - Version: 3.37.4 - Original notes: https://github.com/quarkusio/quarkus/releases/tag/3.37.4 - Permalink: https://whatsnew.fyi/product/quarkus/releases/3.37.4 - **fixed** — Fix AWS Lambda function.zip permission issue on Windows - **changed** — Update to Vert.x 4.5.30 and Netty 4.1.136.Final - **fixed** — Qute now applies property-not-found-strategy when chaining template extension methods - **fixed** — Reflection-free serializers now recognize @JsonValue declared on a superinterface method - **fixed** — Skip NOT_FOUND in value resolver to avoid locking in NOT_FOUND strings before calls to raw - **fixed** — Fix embedding cyclone DX SBOM failure with relative parent pom file - **changed** — Update to Hibernate ORM 7.4.5 and Hibernate Validator 9.1.2 - **fixed** — Ensure MavenProjects available through the API are added to the Quarkus workspace - **fixed** — Fix reflection-free deserializer NPE at build time for polymorphic @JsonCreator parameter - **fixed** — Fall back to reflection-based deserialization when a @JsonCreator parameter cannot be handled - **fixed** — Implement @JsonAnyGetter and @JsonAnySetter on fields in reflection-free Jackson serializers - **fixed** — Set Unix permissions when copying entries into function.zip - **fixed** — Prevent unboxing of null Character in reflection-free Jackson serializers ###### Complete changelog * [#46633](https://github.com/quarkusio/quarkus/issues/46633) - AWS Lamdba `function.zip` permission issue on Windows * [#55436](https://github.com/quarkusio/quarkus/pull/55436) - Update to Vert.x 4.5.30 and Netty 4.1.136.Final * [#55438](https://github.com/quarkusio/quarkus/issues/55438) - Qute does not apply `property-not-found-strategy` when chaining template extension methods * [#55451](https://github.com/quarkusio/quarkus/issues/55451) - reflection-free serializers ignore `@JsonValue` declared on a superinterface method * [#55452](https://github.com/quarkusio/quarkus/pull/55452) - Skip NOT_FOUND in value resolver to avoid locking in NOT_FOUND strings before calls to.raw * [#55455](https://github.com/quarkusio/quarkus/issues/55455) - Embedding cyclone DX SBOM fails with relative parent pom file * [#55466](https://github.com/quarkusio/quarkus/pull/55466) - Check `@JsonValue` declared on a superinterface method in reflection-free Jackson serializers * [#55470](https://github.com/quarkusio/quarkus/pull/55470) - Update to Hibernate ORM 7.4.5 / Update to Hibernate Validator 9.1.2 * [#55476](https://github.com/quarkusio/quarkus/pull/55476) - Make sure MavenProjects available through the API are added to the Quarkus workspace * [#55487](https://github.com/quarkusio/quarkus/issues/55487) - `quarkus-rest-jackson`: reflection-free deserializer NPEs at build time for a polymorphic `@JsonCreator` parameter * [#55489](https://github.com/quarkusio/quarkus/pull/55489) - Fall back to reflection-based deserialization when a `@JsonCreator` parameter cannot be handled * [#55497](https://github.com/quarkusio/quarkus/issues/55497) - quarkus-rest-jackson Reflection-free-serializers with `@JsonAnyGetter` * [#55500](https://github.com/quarkusio/quarkus/pull/55500) - Implement `@JsonAnyGetter` and `@JsonAnySetter` on fields in reflection-free Jackson serializers * [#55513](https://github.com/quarkusio/quarkus/pull/55513) - Set Unix permissions when copying entries into function.zip * [#55519](https://github.com/quarkusio/quarkus/issues/55519) - quarkus-rest-jackson Reflection-free-serializers unboxing Character throws NullPointer * [#55521](https://github.com/quarkusio/quarkus/pull/55521) - Prevent unboxing of null Character in reflecton-free Jackson serializers ### 3.38.0.CR1 - Date: 2026-07-15 - Version: 3.38.0.CR1 - Original notes: https://github.com/quarkusio/quarkus/releases/tag/3.38.0.CR1 - Permalink: https://whatsnew.fyi/product/quarkus/releases/3.38.0.cr1 - Labels: Pre-release - **fixed** — Fix Quarkus Lambda IT failing with java.net.SocketTimeoutException: Read timed out - **fixed** — Fix Mailer stuck when sending a message from GraphQL endpoint - **fixed** — Fix imperative Mailer not working with smallrye-graphql - **fixed** — Fix generating the OpenShift Route CRD using the quarkus-maven-plugin when using TLS - **fixed** — Fix Spring Data API Extension Dynamic Projections not working - **added** — Support Vertx context propagation in Kotlin coroutine gRPC services - **fixed** — Make @SpringBootTest annotation work - **fixed** — Fix quarkus-rest treating semicolon as a separator in query parameters - **fixed** — Fix Opentelemetry VertxGrpcSpanExporter and NoopSpanExporter interaction - **fixed** — Fix Testcontainers not being reused between builds and test executions with testcontainers.reuse.enable=true - **fixed** — Fix cross-application AMQP Dev Services sharing broken with ContainerLocator not updated for new discovered() API - **changed** — Switch Panache Next to JD 1.1 Page and PageRequest - **added** — Add a property requiring to use client authentication for all OIDC endpoints - **fixed** — Fix quarkus-hibernate-panache-next in Kotlin where WithId.AutoUUID fails with Unknown integral data type for ids: UUID - **added** — Allow trusted proxy CA subject DN to be verified - **fixed** — Fix @Transactional not working in Hibernate Reactive with Panache - **added** — Add SPI for other extensions to contribute static Hibernate Persistence Unit definitions - **changed** — Use a per-request TaskQueue for blocking GraphQL over WebSockets - **changed** — Migrate from quarkus-local-cache to Caffeine and JCache - **fixed** — Fix Quarkus ForwardedParser not validating proto values from Forwarded and X-Forwarded-Proto headers ###### Complete changelog * [#27362](https://github.com/quarkusio/quarkus/issues/27362) - Quarkus Lambda IT failing with java.net.SocketTimeoutException: Read timed out * [#29141](https://github.com/quarkusio/quarkus/issues/29141) - Mailer stuck when sending a message from GraphQL endpoint * [#36215](https://github.com/quarkusio/quarkus/issues/36215) - Imperative Mailer not working with smallrye-graphql * [#45227](https://github.com/quarkusio/quarkus/issues/45227) - Generating the OpenShift Route CRD using the `quarkus-maven-plugin` fails when using TLS b/c is adds a path field * [#46899](https://github.com/quarkusio/quarkus/issues/46899) - Spring Data API Extension Dynamic Projections not working * [#49975](https://github.com/quarkusio/quarkus/issues/49975) - Support Vertx context propagation in Kotlin coroutine gRPC services * [#50151](https://github.com/quarkusio/quarkus/issues/50151) - Make `@SpringBootTest` annotation work * [#50685](https://github.com/quarkusio/quarkus/issues/50685) - quarkus-rest treats semicolon as a separator in query parameters * [#52703](https://github.com/quarkusio/quarkus/issues/52703) - Opentelemtry VertxGrpcSpanExporter + NoopSpanExporter * [#53312](https://github.com/quarkusio/quarkus/issues/53312) - Testcontainers are not reused between builds and test executions with testcontainers.reuse.enable=true * [#53350](https://github.com/quarkusio/quarkus/issues/53350) - Cross-application AMQP Dev Services sharing broken — ContainerLocator not updated for new discovered() API * [#53431](https://github.com/quarkusio/quarkus/issues/53431) - Panache Next: Switch to JD 1.1 `Page` and `PageRequest` * [#53943](https://github.com/quarkusio/quarkus/issues/53943) - Add a property requiring to use client authentication for all OIDC endpoints * [#54290](https://github.com/quarkusio/quarkus/issues/54290) - Document priority of configs in various dev and test profiles as well as overriding possibilities * [#54384](https://github.com/quarkusio/quarkus/issues/54384) - quarkus-hibernate-panache-next: in Kotlin, WithId.AutoUUID fails with Unknown integral data type for ids: UUID * [#54402](https://github.com/quarkusio/quarkus/issues/54402) - Allow trusted proxy CA subject DN to be verified * [#54537](https://github.com/quarkusio/quarkus/issues/54537) - `@Transactional` does not work in Hibernate Reactive with Panache * [#54592](https://github.com/quarkusio/quarkus/issues/54592) - SPI to have other extensions contribute (static) Hibernate Persistence Unit definitions * [#54593](https://github.com/quarkusio/quarkus/issues/54593) - Use a per-request TaskQueue for blocking GraphQL over WebSockets * [#54596](https://github.com/quarkusio/quarkus/issues/54596) - Migrate from quarkus-local-cache to Caffeine + JCache * [#54668](https://github.com/quarkusio/quarkus/issues/54668) - Hibernate ORM 7.4 temporal entity support testing * [#54691](https://github.com/quarkusio/quarkus/issues/54691) - Quarkus ForwardedParser does not validate proto values from Forwarded and X-Forwarded-Proto headers * [#54788](https://github.com/quarkusio/quarkus/issues/54788) - Native build with future defaults fails when CLDR locale data uses disabled service loader * [#54802](https://github.com/quarkusio/quarkus/issues/54802) - Support stream in maven create project mojo * [#54814](https://github.com/quarkusio/quarkus/issues/54814) - KnownCompatibleBeanArchiveBuildItem: support maven type * [#54870](https://github.com/quarkusio/quarkus/issues/54870) - HttpServerMetricsTagsContributor tags are not applied on the `requestReset` path, causing inconsistent tag keys for `http_server_requests_seconds` (quarkus-micrometer-registry-prometheus) * [#54965](https://github.com/quarkusio/quarkus/issues/54965) - quarkus-data-hibernate: PanacheRepository.flush() (no-arg) throws IllegalStateException: Entity 'java.lang.Class' was not found * [#54971](https://github.com/quarkusio/quarkus/issues/54971) - Graph _[Truncated at 4000 characters — full notes: https://github.com/quarkusio/quarkus/releases/tag/3.38.0.CR1]_ ### 3.37.3 - Date: 2026-07-15 - Version: 3.37.3 - Original notes: https://github.com/quarkusio/quarkus/releases/tag/3.37.3 - Permalink: https://whatsnew.fyi/product/quarkus/releases/3.37.3 - **fixed** — quarkus.grpc.codegen.proto-directory unrecognized configuration key is now registered - **fixed** — Incompatible exception classloaders when mocking exceptions during tests - **fixed** — quarkus-oidc cannot handle non rollable refresh tokens concurrently - **fixed** — Safer testcontainers.reuse.enable restoration and more resilient tests - **fixed** — OIDC deduplicate concurrent token refresh requests within a single Quarkus instance - **fixed** — OpenShift Client native integration test fails after recent changes - **fixed** — IsContainerRuntimeWorking to not write testcontainers.reuse.enable to ~/.testcontainers.properties - **fixed** — Native image build failure caused by Netty's SelfSignedCertificate - **fixed** — Don't truncate stacktrace on OIDC authentication errors - **fixed** — Do not miss Throwable in the OIDC code flow error log - **fixed** — @JsonFormat(shape = JsonFormat.Shape.ARRAY) on a class ignored by reflection-free Jackson serializers when used inside a List/Set - **fixed** — Reflection free deserializers drops data of final collection field with no setter - **fixed** — Fix flakiness of RawTypeReflectionFreeSerializerTest - **fixed** — Fix serialization of pojos using JsonFormat.Shape enum in reflection-free Jackson serializers - **fixed** — quarkus-rest-jackson reflection-free deserializer ignores @JsonTypeInfo/@JsonSubTypes for polymorphic list elements inside a wrapper type - **fixed** — Bail out of reflection-free deserializer when @JsonTypeInfo is used - **fixed** — Jacoco and CycloneDX extension breaking combination in Quarkus 3.37.1+ - **fixed** — Implement getter-as-setter pattern when deserializing private collection in reflection-free Jackson serializers - **fixed** — Register gRPC codegen configuration properties - **fixed** — Harden remote dev mode against path traversal and unsafe deserialization ###### Complete changelog * [#48106](https://github.com/quarkusio/quarkus/issues/48106) - `quarkus.grpc.codegen.proto-directory` unrecognized configuration key & missing from documentation * [#55093](https://github.com/quarkusio/quarkus/issues/55093) - Incompatible exception classloaders when mocking exceptions during tests * [#55196](https://github.com/quarkusio/quarkus/issues/55196) - quarkus-oidc cannot handle non rollable refresh tokens concurrently * [#55231](https://github.com/quarkusio/quarkus/pull/55231) - Safer testcontainers.reuse.enable restoration + more resilient tests * [#55272](https://github.com/quarkusio/quarkus/pull/55272) - OIDC: deduplicate concurrent token refresh requests within a single Quarkus instance * [#55288](https://github.com/quarkusio/quarkus/issues/55288) - [3.x] OpenShift Client native integration test fails after #55242 * [#55292](https://github.com/quarkusio/quarkus/pull/55292) - Bump the hibernate group across 1 directory with 12 updates * [#55316](https://github.com/quarkusio/quarkus/pull/55316) - Fix IsContainerRuntimeWorking to not write `testcontainers.reuse.enable` to ~/.testcontainers.properties * [#55319](https://github.com/quarkusio/quarkus/pull/55319) - Fix native image build failure caused by Netty's SelfSignedCertificate * [#55351](https://github.com/quarkusio/quarkus/issues/55351) - Don't truncate stacktrace on OIDC authentication errors * [#55357](https://github.com/quarkusio/quarkus/pull/55357) - Do not miss Throwable in the OIDC code flow error log * [#55362](https://github.com/quarkusio/quarkus/issues/55362) - `@JsonFormat`(shape = JsonFormat.Shape.ARRAY) on a class ignored by reflection-free Jackson serializers when used inside a List/Set * [#55363](https://github.com/quarkusio/quarkus/issues/55363) - Reflection free deserializers drops data of final collection field with no setter * [#55365](https://github.com/quarkusio/quarkus/pull/55365) - Fix flakiness of `RawTypeReflectionFreeSerializerTest` * [#55366](https://github.com/quarkusio/quarkus/pull/55366) - Fix serialization of pojos using JsonFormat.Shape enum in reflection-free Jackson serializers * [#55369](https://github.com/quarkusio/quarkus/issues/55369) - quarkus-rest-jackson: reflection-free deserializer ignores `@JsonTypeInfo`/`@JsonSubTypes` for polymorphic list elements inside a wrapper type * [#55370](https://github.com/quarkusio/quarkus/pull/55370) - Bail out of reflection-free deserializer when `@JsonTypeInfo` is used * [#55373](https://github.com/quarkusio/quarkus/issues/55373) - Jacoco + CycloneDX extension breaking combination in Quarkus 3.37.1+ * [#55374](https://github.com/quarkusio/quarkus/pull/55374) - Implement getter-as-setter pattern when deserializing private collection in reflection-free Jackson serializers * [#55378](https://github.com/quarkusio/quarkus/pull/55378) - Register gRPC codegen configuration properties * [#55380](https://github.com/quarkusio/quarkus/pull/55380) - Harden remote dev mode against path traversal and unsafe deserialization * [#55385](https://github.com/quarkusio/quarkus/issues/55385) - NPE in modularity can transformed classes * [#55396](https://github.com/quarkusio/quarkus/pull/55396) - Fix NPE in modularity when processing removed resources * [#55397](https://github.com/quarkusio/quarkus/pull/55397) - Ignore unresolvable POMs for bundled CycloneDX components * [#55403](https://github.com/quarkusio/quarkus/pull/55403) - Fix bad link syntax and update cross-document references to use xref * [#55410](https://github.com/quarkusio/quarkus/issues/55410) - quarkus-rest-jackson: Reflection-free deserializer ignores `@JsonProperty(required=true)` on a `@JsonCreator` sometimes * [#55411](https://github.com/quarkusio/quarkus/pull/55411) - Take count of `@JsonProperty`(required=true) on a `@JsonCreator` in reflection-free Jackson serializers * [#55425](https://github.com/quarkusio/quarkus/pull/55425) - Disable Mockito class cac _[Truncated at 4000 characters — full notes: https://github.com/quarkusio/quarkus/releases/tag/3.37.3]_ ### 3.37.2 - Date: 2026-07-08 - Version: 3.37.2 - Original notes: https://github.com/quarkusio/quarkus/releases/tag/3.37.2 - Permalink: https://whatsnew.fyi/product/quarkus/releases/3.37.2 - **fixed** — Fix IllegalStateException when GlobalOpenTelemetry.set has already been called - **added** — Produce ServiceStartBuildItem for OTel - **fixed** — Fix null boxed Integer and Boolean fields dropped from JSON by reflection-free serializers - **fixed** — Fix @JsonProperty being ignored or duplicated and visibility-setting being ignored in ObjectMapperCustomizer by reflection-free Jackson serializers - **fixed** — Fix reflection-free serializers breaking Kotlin boolean is properties and @JsonProperty annotations - **changed** — Bump com.ongres.scram:scram-client from 3.2 to 3.3 - **changed** — Bump SmallRye GraphQL to 2.18.3 - **fixed** — Fix quarkus-rest-jackson dropping ObjectNode request body fields with reflection-free Jackson enabled - **fixed** — Fix reflection-free Jackson deserializers throwing plain JsonMappingException instead of MismatchedInputException for unknown fields - **fixed** — Avoid generating reflection-free Jackson serializers for classes in the jackson.databind package - **fixed** — Fix reflection-free Jackson deserializers not honoring @JsonUnwrapped prefix and suffix - **fixed** — Fix jackson-module-kotlin incompatibility with reflection-free serializers by opting out Kotlin classes from generation - **changed** — OIDC: include invalid_dpop_proof in AuthenticationFailedException to clarify why exception was thrown - **fixed** — Fix @JsonFormat with pattern on java.time types ignored by reflection-free Jackson serializers - **fixed** — Fix reflection-free Jackson serializers when using raw types ###### Complete changelog * [#49524](https://github.com/quarkusio/quarkus/issues/49524) - IllegalStateException: GlobalOpenTelemetry.set has already been called * [#54999](https://github.com/quarkusio/quarkus/pull/54999) - Produce ServiceStartBuildItem for OTel * [#55134](https://github.com/quarkusio/quarkus/pull/55134) - Add regression tests for QuteProcessor * [#55137](https://github.com/quarkusio/quarkus/issues/55137) - Null boxed Integer and Boolean fields dropped from JSON by reflection-free serializers (Quarkus 3.37) * [#55142](https://github.com/quarkusio/quarkus/issues/55142) - `@JsonProperty` is ignored or duplicated + 'visibility'-setting is ignored in 'ObjectMapperCustomizer' by reflection-free Jackson serializers * [#55183](https://github.com/quarkusio/quarkus/pull/55183) - Fix typo * [#55214](https://github.com/quarkusio/quarkus/issues/55214) - Reflection-free serializers break Kotlin boolean "is" properties and `@JsonProperty` annotations * [#55216](https://github.com/quarkusio/quarkus/pull/55216) - Avoid duplicate fields when using `@JsonProperty` + improve Kotlin support + obey visibility defined in ObjectMapperCustomizer in reflection-free Jackson serializers * [#55229](https://github.com/quarkusio/quarkus/pull/55229) - Bump com.ongres.scram:scram-client from 3.2 to 3.3 in /bom/application * [#55238](https://github.com/quarkusio/quarkus/pull/55238) - Bump SmallRye GraphQL to 2.18.3 * [#55254](https://github.com/quarkusio/quarkus/issues/55254) - [3.37 Regression] quarkus-rest-jackson drops ObjectNode request body fields with reflection-free Jackson enabled * [#55255](https://github.com/quarkusio/quarkus/issues/55255) - [Reflection-free Jackson deserialisers] Unknown field throws plain `JsonMappingException` instead of `MismatchedInputException`, bypassing custom exception mappers * [#55256](https://github.com/quarkusio/quarkus/pull/55256) - Avoid generating reflection-free Jackson serializers for classes in the jackson.databind package * [#55261](https://github.com/quarkusio/quarkus/issues/55261) - Reflection-free Jackson deserialisers: `@JsonUnwrapped` `prefix`/`suffix` not honored * [#55278](https://github.com/quarkusio/quarkus/pull/55278) - Serialize null boxed primitives in reflection-free Jackson serializers * [#55279](https://github.com/quarkusio/quarkus/pull/55279) - Fix exception thrown in case of unknown field in reflection-free Jackson serializer * [#55280](https://github.com/quarkusio/quarkus/pull/55280) - Honor `@JsonUnwrapped` prefix/suffix in reflection-free Jackson serialisers * [#55302](https://github.com/quarkusio/quarkus/issues/55302) - jackson-module-kotlin incompatible with reflection-free serializers * [#55304](https://github.com/quarkusio/quarkus/pull/55304) - OIDC: include `invalid_dpop_proof` in `AuthenticationFailedException` to clarify why exception was thrown * [#55309](https://github.com/quarkusio/quarkus/pull/55309) - Opt-out Kotlin classes from generation of reflection-free Jackson serializers * [#55318](https://github.com/quarkusio/quarkus/issues/55318) - `@JsonFormat` with pattern on `java.time types` (e.g. `ZonedDateTime`, `LocalDateTime`) ignored by reflection-free Jackson serializers * [#55322](https://github.com/quarkusio/quarkus/pull/55322) - Fix serialization of java.time fields with custom format in generated reflection-free Jackson serializers * [#55331](https://github.com/quarkusio/quarkus/issues/55331) - Jackson Reflectionfree Serializer with Raw Types * [#55334](https://github.com/quarkusio/quarkus/pull/55334) - Fix reflection-free Jackson serializers when using raw types