Die Veröffentlichung ist Quarkus 3.36 — ein Java-Framework für cloud-native Anwendungen, das sich auf Container, Kubernetes, JVM und native Kompilierung konzentriert. Die Veröffentlichung fand statt am 27. Mai 2026. Die wichtigsten Änderungen betreffen einen neuen experimentellen Mechanismus zur Signalübertragung zwischen Komponenten, Verbesserungen der Supply Chain-Sicherheit, TLS und OIDC-Authentifizierung für Zero-Trust-Szenarien.
Für das Update empfehlen die Entwickler die Verwendung der neuesten Version des Quarkus CLI und die Ausführung von:
quarkus update
Das Team hinter quarkus update gibt an, dass es Anwendungen auf Quarkus 3.36 selbst von Quarkus 2.x Branches aktualisieren kann.
Wesentliche Änderungen
Quarkus Signals — eine experimentelle Erweiterung zum Austausch von Signalen zwischen Komponenten.
In Quarkus gibt es einen neuen Mechanismus, der es den Anwendungs Komponenten ermöglicht, auf lose gekoppelte Weise zu interagieren: Eine Komponente sendet ein Signal, die andere empfängt es. Die Zuordnung der Empfänger ist typsicher und inspiriert von CDI-Events: Signale werden nach Typ und Qualifikatoren den Handhabungen zugeordnet. Es werden drei Modi unterstützt: publish – Versenden an alle Empfänger, send – Senden an einen bestimmten Empfänger mit Round-Robin-Auswahl und request-reply – Anfrage mit typisiertem Antwortformat. Für jeden Modus gibt es sowohl eine blockierende API als auch eine reaktive API basierend auf Uni.Ein flexibles Ausführungsmodell für Signalhandler.
Signalempfänger werden asynchron ausgeführt und können sowohl blockierend, nicht-blockierend oder in virtuellen Threads ausgeführt werden. Hierfür werden die vertrauten Quarkus-Anmerkungen wie @Blocking, @NonBlocking und @RunOnVirtualThread verwendet. Zudem ist die Registrierung und das Entfernen von Handlern zur Laufzeit über die Fluent-Baustein-API vorgesehen.Metadaten von Signalen und SPI für Integratoren.
An signal werden beliebige Schlüssel-Wert-Paare angehängt, die über den SignalContext für die Handler verfügbar sind. Um das Verhalten zu erweitern, wurden die Integrationspunkte SignalMetadataEnricher und ReceiverInterceptor hinzugefügt. Die Erweiterung hat momentan den Status experimentell, die Entwickler erwarten Rückmeldungen von den Nutzern.Integrierte SBOM für Abhängigkeiten.
Quarkus kann jetzt SBOM – Software Bill of Materials, das heißt die Beschreibung der Abhängigkeiten – direkt in die erstellten Anwendungen einfügen. Standardmäßig kann eine solche SBOM über den Endpoint /.well-known/sbom bereitgestellt werden. Dies ist nützlich für die Auditierung von Abhängigkeiten, die Inventarisierung von Komponenten und das anschließende Scannen nach Sicherheitsanfälligkeiten.SBOM in nativen Bildern.
Für Native Images wurde die Möglichkeit hinzugefügt, SBOM direkt in die native Binärdatei gemäß der GraalVM SBOM-Spezifikation einzufügen. Dies schließt das Szenario ein, in dem die Anwendung nicht als JVM-Artefakt, sondern als eigenständige ausführbare Datei verteilt wird.OIDC-Client-Authentifizierung über SPIFFE.
In Quarkus OIDC wurde die Unterstützung von SPIFFE JWT-Token für die Authentifizierung von Clients bei Anbietern wie Keycloak hinzugefügt. Diese Änderung richtet sich an Infrastrukturen mit Arbeitslastidentität, einem Zero-Trust-Modell und der Interaktion zwischen Diensten, wobei die Identität der Arbeitslast wichtiger ist als statische Geheimnisse.Beliebige Typen von Keystore und Truststore.
Das TLS-Registry unterstützt jetzt beliebige Typen von Schlüssel- und Vertrauensspeichern, wie BCFKS, über eine neue Konfigurationsgruppe 'other'. Der Typ kann mit dem Parameter quarkus.tls.key-store.other.type= ohne zusätzlichen Code festgelegt werden. Wenn für den Typ eine eigene Lade-Logik erforderlich ist, kann eine CDI-Bean KeyStoreFactory oder TrustStoreFactory mit dem entsprechenden @Identifier bereitgestellt werden.Dynamische Felder in JSON-Protokollen.
Ein neuer SPI JsonProvider wurde hinzugefügt, der es ermöglicht, Felder dynamisch in JSON-Protokolle für jeden Eintrag hinzuzufügen. Dies ermöglicht die Anreicherung von Protokollen mit Kontext zur Laufzeit: beispielsweise mit zusätzlichen Anfrage-IDs, Dienstetiketten oder Umgebungsdaten.Hot Reload TLS für den GraphQL-Client.
Der GraphQL-Client unterstützt jetzt das dynamische Nachladen der TLS-Konfiguration. Zuvor wurde eine neue TLS-Konfiguration nur bei der Erstellung einer neuen Client-Instanz übernommen, was eine Reduzierung des CDI-Bereichs erforderte. Jetzt wird das Update sofort angewendet und funktioniert auch für Clients mit Anwendungsbereich.
Zusätzliche Änderungen und Aktualisierungen der Komponenten
In der finalen Version 3.36.0 sind auch Verbesserungen bei Signals vermerkt, das Update von Gradle auf 9.5.1, Jackson BOM auf 2.21.3, slf4j-api auf 2.0.18, Treiber für Microsoft SQL Server JDBC auf 13.4.0, Unterstützung mehrerer Konfigurationen von SunPKCS11, Korrekturen bei der POM-Generierung für externe Erweiterungen und die Hinzufügung von preauthorized_code als Option für den Grant-Typ OidcClient.
Auch die Komponenten der Quarkus-Plattform wurden aktualisiert: Camel Quarkus 3.36.0, Debezium 3.5.1.Final, Quarkus Amazon Services 3.19.0, Quarkus LangChain4j 1.10.0, Quarkus MCP Server 1.12.1 и Quarkus Operator SDK 7.7.5.
Quelle: linux.org.ru
