Skip to content

Commit

Permalink
Allow-list native warnings about experimental VM options
Browse files Browse the repository at this point in the history
`-H:ReflectionConfigurationResources`
- Reported in `netty`: netty/netty#13595.
- Fixed in `netty`: netty/netty#13596.
- See also similar issue in
  Karm/mandrel-integration-tests#190 and its
  workaround in
  Karm/mandrel-integration-tests#203.

`-H:Log=registerResource, -H:Log=registerResource:`
- Added explicitly by `APP_FULL_MICROPROFILE` config.
- Typical use case documented in Quarkus Native Reference Guide,
  the documentation was added in
  quarkusio/quarkus#36494.
- Allow-listed, instead of using `-H:+UnlockExperimentalVMOptions` /
  `-H:-UnlockExperimentalVMOptions`, to avoid errors with GraalVM /
  Mandrel based on Java < 21, which do not recognize this option
  (see oracle/graal#7105).
  • Loading branch information
jsmrcka committed Nov 2, 2023
1 parent 97f6819 commit 57c36c0
Showing 1 changed file with 9 additions and 0 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,9 @@ public enum WhitelistLogLines {
Pattern.compile(".*org.eclipse.aether.util.concurrency.RunnableErrorForwarder.*"),
// https://github.com/quarkusio/quarkus/issues/34626
Pattern.compile("\\[Quarkus build analytics\\] Analytics remote config not received."),
// netty 4 which doesn't have the relevant native config in the lib. See https://github.com/netty/netty/pull/13596
Pattern.compile(".*Warning: Please re-evaluate whether any experimental option is required, and either remove or unlock it\\..*"),
Pattern.compile(".*Warning: The option '-H:ReflectionConfigurationResources=META-INF/native-image/io\\.netty/netty-transport/reflection-config\\.json' is experimental and must be enabled via.*"),
}),
FULL_MICROPROFILE(new Pattern[]{
// Some artifacts names...
Expand All @@ -34,6 +37,12 @@ public enum WhitelistLogLines {
Pattern.compile(".*RESTEASY004687: Closing a class.*CleanupAction.*"),
// https://github.com/quarkusio/quarkus/issues/34626
Pattern.compile("\\[Quarkus build analytics\\] Analytics remote config not received."),
// netty 4 which doesn't have the relevant native config in the lib. See https://github.com/netty/netty/pull/13596
Pattern.compile(".*Warning: Please re-evaluate whether any experimental option is required, and either remove or unlock it\\..*"),
Pattern.compile(".*Warning: The option '-H:ReflectionConfigurationResources=META-INF/native-image/io\\.netty/netty-transport/reflection-config\\.json' is experimental and must be enabled via.*"),
// native options added explicitly by FULL_MICROPROFILE application.properies
Pattern.compile(".*Warning: The option '-H:Log=registerResource:' is experimental and must be enabled via.*"),
Pattern.compile(".*Warning: The option '-H:IncludeResources=privateKey\\.pem' is experimental and must be enabled via.*"),
}),
GENERATED_SKELETON(new Pattern[]{
// Harmless warning
Expand Down

0 comments on commit 57c36c0

Please sign in to comment.