-
Notifications
You must be signed in to change notification settings - Fork 2.7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
merging main (#1) #36867
Closed
Closed
merging main (#1) #36867
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
* Use MongoDB 4.4 consistently * Fix handling of HTTP/2 H2 empty frames in Resteasy Reactive Closes quarkusio#36604 * Bump com.google.api.grpc:proto-google-common-protos Bumps [com.google.api.grpc:proto-google-common-protos](https://github.com/googleapis/sdk-platform-java) from 2.23.0 to 2.27.0. - [Release notes](https://github.com/googleapis/sdk-platform-java/releases) - [Changelog](https://github.com/googleapis/sdk-platform-java/blob/main/CHANGELOG.md) - [Commits](googleapis/sdk-platform-java@v2.23.0...v2.27.0) --- updated-dependencies: - dependency-name: com.google.api.grpc:proto-google-common-protos dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <[email protected]> * Add a custom OIDC identity provider test * Updates Liquibase integrationtest to reproduce error: quarkusio#36446 * Fix zlib broken link * Reverts changes made to workaround liquibase issue: liquibase/liquibase#4763 since we've updated to liquibase 4.24.0 * Fix version reporting and parsing Quarkus currently only parses the feature and update version of JDK and incorrectly prints message like: ``` [INFO] [io.quarkus.deployment.pkg.steps.NativeImageBuildStep] Running Quarkus native-image plugin on MANDREL 22.3.3.1 JDK 17.8 ``` while it should be ``` [INFO] [io.quarkus.deployment.pkg.steps.NativeImageBuildStep] Running Quarkus native-image plugin on MANDREL 22.3.3.1 JDK 17.0.8 ``` i.e. 17.0.8 vs 17.8 This change fixes that issue and relies on java.lang.Runtime.Version for parsing and comparing the JDK version. Follow up to quarkusio#36267 * Make sure OIDC/GraphQL client integration runs after client config is initialized, get rid of config merger bean * Fix termination of the fallback virtual thread executor * Stork observability integration * Move HTTP CORS section to a new security-cors.adoc * Add security-cors.adoc to the downstreamdoc.yaml * QuarkusTest: handle beans declared on test profile specifically - beans declared on a test profile implementation are only taken into account if the test profile is used - resolves quarkusio#36554 * Fix gRPC context propagation. * Make the ZSTD Substitutions more robust * Remove the pinned event example from the documentation * Use container urls for connecting to services by default It is better for the build cache and for local testing, nowadays, there is a good chance people will use containers anyway. * Update gRPC Protoc to version 3.24.4 and the generator to 1.59.0 - Add move architecture to cover ppcle64 and s390x - Update code to handle deprecation and removed API * Use GRADLE_JAVA_HOME in CI and test Java 21 * Remove more Docker images * Indicate that Java 21 is supported * Remove additional stuff before starting CI * Remove --enable-preview from virtual-threads ITs We are now using Java 21 so we don't need the flag anymore. * Add a ci-disk-usage.sh script * Skip Scala 2 tests on Java 21+ * Make RegisterForReflectionTestCase#testLambdaCapturing compatible with Java 21 * Higher Xmx for Java 21 testing * Deprecate the scala extension - https://github.com/quarkiverse/quarkus-scala3 should be preferred instead * Codestarts: Add Entity annotation to Kotlin all-open * QuarkusSecurityTestExtension afterEach call should not be made for tests without @testsecurity * Introduce OidcClientRequestFilter * Bump org.jboss.threads:jboss-threads from 3.5.0.Final to 3.5.1.Final Bumps [org.jboss.threads:jboss-threads](https://github.com/jbossas/jboss-threads) from 3.5.0.Final to 3.5.1.Final. - [Commits](jbossas/jboss-threads@3.5.0.Final...3.5.1.Final) --- updated-dependencies: - dependency-name: org.jboss.threads:jboss-threads dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <[email protected]> * Bump jacoco.version from 0.8.10 to 0.8.11 Bumps `jacoco.version` from 0.8.10 to 0.8.11. Updates `org.jacoco:org.jacoco.core` from 0.8.10 to 0.8.11 - [Release notes](https://github.com/jacoco/jacoco/releases) - [Commits](jacoco/jacoco@v0.8.10...v0.8.11) Updates `org.jacoco:org.jacoco.report` from 0.8.10 to 0.8.11 - [Release notes](https://github.com/jacoco/jacoco/releases) - [Commits](jacoco/jacoco@v0.8.10...v0.8.11) Updates `org.jacoco:org.jacoco.agent` from 0.8.10 to 0.8.11 - [Release notes](https://github.com/jacoco/jacoco/releases) - [Commits](jacoco/jacoco@v0.8.10...v0.8.11) Updates `org.jacoco:jacoco-maven-plugin` from 0.8.10 to 0.8.11 - [Release notes](https://github.com/jacoco/jacoco/releases) - [Commits](jacoco/jacoco@v0.8.10...v0.8.11) --- updated-dependencies: - dependency-name: org.jacoco:org.jacoco.core dependency-type: direct:production update-type: version-update:semver-patch - dependency-name: org.jacoco:org.jacoco.report dependency-type: direct:production update-type: version-update:semver-patch - dependency-name: org.jacoco:org.jacoco.agent dependency-type: direct:production update-type: version-update:semver-patch - dependency-name: org.jacoco:jacoco-maven-plugin dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <[email protected]> * Dev UI: Fix height in Rest Client Signed-off-by: Phillip Kruger <[email protected]> * Disable CDI TCK ManagedBeanTypesTest for now This test is not compatible with Java 21. See jakartaee/cdi-tck#485 * Reinitialized the com.google.protobuf.UnsafeUtil class at runtime Also fix the Unsafe accessor. Fix quarkusio#30293. This has been tested on GraalVM CE and EE. * Revert "Bump io.strimzi:kafka-oauth-client from 0.12.0 to 0.14.0" This reverts commit 09a13e6. * Add a warning for how to report security vulnerability * add JBang script to analyze our CI raw logs * Small additional features to ModuleBuildDurationReport.java * Some additional improvements and fixes * More readable module names * Add auth mechanism to the Liquibase MongoDB connection string * Fix missing import probably due to asynchronous PRs * Disable VertxMDCTest on Windows It has been extremely unstable for weeks now. Let's disable it until we have time to fix it. * Take @ConstrainedTo into account for interceptors Without this change interceptors meant to be used on the client were being used on the server as well * Rename tooling codestarts * ArC: introduce optimized contexts - introduce the ContextInstances abstraction - if optimization is enabled then generate the ContextInstances implementation for application and request context * ⬆️ Update Gitpod configuration with Java 17 * CORS content review Signed-off-by: Michal Maléř <[email protected]> * ArC: optimize client proxy delegate access - for normal scopes for which a single context is registered - similar to how we optimize the client proxy delegate access for application context * Fix update on extensions * Remove a duplicate dependency from Micrometer extension * Avoid relying on Docker for Stork tests We don't need the Redis Dev Services so let's not start them. * Update the content for RHBQ docs. * Bump io.smallrye.reactive:smallrye-mutiny-vertx-core from 3.6.0 to 3.7.2 Bumps io.smallrye.reactive:smallrye-mutiny-vertx-core from 3.6.0 to 3.7.2. --- updated-dependencies: - dependency-name: io.smallrye.reactive:smallrye-mutiny-vertx-core dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <[email protected]> * Document gRPC code generation Also: - Allows configuring the `proto` directory (quarkusio#12802) - Provides Gradle snippets (quarkusio#33854) * Bump asm.version from 9.5 to 9.6 Bumps `asm.version` from 9.5 to 9.6. Updates `org.ow2.asm:asm` from 9.5 to 9.6 Updates `org.ow2.asm:asm-commons` from 9.5 to 9.6 Updates `org.ow2.asm:asm-tree` from 9.5 to 9.6 Updates `org.ow2.asm:asm-analysis` from 9.5 to 9.6 Updates `org.ow2.asm:asm-util` from 9.5 to 9.6 --- updated-dependencies: - dependency-name: org.ow2.asm:asm dependency-type: direct:production update-type: version-update:semver-minor - dependency-name: org.ow2.asm:asm-commons dependency-type: direct:production update-type: version-update:semver-minor - dependency-name: org.ow2.asm:asm-tree dependency-type: direct:production update-type: version-update:semver-minor - dependency-name: org.ow2.asm:asm-analysis dependency-type: direct:production update-type: version-update:semver-minor - dependency-name: org.ow2.asm:asm-util dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <[email protected]> * Vert.x: fix NPE in ForwardedProxyHandler The test `TrustedXForwarderProxiesUnknownHostnameFailureTest` sometimes fail in CI due to a NPE in `ForwardedProxyHandler`. This shows an actual bug: per the documentation, `io.vertx.core.dns.DnsClient.lookup()` may succeed with a `null` value when no record was found. The `ForwardedProxyHandler` ignores the possibility of a `null` result, which this commit fixes. We deal with a `null` result just like with a failure, because it's equivalent to a NXDOMAIN error. * Arc - change hashing function to use base64 to shorten resulting String * Try to stabilize PausedSchedulerTest Let's give things a bit more time as CI is slow. * HTTP and RestEasy-related content review resteasy.adoc sanity check Signed-off-by: Michal Maléř <[email protected]> * Indicate that 2.x is not supported anymore * Bump Keycloak version to 22.0.5 * Disable MySQL OIDC DB token manager test due to limited Github CI resources * Bump org.yaml:snakeyaml from 2.1 to 2.2 Bumps [org.yaml:snakeyaml](https://bitbucket.org/snakeyaml/snakeyaml) from 2.1 to 2.2. - [Commits](https://bitbucket.org/snakeyaml/snakeyaml/branches/compare/snakeyaml-2.2..snakeyaml-2.1) --- updated-dependencies: - dependency-name: org.yaml:snakeyaml dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <[email protected]> * Make Maven ITs less fragile Enforcing versions of the plugins make sure we don't start downloading them when running the tests which can lead to timeouts. Also it makes the build more stable and actually tests the version we are using when creating new projects. * Not pushing compile in the command actually fixes this test When running mvn compile quarkus:dev, compile is not executed when restarting dev mode after the pom change. Not specifying compile makes the compile goal to be run. * Try to stabilize the tests on Windows * Disable JarRunnerIT#testNonAsciiDir on Windows With maven-compiler-plugin 2.11.0, this test is not working anymore on Windows: Error while storing the mojo status: Input length = 1 * Enable errors in Maven RunningInvoker We need to see the details of the errors when something is going wrong. * Disable DevMojoIT#testExternalReloadableArtifacts on Windows Installing the lib jar a second time leads to an access denied exception on Windows, probably because the jar is still used by the dev mode instance. * refactor BuildChainBuilder * Move KeycloakContainer to keycloak-server test-framework Create realm by posting to Keycloak admin API * Bump io.strimzi:kafka-oauth-client from 0.12.0 to 0.14.0 * Fixes for Kafka and Pulsar schema discovery * Bump elasticsearch-opensource-components.version from 8.10.2 to 8.10.4 Bumps `elasticsearch-opensource-components.version` from 8.10.2 to 8.10.4. Updates `org.elasticsearch.client:elasticsearch-rest-client` from 8.10.2 to 8.10.4 - [Release notes](https://github.com/elastic/elasticsearch/releases) - [Changelog](https://github.com/elastic/elasticsearch/blob/main/CHANGELOG.md) - [Commits](elastic/elasticsearch@v8.10.2...v8.10.4) Updates `co.elastic.clients:elasticsearch-java` from 8.10.2 to 8.10.4 - [Release notes](https://github.com/elastic/elasticsearch-java/releases) - [Changelog](https://github.com/elastic/elasticsearch-java/blob/main/CHANGELOG.md) - [Commits](elastic/elasticsearch-java@v8.10.2...v8.10.4) Updates `org.elasticsearch.client:elasticsearch-rest-client-sniffer` from 8.10.2 to 8.10.4 - [Release notes](https://github.com/elastic/elasticsearch/releases) - [Changelog](https://github.com/elastic/elasticsearch/blob/main/CHANGELOG.md) - [Commits](elastic/elasticsearch@v8.10.2...v8.10.4) --- updated-dependencies: - dependency-name: org.elasticsearch.client:elasticsearch-rest-client dependency-type: direct:production update-type: version-update:semver-patch - dependency-name: co.elastic.clients:elasticsearch-java dependency-type: direct:production update-type: version-update:semver-patch - dependency-name: org.elasticsearch.client:elasticsearch-rest-client-sniffer dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <[email protected]> * Bump flyway.version from 9.22.2 to 9.22.3 Bumps `flyway.version` from 9.22.2 to 9.22.3. Updates `org.flywaydb:flyway-core` from 9.22.2 to 9.22.3 - [Release notes](https://github.com/flyway/flyway/releases) - [Commits](flyway/flyway@flyway-9.22.2...flyway-9.22.3) Updates `org.flywaydb:flyway-sqlserver` from 9.22.2 to 9.22.3 - [Release notes](https://github.com/flyway/flyway/releases) - [Commits](flyway/flyway@flyway-9.22.2...flyway-9.22.3) Updates `org.flywaydb:flyway-mysql` from 9.22.2 to 9.22.3 - [Release notes](https://github.com/flyway/flyway/releases) - [Commits](flyway/flyway@flyway-9.22.2...flyway-9.22.3) Updates `org.flywaydb:flyway-database-oracle` from 9.22.2 to 9.22.3 - [Release notes](https://github.com/flyway/flyway/releases) - [Commits](flyway/flyway@flyway-9.22.2...flyway-9.22.3) --- updated-dependencies: - dependency-name: org.flywaydb:flyway-core dependency-type: direct:production update-type: version-update:semver-patch - dependency-name: org.flywaydb:flyway-sqlserver dependency-type: direct:production update-type: version-update:semver-patch - dependency-name: org.flywaydb:flyway-mysql dependency-type: direct:production update-type: version-update:semver-patch - dependency-name: org.flywaydb:flyway-database-oracle dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <[email protected]> * Bump io.micrometer:micrometer-bom from 1.11.1 to 1.11.5 Bumps [io.micrometer:micrometer-bom](https://github.com/micrometer-metrics/micrometer) from 1.11.1 to 1.11.5. - [Release notes](https://github.com/micrometer-metrics/micrometer/releases) - [Commits](micrometer-metrics/micrometer@v1.11.1...v1.11.5) --- updated-dependencies: - dependency-name: io.micrometer:micrometer-bom dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <[email protected]> * Make it possible to acquire OIDC SecurityIdentity after HTTP request has completed * Clarify why QuarkusClassLoader doesn't pass its name to the super constructor * Enrich classloader names with the name of the application/QuarkusUnitTest * Fix a suspicious H2 URL in Hibernate ORM test config It doesn't matter in practice since the only test using this config reproduces a startup failure that happens before we start H2; but still, let's fix this for correctness. * Always reset the ForkJoinPool TCCL on startup * Safer, slightly simpler register/release patterns for config Some config was lazily created and bound to the dev class loader through the configsForClassLoader map io.smallrye.config.SmallRyeConfigProviderResolver#getConfig(java.lang.ClassLoader), and the corresponding map entry was never cleared, resulting in the corresponding classloader never being garbage collected. * Avoid referencing ClassLoaders in ProtectionDomains This removes a whole class of metaspace leaks caused by Thread.inheritedAccessControlContext referencing ProtectionDomains which reference older classloaders. Of course this may have impacts on how the SecurityManager behaves, but as I understand it, absolutely no part of Quarkus is ready to run with a SecurityManager enabled anyway. * Improve error messages on KafkaDevServicesDevModeTestCase failures * Plug leak in tests relying on lazily-initialized config Since a previous commit, we now remember the lazily-created config in QuarkusConfigFactory, which is good because in dev mode it allows us to release it upon restart (when we call setConfig(null)). However, in *tests* that rely on this lazily initialized config, just calling releaseConfig(ConfigProvider.getConfig()) is no longer enough, because of that remembered config in QuarkusConfigFactory: we need to reset that reference too. If we forget to reset it, then when KafkaDevServicesDevModeTestCase will execute, TestHTTPResourceManager#getUri will retrieve the leaked config from DefaultSerdeConfigTest or DefaultSchemaConfigTest, the injected URI in KafkaDevServicesDevModeTestCase will be wrong, and the test will fail (with very unhelpful error messages). * Stronger safeguards against leaked config in internal Quarkus*Test extensions If someone calls ConfigProvider.getConfig() out of the blue in a test that doesn't use any Quarkus*Test extension, this will call QuarkusConfigFactory and leak config in two ways: 1. In QuarkusConfigFactory#config 2. In SmallRyeConfigProviderResolver, registering config for the TCCL, which in such a case is most likely the system CL. A well-behaved test would call QuarkusConfigFactory.setConfig(null) to clean up all that, but it's easy to miss and there is potential for ConfigProvider.getConfig() being called indirectly, so there's no way we can guarantee all tests are well-behaved. This should at least guarantee that after a badly behaving test executes, the next test using a Quarkus*Test extension will clean up the mess. * More comprehensive registration/release of config in some tests If someone calls ConfigProvider.getConfig() out of the blue in a test that doesn't use any Quarkus*Test extension, this will indirectly call QuarkusConfigFactory and leak config in two ways: 1. In QuarkusConfigFactory#config 2. In SmallRyeConfigProviderResolver, registering config for the TCCL, which in such a case is most likely the system CL. Thus, a well-behaved test should call QuarkusConfigFactory.setConfig(null) to clean up all that, no just SmallRyeConfigProviderResolver.releaseConfig(). Similarly, tests that register configuration explicitly can just call QuarkusConfigFactory.setConfig(config) at the beginning and QuarkusConfigFactory.setConfig(null) at the end, which will properly simulate how a real Quarkus application behaves, and should cover all edge cases involving multiple classloaders, properly cleaning up everything at the end of the test. * Merge test-related ConfigUtils into a single class * Maven CLI: use recipes for platform extensions * Raise FileSystemWatcherTestCase wait times Consecutive to: https://github.com/quarkusio/quarkus/runs/18068790284 * Improve error messages when an @Embedded type is not annotated with @embeddable * Strimzi OAuth substitutions * Changes to support jaeger remote sampler * Ignore bridge methods when checking for @embeddable annotation on @Embedded/@EmbeddedId * enable use layer 7 proxy for reactive pg client * Remove type from ResolverMapKey * Update OpenSearch container test configuration - Limit OpenSearch memory usage - Disable disk-based shard allocation thresholds * Fix grpc-generation-reference.adoc It was missing the header, not including the attributes and not using the right syntax for subs=attributes+ leading to all sorts of rendering issues. * Fix a broken reference in grpc-getting-started.adoc * docs: how to store secrets locally Handy guide on how to deal with local secrets, SEO friendly. * Add to Security JPA support for named persistence units * Bump jaxb-runtime.version from 4.0.3 to 4.0.4 Bumps `jaxb-runtime.version` from 4.0.3 to 4.0.4. Updates `org.glassfish.jaxb:jaxb-runtime` from 4.0.3 to 4.0.4 Updates `org.glassfish.jaxb:jaxb-core` from 4.0.3 to 4.0.4 Updates `org.glassfish.jaxb:txw2` from 4.0.3 to 4.0.4 --- updated-dependencies: - dependency-name: org.glassfish.jaxb:jaxb-runtime dependency-type: direct:production update-type: version-update:semver-patch - dependency-name: org.glassfish.jaxb:jaxb-core dependency-type: direct:production update-type: version-update:semver-patch - dependency-name: org.glassfish.jaxb:txw2 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <[email protected]> * Fix sockjs documentation * ArC: improve how single-context normal scopes are found * Disable Http2RSTFloodProtectionTest on Windows * Fix typo in reactive-event-bus.adoc * Validate Startup observers are not secured with RBAC annotations * Cleanup codestarter tests - Remove unnecessary modifiers - Unify line-breaks - Unify indentation * Make contextResolverMap used for both reader and writer * Update virtual thread documentation to Java 21 * Add a description to the Stork extension metadata * Kc Admin Cl.:Fix typo that allows using customized ObjectMapper * Bump apicurio-registry.version from 2.4.7.Final to 2.4.14.Final * Kafka Confluent avro schema serializer doc update Resolves quarkusio#36372 * Qute: dev mode - add config to skip restart for some templates - resolves quarkusio#36692 * Maven CLI: add wildcard matching into recipes detection * Recommend GraalVM CE * Fix missing section in the gRPC getting started guide * Security JPA: support Hibernate multitenancy * Exclude resteasy-client from lra-proxy-api in narayana-lra extension * Add jvmArgs option to Quarkus Gradle plugin task quarkusRun * added discord as know oidc provider added unittest for merging discord oidc properties * Quarkus code-gen (Gradle): Fix behavior to filter unavailable services Java Services (those in `META-INF/services/*` files) that are defined in the (Gradle) project that uses the Quarkus Gradle plugin, are not available when Quarkus code generation runs. This is simply a task-dependency requirement in Gradle, because Java compilation happens after code generation. If a Java service, for example a Smallrye config sources, is present and the (Smallrye) configuration is needed by a Quarkus extension, the build fails during Quarkus code generation with an error message like this: ``` org.gradle.api.tasks.TaskExecutionException: Execution failed for task ':quarkusGenerateCode'. ... Caused by: org.gradle.workers.internal.DefaultWorkerExecutor$WorkExecutionException: A failure occurred while executing io.quarkus.gradle.tasks.worker.CodeGenWorker ... Caused by: java.util.ServiceConfigurationError: io.smallrye.config.ConfigSourceFactory: Provider xyz not found ``` `io.quarkus.deployment.CodeGenerator` has a mechanism to filter out unavailable services via `getUnavailableConfigServices()`. However the callback passed to `io.quarkus.paths.PathTree.apply()` can stop before all roots/trees (`io.quarkus.paths.PathTree.getRoots()`) have been "asked" (`MultiRootPathTree`), because the callback can return a non-`null` value. This "early stop" happens before the root/tree containing the source with the `META-INF/services/*` has been processed. The bug is only triggered, if a Java service is defined in the Gradle project using the Quarkus Gradle plugin and if a Quarkus extension using the configuration is a dependency of that project. This change updates the callback implementation to collect all unavailable services from all `PathTree` roots/trees. An integration test using the Gradle plugin is included as well. Two logging/spelling mistakes have been fixed as well. Fixes quarkusio#36716 * Fix assertions in Hibernate ORM 5.6 compatibility tests Hibernate ORM 5.6 does not, in fact, preserve information for OffsetTime columns. It just slaps the current JVM timezone on a stored LocalTime. * Gradle plugin: use full URI for configuration source locations `io.quarkus.gradle.tasks.EffectiveConfig.CombinedConfigSourceProvider` passes only the "file extension" (e.g. `application.properties`) down to `io.smallrye.config.AbstractLocationConfigSourceLoader#loadConfigSources(java.lang.String[], int, java.lang.ClassLoader)`, which may let that function behave wrong and try to for example access an `application.properties` in the wrong location. This can be reproduced by placing an `application.properties` file in the project directory of a Gradle project that uses the Quarkus Gradle plugin. This change fixes this behavior by passing down the correct locations as the `String` representation of the resource URIs, instead of just the "file extensions". Fixes quarkusio#36767 * Tests to check content type between Services and OpenAPI Signed-off-by: Phillip Kruger <[email protected]> * Kafka Streams Dev UI migration to v2 * Fix codestarts snapshots * [quarkusio#36582] Fix bug: TransactionalUniAsserter never fails TransactionalUniAsserterTestMethodInvoker is a subclass of RunOnVertxContextTestMethodInvoker. The problem is that there were two separate pointers keeping track of the asserter in the superclass and in the subclass. This lead to only one pointer being initialized and, if the wrong pointer was null-checked, the asserter was ignored causing the test to never fail. This commit fixes the issue by keeping only one reference to the asserter in the superclass. * [quarkusio#36582] Minor clean up in TransactionalUniAsserterTest Use method reference where possible * [quarkusio#36582] Minor clean up around lambdas * [quarkusio#36582] Add UnwrappableUniAsserter interface The goal is to extract the `asUni()` method from `UniAsserter` * Duplicate Authorization Bearer Header Fix * Tiny Vale tweaks for Datasource and Logging guide Signed-off-by: Michal Maléř <[email protected]> * More reliable test setup in integration-tests/hibernate-orm-tenancy/datasource The previous config was relying on FlyWay on a default datasource to create other databases which named datasources pointed at. Which works well, until a named datasource gets initialized before the default datasource; then named datasource initialization fails because the corresponding database doesn't exist yet. This happened on my local laptop, I don't know why it didn't happen on CI. * Skip non-existing directory when watching for changes Fix quarkusio#32092. The issue was not specific to Gradle. It was problematic with Gradle, as it was configuring the watcher on not existing directories. * Remove erroneous preview status from cache doc * Fix OIDC key resolver to accept SHA256 certificate thumbprints --------- Signed-off-by: dependabot[bot] <[email protected]> Signed-off-by: Phillip Kruger <[email protected]> Signed-off-by: Michal Maléř <[email protected]> Co-authored-by: Guillaume Smet <[email protected]> Co-authored-by: Pedro Igor <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Sergey Beryozkin <[email protected]> Co-authored-by: asjervanasten <[email protected]> Co-authored-by: Andrea Peruffo <[email protected]> Co-authored-by: Clement Escoffier <[email protected]> Co-authored-by: Clement Escoffier <[email protected]> Co-authored-by: Foivos Zakkak <[email protected]> Co-authored-by: Jan Martiska <[email protected]> Co-authored-by: Auri Munoz <[email protected]> Co-authored-by: Martin Kouba <[email protected]> Co-authored-by: Ales Justin <[email protected]> Co-authored-by: George Gastaldi <[email protected]> Co-authored-by: Ozan Gunalp <[email protected]> Co-authored-by: Eric Deandrea <[email protected]> Co-authored-by: Phillip Kruger <[email protected]> Co-authored-by: Rostislav Svoboda <[email protected]> Co-authored-by: Rui Balau <[email protected]> Co-authored-by: Loïc Mathieu <[email protected]> Co-authored-by: Georgios Andrianakis <[email protected]> Co-authored-by: Andy Damevin <[email protected]> Co-authored-by: jeanphi.baconnais <[email protected]> Co-authored-by: Michal Maléř <[email protected]> Co-authored-by: Rolfe Dlugy-Hegwer <[email protected]> Co-authored-by: Ladislav Thon <[email protected]> Co-authored-by: Matej Novotny <[email protected]> Co-authored-by: mariofusco <[email protected]> Co-authored-by: Michal Vavřík <[email protected]> Co-authored-by: Yoann Rodière <[email protected]> Co-authored-by: JiriOndrusek <[email protected]> Co-authored-by: hiteshkhatri97 <[email protected]> Co-authored-by: Juan Diego López V <[email protected]> Co-authored-by: Alex Martel <[email protected]> Co-authored-by: Max Rydahl Andersen <[email protected]> Co-authored-by: marko-bekhta <[email protected]> Co-authored-by: Geoffrey De Smet <[email protected]> Co-authored-by: Bruno Baptista <[email protected]> Co-authored-by: kdnakt <[email protected]> Co-authored-by: Marco Bungart <[email protected]> Co-authored-by: xstefank <[email protected]> Co-authored-by: Alexey Loubyansky <[email protected]> Co-authored-by: Roman Ziske <[email protected]> Co-authored-by: Robert Stupp <[email protected]> Co-authored-by: David Cotton <[email protected]> Co-authored-by: Roberto Cortez <[email protected]> Co-authored-by: Davide D'Alto <[email protected]> Co-authored-by: sahuefficy <[email protected]>
Thanks for your pull request! The title of your pull request does not follow our editorial rules. Could you have a look?
This message is automatically generated by a bot. |
quarkus-bot
bot
added
area/jbang
Issues related to when using jbang.dev with Quarkus
area/kotlin
area/mandrel
env/windows
Impacts Windows machines
labels
Nov 3, 2023
Please rework this PR |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
area/jbang
Issues related to when using jbang.dev with Quarkus
area/kotlin
area/mandrel
env/windows
Impacts Windows machines
triage/invalid
This doesn't seem right
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Use MongoDB 4.4 consistently
Fix handling of HTTP/2 H2 empty frames in Resteasy Reactive
Closes #36604
Bumps com.google.api.grpc:proto-google-common-protos from 2.23.0 to 2.27.0.
updated-dependencies:
Add a custom OIDC identity provider test
Updates Liquibase integrationtest to reproduce error: Regression: Liquibase fails to migrate on Quarkus start, crashing the application #36446
Fix zlib broken link
Reverts changes made to workaround liquibase issue:
LabelExpression
constructed with a collection of strings is not usable forLiquibase.*(...)
liquibase/liquibase#4763 since we've updated to liquibase 4.24.0Fix version reporting and parsing
Quarkus currently only parses the feature and update version of JDK and incorrectly prints message like:
while it should be
i.e. 17.0.8 vs 17.8
This change fixes that issue and relies on java.lang.Runtime.Version for parsing and comparing the JDK version.
Follow up to #36267
Make sure OIDC/GraphQL client integration runs after client config is initialized, get rid of config merger bean
Fix termination of the fallback virtual thread executor
Stork observability integration
Move HTTP CORS section to a new security-cors.adoc
Add security-cors.adoc to the downstreamdoc.yaml
QuarkusTest: handle beans declared on test profile specifically
Fix gRPC context propagation.
Make the ZSTD Substitutions more robust
Remove the pinned event example from the documentation
Use container urls for connecting to services by default
It is better for the build cache and for local testing, nowadays, there is a good chance people will use containers anyway.
Use GRADLE_JAVA_HOME in CI and test Java 21
Remove more Docker images
Indicate that Java 21 is supported
Remove additional stuff before starting CI
Remove --enable-preview from virtual-threads ITs
We are now using Java 21 so we don't need the flag anymore.
Add a ci-disk-usage.sh script
Skip Scala 2 tests on Java 21+
Make RegisterForReflectionTestCase#testLambdaCapturing compatible with Java 21
Higher Xmx for Java 21 testing
Deprecate the scala extension
Codestarts: Add Entity annotation to Kotlin all-open
QuarkusSecurityTestExtension afterEach call should not be made for tests without @testsecurity
Introduce OidcClientRequestFilter
Bump org.jboss.threads:jboss-threads from 3.5.0.Final to 3.5.1.Final
Bumps org.jboss.threads:jboss-threads from 3.5.0.Final to 3.5.1.Final.
updated-dependencies:
Bumps
jacoco.version
from 0.8.10 to 0.8.11.Updates
org.jacoco:org.jacoco.core
from 0.8.10 to 0.8.11Updates
org.jacoco:org.jacoco.report
from 0.8.10 to 0.8.11Updates
org.jacoco:org.jacoco.agent
from 0.8.10 to 0.8.11Updates
org.jacoco:jacoco-maven-plugin
from 0.8.10 to 0.8.11updated-dependencies:
Dev UI: Fix height in Rest Client
Disable CDI TCK ManagedBeanTypesTest for now
This test is not compatible with Java 21.
See jakartaee/cdi-tck#485
Also fix the Unsafe accessor.
Fix #30293.
This has been tested on GraalVM CE and EE.
This reverts commit 09a13e6.
Add a warning for how to report security vulnerability
add JBang script to analyze our CI raw logs
Small additional features to ModuleBuildDurationReport.java
Some additional improvements and fixes
More readable module names
Add auth mechanism to the Liquibase MongoDB connection string
Fix missing import probably due to asynchronous PRs
Disable VertxMDCTest on Windows
It has been extremely unstable for weeks now. Let's disable it until we have time to fix it.
Without this change interceptors meant to be
used on the client were being used on the
server as well
Rename tooling codestarts
ArC: introduce optimized contexts
⬆️ Update Gitpod configuration with Java 17
CORS content review
ArC: optimize client proxy delegate access
Fix update on extensions
Remove a duplicate dependency from Micrometer extension
Avoid relying on Docker for Stork tests
We don't need the Redis Dev Services so let's not start them.
Update the content for RHBQ docs.
Bump io.smallrye.reactive:smallrye-mutiny-vertx-core from 3.6.0 to 3.7.2
Bumps io.smallrye.reactive:smallrye-mutiny-vertx-core from 3.6.0 to 3.7.2.
updated-dependencies:
Also:
proto
directory (gRPC: Configurable proto input directory #12802)Bumps
asm.version
from 9.5 to 9.6.Updates
org.ow2.asm:asm
from 9.5 to 9.6Updates
org.ow2.asm:asm-commons
from 9.5 to 9.6Updates
org.ow2.asm:asm-tree
from 9.5 to 9.6Updates
org.ow2.asm:asm-analysis
from 9.5 to 9.6Updates
org.ow2.asm:asm-util
from 9.5 to 9.6updated-dependencies:
The test
TrustedXForwarderProxiesUnknownHostnameFailureTest
sometimes fail in CI due to a NPE inForwardedProxyHandler
. This shows an actual bug: per the documentation,io.vertx.core.dns.DnsClient.lookup()
may succeed with anull
value when no record was found. TheForwardedProxyHandler
ignores the possibility of anull
result, which this commit fixes. We deal with anull
result just like with a failure, because it's equivalent to a NXDOMAIN error.Arc - change hashing function to use base64 to shorten resulting String
Try to stabilize PausedSchedulerTest
Let's give things a bit more time as CI is slow.
resteasy.adoc sanity check
Indicate that 2.x is not supported anymore
Bump Keycloak version to 22.0.5
Disable MySQL OIDC DB token manager test due to limited Github CI resources
Bump org.yaml:snakeyaml from 2.1 to 2.2
Bumps org.yaml:snakeyaml from 2.1 to 2.2.
updated-dependencies:
Enforcing versions of the plugins make sure we don't start downloading them when running the tests which can lead to timeouts. Also it makes the build more stable and actually tests the version we are using when creating new projects.
When running mvn compile quarkus:dev, compile is not executed when restarting dev mode after the pom change. Not specifying compile makes the compile goal to be run.
Try to stabilize the tests on Windows
Disable JarRunnerIT#testNonAsciiDir on Windows
With maven-compiler-plugin 2.11.0, this test is not working anymore on Windows:
Error while storing the mojo status: Input length = 1
We need to see the details of the errors when something is going wrong.
Installing the lib jar a second time leads to an access denied exception on Windows, probably because the jar is still used by the dev mode instance.
refactor BuildChainBuilder
Move KeycloakContainer to keycloak-server test-framework
Create realm by posting to Keycloak admin API
Bump io.strimzi:kafka-oauth-client from 0.12.0 to 0.14.0
Fixes for Kafka and Pulsar schema discovery
Bump elasticsearch-opensource-components.version from 8.10.2 to 8.10.4
Bumps
elasticsearch-opensource-components.version
from 8.10.2 to 8.10.4.Updates
org.elasticsearch.client:elasticsearch-rest-client
from 8.10.2 to 8.10.4Updates
co.elastic.clients:elasticsearch-java
from 8.10.2 to 8.10.4Updates
org.elasticsearch.client:elasticsearch-rest-client-sniffer
from 8.10.2 to 8.10.4updated-dependencies:
Bumps
flyway.version
from 9.22.2 to 9.22.3.Updates
org.flywaydb:flyway-core
from 9.22.2 to 9.22.3Updates
org.flywaydb:flyway-sqlserver
from 9.22.2 to 9.22.3Updates
org.flywaydb:flyway-mysql
from 9.22.2 to 9.22.3Updates
org.flywaydb:flyway-database-oracle
from 9.22.2 to 9.22.3updated-dependencies:
Bumps io.micrometer:micrometer-bom from 1.11.1 to 1.11.5.
updated-dependencies:
Make it possible to acquire OIDC SecurityIdentity after HTTP request has completed
Clarify why QuarkusClassLoader doesn't pass its name to the super constructor
Enrich classloader names with the name of the application/QuarkusUnitTest
Fix a suspicious H2 URL in Hibernate ORM test config
It doesn't matter in practice since the only test using this config reproduces a startup failure that happens before we start H2; but still, let's fix this for correctness.
Always reset the ForkJoinPool TCCL on startup
Safer, slightly simpler register/release patterns for config
Some config was lazily created and bound to the dev class loader through the configsForClassLoader map
io.smallrye.config.SmallRyeConfigProviderResolver#getConfig(java.lang.ClassLoader), and the corresponding map entry was never cleared, resulting in the corresponding classloader never being garbage collected.
This removes a whole class of metaspace leaks caused by Thread.inheritedAccessControlContext referencing ProtectionDomains which reference older classloaders.
Of course this may have impacts on how the SecurityManager behaves, but as I understand it, absolutely no part of Quarkus is ready to run with a SecurityManager enabled anyway.
Improve error messages on KafkaDevServicesDevModeTestCase failures
Plug leak in tests relying on lazily-initialized config
Since a previous commit, we now remember the lazily-created config in QuarkusConfigFactory, which is good because in dev mode it allows us to release it upon restart (when we call setConfig(null)).
However, in tests that rely on this lazily initialized config, just calling releaseConfig(ConfigProvider.getConfig()) is no longer enough, because of that remembered config in QuarkusConfigFactory: we need to reset that reference too.
If we forget to reset it, then when KafkaDevServicesDevModeTestCase will execute, TestHTTPResourceManager#getUri will retrieve the leaked config from DefaultSerdeConfigTest or DefaultSchemaConfigTest, the injected URI in KafkaDevServicesDevModeTestCase will be wrong, and the test will fail (with very unhelpful error messages).
If someone calls ConfigProvider.getConfig() out of the blue in a test that doesn't use any Quarkus*Test extension, this will call QuarkusConfigFactory and leak config in two ways:
A well-behaved test would call QuarkusConfigFactory.setConfig(null) to clean up all that, but it's easy to miss and there is potential for ConfigProvider.getConfig() being called indirectly, so there's no way we can guarantee all tests are well-behaved.
This should at least guarantee that after a badly behaving test executes, the next test using a Quarkus*Test extension will clean up the mess.
If someone calls ConfigProvider.getConfig() out of the blue in a test that doesn't use any Quarkus*Test extension, this will indirectly call QuarkusConfigFactory and leak config in two ways:
Thus, a well-behaved test should call QuarkusConfigFactory.setConfig(null) to clean up all that, no just SmallRyeConfigProviderResolver.releaseConfig().
Similarly, tests that register configuration explicitly can just call QuarkusConfigFactory.setConfig(config) at the beginning and QuarkusConfigFactory.setConfig(null) at the end,
which will properly simulate how a real Quarkus application behaves, and should cover all edge cases involving multiple classloaders, properly cleaning up everything at the end of the test.
Merge test-related ConfigUtils into a single class
Maven CLI: use recipes for platform extensions
Raise FileSystemWatcherTestCase wait times
Consecutive to:
https://github.com/quarkusio/quarkus/runs/18068790284
Improve error messages when an @Embedded type is not annotated with @embeddable
Strimzi OAuth substitutions
Changes to support jaeger remote sampler
Ignore bridge methods when checking for @embeddable annotation on @Embedded/@EmbeddedId
enable use layer 7 proxy for reactive pg client
Remove type from ResolverMapKey
Update OpenSearch container test configuration
It was missing the header, not including the attributes and not using the right syntax for subs=attributes+ leading to all sorts of rendering issues.
Fix a broken reference in grpc-getting-started.adoc
docs: how to store secrets locally
Handy guide on how to deal with local secrets, SEO friendly.
Add to Security JPA support for named persistence units
Bump jaxb-runtime.version from 4.0.3 to 4.0.4
Bumps
jaxb-runtime.version
from 4.0.3 to 4.0.4.Updates
org.glassfish.jaxb:jaxb-runtime
from 4.0.3 to 4.0.4Updates
org.glassfish.jaxb:jaxb-core
from 4.0.3 to 4.0.4Updates
org.glassfish.jaxb:txw2
from 4.0.3 to 4.0.4updated-dependencies:
Fix sockjs documentation
ArC: improve how single-context normal scopes are found
Disable Http2RSTFloodProtectionTest on Windows
Fix typo in reactive-event-bus.adoc
Validate Startup observers are not secured with RBAC annotations
Cleanup codestarter tests
Make contextResolverMap used for both reader and writer
Update virtual thread documentation to Java 21
Add a description to the Stork extension metadata
Kc Admin Cl.:Fix typo that allows using customized ObjectMapper
Bump apicurio-registry.version from 2.4.7.Final to 2.4.14.Final
Kafka Confluent avro schema serializer doc update
Resolves #36372
Maven CLI: add wildcard matching into recipes detection
Recommend GraalVM CE
Fix missing section in the gRPC getting started guide
Security JPA: support Hibernate multitenancy
Exclude resteasy-client from lra-proxy-api in narayana-lra extension
Add jvmArgs option to Quarkus Gradle plugin task quarkusRun
added discord as know oidc provider
added unittest for merging discord oidc properties
Java Services (those in
META-INF/services/*
files) that are defined in the (Gradle) project that uses the Quarkus Gradle plugin, are not available when Quarkus code generation runs. This is simply a task-dependency requirement in Gradle, because Java compilation happens after code generation. If a Java service, for example a Smallrye config sources, is present and the (Smallrye) configuration is needed by a Quarkus extension, the build fails during Quarkus code generation with an error message like this:io.quarkus.deployment.CodeGenerator
has a mechanism to filter out unavailable services viagetUnavailableConfigServices()
. However the callback passed toio.quarkus.paths.PathTree.apply()
can stop before all roots/trees (io.quarkus.paths.PathTree.getRoots()
) have been "asked" (MultiRootPathTree
), because the callback can return a non-null
value. This "early stop" happens before the root/tree containing the source with theMETA-INF/services/*
has been processed.The bug is only triggered, if a Java service is defined in the Gradle project using the Quarkus Gradle plugin and if a Quarkus extension using the configuration is a dependency of that project.
This change updates the callback implementation to collect all unavailable services from all
PathTree
roots/trees.An integration test using the Gradle plugin is included as well.
Two logging/spelling mistakes have been fixed as well.
Fixes #36716
Hibernate ORM 5.6 does not, in fact, preserve information for OffsetTime columns. It just slaps the current JVM timezone on a stored LocalTime.
io.quarkus.gradle.tasks.EffectiveConfig.CombinedConfigSourceProvider
passes only the "file extension" (e.g.application.properties
) down toio.smallrye.config.AbstractLocationConfigSourceLoader#loadConfigSources(java.lang.String[], int, java.lang.ClassLoader)
, which may let that function behave wrong and try to for example access anapplication.properties
in the wrong location. This can be reproduced by placing anapplication.properties
file in the project directory of a Gradle project that uses the Quarkus Gradle plugin.This change fixes this behavior by passing down the correct locations as the
String
representation of the resource URIs, instead of just the "file extensions".Fixes #36767
Tests to check content type between Services and OpenAPI
Kafka Streams Dev UI migration to v2
Fix codestarts snapshots
[Unit test always succeeds in combination with hibernate-reactive & panache #36582] Fix bug: TransactionalUniAsserter never fails
TransactionalUniAsserterTestMethodInvoker is a subclass of RunOnVertxContextTestMethodInvoker.
The problem is that there were two separate pointers keeping track of the asserter in the superclass and in the subclass. This lead to only one pointer being initialized and, if the wrong pointer was null-checked, the asserter was ignored causing the test to never fail.
This commit fixes the issue by keeping only one reference to the asserter in the superclass.
Use method reference where possible
[Unit test always succeeds in combination with hibernate-reactive & panache #36582] Minor clean up around lambdas
[Unit test always succeeds in combination with hibernate-reactive & panache #36582] Add UnwrappableUniAsserter interface
The goal is to extract the
asUni()
method fromUniAsserter
Duplicate Authorization Bearer Header Fix
Tiny Vale tweaks for Datasource and Logging guide
More reliable test setup in integration-tests/hibernate-orm-tenancy/datasource
The previous config was relying on FlyWay on a default datasource to create other databases which named datasources pointed at.
Which works well, until a named datasource gets initialized before the default datasource; then named datasource initialization fails because the corresponding database doesn't exist yet.
This happened on my local laptop, I don't know why it didn't happen on CI.
Fix #32092. The issue was not specific to Gradle.
It was problematic with Gradle, as it was configuring the watcher on not existing directories.
Remove erroneous preview status from cache doc
Fix OIDC key resolver to accept SHA256 certificate thumbprints