Major changes
- #35156 - Introduce HTTP OTLP exporter
- #35039 - Support OIDC authorization code flow nonce
- #35025 - Allows customizing the ObjectMapper in REST Client Reactive Jackson
- #34933 - Support OIDC token propagation during SecurityIdentity augmentation
- #34833 - Use OIDC Tenant annotation to resolve tenants
- #34812 - Allow to customize OIDC JavaRequest checks
- #34647 - Replace OkHttp tracing grpc backend with Vert.x
- #34573 - Introduce a way to completely customize MeterRegistry
- #34487 - Fallback specialized kubernetes config to vanilla kubernetes
- #34378 - Reactive Messaging Pulsar Extension
- #34145 - Move to sdk:graal-sdk over nativeimage:svm
- #33376 - Add MicroMeter Netty support
- #31997 - Delete elasticsearch-high-level-rest-client extension and upgrade dev-services and tests to Elasticsearch 8
- #29244 - Add Twitch OIDC Provider
Complete changelog
- #35262 - Initialize datasources at startup again
- #35261 - Remove deleted
bootstrap-config/application
from Misc2 native test job - #35259 - QuarkusComponentTest: another fix for continuous testing integration
- #35255 - Quartz: QuarkusMSSQLDelegate should extends MSSQLDelegate
- #35238 - Narayana automatic recovery of JDBC XA resources only works after datasources was initialized manually
- #35218 - Disable io.quarkus.it.vthreads.kafka.VirtualThreadTest.testAlertMessage
- #35217 - OpenAPI: normalize disabled endpoint paths for OpenAPI model matching
- #35214 - Bump io.smallrye.config:smallrye-config-source-yaml from 3.3.2 to 3.3.3 in /devtools/gradle
- #35213 - Update SmallRye Config to 3.3.3
- #35212 - Clarify that tests using QuarkusDevModeTest run in black box mode
- #35211 - Document Maven config options that may be relevant when running tests
- #35210 - Removed dotted versions of environment variables from recording
- #35202 - QuarkusComponentTest: test config source ordinal improvements
- #35199 - QuarkusComponentTest: make is possible to specify priority of a test config property
- #35195 - Bump SQL Server JDBC driver to 12.4.0
- #35194 - Bump Microsoft SQL Server JDBC driver to 12.4.0
- #35193 - OpenTelemetry service name should have higher priority than app name when no resource attributes are set
- #35189 - Quarkus CLI fixes
- #35188 - SmallRyeGraphQLOverWebSocketHandler: use order value > Integer.MIN_VALUE
- #35187 - QUARKUS_INIT_AND_EXIT is now properly handled
- #35186 - Use openshift builder ImageStreamTag from other projects when internal registry is used.
- #35183 - Reduce allocation cost reporting spans
- #35182 - Update dev-ui libs
- #35181 - REST Data with Panache should not produce links when hal is disabled
- #35177 - Dev UI Kafka screenshot update
- #35175 - Vertx: add priority to the SafeVertxContextInterceptor
- #35174 - Ensure the narayana-jta extension fully shuts down the recovery manager
- #35173 - Should SafeVertxContextInterceptor define a Priority?
- #35172 - Kafka Streams: restore the feature name at Quarkus startup
- #35171 - kafka-streams: feature not listed on startup
- #35165 - Propagate all user methods in REST Data with Panache
- #35164 - Remove Old Dev UI: Core Logstream
- #35163 - Remove Old Dev UI: Core Configuration
- #35162 - Update SmallRye-GraphQL 2.3.0
- #35161 - Note about using config under src/test in native mode testing
- #35160 - Properly use internal links to point to other guides
- #35159 - QuarkusComponentTest: support Gradle
- #35158 - Allow using
@CustomSerialization
and@CustomDeserialization
at class level - #35157 - Revert "Bump h2 from 2.1.214 to 2.2.220 in /bom/application"
- #35156 - Introduce HTTP OTLP exporter
- #35155 - Remove Old Dev UI: Core Dev Services
- #35153 - Remove Old Dev UI: Core Build Metrics
- #35150 - Remove deprecated Config APIs
- #35146 - Increase
DevMojoIT#testResourcesFromClasspath
timeout - #35141 - Dev UI build steps chart
- #35140 - ArC: fix deadlock when calling guarded methods on the same thread
- #35139 - Convert duration properties into a format OTel can parse
- #35138 - Allow customizing ObjectReader via
@CustomDeserialization
in Resteasy - #35136 - Deadlock while calling write-locked method from read-locked method
- #35132 - Some longer timeouts for CI
- #35124 - Add tests which exercise more complex JUnit extensions
- #35116 - Fix missing bits in Flyway Dev UI migration
- #35115 - Fix configuration access in the reactive messaging dev console widget
- #35102 - Bump smallrye-open-api from 3.4.0 to 3.5.0
- #35098 - QuarkusComponentTest in Gradle
- #35092 - Quarkus rules for the Vale linter: Fix false positive messages and enhance regular expression of some rules
- #35089 - Fix invalid reference in config documentation
- #35085 - Skip flaky jms virtual threads until fix
- #35084 - Eliminating the white space from the xref macro
- #35082 - Provide a switch to disable Spring DI bean creation
- #35077 - Improve test resilience
- #35073 - Dev UI: Migrate Flyway extension
- #35072 - Run blocking security tasks from Vert.x duplicated context
- #35069 - Virtual threads module providing executor supplier for running virtual threads
- #35063 - OTel baggage propagation test
- #35062 - Take
quarkus.tls.trust-all
into account in Otlp export - #35056 - Use grep and not ggrep in filter-virtual-threads-tests-json.sh
- #35050 - Remove Old Dev UI: Kafka client
- #35049 - Remove Old Dev UI: gRPC
- #35048 - Remove Old Dev UI: OIDC
- #35047 - Remove Old Dev UI: Rest Client Reactive
- #35046 - Remove Old Dev UI: Resteasy Reactive
- #35042 - Bump com.gradle.enterprise from 3.14 to 3.14.1 in /devtools/gradle
- #35039 - Support OIDC authorization code flow nonce
- #35036 - Generate/use pull secrets when possible
- #35033 - Enable cacheability of surefire and failsafe goals
- #35026 - Add support for programmatic mapping and mapping configurers
- #35025 - Allows customizing the ObjectMapper in REST Client Reactive Jackson
- #35024 - Remove Old Dev UI: Infinispan client
- #35023 - Add build-time property to disable
quarkus-spring-di
- #35021 - Remove Old Dev UI: Reactive messaging
- #35019 - Fix wrong scheduler for gRPC blocking methods
- #35018 - Virtual threads Reactive Messaging ITs
- #35016 - Remove Old Dev UI: Rabbit MQ
- #35012 - Dev UI: Add Build Steps dependency graph
- #35002 - Remove Old Dev UI: Hibernate ORM Elastic
- #35001 - Remove Old Dev UI: Hibernate ORM
- #35000 - Remove Old Dev UI: Openshift
- #34996 - Narayana JTA: do not allow to use datasource XA transactions with JDBC object store
- #34990 - Use Synthetic bean for producing OpenTelemetry
- #34988 - Decode REST Application path
- #34985 - Add
maxLifetime
to reactive datasource configurations - #34984 - Remove Old Dev UI: Liquibase
- #34983 - Remove Old Dev UI: Kubernetes
- #34982 - Remove Old Dev UI: Micrometer
- #34981 - Remove Old Dev UI: Qute
- #34980 - Remove Old Dev UI: Scheduler
- #34979 - Remove Old Dev UI: Fault tolerance
- #34978 - Remove Old Dev UI: Metrics
- #34977 - Remove Old Dev UI: Health
- #34976 - Remove Old Dev UI: GraphQL
- #34975 - Remove Old Dev UI: OpenAPI
- #34974 - Remove Old Dev UI: Datasource
- #34973 - Remove Old Dev UI: Container Image
- #34972 - Remove Old Dev UI: Cache
- #34970 - Dev UI: Remove link to prev dev ui
- #34968 - Remove URI validation when
@TestHTTPResource
is injected as String - #34963 - Run authentication request blocking tasks on Vert.x duplicated context
- #34962 - Request single segment images when using local lookup ImageStreams
- #34961 - Improve Jacoco documentation with ConfigDocDefault
- #34955 - Dev UI Arc Dependency graph diagram
- #34954 - Virtual Thread ITs
- #34946 - Clean up code of OpenTelemetryProducer
- #34939 - Support
@TestHTTPResource
with path params - #34933 - Support OIDC token propagation during SecurityIdentity augmentation
- #34925 - Force registration of JAXB providers
- #34923 - Update Maven Surefire Plugin to 3.1.2
- #34921 - Support
@RolesAllowed
property expression treated as list - #34920 - Introduce a way to customize OTel TextMapPropagator
- #34914 - Veto REST Resources from CDI when constructors from Resources do not support CDI
- #34913 - Virtual thread reference documentation and resteasy reactive how-to
- #34912 - Failed auth with blocking authentication & a custom authentication failure mapper cause HTTP/2 error
- #34908 -
@RouteFilter
stopped working with WebSocket requests Quarkus 3.2.0.Final - #34900 - Bump flyway.version from 9.20.1 to 9.21.0
- #34888 - Make subresource handling for interfaces more nuanced
- #34883 - Allow adding more claims to OIDC JWT authentication token
- #34880 - ConcurrentModificationException in Quarkus 3.2.x Dev Mode
- #34879 - Make the creation of the Tracer bean lazy
- #34878 - Dev UI: Change page title to indicate sub page
- #34876 - Add
@RunOnVirtualThread
support on classes in reactive messaging - #34871 - Dev UI: Migrate Kafka Client UI
- #34865 - Bump mongo-client.version from 4.10.1 to 4.10.2
- #34864 - Use Quarkus path in Arquillian Servlet
- #34862 - Rename OIDC Tenant annotation to TenantFeature
- #34855 - Implement support for
@RunOnVirtualThread
for gRPC services - #34851 - Bump to OTel 1.28 and SR reactive-messaging to 4.9.0
- #34849 - Fix case where both http and https ports set to 0 in tests
- #34845 - Error message when re-augmenting non-mutable Quarkus application
- #34844 - Add clean instructions to be build cache-friendly
- #34841 - Allow Type Reference in the Redis data source
- #34840 - Remove com.typesafe.netty:netty-reactive-streams exclusion from org.asynchttpclient:async-http-client
- #34838 - Set REST Application class if exists in RESTEasy Deployment
- #34837 - Bump quarkus-platform-bom-maven-plugin from 0.0.90 to 0.0.92
- #34836 - Bump flyway.version from 9.20.0 to 9.20.1
- #34835 - Bump dokka-maven-plugin from 1.8.10 to 1.8.20
- #34834 - Bump kotlinx-coroutines-bom from 1.7.1 to 1.7.2
- #34833 - Use OIDC Tenant annotation to resolve tenants
- #34831 - Bump com.gradle.enterprise from 3.13.4 to 3.14 in /devtools/gradle
- #34830 - Bump keycloak-core from 22.0.0 to 22.0.1 in /bom/application
- #34829 - Add more CORS regex tests and fix the CORS regex example
- #34821 - Update Kotlin to 1.9.0
- #34818 - Add diagram of Quarkus ClassLoader hierarchy
- #34816 - Add a warning when re-augmenting non-mutable Quarkus application
- #34813 - Allow adding extra OIDC provider scopes without having to list all scopes
- #34812 - Allow to customize OIDC JavaRequest checks
- #34808 - Lift the limitation regarding
@Transactional
and@RunOnVirtualThread
- #34792 - Ignore unmapped build time properties in KubernetesServiceBindingConfig
- #34791 - Allow for minor clock skew when comparing OIDC cookie and token lifetimes
- #34786 - Add JWT sign test
- #34784 - Do not make OIDC state cookie name unique if multiple code flows are not allowed
- #34781 - Narayana upgrade (to 7.0.0.Final)
- #34765 - OpenApi does not show all methods when used in conjunction with
@EndpointDisabled
in native - #34760 - Do not make state cookie name unique if OIDC multi-tab authentication is disabled
- #34759 - Application throws "Configuration validation failed" exception for service-binded properties
- #34748 - Openshift local ImageStream lookup only works for single segment images.
- #34740 - Bump Keycloak version to 22.0.0
- #34734 - Added --no-dockerfiles command shortcut
- #34728 - Docs: duplicated context - minor improvements
- #34727 - Add CORS regex test
- #34718 - CORS regex allowing more origins than expected
- #34716 - Bump smallrye-reactive-messaging.version from 4.7.0 to 4.8.0
- #34715 - Bump mockito-core from 5.3.1 to 5.4.0
- #34712 - Bump build-helper-plugin to 3.4.0
- #34710 - Check internal id token lifespan affects not only exp claim but also Expires cookie param
- #34706 - Simplify the way OIDC tenant id interceptors can be created
- #34692 - Selecting OIDC tenant via annotation is not working with RESTEasy Reactive
- #34688 - Dev-UI Upgrade js lib versions
- #34659 - Improve OIDC multi-tenancy and providers docs
- #34657 - Resteasy reactive - Interfaces are added as a Bean causing jakarta.enterprise.inject.AmbiguousResolutionException
- #34647 - Replace OkHttp tracing grpc backend with Vert.x
- #34646 - Introduce
quarkus.oidc.authentication.add-scopes
property - #34643 - QUARKUS_INIT_AND_EXIT is currently ignored.
- #34639 - Remove unused class in OtlpExporterRuntimeConfig
- #34637 - Polish OtlpGrpcSpanExporter creation
- #34636 - Add a RunInSafeDuplicatedContext annotation
- #34611 - Undertow correct path when building on Windows to Docker
- #34608 - Add missing property ignore rule
- #34607 - Improve the javadoc of RecorderContext#classProxy()
- #34602 - Upgrade to Hibernate Search 6.2.0.Final
- #34595 - EndUserSpanProcessor integration
- #34591 - Dev UI: Migrate gRPC
- #34576 - Live reload stopped working on 3.2 when using XA transactions
- #34575 - Explain why quarkus-smallrye-jwt may need to run in blocking mode
- #34573 - Introduce a way to completely customize MeterRegistry
- #34567 - Bump groovy from 4.0.12 to 4.0.13
- #34565 - Bump avro.version from 1.11.1 to 1.11.2
- #34557 - Add support for virtual threads in smallrye-reactive-messaging
- #34554 - ReactiveHashCommands doesn't properly encode/decode Object value
- #34545 - Properly construct instance of LateBoundBatchSpanProcessor
- #34544 - Add support for absolute paths for jacoco exec and report
- #34540 - Remove long deprecated options from CertificateConfig
- #34535 - Add
@ClientFormParam
to Reactive REST Client - #34532 - Bump guava from 32.0.0-jre to 32.1.1-jre
- #34531 - Bump maven-invoker-plugin from 3.5.1 to 3.6.0
- #34530 - Bump javaparser-core from 3.25.3 to 3.25.4
- #34529 - Bump google-http-client-bom from 1.43.2 to 1.43.3
- #34527 - Implement expire-after-access for the redis cache
- #34526 - OTEL - Automatic ENDUSER_ID and ENDUSER_ROLE filling
- #34525 - Undertow - fire context events for session context
- #34524 - Make
@RunOnVirtualThread
capture and run in a duplicated context - #34519 - Implement XPending redis command
- #34514 - Support
@WithUnnamedKey
in documentation - #34506 - Bump formatter-maven-plugin from 2.22.0 to 2.23.0
- #34505 - Bump unboundid-ldapsdk from 6.0.8 to 6.0.9
- #34504 - Bump grpc.version from 1.56.0 to 1.56.1
- #34503 - Bump mongodb-crypt from 1.7.3 to 1.8.0
- #34500 - Bump OWASP dependency-check plugin version to 8.3.1
- #34491 - Remove Maven pre-3.8.x workaround now that the minimum supported version is 3.8.2
- #34487 - Fallback specialized kubernetes config to vanilla kubernetes
- #34486 - Implement Redis custom codec support
- #34483 - Upgrade MongoDB client to 4.10
- #34479 - Made LazyValue virtual thread friendly
- #34477 - Add
@ClientFormParam
to Reactive REST Client - #34476 - Revert "Remove unnecessary synchronization when creating Resource instances
- #34459 - Making --verbose a global flag
- #34457 - Replaced deprecated Config phase BOOTSTRAP in Kubernetes
- #34456 - Bump jakarta.websocket-api from 2.1.0 to 2.1.1
- #34447 - Allow loading custom Groovy extension modules
- #34446 - Allow loading custom Groovy extension modules
- #34445 - Bump Maven Model Helper to 25
- #34438 - Use tag provided by quarkus.container-image.image property
- #34434 - Introduce a way to provide custom micrometer metrics tags
- #34420 - Qute: ValueResolverGenerator optimization - reduce allocations
- #34418 - ArC: add support for custom AlterableContext implementations
- #34415 - Add 5 mn to all CI native builds as GraalVM 23 is slower
- #34411 - Redis StreamCommands should provide xpending command
- #34410 - Fix issues in groovy script
- #34403 - Dev UI: Change log stream test to use less common logger
- #34402 - Generated openapi ignores attributes annotated with XmlElement if class is annotated with XmlAccessType.NONE
- #34401 - My second application tutorial
- #34400 - Bump bouncycastle.version from 1.74 to 1.75
- #34378 - Reactive Messaging Pulsar Extension
- #34372 - Expose Stork Registars in Quarkus extension + integration test
- #34363 - Infinispan cross-site replication failover configuration
- #34361 - Remove unnecessary ImageID resolution in DockerProcessor
- #34357 - Add CIBA grant type to oidc-client
- #34356 - Add CIBA grant type to oidc-client
- #34355 - Add Infinispan failover strategy configuration to the application.properties
- #34351 - Bump build-reporter-maven-extension from 3.0.0 to 3.1.0
- #34348 - Add support for
@GlobalInterceptor
on producer methods - #34339 - Remove unnecessary synchronization when creating Resource instances
- #34335 - Disable build scan publication for test builds
- #34334 - Introduce quarkus-test-hibernate-reactive-panache module
- #34332 - Observing
@Initialized
(SessionScoped.class) not working - #34329 - Redis key / value serializer
- #34323 - Dev UI: Add favourite functionallity for extension cards
- #34318 - Fix AMQP Dev Services started message
- #34310 - Reduce initial's Arc ManagedContext activation cost
- #34293 - Use project.version instead of hardcoded 999-SNAPSHOT for quarkus.version property
- #34282 - Rename Amazon Lambda to AWS Lambda in documentation
- #34279 - Rename Amazon Lambda to AWS Lambda in documentation
- #34271 - Suggest extensions in the management interface reference
- #34265 - Bump error_prone_annotations from 2.19.1 to 2.20.0
- #34263 - Bump checker-qual from 3.34.0 to 3.35.0
- #34262 - Bump flyway.version from 9.17.0 to 9.20.0
- #34251 - Upgrade to Hibernate Search 6.2.0.CR1
- #34247 - Add missing literal on KubernetesClientObjectMapper annotation
- #34245 - Allow executing tests on Vert.x blocking thread pool
- #34243 - Investigate if it makes sense to allow Openshift users to reuse ImageStream from other namespaces.
- #34242 - Dev UI tests updates
- #34241 - Add support for Openshift builds pushing to external registries
- #34239 - QuarkusComponentTest: convenient way of mocking interceptors
- #34237 - Fail when using collections in Resteasy Reactive JAXB
- #34230 - IsolatedRemoteDevModeMain Mutable Jar error message
- #34219 - ArC: add InterceptorConfigurator#identifier() method
- #34217 - Remove lambda from VertxHttpClientMetrics
- #34216 - Apply tiny fixes to javadoc of HttpCommonTags
- #34209 - FindResourceWriters often creates HashSets and ArrayLists while not necessary
- #34179 - Support Kubernetes RollingUpdate configuration
- #34162 - Provide a way that Openshift builds output to an external registry.
- #34145 - Move to sdk:graal-sdk over nativeimage:svm
- #34138 - ArC: add synthetic interceptors API
- #34135 - Improve testing gRPC services with random ports
- #34132 - Save setting the same state in the Vertx local data duplicated context
- #34103 - quarkus --verbose flag is too local?
- #34086 - QuarkusComponentTest: offer a convenient way of mocking interceptors
- #34083 - Add fullDocumentBeforeChange to ChangeStreamOptions
- #34077 - Bump kafka3.version from 3.4.0 to 3.5.0
- #34065 - Add support for project Java version update based on extensions
- #34047 - kubernetes extension support RollingUpdate config
- #34025 - Reduce verbosity of kubernetes extension config with inheritance or more opinionated defaulting
- #33994 - Allow token propagation filters to be used within the SecurityIdentityAugmentor
- #33982 - Parametirized
RolesAllowed
does not work for a list of roles - #33931 - Add optional native flag to build PIE binaries
- #33918 - Fix parameter validation issue in classic rest-client
- #33915 - RestClientDefinitionException: Parameters and variables don't match, with
@Path("")
on interface - #33865 - RestEasy Reactive + JAXB unable to serialize list of entities
- #33789 - Print messages about ports that can't change at runtime for K8s
- #33715 - Checking datasource used for jdbc object store in narayana-jta extension
- #33676 - Reduce the garbage produced by GraphQL while handling the request
- #33664 - Support custom CDI contexts implementing
AlterableContext
- #33615 - Quarkus Redis Cache: expire-after-access config property
- #33524 - Native Executable --no-pie
- #33465 -
@Parameter
in openapi complains about missing jaxrs parameter - #33381 - Make sure OTel receives standard duration string properties
- #33376 - Add MicroMeter Netty support
- #33313 - Add posibility to have extra custom tags in HTTP metrics
- #33228 - Switch Vert.x, datasource, reactive datasource and Agroal to
@ConfigMapping
- #32996 - Provide a way to customize quarkus' micrometer MeterRegistry/CompositeMeterRegistry
- #32882 - Changing port numbers at runtime leads to deployment errors when using K8s/OpenShift extensions
- #32854 - Use
@WithUnnamedKey
in Hibernate Search extension config - #32767 - Gradle Extension Plugin: "Configuration with name 'implementation' not found", when setting quarkusExtension.deploymentModule
- #32760 - Quarkus Hibernate search programmatic API
- #32682 - Add option to configure log level of WebApplicationException
- #32594 - Dev UI: Migrate Kafka client to the new Dev UI
- #32592 - Dev UI: Migrate GRPC to the new Dev UI
- #32238 - OOM in Quarkus 3.0.0.Beta1 caused by okio via OpenTelemetry
- #31997 - Delete elasticsearch-high-level-rest-client extension and upgrade dev-services and tests to Elasticsearch 8
- #31980 - Configure RESTEasy Reactive Logging
- #31960 - Elasticsearch Dev Services gives
Operation not permitted
on startup when using Podman - #31941 - Add support for TLS insecure option in opentelemetry oltp exporter
- #31656 - Allow restricting propagation of OpenTelemetry trace headers
- #31618 - "My Second Quarkus Application" guide
- #29987 - OTel
LateBoundSampler
logs warning if using Liquibase and JDBC instrumentation - #29865 - Better support for Generic with redis#pubsub group
- #29523 - ElasticsearchDevServicesBuildTimeConfig uses elasticsearch:7.17.0, newer versions are available
- #29244 - Add Twitch OIDC Provider
- #24833 - Add Twitch OIDC Provider
- #23979 - Distinct ObjectMappers for RestEasy Reactive / RestEasy Reactive Client
- #23580 - Support OIDC code flow
nonce
- #21535 - Provide OpenTelemetry OTLP/HTTP exporter
- #21358 - Can't use GlobalInterceptor gRPC annotation with interceptor produced by a method
- #15461 - Quarkus tests fails mTLS authentication against internal Maven repository
- #13453 - RestEasy Jaxb not registered properly anymore