{"id":181785,"date":"2026-05-28T14:48:51","date_gmt":"2026-05-28T12:48:51","guid":{"rendered":"https:\/\/prohoster.info\/blog\/novosti-interneta\/quarkus-3-36"},"modified":"2026-05-28T14:48:51","modified_gmt":"2026-05-28T12:48:51","slug":"quarkus-3-36","status":"publish","type":"post","link":"https:\/\/prohoster.info\/en\/blog\/news\/quarkus-3-36","title":{"rendered":"Quarkus 3.36","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Release published <strong>Quarkus 3.36<\/strong> \u2014 A Java framework for cloud-native applications focused on containers, Kubernetes, JVM, and native compilation. The release took place <strong>on May 27, 2026<\/strong>. The main changes are related to a new experimental signal exchange mechanism between components, improvements in supply chain security, TLS, and OIDC authentication for zero-trust scenarios.<\/p>\n<p>For updates, developers recommend using the latest version of Quarkus CLI and running:<\/p>\n<p>quarkus update<\/p>\n<p>According to the project, the quarkus update command can update applications to Quarkus 3.36 even from Quarkus 2.x branches.<\/p>\n<h3>Key changes<\/h3>\n<ul>\n<li>\n<p><strong>Quarkus Signals \u2014 an experimental extension for signal exchange between components.<\/strong><br \/>\nQuarkus has introduced a new mechanism allowing application components to interact in a loosely coupled manner: one component sends a signal, and another receives it. Recipient resolution is type-safe and inspired by CDI events: signals are matched with handlers based on type and qualifiers. Three modes are supported: publish \u2014 broadcasting to all recipients, send \u2014 sending to one recipient with round-robin selection, and request-reply \u2014 a request with a typed response. Each mode has a blocking API and a reactive API based on Uni.<\/p>\n<\/li>\n<li>\n<p><strong>A flexible execution model for signal handlers.<\/strong><br \/>\nSignal recipients are executed asynchronously and can function as blocking, non-blocking, or runnable on virtual threads. Familiar Quarkus annotations such as @Blocking, @NonBlocking, and @RunOnVirtualThread are used for this purpose. There is also support for registering and unregistering handlers at runtime via a fluent builder API.<\/p>\n<\/li>\n<li>\n<p><strong>Metadata for signals and SPI for integrators.<\/strong><br \/>\nArbitrary key-value pairs can be attached to signals, accessible to handlers through SignalContext. To extend behavior, integration points SignalMetadataEnricher and ReceiverInterceptor have been added. The extension is still in an experimental status, and developers are awaiting feedback from users.<\/p>\n<\/li>\n<li>\n<p><strong>Embedded SBOM for dependencies.<\/strong><br \/>\nQuarkus can now embed SBOM \u2014 Software Bill of Materials, which describes the composition of dependencies \u2014 directly into built applications. By default, such an SBOM can be delivered via the endpoint \/.well-known\/sbom. This is useful for auditing dependencies, inventorying components, and subsequent vulnerability scanning.<\/p>\n<\/li>\n<li>\n<p><strong>SBOM in native images.<\/strong><br \/>\nThe ability to embed SBOM directly into the native binary file according to the GraalVM SBOM specification has been added for native image. This addresses the scenario where the application is distributed not as a JVM artifact, but as a standalone executable file.<\/p>\n<\/li>\n<li>\n<p><strong>OIDC client authentication via SPIFFE.<\/strong><br \/>\nQuarkus OIDC has added support for SPIFFE JWT tokens for client authentication to providers like Keycloak. This change is aimed at infrastructures with workload identity, a zero-trust model, and service-to-service interactions, where workload identity is more important than static secrets.<\/p>\n<\/li>\n<li>\n<p><strong>Arbitrary types for keystore and truststore.<\/strong><br \/>\nThe TLS Registry now supports arbitrary types of key and trusted certificate stores, such as BCFKS, via a new configuration group called other. The type can be specified with the parameter quarkus.tls.key-store.other.type= without writing additional code. If custom loading logic is required for the type, a CDI bean KeyStoreFactory or TrustStoreFactory with the corresponding @Identifier can be provided.<\/p>\n<\/li>\n<li>\n<p><strong>Dynamic fields in JSON logs.<\/strong><br \/>\nA new SPI JsonProvider has been added, allowing fields to be dynamically added to JSON logs for each entry. This enables enriching logs with runtime context, such as additional request identifiers, service tags, or environment data.<\/p>\n<\/li>\n<li>\n<p><strong>Hot reload of TLS for GraphQL client.<\/strong><br \/>\nThe GraphQL client now supports dynamic reloading of TLS configuration. Previously, the new TLS configuration was only picked up when a new client instance was created, requiring a reduction of the CDI scope. Now the update is applied immediately and works, including for clients with application scope.<\/p>\n<\/li>\n<\/ul>\n<h3>Additional changes and updates to components.<\/h3>\n<p><noindex><noindex><\/p>\n<p>In the final release, <a rel=\"nofollow\" href=\"https:\/\/github.com\/quarkusio\/quarkus\/releases\/tag\/3.36.0\">3.36.0<\/a> there were also improvements to Signals, Gradle upgrade to 9.5.1, Jackson BOM to 2.21.3, slf4j-api to 2.0.18, Microsoft SQL Server JDBC driver to 13.4.0, support for multiple SunPKCS11 configurations, fix for POM generation for external extensions, and the addition of preauthorized_code as a variant of the OidcClient grant type.<\/p>\n<p><\/noindex><\/noindex><\/p>\n<p>The Quarkus platform components have also been updated: <strong>Camel Quarkus 3.36.0<\/strong>, <strong>Debezium 3.5.1.Final<\/strong>, <strong>Quarkus Amazon Services 3.19.0<\/strong>, <strong>Quarkus LangChain4j 1.10.0<\/strong>, <strong>Quarkus MCP Server 1.12.1<\/strong> and <strong>Quarkus Operator SDK 7.7.5<\/strong>.<\/p>\n<p>Source: <a \ncontent=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.linux.org.ru\/news\/java\/18304528\">linux.org.ru<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d \u0440\u0435\u043b\u0438\u0437 Quarkus 3.36 \u2014 Java-\u0444\u0440\u0435\u0439\u043c\u0432\u043e\u0440\u043a\u0430 \u0434\u043b\u044f cloud-native-\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439, \u043e\u0440\u0438\u0435\u043d\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u0433\u043e \u043d\u0430 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u044b, Kubernetes, JVM \u0438 \u043d\u0430\u0442\u0438\u0432\u043d\u0443\u044e \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0446\u0438\u044e. \u0412\u044b\u043f\u0443\u0441\u043a \u0441\u043e\u0441\u0442\u043e\u044f\u043b\u0441\u044f 27 \u043c\u0430\u044f 2026 \u0433\u043e\u0434\u0430. \u0413\u043b\u0430\u0432\u043d\u044b\u0435 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u0441\u0432\u044f\u0437\u0430\u043d\u044b \u0441 \u043d\u043e\u0432\u044b\u043c \u044d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442\u0430\u043b\u044c\u043d\u044b\u043c \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c\u043e\u043c \u043e\u0431\u043c\u0435\u043d\u0430 \u0441\u0438\u0433\u043d\u0430\u043b\u0430\u043c\u0438 \u043c\u0435\u0436\u0434\u0443 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u0430\u043c\u0438, \u0443\u043b\u0443\u0447\u0448\u0435\u043d\u0438\u044f\u043c\u0438 supply chain security, TLS \u0438 OIDC-\u0430\u0443\u0442\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0435\u0439 \u0434\u043b\u044f zero-trust-\u0441\u0446\u0435\u043d\u0430\u0440\u0438\u0435\u0432. \u0414\u043b\u044f \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u044f \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0438 \u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0443\u044e\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0441\u0432\u0435\u0436\u0443\u044e \u0432\u0435\u0440\u0441\u0438\u044e Quarkus CLI \u0438 \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u0442\u044c: quarkus update [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":8,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[702],"tags":[],"class_list":["post-181785","post","type-post","status-publish","format-standard","hentry","category-news"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.1.1 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u041e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d \u0440\u0435\u043b\u0438\u0437 Quarkus 3.36 \u2014 Java-\u0444\u0440\u0435\u0439\u043c\u0432\u043e\u0440\u043a\u0430 \u0434\u043b\u044f cloud-native-\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439, \u043e\u0440\u0438\u0435\u043d\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u0433\u043e \u043d\u0430 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u044b, Kubernetes, JVM \u0438 \u043d\u0430\u0442\u0438\u0432\u043d\u0443\u044e \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0446\u0438\u044e.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Erik Peterson\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/en\/blog\/news\/quarkus-3-36\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.1.1\" \/>\n\t\t<meta property=\"og:locale\" content=\"en_US\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47Quarkus 3.36 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d \u0440\u0435\u043b\u0438\u0437 Quarkus 3.36 \u2014 Java-\u0444\u0440\u0435\u0439\u043c\u0432\u043e\u0440\u043a\u0430 \u0434\u043b\u044f cloud-native-\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439, \u043e\u0440\u0438\u0435\u043d\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u0433\u043e \u043d\u0430 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u044b, Kubernetes, JVM \u0438 \u043d\u0430\u0442\u0438\u0432\u043d\u0443\u044e \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0446\u0438\u044e.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/en\/blog\/news\/quarkus-3-36\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2026-05-28T12:48:51+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2026-05-28T12:48:51+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Quarkus 3.36 | ProHoster","description":"The release of Quarkus 3.36 \u2014 a Java framework for cloud-native applications focused on containers, Kubernetes, JVM, and native compilation \u2014 has been published.","canonical_url":"https:\/\/prohoster.info\/en\/blog\/news\/quarkus-3-36","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"en_US","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47Quarkus 3.36 | ProHoster","og:description":"\u041e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d \u0440\u0435\u043b\u0438\u0437 Quarkus 3.36 \u2014 Java-\u0444\u0440\u0435\u0439\u043c\u0432\u043e\u0440\u043a\u0430 \u0434\u043b\u044f cloud-native-\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439, \u043e\u0440\u0438\u0435\u043d\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u0433\u043e \u043d\u0430 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u044b, Kubernetes, JVM \u0438 \u043d\u0430\u0442\u0438\u0432\u043d\u0443\u044e \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0446\u0438\u044e.","og:url":"https:\/\/prohoster.info\/en\/blog\/news\/quarkus-3-36","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2026-05-28T12:48:51+00:00","article:modified_time":"2026-05-28T12:48:51+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":[],"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/posts\/181785","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/users\/8"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/comments?post=181785"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/posts\/181785\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/media?parent=181785"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/categories?post=181785"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/tags?post=181785"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}