This is a good migration path to allow for that. I'd still like to see
log4j-core trimmed down a bit, too.

On 11 January 2017 at 15:28, Mikael Ståldal <mikael.stal...@magine.com>
wrote:

> I think that we should still split up log4j-core though.
>
> On Jan 10, 2017 3:18 AM, "Matt Sicker" <boa...@gmail.com> wrote:
>
>> Going to go with the name Log4j Boot. I submitted a git repo request and
>> the form says it should be created within the hour.
>>
>> On 8 January 2017 at 23:13, Apache <ralph.go...@dslextreme.com> wrote:
>>
>>> Go for it!
>>>
>>> Ralph
>>>
>>> On Jan 8, 2017, at 1:44 PM, Matt Sicker <boa...@gmail.com> wrote:
>>>
>>> Also, one neat aspect of this that I didn't think of at first is that as
>>> we trim down log4j-core and the main logging-log4j2 repository, users won't
>>> need to worry about changing dependencies down the line as the updated
>>> starters will point to the proper dependencies.
>>>
>>> I also have two more starter ideas:
>>>
>>> * One that brings in all relevant log4j bridges (slf4j-impl, jul, jcl,
>>> log4j-1.2)
>>> * One that brings in all relevant slf4j bridges instead (slf4j-impl,
>>> jcl-over-slf4j, jul-to-slf4j) similar to the spring-boot-starter-log4j2
>>>
>>> For completeness sake, I'd also be willing to add starters for a few
>>> trivial things like the various bridges and log4j-api-lang modules, though
>>> those should work well enough without using a starter (though it could be
>>> confusing if there is no starter for them).
>>>
>>> On 8 January 2017 at 14:26, Matt Sicker <boa...@gmail.com> wrote:
>>>
>>>> I think I have a decent idea on how to handle the optional dependencies
>>>> confusion without needing to split off log4j-core into a zillion
>>>> submodules. The idea is inspired by the spring-boot-starter-* packages that
>>>> give you a dependency that's just a pom.xml file (along with some META-INF
>>>> files, but that would be irrelevant here) that pull in the required
>>>> dependencies for a feature. So, for example, we could make up a bunch of
>>>> log4j-starter-* modules that contain pom.xml files to pull in all necessary
>>>> dependencies for a particular optional feature. Examples:
>>>>
>>>> [all modules would start with the prefix "log4j-starter-"]
>>>> * async (for AsyncLogger; brings in LMAX disruptor)
>>>> * config-json
>>>> * config-yaml
>>>> * script-groovy
>>>> * layout-csv
>>>> * layout-jansi (for windows users and coloured log messages)
>>>> * layout-json (unless this has been ported to not require jackson
>>>> anymore?)
>>>> * layout-xml
>>>> * layout-yaml
>>>> * appender-async-conversant
>>>> * appender-async-jctools
>>>> * appender-cassandra
>>>> * appender-couchdb
>>>> * appender-jms
>>>> * appender-jpa
>>>> * appender-kafka
>>>> * appender-mongodb
>>>> * appender-smtp
>>>> * appender-zeromq (or jeromq?)
>>>>
>>>> I may have missed a few, but the base set of starters should at least
>>>> correspond to all optional dependencies in log4j-core or the addon modules.
>>>> For the jms, jpa, and smtp appenders, we could either make add in a default
>>>> provider (e.g., ActiveMQ, Hibernate, and Sun Mail respectively) or split
>>>> those into provider-specific starters.
>>>>
>>>> Ideally, these starters would live in their own repository
>>>> (logging-log4j-starters), and the groupId can be either
>>>> org.apache.logging.log4j (I think that'd get confusing when searching on
>>>> maven.org) or org.apache.logging.log4j.starter(s).
>>>>
>>>> So what do you think?
>>>>
>>>> --
>>>> Matt Sicker <boa...@gmail.com>
>>>>
>>>
>>>
>>>
>>> --
>>> Matt Sicker <boa...@gmail.com>
>>>
>>>
>>>
>>
>>
>> --
>> Matt Sicker <boa...@gmail.com>
>>
>


-- 
Matt Sicker <boa...@gmail.com>

Reply via email to