Comments (7)
/cc @Ladicek (smallrye), @jmartisk (smallrye), @phillip-kruger (smallrye), @radcortez (smallrye)
from quarkus.
You're mentioning 3.8.0.CR1, you have the same issue with 3.7.3, right?
It would help if you could provide a simple reproducer. Thanks!
/cc @radcortez this looks concerning
from quarkus.
Based on my discoveres in version 3.2.6 ConfigUtils
was creating SmallRyeConfigBuilder
with addDiscoveredConverters
being called in both build and run time.
In new version there are separate builders for build and run time and run time builder creates SmallRyeConfigBuilder
without call to addDiscoveredConverters
.
I think creating minimun reproducable example can take a while as we are using this code in our custom quarkus plugin.
from quarkus.
@radcortez FWIW, the important point here is that the code of the converter is generated with Gizmo.
@ikovalyov I think you should at least post how the converter is generated.
from quarkus.
Yes, we have the addDiscovered*
to false in runtime to avoid the ServiceLoader
. We discover the services during build time and register them directly (generated) with the builder.
That piece is done here:
Maybe your generation is happening after this config build step and is not being picked up?
from quarkus.
Hi!
Yes, our code is generated on a runtime.
We indeed see it is triggered after executing code you mentioned.
from quarkus.
We indeed see it is triggered after executing code you mentioned.
Ok, so in that case, it is not going to be discovered by our code.
My recommendation is to directly register the converter with a RunTimeConfigBuilderBuildItem
and a io.quarkus.runtime.configuration.ConfigBuilder
. This may require some additional code generation because the withConverter
requires a new instance of the registered Converter
.
Or just turn the discovery on again in the builder, with the downside of extra operations in the native image. You probably need to add the service loader file as the native image resource manually. We don't do it automatically, because we determine everything at build time and register the converters directly to avoid that.
from quarkus.
Related Issues (20)
- Hibernate Reactive can't persist a many-to-many relation when one of the entities is a child (with the "joined" inheritance type) and the batch size is greater than 1 HOT 10
- Postgresql bump causing detection of instance Random/SplittableRandom HOT 11
- jpamodelgen fails with range out of bounds HOT 4
- Properly pass errors from JsonRPC backends to Dev UI HOT 2
- Unable to build a container with Jib when podman is running HOT 7
- Exception thrown when stopping devmode and with dev services running with Podman HOT 1
- Quarkus opentelemetry extension WARNING when exporting to dynatrace HOT 11
- GRPC server doesn't respond when running on the same server as HTTP and using TLS HOT 6
- Add @PermissionsAllowed to Panache Resources HOT 9
- Native: Introduce flag to favor build time improvements at the cost of using more resources and vice versa HOT 4
- Prevent API scraping through obscurity HOT 1
- Decorating MongoClient does not work because decorator is removed during build HOT 3
- Jakarta RESTful Web Services 3.1 Multipart support does not work HOT 7
- Wrong duplicateEndPoint when implements two Rest interfaces HOT 7
- Quarkus SmallRye GraphQL not emitting metrics HOT 2
- Use Arc AnnotationStore to build Hibernate ORM metadata HOT 25
- Mockito fails to mock non-public inner class in continuous testing due to classloading issues HOT 8
- cert chain public key resolver thumbprints HOT 4
- Quarkus 3.7.4 java.lang.ClassNotFoundException when running devsevices with gradle HOT 14
- Better error message for @ParameterizedTest failures in a @QuarkusTest HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from quarkus.