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 >>>> >>> >>> >>> >>
