I think putting it in the tools repo would be fine.

Ralph

> On Jan 2, 2023, at 2:34 PM, Piotr P. Karwasz <piotr.karw...@gmail.com> wrote:
> 
> Hi,
> 
>> On Mon, 2 Jan 2023 at 10:08, Volkan Yazıcı <vol...@yazi.ci> wrote:
>> Agreed with the separate repository idea. I suggest moving it to the
>> `logging-log4j-maven-plugins` repository – you need an INFRA ticket to
>> create the repository.
> 
> The Maven plugin will not be the only use-case of the code after I
> finish up the project.
> 
> Since I am really bad at naming things, so maybe I'll describe the
> feature-set and someone will come with the ideal name. :-D
> 
> I imagine one module that will weave bytecode (`log4j-instrument`) to:
> * convert classical Log4j2 API calls to LogBuilder calls with location,
> * convert other API calls (Log4j 1.2, JCL, SLF4J and especially
> `java.util.logging`) to Log4j2 API calls (LogBuilder with location for
> now),
> * implement `java.lang.instrument.ClassFileTransformer` so that we
> can use it to weave at runtime.
> 
> A second module would be based on a refactoring library (Error Prone?
> called `log4j-errorprone`?) to:
> * convert classical Log4j2 API calls to LogBuilder (this simplifies
> weaving a lot),
> * convert other API calls to Log4j2 API,
> * check for common mistakes of new Log4j2 API adopters: e.g. `if
> (logger.isDebugEnabled() logger.debug(...);` or `logger.debug("Hello
> name " + name + ".")`.
> 
> A Maven module would use `log4j-instrument` to:
> * weave a project's classes,
> * weave all JAR dependencies (well, with some default exclusion
> patterns such as `log4j-*.jar` of course),
> * create a POM that only references Log4j2 API.
> 
> And of course Maven is not the only build tool on the market.
> Contributors could submit plugins for other build tools.
> 
> I think that `logging-log4j-tools` would be a nice name for a
> repository, but it is taken. :-) Unless `log4j-changelog` is targeted
> at a larger audience, in which case we can share. :-)
> 
> Piotr

Reply via email to