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

Update SmallRye Config to 3.12.0 #46249

Merged
merged 1 commit into from
Feb 16, 2025
Merged

Conversation

radcortez
Copy link
Member

@radcortez radcortez commented Feb 13, 2025

SmallRye Config Release notes:

3.12.0

  • #1316 Revert "Add new method isEnabled to ConfigSourceInterceptor (Add Vertx web extension #1311)"
  • #1315 Try indexed names on injection when non indexed value is null
  • #1314 Compute indexed properties when building the list of PropertyNames
  • #1313 Keep properties from ConfigMapping implementation
  • #1312 Bump io.smallrye.common:smallrye-common-bom from 2.9.0 to 2.10.0
  • #1311 Add new method isEnabled to ConfigSourceInterceptor
  • #1310 Add API in the builder to register a mapping instance
  • #1309 Cache MethodHandles to construct and get defaults from the mapping implementation
  • #1308 Slight optimization when populating the DefaultValuesConfigSource
  • #1306 Add a way for ConfigClass to also carry and load defaults from a config mapping class
  • #1304 Ignore default methods inherited from super classes in mappings
  • #1303 Skip profile lookup if System, Env, Properties and Default sources do not contain a profile property name
  • #1297 Bump io.smallrye:smallrye-parent from 46 to 47

Quarkus:

This PR also makes some improvements in the startup time and RSS by:

Used config-quickstart to measure improvements with Java 21 Temurin and Graal 21:

  JVM RSS Native RSS JVM Start Native Start
3.19.0 132542 20441 0.632 0.020
#46249 132599 19705 0.606 0.015
Diff to 3.19.0 0.04% -4.36% -3.74% -28.95%

@quarkus-bot quarkus-bot bot added area/arc Issue related to ARC (dependency injection) area/config area/core area/dependencies Pull requests that update a dependency file area/devtools Issues/PR related to maven, gradle, platform and cli tooling/plugins area/gradle Gradle labels Feb 13, 2025
@quarkusio quarkusio deleted a comment from quarkus-bot bot Feb 13, 2025
@@ -193,7 +193,8 @@ private static void registerImplicitConverter(

public static Object newInstance(Class<?> configClass) {
if (configClass.isAnnotationPresent(ConfigMapping.class)) {
return ReflectUtil.newInstance(ConfigMappingLoader.getImplementationClass(configClass));
// TODO - radcortez - mapping classes cannot be initialized like this.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm not sure I understand this comment?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, this is what causes #39431. There is no exception, since the object is created, but all the values are not populated since it didn't call the correct constructor.

I added the TODO there to fix that later... the code has been like this for some time without much incident, but I need to fix it.

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
Copy link

🎊 PR Preview f3068af has been successfully built and deployed to https://quarkus-pr-main-46249-preview.surge.sh/version/main/guides/

  • Images of blog posts older than 3 months are not available.
  • Newsletters older than 3 months are not available.

@radcortez radcortez marked this pull request as ready for review February 16, 2025 08:26
Copy link

quarkus-bot bot commented Feb 16, 2025

Status for workflow Quarkus CI

This is the status report for running Quarkus CI on commit 88c46b4.

✅ The latest workflow run for the pull request has completed successfully.

It should be safe to merge provided you have a look at the other checks in the summary.

You can consult the Develocity build scans.

@gsmet gsmet merged commit 2df8c69 into quarkusio:main Feb 16, 2025
72 checks passed
@quarkus-bot quarkus-bot bot added this to the 3.21 - main milestone Feb 16, 2025
@mikethecalamity
Copy link

@gsmet is it possible to get this in any sooner than 3.21

@gsmet
Copy link
Member

gsmet commented Feb 17, 2025

@mikethecalamity could you clarify why you would want this earlier? Just to be sure I didn’t miss something.

The current plan is to push it in 3.19.

@mikethecalamity
Copy link

@gsmet I just wanted the fix for smallrye/smallrye-config#1305

But 3.19 would be perfect. I just saw it was only tagged to 3.21 currently and didn't want to wait 2 months.

@mikethecalamity
Copy link

@gsmet I guess this didn't make it into 3.19? The quarkus-bom that just dropped looks like it still has 3.11.2

@radcortez
Copy link
Member Author

Unfortunately, we found a possible issue with this update (which we are still investigating), and it was risky to do the backport. I've prepared a 3.11.3just with the fixes for 3.19.x: #46358, so it will be available in the next fix version.

Alternatively, you can overrride the SR Config version in Quarkus 3.19.0 to 3.13.3.

@gsmet
Copy link
Member

gsmet commented Feb 20, 2025

3.19 is not officially released yet. My plan is to include SR Config 3.11.3 in 3.19.1 next week and make 3.19.1 the first official release.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/arc Issue related to ARC (dependency injection) area/config area/core area/dependencies Pull requests that update a dependency file area/devtools Issues/PR related to maven, gradle, platform and cli tooling/plugins area/gradle Gradle kind/bugfix
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Spring Boot properties fail to find a property in native since 3.18.2 after SmallRye Config bump to 3.11.2
3 participants