ppkarwasz commented on issue #3870: URL: https://github.com/apache/logging-log4j2/issues/3870#issuecomment-3158507980
> The SPI to replace this should allow for registering strategies on how to extract a qualifier name and aliases from an injection point. The resulting plugin annotations should therefore no longer be meta-annotated with implementation details. A SPI for registering strategies to extract a qualifier name and aliases from an injection point sounds like a solid approach. Right now, plugin annotations are still tightly coupled to the providers that interpret them. That link not only made it harder to split `log4j-plugins` from `log4j-core`, but also makes it impossible to create a `log4j-plugins-annotation` module containing only the annotations, independent from `log4j-plugins`. (Validators have the same issue.) I’m not entirely clear on the connection between the meta-annotated annotations and `Key`. I agree that anonymous `Key` subtypes make GraalVM support more cumbersome (since each one has to be listed in `reflect-config.json`) and I don’t see a tangible benefit over using the `Key` builder. From a compile-time perspective, though, they should still be discoverable via an annotation processor using [`RoundEnvironment.getRootElements()`](https://docs.oracle.com/en/java/javase/17/docs/api/java.compiler/javax/annotation/processing/RoundEnvironment.html#getRootElements%28%29), correct? -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: notifications-unsubscr...@logging.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org