Skip to content

Commit 3ca6a32

Browse files
authored
3.10.x Upgrade slf4j to 2.0.17 (#11880)
* Upgrade to slf4j 2.0.17 --------- Signed-off-by: Olivier Lamy <olamy@apache.org>
1 parent ab8fae0 commit 3ca6a32

13 files changed

Lines changed: 109 additions & 93 deletions

File tree

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -78,7 +78,7 @@ If you want to bootstrap Maven, you'll need:
7878
- Maven 3.9.0 or later
7979
- Run Maven, specifying a location into which the completed Maven distro should be installed:
8080
```
81-
mvn -DdistributionTargetDir="$HOME/app/maven/apache-maven-3.9.x-SNAPSHOT" clean package
81+
mvn -DdistributionTargetDir="$HOME/app/maven/apache-maven-3.10.x-SNAPSHOT" clean package
8282
```
8383

8484

apache-maven/src/main/appended-resources/licenses/MIT-slf4j-api-1.7.36.txt renamed to apache-maven/src/main/appended-resources/licenses/unrecognized-slf4j-api-2.0.17.txt

File renamed without changes.

maven-embedder/src/main/java/org/apache/maven/cli/logging/impl/Slf4jSimpleConfiguration.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@
2020

2121
import org.apache.maven.cli.logging.BaseSlf4jConfiguration;
2222
import org.slf4j.MavenSlf4jFriend;
23-
import org.slf4j.impl.MavenSlf4jSimpleFriend;
23+
import org.slf4j.simple.MavenSlf4jSimpleFriend;
2424

2525
/**
2626
* Configuration for slf4j-simple.

maven-embedder/src/main/java/org/slf4j/impl/MavenSlf4jSimpleFriend.java renamed to maven-embedder/src/main/java/org/slf4j/simple/MavenSlf4jSimpleFriend.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616
* specific language governing permissions and limitations
1717
* under the License.
1818
*/
19-
package org.slf4j.impl;
19+
package org.slf4j.simple;
2020

2121
import org.slf4j.ILoggerFactory;
2222
import org.slf4j.LoggerFactory;

maven-embedder/src/main/resources/META-INF/maven/slf4j-configuration.properties

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,5 +19,7 @@
1919
# value = corresponding o.a.m.cli.logging.Slf4jConfiguration class
2020
org.slf4j.impl.SimpleLoggerFactory org.apache.maven.cli.logging.impl.Slf4jSimpleConfiguration
2121
org.slf4j.impl.MavenSimpleLoggerFactory org.apache.maven.cli.logging.impl.Slf4jSimpleConfiguration
22+
org.slf4j.simple.SimpleLoggerFactory org.apache.maven.cli.logging.impl.Slf4jSimpleConfiguration
23+
org.slf4j.simple.MavenSimpleLoggerFactory org.apache.maven.cli.logging.impl.Slf4jSimpleConfiguration
2224
org.apache.logging.slf4j.Log4jLoggerFactory org.apache.maven.cli.logging.impl.Log4j2Configuration
2325
ch.qos.logback.classic.LoggerContext org.apache.maven.cli.logging.impl.LogbackConfiguration

maven-slf4j-provider/pom.xml

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -55,6 +55,11 @@ under the License.
5555
<artifactId>hamcrest</artifactId>
5656
<scope>test</scope>
5757
</dependency>
58+
<dependency>
59+
<groupId>org.slf4j</groupId>
60+
<artifactId>slf4j-simple</artifactId>
61+
<scope>test</scope>
62+
</dependency>
5863
</dependencies>
5964

6065
<build>
@@ -67,13 +72,12 @@ under the License.
6772
<artifactItem>
6873
<groupId>org.slf4j</groupId>
6974
<artifactId>slf4j-simple</artifactId>
70-
<version>${slf4jVersion}</version>
7175
<type>jar</type>
7276
<classifier>sources</classifier>
7377
<overWrite>false</overWrite>
7478
<outputDirectory>${project.build.directory}/generated-sources/slf4j-simple</outputDirectory>
75-
<includes>org/slf4j/impl/*.java</includes>
76-
<excludes>org/slf4j/impl/StaticLoggerBinder*</excludes>
79+
<includes>org/slf4j/simple/*.java</includes>
80+
<excludes>org/slf4j/simple/SimpleServiceProvider*</excludes>
7781
</artifactItem>
7882
</artifactItems>
7983
</configuration>

maven-slf4j-provider/src/main/java/org/slf4j/impl/StaticLoggerBinder.java

Lines changed: 0 additions & 82 deletions
This file was deleted.

maven-slf4j-provider/src/main/java/org/slf4j/impl/MavenSimpleLogger.java renamed to maven-slf4j-provider/src/main/java/org/slf4j/simple/MavenSimpleLogger.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616
* specific language governing permissions and limitations
1717
* under the License.
1818
*/
19-
package org.slf4j.impl;
19+
package org.slf4j.simple;
2020

2121
import java.io.PrintStream;
2222

maven-slf4j-provider/src/main/java/org/slf4j/impl/MavenSimpleLoggerFactory.java renamed to maven-slf4j-provider/src/main/java/org/slf4j/simple/MavenSimpleLoggerFactory.java

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616
* specific language governing permissions and limitations
1717
* under the License.
1818
*/
19-
package org.slf4j.impl;
19+
package org.slf4j.simple;
2020

2121
import org.slf4j.Logger;
2222

@@ -37,4 +37,9 @@ public Logger getLogger(String name) {
3737
return oldInstance == null ? newInstance : oldInstance;
3838
}
3939
}
40+
41+
@Override
42+
protected Logger createLogger(String name) {
43+
return new MavenSimpleLogger(name);
44+
}
4045
}
Lines changed: 71 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,71 @@
1+
/*
2+
* Licensed to the Apache Software Foundation (ASF) under one
3+
* or more contributor license agreements. See the NOTICE file
4+
* distributed with this work for additional information
5+
* regarding copyright ownership. The ASF licenses this file
6+
* to you under the Apache License, Version 2.0 (the
7+
* "License"); you may not use this file except in compliance
8+
* with the License. You may obtain a copy of the License at
9+
*
10+
* http://www.apache.org/licenses/LICENSE-2.0
11+
*
12+
* Unless required by applicable law or agreed to in writing,
13+
* software distributed under the License is distributed on an
14+
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15+
* KIND, either express or implied. See the License for the
16+
* specific language governing permissions and limitations
17+
* under the License.
18+
*/
19+
package org.slf4j.simple;
20+
21+
import org.slf4j.ILoggerFactory;
22+
import org.slf4j.IMarkerFactory;
23+
import org.slf4j.helpers.BasicMarkerFactory;
24+
import org.slf4j.helpers.NOPMDCAdapter;
25+
import org.slf4j.spi.MDCAdapter;
26+
import org.slf4j.spi.SLF4JServiceProvider;
27+
28+
/**
29+
* SLF4J service provider for Maven, using {@link MavenSimpleLoggerFactory}
30+
* to provide colorized log output.
31+
*
32+
* @since 3.10.0
33+
*/
34+
public class MavenSimpleServiceProvider implements SLF4JServiceProvider {
35+
36+
/**
37+
* Declare the version of the SLF4J API this implementation is compiled against.
38+
*/
39+
// to avoid constant folding by the compiler, this field must *not* be final
40+
@SuppressWarnings({"checkstyle:staticvariablename", "checkstyle:visibilitymodifier"})
41+
public static String REQUESTED_API_VERSION = "2.0"; // !final
42+
43+
private ILoggerFactory loggerFactory;
44+
private final IMarkerFactory markerFactory = new BasicMarkerFactory();
45+
private final MDCAdapter mdcAdapter = new NOPMDCAdapter();
46+
47+
@Override
48+
public ILoggerFactory getLoggerFactory() {
49+
return loggerFactory;
50+
}
51+
52+
@Override
53+
public IMarkerFactory getMarkerFactory() {
54+
return markerFactory;
55+
}
56+
57+
@Override
58+
public MDCAdapter getMDCAdapter() {
59+
return mdcAdapter;
60+
}
61+
62+
@Override
63+
public String getRequestedApiVersion() {
64+
return REQUESTED_API_VERSION;
65+
}
66+
67+
@Override
68+
public void initialize() {
69+
loggerFactory = new MavenSimpleLoggerFactory();
70+
}
71+
}

0 commit comments

Comments
 (0)