-
Notifications
You must be signed in to change notification settings - Fork 1.6k
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
[GR-47922] Enforce -H:±UnlockExperimentalVMOptions
#7370
Comments
Feature request Add stable option for -H:AdditionalSecurityProviders Is your feature request related to a problem? Please describe. Starting with 23.1 using
Four core Quarkus Extensions (security, elytron-security-jdbc, kafka-client, infinispan-client) rely on this option to define additional security providers. Describe the solution you'd like. Provide a stable way to define additional security providers, either making this option stable or adding a new API option. Describe who do you think will benefit the most. Describe alternatives you've considered. |
@zakkak I'm actually curious why do you need to use |
@sberyozkin can you please have a look at ^^?
No we don't disable this. |
Starting with Mandrel 23.1 and GraalVM for JDK 21 the use of `-H:ResourceConfigurationFiles` and `-H:ReflectionConfigurationFiles` is marked as experimental and requires the use of `-H::±UnlockExperimentalVMOptions` to avoid warnings (see oracle/graal#7190), while in the future (planned for the next release) the presence of this option will be mandatory when using experimental options (see oracle/graal#7370). Furthermore, as described in oracle/graal#7487 Mandrel and GraalVM will also adopt glob patterns in the future (planned for the next release) and gradually phase out the ability to use exclude patterns. The aim of this change is to discourage Quarkus users from creating their own configuration files.
Starting with Mandrel 23.1 and GraalVM for JDK 21 the use of `-H:ResourceConfigurationFiles` and `-H:ReflectionConfigurationFiles` is marked as experimental and requires the use of `-H::±UnlockExperimentalVMOptions` to avoid warnings (see oracle/graal#7190), while in the future (planned for the next release) the presence of this option will be mandatory when using experimental options (see oracle/graal#7370). Furthermore, as described in oracle/graal#7487 Mandrel and GraalVM will also adopt glob patterns in the future (planned for the next release) and gradually phase out the ability to use exclude patterns. The aim of this change is to inform Quarkus users that they are responsible for keeping such configuration files up to date and to make clear that they need to start using the `-H::±UnlockExperimentalVMOptions` option.
@sberyozkin this is a kind reminder. |
Starting with Mandrel 23.1 and GraalVM for JDK 21 the use of `-H:ResourceConfigurationFiles` and `-H:ReflectionConfigurationFiles` is marked as experimental and requires the use of `-H::±UnlockExperimentalVMOptions` to avoid warnings (see oracle/graal#7190), while in the future (planned for the next release) the presence of this option will be mandatory when using experimental options (see oracle/graal#7370). Furthermore, as described in oracle/graal#7487 Mandrel and GraalVM will also adopt glob patterns in the future (planned for the next release) and gradually phase out the ability to use exclude patterns. The aim of this change is to inform Quarkus users that they are responsible for keeping such configuration files up to date and to make clear that they need to start using the `-H::±UnlockExperimentalVMOptions` option.
@sberyozkin it looks like this fell through the cracks, can you please have a look? |
Apologies for totally missing this issue. Let me CC @fjuma and @darranl - can you please check #7370 (comment), is it possible to add |
@sberyozkin Can I please double check what is being asked for here? I am just looking at JCA documentation to clarify the requirements and I am currently in this section: Is this about adding a .getInstance() to the SHA512_256MessageDigest.java or is this about adding the newInstance(Object) method where we register the Provider.Service ? I assume this also applies to all Security Provider registration and not just this example? |
@darranl Thanks for checking it. Now that you have asked, I have to admit, I'm not sure. I've reread the comment from @zakkak where he indeed mentions @zakkak has also mentioned other Quarkus extensions which use
I've tested that However with
Does it mean @cstancu What are you thoughts about it ? |
-H:±UnlockExperimentalVMOptions
was introduced in GraalVM for JDK 21 (see #7105). This is a follow up issue to track outstanding tasks such as its enforcement, bugs and improvements, or API option changes.Main task
Bug fixes and improvements
-H:Log
and other options are not listed in the experimental output, which only handlesHostedOptionKey
but not otherOptionKey
s (see Add stable option for option -H:Log #7357).(addressed by [GR-47922] Improve list of experimental options. #7720)
-H:IncludeResources
can be replaced with aresource-config.json
file , see Add stable option for -H:IncludeResources and -H:ExcludeResources #7354 (comment)). Currently, migration hints are only generated for hosted options that are annotated with@APIOption
. Another example is-H:Path
which can be replaced with-o
, which in turn belongs to-H:Name
.(addressed by [GR-47922] Improve list of experimental options. #7720)
Only print warning for existing hosted options (e.g.,won't fix, not considered a bugnative-image -H:+Nonono -m jdk.httpserver
should not show the warning)API changes
-gperf
and-gfull
.The text was updated successfully, but these errors were encountered: