You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I just thought I would let you know that Slf4j 1.8.0/2.0.0 no longer uses org.slf4j.impl.StaticLoggerBinder, therefore this line in FeatureDetector will fail to detect these versions of Slf4j.
Instead, slf4j will rely on the ServiceLoader mechanism to find the logger factory:
This isn't as easy as it might seem. When using the AWS SDK for S3 storage, that embeds a version of the SLF4J API (at 1.7, natch) which gets picked up by the feature detector. Looking for the StaticLoggerBinder made sure there was a concrete implementation underlying the Logger, and taking out that check results in
SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
SLF4J: Defaulting to no-operation (NOP) logger implementation
SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.
when trying to use S3, with log output going to the console. We'll carry on looking, but there may be wider ramifications.
I just thought I would let you know that Slf4j 1.8.0/2.0.0 no longer uses
org.slf4j.impl.StaticLoggerBinder
, therefore this line in FeatureDetector will fail to detect these versions of Slf4j.Instead, slf4j will rely on the ServiceLoader mechanism to find the logger factory:
As a result Flyway will not detect slf4j although this is the intention of LogCreatorFactory.
Bug template:
Which version and edition of Flyway are you using?
Flyway 7.0.4 community edition
If this is not the latest version, can you reproduce the issue with the latest one as well?
(Many bugs are fixed in newer releases and upgrading will often resolve the issue)
7.0.4 is the latest as of writing this
Which client are you using? (Command-line, Java API, Maven plugin, Gradle plugin)
Java API
Which database are you using (type & version)?
HSQLDB 2.5.1
Which operating system are you using?
Mac OS X
What did you do?
Run this:
What did you expect to see?
"Has slf4j: true" using slf4j 1.8.0/2.0.0
What did you see instead?
"Has slf4j: false" using slf4j 1.8.0/2.0.0
When using slf4j 1.7.30, it is correctly detected.
The text was updated successfully, but these errors were encountered: