> On Nov 3, 2023, at 10:08 PM, Christian Grobmeier wrote:
>
>
>> However, like myself, organizations are not going to delay upgrading
>> too long. Having Log4j 3.x be available before the majority of orgs
>> switch to Spring 3 will greatly improve its adoption.
>
> Agreed, the earlier, so better, but making Log4j 3.x GA "first thing next
> year" seems to be quite of a rush.
“Quite of a rush”? Really?
The first code commit of Log4j 2.x was performed by me in May 2010. The first
alpha release was in July 2012. 2.0 GA was in July 2014. That is approximately
4 years from first commit to GA with one more alpha, 9 betas, and 2 release
candidates in between.
In contrast, the release-2.x branch was created in Jan 2018 which left master
for work on 3.x to begin. The first, and only so far, release was in June of
this year. That is over 5 years from the initial branch to first release.
To make matters worse, Log4j 2.x was brand new code. I borrowed from Log4j
extras for some of the rolling file appender stuff but everything else was
written from scratch. In contrast, 3.x started from 2.x and has largely been
refactoring work. So the risks involved with 3.x are much, much lower than what
we faced with 2.x.
So I have no idea how you can use the word “rushed” to describe the abysmal
pace 3.x has been proceeding.
>
> As far as I know, we still have changes in 2.x that are not in 3.x.
> I heard we lack integration tests and parallel testing in 3.x is disabled.
> This does not make me feel like a GA, but starting a longer beta phase.
If we have changes in 2.x that are not in 3.x they aren’t many and we will
never find that out without releasing. In general users don’t want to use
alphas or betas. The alphas and betas are there so we can get feedback on
issues such as these but the majority of them won’t appear until a GA release.
To be clear, we MUST have one or two betas before a GA release precisely
because we WILL have issues to deal with. This is completely normal and
expected.
Lack integration tests? Yes 2.x lacks integration tests and always has. Why
would we delay 3.x for something 2.x doesn’t have. All the integration tests
will prove is that various log4j modules can coexist together because some of
them use different dependencies. The unit tests are what matter and they by and
large pass. That said, I did make the request to create integration tests
because Gary has always been afraid of breaking Log4j into multiple repos
because he believes having everything compile and build together provides
assurance that everything will work together. If everything was using managed
depdendencies that would be true. But they don’t so it isn’t.
As far as parallel testing goes, so what? That didn’t exist in 2.x until a
couple of months ago. Again, why do we need to wait. Users don’t care. The only
real consequence is that the build is slower. I put up with that for years as
release manager and, to be honest, with the newer hardware that is available
this problem to a large degree has solved itself. Not that I don’t appreciate
the builds completeing faster but that should NEVER be a requirement to delay a
release. If it had we would be one Logj4 2.4 about now.
>
> With flume, audit and the other stuff eating time, it will be hard to get
> this done.
Get what done? As far as I am concerned Log4j 3.x can go to beta now
and GA the first of the year. There are no required features left, just
stuff that would be nice to get done but can be done after the initial
GA release.
>>>
>>> I'm talking about adding Flume to our project, adding the community, and
>>> maintaining the new component.
>>
>> Up til now that is all pretty much me. I expect it will stay that way
>> for a time, although Matt has indicated an interest in contributing.
>
> Yes, that time you don't have for 3.x
Huh? As far as I know everything I had to work on for 3.x was done prior to
alpha1. What are you talking about?
>
>>> We have open security issues with log4j-audit, and log4j-server still needs
>>> to be cleaned up.
>>
>> Log4j-Audit has no open security issues. It simply needs dependency
>> updates. Please don’t conflate one with the other.
>
> Ok, great, yes, it is using dependencies with major security holes and does
> not look maintained, yet it is promoted as a main product on our website. Did
> we check if it is OK to deliver those dependencies? Upgrading does not seem
> trivial, we haven't also even started.
WTF does this even have to do with 3.x?
>
>> Log4j-Server is a
>> sample. We don’t even release it, so I am not sure why you mention it.
>
> Because we discussed it, there was no movement because nobody seemed to have
> the time (or interest).
Discussed what? Releasing Log4j server? I recall no such discussion and would
have voted -1. That is a security nightmare I have no desire to entertain.
>
>>
>>> I am still determining how m