-
Notifications
You must be signed in to change notification settings - Fork 41.2k
Upgrade to Logback 1.5.7 #41885
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Upgrade to Logback 1.5.7 #41885
Conversation
15f629e
to
a1c595c
Compare
Thanks @mches. I was looking at this and noticed this PR. Our build is broken with just a change of version, namely profiles don't seem to work anymore. I've kicked off a build for this PR to see if your changes make a difference. |
@snicoll You're welcome. I had a lot of fun figuring out why it broke. The build works great locally. 🤞🏻 |
Thanks very much @mches. A timely PR indeed! |
Unfortunately, we're going to have to revert this. In Logback 1.5.6 and earlier, stopping the LoggerContext would reset it. In 1.5.7, it only does so if it has been started. We're stopping a context that hasn't been started so reset isn't called. This PR addresses this by calling reset explicitly in some tests, but this doesn't address the issue that the |
Upgrades Logback from 1.5.6 to 1.5.7.
The return type of
ch.qos.logback.core.ContextBase#getConfigurationLock.getConfigurationLock()
has changed fromjava.lang.Object
tojava.util.concurrent.locks.ReentrantLock
. It's noteworthy that this is a source compatible, binary incompatible change. The change necessitates replacing a synchronized block with a try-finally construct to ensure correct locking semantics going forward. There were also changes to the behavior ofch.qos.logback.classic.LoggerContext#stop()
that necessitate callingch.qos.logback.classic.LoggerContext#reset()
where it wasn't already, in tests.Closes #41887