Skip to content
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

Bump quarkus.version from 3.4.3 to 3.5.0 #208

Merged
merged 2 commits into from
Oct 30, 2023

Conversation

dependabot[bot]
Copy link
Contributor

@dependabot dependabot bot commented on behalf of github Oct 19, 2023

Bumps quarkus.version from 3.4.3 to 3.5.0.
Updates io.quarkus:quarkus-bom from 3.4.3 to 3.5.0

Release notes

Sourced from io.quarkus:quarkus-bom's releases.

3.5.0.CR1

Major changes

  • #36268 - Add OIDC Mastodon provider
  • #36175 - Introduce OIDC Database Token State Manager extension
  • #36164 - Support Java 21 main launch protocol
  • #35923 - Map OIDC scope attribute to the SecurityIdentity permissions
  • #35610 - Change decompiler from quiltflower to vineflower
  • #33790 - Allow Hibernate Reactive to coexist with Agroal (and thus Flyway and Liquibase)

Complete changelog

  • #36393 - Remove "coming soon" about CLI in tooling.adoc
  • #36386 - Fixes PatternSyntaxException:Unclosed group near index 34
  • #36385 - Fix jakarta.el.ELException: Function 'match' not found
  • #36384 - Add gradle deps example to unblock downstream docs build
  • #36377 - Allow @ClientHeaderParam to override User-Agent
  • #36371 - Fix issue in Java migration in dev-mode
  • #36369 - List specific guides about virtual threads
  • #36366 - OIDC Db Token State Manager - disable MSSQL test due to limited Github CI resources and cancel timer on shutdown
  • #36362 - Explain how to deal with Rate Limiting in the OIDC providers doc
  • #36361 - Check semicolon during the OIDC scope to permission conversion
  • #36354 - Allow ORM dependencies in mavenLocal for Gradle tests
  • #36351 - Properly handle invalid response body errors in Reactive REST Client
  • #36349 - PRs involving Doc updates are failing
  • #36348 - Smallrye GraphQL 2.5.0
  • #36347 - Kafka serde discovery generates serializer for dead letter queue failure strategy
  • #36333 - Prepare for ORM update
  • #36332 - Bump com.google.cloud.tools:jib-core from 0.24.0 to 0.25.0
  • #36331 - Bump org.bouncycastle:bctls-fips from 1.0.16 to 1.0.17
  • #36329 - Custom User-Agent header ignored
  • #36322 - Do not warn on static init about clearly build-related properties being set in environment variables
  • #36321 - Upgrade vaadin to 24.1.10
  • #36318 - Bump elasticsearch-opensource-components.version from 8.10.1 to 8.10.2
  • #36317 - Bump com.amazonaws:aws-lambda-java-events from 3.11.2 to 3.11.3
  • #36315 - Bump org.junit.jupiter:junit-jupiter from 5.9.3 to 5.10.0
  • #36314 - Bump com.gradle.enterprise from 3.15 to 3.15.1 in /devtools/gradle
  • #36313 - OIDC scope to permission conversion does not initialize StringPermission actions
  • #36311 - Upgrade: Hibernate ORM 6.2.11.Final and Reactive 2.0.6.Final
  • #36309 - Use consistent versions of Maven for Maven wrapper and mvnd
  • #36307 - Add support for Google Application Default Credentials
  • #36306 - Natively support Google Application Default Credentials in the container-image-jib extension
  • #36302 - Fix headers and preambles in all guides and reintroduce some keywords
  • #36299 - quarkus-flyway: Java-Migration does not get picked up on live reload
  • #36293 - Use correct quotes
  • #36291 - Warning "Build time property cannot be changed at runtime: quarkus.native.builder-image.pull"
  • #36290 - Fixed URL for configuring JSON support
  • #36286 - Add the secrets keyword in the .env section in the reference docs
  • #36281 - Config: detect injected config value mismatch during static init
  • #36280 - Enable OracleOpenTelemetryJdbcInstrumentationTest

... (truncated)

Commits
  • 8703586 [RELEASE] - Bump version to 3.5.0
  • ea3eee6 Updates liquibase to version 4.24 to solve bug
  • dc7b4a3 Merge pull request #36533 from gsmet/3.5.0-backports-1
  • 91cddc6 Register RuntimeOverrideConfigSource in STATIC_INIT
  • e7c0a9a Start MongoDB 4.4 instead of 4.0
  • 535b2e2 Use Mandrel 23.1 in windows CI
  • 6b739a5 Bump org.wiremock:wiremock-standalone from 3.1.0 to 3.2.0
  • feddfda Fix typo in gradle-tooling.adoc
  • bbb144b Fix some issues in getting-started-dev-services:
  • 6285bf4 Adjust extension name for consistency with rest of Quarkus
  • Additional commits viewable in compare view

Updates io.quarkus:quarkus-maven-plugin from 3.4.3 to 3.5.0

Updates io.quarkus:quarkus-extension-processor from 3.4.3 to 3.5.0

Updates io.quarkus:quarkus-extension-maven-plugin from 3.4.3 to 3.5.0

Release notes

Sourced from io.quarkus:quarkus-extension-maven-plugin's releases.

3.5.0.CR1

Major changes

  • #36268 - Add OIDC Mastodon provider
  • #36175 - Introduce OIDC Database Token State Manager extension
  • #36164 - Support Java 21 main launch protocol
  • #35923 - Map OIDC scope attribute to the SecurityIdentity permissions
  • #35610 - Change decompiler from quiltflower to vineflower
  • #33790 - Allow Hibernate Reactive to coexist with Agroal (and thus Flyway and Liquibase)

Complete changelog

  • #36393 - Remove "coming soon" about CLI in tooling.adoc
  • #36386 - Fixes PatternSyntaxException:Unclosed group near index 34
  • #36385 - Fix jakarta.el.ELException: Function 'match' not found
  • #36384 - Add gradle deps example to unblock downstream docs build
  • #36377 - Allow @ClientHeaderParam to override User-Agent
  • #36371 - Fix issue in Java migration in dev-mode
  • #36369 - List specific guides about virtual threads
  • #36366 - OIDC Db Token State Manager - disable MSSQL test due to limited Github CI resources and cancel timer on shutdown
  • #36362 - Explain how to deal with Rate Limiting in the OIDC providers doc
  • #36361 - Check semicolon during the OIDC scope to permission conversion
  • #36354 - Allow ORM dependencies in mavenLocal for Gradle tests
  • #36351 - Properly handle invalid response body errors in Reactive REST Client
  • #36349 - PRs involving Doc updates are failing
  • #36348 - Smallrye GraphQL 2.5.0
  • #36347 - Kafka serde discovery generates serializer for dead letter queue failure strategy
  • #36333 - Prepare for ORM update
  • #36332 - Bump com.google.cloud.tools:jib-core from 0.24.0 to 0.25.0
  • #36331 - Bump org.bouncycastle:bctls-fips from 1.0.16 to 1.0.17
  • #36329 - Custom User-Agent header ignored
  • #36322 - Do not warn on static init about clearly build-related properties being set in environment variables
  • #36321 - Upgrade vaadin to 24.1.10
  • #36318 - Bump elasticsearch-opensource-components.version from 8.10.1 to 8.10.2
  • #36317 - Bump com.amazonaws:aws-lambda-java-events from 3.11.2 to 3.11.3
  • #36315 - Bump org.junit.jupiter:junit-jupiter from 5.9.3 to 5.10.0
  • #36314 - Bump com.gradle.enterprise from 3.15 to 3.15.1 in /devtools/gradle
  • #36313 - OIDC scope to permission conversion does not initialize StringPermission actions
  • #36311 - Upgrade: Hibernate ORM 6.2.11.Final and Reactive 2.0.6.Final
  • #36309 - Use consistent versions of Maven for Maven wrapper and mvnd
  • #36307 - Add support for Google Application Default Credentials
  • #36306 - Natively support Google Application Default Credentials in the container-image-jib extension
  • #36302 - Fix headers and preambles in all guides and reintroduce some keywords
  • #36299 - quarkus-flyway: Java-Migration does not get picked up on live reload
  • #36293 - Use correct quotes
  • #36291 - Warning "Build time property cannot be changed at runtime: quarkus.native.builder-image.pull"
  • #36290 - Fixed URL for configuring JSON support
  • #36286 - Add the secrets keyword in the .env section in the reference docs
  • #36281 - Config: detect injected config value mismatch during static init
  • #36280 - Enable OracleOpenTelemetryJdbcInstrumentationTest

... (truncated)

Commits
  • 8703586 [RELEASE] - Bump version to 3.5.0
  • ea3eee6 Updates liquibase to version 4.24 to solve bug
  • dc7b4a3 Merge pull request #36533 from gsmet/3.5.0-backports-1
  • 91cddc6 Register RuntimeOverrideConfigSource in STATIC_INIT
  • e7c0a9a Start MongoDB 4.4 instead of 4.0
  • 535b2e2 Use Mandrel 23.1 in windows CI
  • 6b739a5 Bump org.wiremock:wiremock-standalone from 3.1.0 to 3.2.0
  • feddfda Fix typo in gradle-tooling.adoc
  • bbb144b Fix some issues in getting-started-dev-services:
  • 6285bf4 Adjust extension name for consistency with rest of Quarkus
  • Additional commits viewable in compare view

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot merge will merge this PR after your CI passes on it
  • @dependabot squash and merge will squash and merge this PR after your CI passes on it
  • @dependabot cancel merge will cancel a previously requested merge and block automerging
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

Bumps `quarkus.version` from 3.4.3 to 3.5.0.

Updates `io.quarkus:quarkus-bom` from 3.4.3 to 3.5.0
- [Release notes](https://github.com/quarkusio/quarkus/releases)
- [Commits](quarkusio/quarkus@3.4.3...3.5.0)

Updates `io.quarkus:quarkus-maven-plugin` from 3.4.3 to 3.5.0

Updates `io.quarkus:quarkus-extension-processor` from 3.4.3 to 3.5.0

Updates `io.quarkus:quarkus-extension-maven-plugin` from 3.4.3 to 3.5.0
- [Release notes](https://github.com/quarkusio/quarkus/releases)
- [Commits](quarkusio/quarkus@3.4.3...3.5.0)

---
updated-dependencies:
- dependency-name: io.quarkus:quarkus-bom
  dependency-type: direct:production
  update-type: version-update:semver-minor
- dependency-name: io.quarkus:quarkus-maven-plugin
  dependency-type: direct:production
  update-type: version-update:semver-minor
- dependency-name: io.quarkus:quarkus-extension-processor
  dependency-type: direct:production
  update-type: version-update:semver-minor
- dependency-name: io.quarkus:quarkus-extension-maven-plugin
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>
@dependabot dependabot bot added the dependencies Pull requests that update a dependency file label Oct 19, 2023
@michael-simons
Copy link
Contributor

@gsmet Would u be able to help me here? I don't see this extension messing with the GraalVM options and on Oracle / CE Graal it works.

@michael-simons
Copy link
Contributor

It's the --strict-image-heap option added by Quarkus I think…

oracle/graal#7483

@michael-simons
Copy link
Contributor

Hm, now that Quarkus 3.5 has been released, I would be really happy about input here…

cc @maxandersen

@gsmet
Copy link
Member

gsmet commented Oct 26, 2023

@zakkak could you help here? The build is failing with:

Fatal error: org.graalvm.compiler.debug.GraalError: org.graalvm.compiler.debug.GraalError: com.oracle.svm.core.util.VMError$HostedError: Boolean option value can be only + or -
	at org.graalvm.nativeimage.pointsto/com.oracle.graal.pointsto.util.AnalysisFuture.setException(AnalysisFuture.java:49)
	at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:322)

I fail to see the option that could cause that (and the error message could definitely be more explicit).

I see that it is using:

quay.io/quarkus/ubi-quarkus-mandrel-builder-image:jdk-21
[INFO] [io.quarkus.deployment.pkg.steps.NativeImageBuildStep] Running Quarkus native-image plugin on MANDREL 23.1.0.0 JDK 21.0

Thanks!

@zakkak
Copy link
Contributor

zakkak commented Oct 27, 2023

@gsmet this is a known issue expected to be fixed with the new version of mandrel and GraalVM

See quarkusio/quarkus#36684

Note however that it's an indication that there is indeed some issue behind this misleading message.

@michael-simons
Copy link
Contributor

But then I indeed wonder: How got Quarkus 3.5 released? Do you use another Mandrel edition for testing? Or did I use something odd here? And if so, how did that happen?

@gefloh
Copy link

gefloh commented Oct 27, 2023

But then I indeed wonder: How got Quarkus 3.5 released? Do you use another Mandrel edition for testing? Or did I use something odd here? And if so, how did that happen?

We are facing the same issue with our native build in a different context which means as of now we cannot update to Quarkus 3.5.

@zakkak
Copy link
Contributor

zakkak commented Oct 30, 2023

@michael-simons it looks like the Quarkus integration tests don't hit this issue, which came to our attention only after people started using 3.5.

The updated Mandrel images are now available and include the fix for the misleading error, could you please try again and see what the actual error is?

Please make sure to pull the latest jdk-21 image (Quarkus should automatically do it for you).

@michael-simons
Copy link
Contributor

I can try and restart this build, I don't have Mandrel locally. Let's see.

@michael-simons
Copy link
Contributor

No luck @zakkak

@zakkak
Copy link
Contributor

zakkak commented Oct 30, 2023

No luck @zakkak

I wouldn't say so :)

The old misleading error is gone and you now get the actual error with some hints:

Fatal error: org.graalvm.compiler.debug.GraalError: org.graalvm.compiler.debug.GraalError: com.oracle.graal.pointsto.constraints.UnsupportedFeatureException: An object of type 'io.netty.handler.ssl.ClientAuth' was found in the image heap. This type, however, is marked for initialization at image run time for the following reason: classes are initialized at run time by default.
This is not allowed for correctness reasons: All objects that are stored in the image heap must be initialized at build time.

You now have two options to resolve this:

1) If it is intended that objects of type 'io.netty.handler.ssl.ClientAuth' are persisted in the image heap, add 

    '--initialize-at-build-time=io.netty.handler.ssl.ClientAuth'

to the native-image arguments. Note that initializing new types can store additional objects to the heap. It is advised to check the static fields of 'io.netty.handler.ssl.ClientAuth' to see if they are safe for build-time initialization,  and that they do not contain any sensitive data that should not become part of the image.

2) If these objects should not be stored in the image heap, you can use 

    '--trace-object-instantiation=io.netty.handler.ssl.ClientAuth'

to find classes that instantiate these objects. Once you found such a class, you can mark it explicitly for run time initialization with 

    '--initialize-at-run-time=<culprit>'

to prevent the instantiation of the object.

If you are seeing this message after enabling '--strict-image-heap', this means that some objects ended up in the image heap without their type being marked with --initialize-at-build-time.
To fix this, include '--initialize-at-build-time=io.netty.handler.ssl.ClientAuth' in your configuration. If the classes do not originate from your code, it is advised to update all library or framework dependencies to the latest version before addressing this error.
Please address this problem to be prepared for future releases of GraalVM.

I am not sure why io.netty.handler.ssl.ClientAuth is marked as run time initialized since Quarkus marks everything as build time initialized. I will have a look.

@michael-simons
Copy link
Contributor

We are deferring the whole SSL package to RT @zakkak

RuntimeInitializedPackageBuildItem deferNettySSLToRuntime() {
return new RuntimeInitializedPackageBuildItem("io.netty.handler.ssl");
}

I'm open to any better suggestion. Thank you

@zakkak
Copy link
Contributor

zakkak commented Oct 30, 2023

We are deferring the whole SSL package to RT @zakkak

OK, in that case you can either reset io.netty.handler.ssl.ClientAuth back to build time initialized as suggested by the error output or you can go ahead and set io.vertx.core.net.impl.SSLHelper as run time initialized (as that's what's triggering the ClienAuth instantiation according to --trace-object-instantiation=io.netty.handler.ssl.ClientAuth.

I have tried both and they worked for the tests in this repository.

I'm open to any better suggestion. Thank you

I don't really know the reasoning behind this decision so I can't help much. A quick test (removing that build step) didn't result in any test failures so it might be worth revisiting.

@michael-simons
Copy link
Contributor

Haha yes, I tried the latter, too :) But it wasn't always that way.

Probably things got triggered by changes in the Quarkus/Vertx stack, we are not using Vertx at all in the Neo4j driver

Thanks a lot for your help!

@michael-simons
Copy link
Contributor

I go with deferring io.vertx.core.net.impl.SSLHelper, as this seems to what have been changed. Quite reluctant to touch things that used to work for our customers from our config. Thanks again for ur help, Foivos.

@michael-simons michael-simons merged commit 2419c40 into main Oct 30, 2023
1 check passed
@michael-simons michael-simons deleted the dependabot/maven/quarkus.version-3.5.0 branch October 30, 2023 10:19
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
dependencies Pull requests that update a dependency file
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants