ppkarwasz commented on PR #2702:
URL: https://github.com/apache/logging-log4j2/pull/2702#issuecomment-2204281617

   >     1. `Your code relies on Log4j Core internals, which have lesser 
compatibility guarantees` statement is not correct. We don't have any 
guarantees on internals. We don't want to. Any expression hinting even slightly 
different than this encourages users. The reason we still try to keep things 
backward compatible is there is no decent encapsulation mechanism in Java 8.
   
   We **do** guarantee that classes which are not marked as private or internal 
will evolve according to semantic versioning.
   In the future we might be more aggressive with releasing major versions 
(e.g. once every couple of years like MongoDB), but in the context of a single 
major version we will not do breaking changes.
   
   >     2. Creating a component (in this case `PatternLayout`) manually is 
wrong. It is analogous to creating Spring beans manually instead of requesting 
them from the `ApplicationContext`.
   
   I see this as a sort of Spring Java-based configuration, where you call Java 
constructors and setters explicitly.
   In this example the attributes of `PatternLayout` are hard-coded, but users 
could use other mechanisms to inject those.
   
   >     3. We encourage the usage of `PatternLayout.createDefaultLayout()`, 
which should have not existed in the first place.
   
   +1, I will remove it.
   


-- 
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: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to