I should note that if we decide to keep things in core, like XML, they can be 
declared as transient (making the dependency optional) in the module-info.java 
file. 

For me the goal is to have log4j-core contain what 80% of our users want. I 
suspect both JSON and XML fall into that.

Ralph

> On Jan 28, 2018, at 9:17 PM, Gary Gregory <[email protected]> wrote:
> 
> Beyond these moves, the next slice and dice would be to deal with our XML,
> JSON, and YAML dependencies:
> 
> We have no dependencies to read an XML configuration.
> 
> For JSON and YAML configs, we use Jackson.
> 
> For XML, JSON, and YAML layouts we use Jackson.
> 
> We could spit things out like this:
> 
> log4j-json: JSON configuration and layout using Jackson
> log4j-xml: XML layout using Jackson (XML configuration remains in
> log4j-core)
> log4j-yaml: YAML configuration and layout using Jackson
> 
> Or finner:
> 
> log4j-config-json: JSON configuration using Jackson
> log4j-layout-json: JSON layout using Jackson
> log4j-config-yaml: YAML configuration using Jackson
> log4j-layout-json: JSON layout using Jackson
> 
> The thinking being, why should I drag in JSON configuration code if all I
> want is a JSON layout.
> 
> Thoughts?
> 
> Gary
> 
> 
> On Sun, Jan 28, 2018 at 7:38 PM, Gary Gregory <[email protected]>
> wrote:
> 
>> 
>> 
>> On Sun, Jan 28, 2018 at 2:25 PM, Ralph Goers <[email protected]>
>> wrote:
>> 
>>> I should add that each module must have a unique package hierarchy so, in
>>> general, the package names should be org.apache.logging.log4j.modulename.
>>> In this case it would be org.apache.logging.log4j.jeromq.apppender.  The
>>> mom package probably has no value.
>>> 
>> 
>> I'll change the packages and write the changes in the release notes.
>> 
>> Gary
>> 
>> 
>>> 
>>> Ralph
>>> 
>>>> On Jan 28, 2018, at 2:23 PM, Ralph Goers <[email protected]>
>>> wrote:
>>>> 
>>>> Any component that is not in the core module MUST NOT use the core
>>> package. That would make it impossible to package them as Java 9 modules.
>>>> 
>>>> Ralph
>>>> 
>>>>> On Jan 28, 2018, at 11:31 AM, Gary Gregory <[email protected]>
>>> wrote:
>>>>> 
>>>>> Hi All,
>>>>> 
>>>>> Now that the ZeroMQ via JeroMQ support is in its own module
>>> log4j-jeromq, I
>>>>> wonder if the Java package should change from
>>>>> 
>>>>> org.apache.logging.log4j.core.appender.mom.jeromq
>>>>> 
>>>>> to
>>>>> 
>>>>> org.apache.logging.log4j.appender.mom.jeromq
>>>>> 
>>>>> ?
>>>>> 
>>>>> Same for the recently moved JPA appender.
>>>>> 
>>>>> Same for impending move of the Kafka appender.
>>>>> 
>>>>> This would break BC for Core for apps that directly reference these
>>>>> classes. As opposed to referencing the appenders from an XML/JSON/YAML
>>>>> config file.
>>>>> 
>>>>> Gary
>>>> 
>>> 
>>> 
>>> 
>> 


Reply via email to