Re: [VOTE] Release Log4j 2.15.0-rc1
+1 rat: success mvn install: success (no flakes) $ mvn -v Apache Maven 3.6.3 Maven home: /usr/share/maven Java version: 1.8.0_282, vendor: Azul Systems, Inc., runtime: /home/ckozak/.tools/jdk/zulu8.52.0.23-ca-jdk8.0.282-linux_x64/jre Default locale: en_US, platform encoding: UTF-8 OS name: "linux", version: "5.13.0-22-generic", arch: "amd64", family: "unix" -ck On Tue, Dec 7, 2021, at 00:38, Matt Sicker wrote: > +1 > > Signatures good, tests pass, etc. Environment (mixed toolchain depending on > which module is being tested): > > openjdk version "1.8.0_312" > OpenJDK Runtime Environment (Zulu 8.58.0.13-CA-macos-aarch64) (build > 1.8.0_312-b07) > OpenJDK 64-Bit Server VM (Zulu 8.58.0.13-CA-macos-aarch64) (build 25.312-b07, > mixed mode) > > openjdk version "11.0.12" 2021-07-20 > OpenJDK Runtime Environment Homebrew (build 11.0.12+0) > OpenJDK 64-Bit Server VM Homebrew (build 11.0.12+0, mixed mode) > > openjdk version "17.0.1" 2021-10-19 > OpenJDK Runtime Environment Homebrew (build 17.0.1+1) > OpenJDK 64-Bit Server VM Homebrew (build 17.0.1+1, mixed mode, sharing) > > Apache Maven 3.8.4 (9b656c72d54e5bacbed989b64718c159fe39b537) > > Notes: > * Some of the performance tests in log4j-core-its have flakes, but no big > deal given the context of the test. > * Cassandra integration test doesn’t seem to work properly on ARM. > > > On Dec 6, 2021, at 22:12, Ralph Goers wrote: > > > > This is a vote to release Log4j 2.15.0, the next version of the Log4j 2 > > project. > > > > Please download, test, and cast your votes on the log4j developers list. > > [] +1, release the artifacts > > [] -1, don't release because... > > > > The vote will remain open for 72 hours (or more if required). All votes are > > welcome and we encourage everyone to test the release, but only Logging PMC > > votes are “officially” counted. As always, at least 3 +1 votes and more > > positive than negative votes are required. > > > > Changes in this release include: > > > > New Features > > > > • LOG4J2-3198: Pattern layout no longer enables lookups within message text > > by default for cleaner API boundaries and reduced formatting overhead. The > > old 'log4j2.formatMsgNoLookups' which enabled this behavior has been > > removed as well as the 'nolookups' message pattern converter option. The > > old behavior can be enabled on a per-pattern basis using '%m{lookups}'. > > • LOG4J2-3194: Allow fractional attributes for size attribute of > > SizeBsaedTriggeringPolicy. Thanks to markuss. > > • LOG4J2-2978: Add support for Jakarta EE 9 (Tomcat 10 / Jetty 11) Thanks > > to Michael Seele. > > • LOG4J2-3189: Improve NameAbbreviator worst-case performance. > > • LOG4J2-3170: Make CRLF/HTML encoding run in O(n) worst-case time, rather > > than O(n^2). Thanks to Gareth Smith. > > • LOG4J2-3133: Add missing slf4j-api singleton accessors to > > log4j-slf4j-impl (1.7) StaticMarkerBinder and StaticMDCBinder. This doesn't > > impact behavior or correctness, but avoids throwing and catching > > NoSuchMethodErrors when slf4j is initialized and avoids linkage linting > > warnings. > > • LOG4J2-2885: Add support for US-style date patterns and micro/nano > > seconds to FixedDateTime. Thanks to Markus Spann. > > • LOG4J2-3116: Add JsonTemplateLayout for Google Cloud Platform structured > > logging layout. > > • LOG4J2-3067: Add CounterResolver to JsonTemplateLayout. > > • LOG4J2-3074: Add replacement parameter to ReadOnlyStringMapResolver. > > • LOG4J2-3051: Add CaseConverterResolver to JsonTemplateLayout. > > • LOG4J2-3064: Add Arbiters and SpringProfile plugin. > > • LOG4J2-3056: Refactor MD5 usage for sharing sensitive information. Thanks > > to Marcono1234. > > • LOG4J2-3004: Add plugin support to JsonTemplateLayout. > > • LOG4J2-3050: Allow AdditionalFields to be ignored if their value is null > > or a zero-length String. > > • LOG4J2-3049: Allow MapMessage and ThreadContext attributes to be prefixed. > > • LOG4J2=3048: Add improved MapMessge support to GelfLayout. > > • LOG4J2-3044: Add RepeatPatternConverter. > > • LOG4J2-2940: Context selectors are aware of their dependence upon the > > callers ClassLoader, allowing basic context selectors to avoid the > > unnecessary overhead of walking the stack to determine the caller's > > ClassLoader. > > • LOG4J2-2940: Add BasicAsyncLoggerContextSelector equivalent to > > AsyncLoggerContextSelector for applications with a single LoggerContext. > > This selector avoids classloader lookup overhead incurred by the existing > > AsyncLoggerContextSelector. > > • LOG4J2-3041: Allow a PatternSelector to be specified on GelfLayout. > > • LOG4J2-3141: Avoid ThreadLocal overhead in RandomAccessFileAppender, > > RollingRandomAccessFileManager, and MemoryMappedFileManager due to the > > unused setEndOfBatch and isEndOfBatch methods. The methods on LogEvent are > > preferred. > > • LOG4J2-3144: Prefer string.getBytes(Charset) over string.getBytes(String) > > based on performance
Re: [VOTE] Release Log4j 2.15.0-rc1
Hi Matt: When I run 'mvn clean install' on Java 11 I get: [ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.8.1:testCompile (default-testCompile) on project log4j-api: Compilation failure [ERROR] /Users/garydgregory/temp/rc/logging-log4j2/log4j-api/src/test/java/org/apache/logging/log4j/util/StackLocatorUtilTest.java:[25,18] error: cannot find symbol [ERROR] symbol: class Reflection [ERROR] location: package sun.reflect How did you get Java 11 to work? Gary On Tue, Dec 7, 2021 at 12:38 AM Matt Sicker wrote: > +1 > > Signatures good, tests pass, etc. Environment (mixed toolchain depending > on which module is being tested): > > openjdk version "1.8.0_312" > OpenJDK Runtime Environment (Zulu 8.58.0.13-CA-macos-aarch64) (build > 1.8.0_312-b07) > OpenJDK 64-Bit Server VM (Zulu 8.58.0.13-CA-macos-aarch64) (build > 25.312-b07, mixed mode) > > openjdk version "11.0.12" 2021-07-20 > OpenJDK Runtime Environment Homebrew (build 11.0.12+0) > OpenJDK 64-Bit Server VM Homebrew (build 11.0.12+0, mixed mode) > > openjdk version "17.0.1" 2021-10-19 > OpenJDK Runtime Environment Homebrew (build 17.0.1+1) > OpenJDK 64-Bit Server VM Homebrew (build 17.0.1+1, mixed mode, sharing) > > Apache Maven 3.8.4 (9b656c72d54e5bacbed989b64718c159fe39b537) > > Notes: > * Some of the performance tests in log4j-core-its have flakes, but no big > deal given the context of the test. > * Cassandra integration test doesn’t seem to work properly on ARM. > > > On Dec 6, 2021, at 22:12, Ralph Goers > wrote: > > > > This is a vote to release Log4j 2.15.0, the next version of the Log4j 2 > project. > > > > Please download, test, and cast your votes on the log4j developers list. > > [] +1, release the artifacts > > [] -1, don't release because... > > > > The vote will remain open for 72 hours (or more if required). All votes > are welcome and we encourage everyone to test the release, but only Logging > PMC votes are “officially” counted. As always, at least 3 +1 votes and more > positive than negative votes are required. > > > > Changes in this release include: > > > > New Features > > > > • LOG4J2-3198: Pattern layout no longer enables lookups within > message text by default for cleaner API boundaries and reduced formatting > overhead. The old 'log4j2.formatMsgNoLookups' which enabled this behavior > has been removed as well as the 'nolookups' message pattern converter > option. The old behavior can be enabled on a per-pattern basis using > '%m{lookups}'. > > • LOG4J2-3194: Allow fractional attributes for size attribute of > SizeBsaedTriggeringPolicy. Thanks to markuss. > > • LOG4J2-2978: Add support for Jakarta EE 9 (Tomcat 10 / Jetty 11) > Thanks to Michael Seele. > > • LOG4J2-3189: Improve NameAbbreviator worst-case performance. > > • LOG4J2-3170: Make CRLF/HTML encoding run in O(n) worst-case > time, rather than O(n^2). Thanks to Gareth Smith. > > • LOG4J2-3133: Add missing slf4j-api singleton accessors to > log4j-slf4j-impl (1.7) StaticMarkerBinder and StaticMDCBinder. This doesn't > impact behavior or correctness, but avoids throwing and catching > NoSuchMethodErrors when slf4j is initialized and avoids linkage linting > warnings. > > • LOG4J2-2885: Add support for US-style date patterns and > micro/nano seconds to FixedDateTime. Thanks to Markus Spann. > > • LOG4J2-3116: Add JsonTemplateLayout for Google Cloud Platform > structured logging layout. > > • LOG4J2-3067: Add CounterResolver to JsonTemplateLayout. > > • LOG4J2-3074: Add replacement parameter to > ReadOnlyStringMapResolver. > > • LOG4J2-3051: Add CaseConverterResolver to JsonTemplateLayout. > > • LOG4J2-3064: Add Arbiters and SpringProfile plugin. > > • LOG4J2-3056: Refactor MD5 usage for sharing sensitive > information. Thanks to Marcono1234. > > • LOG4J2-3004: Add plugin support to JsonTemplateLayout. > > • LOG4J2-3050: Allow AdditionalFields to be ignored if their value > is null or a zero-length String. > > • LOG4J2-3049: Allow MapMessage and ThreadContext attributes to be > prefixed. > > • LOG4J2=3048: Add improved MapMessge support to GelfLayout. > > • LOG4J2-3044: Add RepeatPatternConverter. > > • LOG4J2-2940: Context selectors are aware of their dependence > upon the callers ClassLoader, allowing basic context selectors to avoid the > unnecessary overhead of walking the stack to determine the caller's > ClassLoader. > > • LOG4J2-2940: Add BasicAsyncLoggerContextSelector equivalent to > AsyncLoggerContextSelector for applications with a single LoggerContext. > This selector avoids classloader lookup overhead incurred by the existing > AsyncLoggerContextSelector. > > • LOG4J2-3041: Allow a PatternSelector to be specified on > GelfLayout. > > • LOG4J2-3141: Avoid ThreadLocal overhead in > RandomAccessFileAppender, RollingRandomAccessFileManager, and > MemoryMappedFileManager due to the unused setEndOfB
Re: [VOTE] Release Log4j 2.15.0-rc1
Run maven using Java 8. The build doesn’t specify requirements on that, so the default JDK is used, not a specific toolchain entry. Matt Sicker > On Dec 7, 2021, at 14:25, Gary Gregory wrote: > > Hi Matt: > > When I run 'mvn clean install' on Java 11 I get: > > [ERROR] Failed to execute goal > org.apache.maven.plugins:maven-compiler-plugin:3.8.1:testCompile > (default-testCompile) on project log4j-api: Compilation failure > [ERROR] > /Users/garydgregory/temp/rc/logging-log4j2/log4j-api/src/test/java/org/apache/logging/log4j/util/StackLocatorUtilTest.java:[25,18] > error: cannot find symbol > [ERROR] symbol: class Reflection > [ERROR] location: package sun.reflect > > How did you get Java 11 to work? > > Gary > >> On Tue, Dec 7, 2021 at 12:38 AM Matt Sicker wrote: >> >> +1 >> >> Signatures good, tests pass, etc. Environment (mixed toolchain depending >> on which module is being tested): >> >> openjdk version "1.8.0_312" >> OpenJDK Runtime Environment (Zulu 8.58.0.13-CA-macos-aarch64) (build >> 1.8.0_312-b07) >> OpenJDK 64-Bit Server VM (Zulu 8.58.0.13-CA-macos-aarch64) (build >> 25.312-b07, mixed mode) >> >> openjdk version "11.0.12" 2021-07-20 >> OpenJDK Runtime Environment Homebrew (build 11.0.12+0) >> OpenJDK 64-Bit Server VM Homebrew (build 11.0.12+0, mixed mode) >> >> openjdk version "17.0.1" 2021-10-19 >> OpenJDK Runtime Environment Homebrew (build 17.0.1+1) >> OpenJDK 64-Bit Server VM Homebrew (build 17.0.1+1, mixed mode, sharing) >> >> Apache Maven 3.8.4 (9b656c72d54e5bacbed989b64718c159fe39b537) >> >> Notes: >> * Some of the performance tests in log4j-core-its have flakes, but no big >> deal given the context of the test. >> * Cassandra integration test doesn’t seem to work properly on ARM. >> >>> On Dec 6, 2021, at 22:12, Ralph Goers >> wrote: >>> >>> This is a vote to release Log4j 2.15.0, the next version of the Log4j 2 >> project. >>> >>> Please download, test, and cast your votes on the log4j developers list. >>> [] +1, release the artifacts >>> [] -1, don't release because... >>> >>> The vote will remain open for 72 hours (or more if required). All votes >> are welcome and we encourage everyone to test the release, but only Logging >> PMC votes are “officially” counted. As always, at least 3 +1 votes and more >> positive than negative votes are required. >>> >>> Changes in this release include: >>> >>> New Features >>> >>> • LOG4J2-3198: Pattern layout no longer enables lookups within >> message text by default for cleaner API boundaries and reduced formatting >> overhead. The old 'log4j2.formatMsgNoLookups' which enabled this behavior >> has been removed as well as the 'nolookups' message pattern converter >> option. The old behavior can be enabled on a per-pattern basis using >> '%m{lookups}'. >>> • LOG4J2-3194: Allow fractional attributes for size attribute of >> SizeBsaedTriggeringPolicy. Thanks to markuss. >>> • LOG4J2-2978: Add support for Jakarta EE 9 (Tomcat 10 / Jetty 11) >> Thanks to Michael Seele. >>> • LOG4J2-3189: Improve NameAbbreviator worst-case performance. >>> • LOG4J2-3170: Make CRLF/HTML encoding run in O(n) worst-case >> time, rather than O(n^2). Thanks to Gareth Smith. >>> • LOG4J2-3133: Add missing slf4j-api singleton accessors to >> log4j-slf4j-impl (1.7) StaticMarkerBinder and StaticMDCBinder. This doesn't >> impact behavior or correctness, but avoids throwing and catching >> NoSuchMethodErrors when slf4j is initialized and avoids linkage linting >> warnings. >>> • LOG4J2-2885: Add support for US-style date patterns and >> micro/nano seconds to FixedDateTime. Thanks to Markus Spann. >>> • LOG4J2-3116: Add JsonTemplateLayout for Google Cloud Platform >> structured logging layout. >>> • LOG4J2-3067: Add CounterResolver to JsonTemplateLayout. >>> • LOG4J2-3074: Add replacement parameter to >> ReadOnlyStringMapResolver. >>> • LOG4J2-3051: Add CaseConverterResolver to JsonTemplateLayout. >>> • LOG4J2-3064: Add Arbiters and SpringProfile plugin. >>> • LOG4J2-3056: Refactor MD5 usage for sharing sensitive >> information. Thanks to Marcono1234. >>> • LOG4J2-3004: Add plugin support to JsonTemplateLayout. >>> • LOG4J2-3050: Allow AdditionalFields to be ignored if their value >> is null or a zero-length String. >>> • LOG4J2-3049: Allow MapMessage and ThreadContext attributes to be >> prefixed. >>> • LOG4J2=3048: Add improved MapMessge support to GelfLayout. >>> • LOG4J2-3044: Add RepeatPatternConverter. >>> • LOG4J2-2940: Context selectors are aware of their dependence >> upon the callers ClassLoader, allowing basic context selectors to avoid the >> unnecessary overhead of walking the stack to determine the caller's >> ClassLoader. >>> • LOG4J2-2940: Add BasicAsyncLoggerContextSelector equivalent to >> AsyncLoggerContextSelector for applications with a single LoggerContext. >> This selector avoids classloader lookup overhead incurred by the existi
Re: [VOTE] Release Log4j 2.15.0-rc1
Gotcha. On Tue, Dec 7, 2021 at 3:27 PM Matt Sicker wrote: > Run maven using Java 8. The build doesn’t specify requirements on that, so > the default JDK is used, not a specific toolchain entry. > > Matt Sicker > > > On Dec 7, 2021, at 14:25, Gary Gregory wrote: > > > > Hi Matt: > > > > When I run 'mvn clean install' on Java 11 I get: > > > > [ERROR] Failed to execute goal > > org.apache.maven.plugins:maven-compiler-plugin:3.8.1:testCompile > > (default-testCompile) on project log4j-api: Compilation failure > > [ERROR] > > > /Users/garydgregory/temp/rc/logging-log4j2/log4j-api/src/test/java/org/apache/logging/log4j/util/StackLocatorUtilTest.java:[25,18] > > error: cannot find symbol > > [ERROR] symbol: class Reflection > > [ERROR] location: package sun.reflect > > > > How did you get Java 11 to work? > > > > Gary > > > >> On Tue, Dec 7, 2021 at 12:38 AM Matt Sicker wrote: > >> > >> +1 > >> > >> Signatures good, tests pass, etc. Environment (mixed toolchain depending > >> on which module is being tested): > >> > >> openjdk version "1.8.0_312" > >> OpenJDK Runtime Environment (Zulu 8.58.0.13-CA-macos-aarch64) (build > >> 1.8.0_312-b07) > >> OpenJDK 64-Bit Server VM (Zulu 8.58.0.13-CA-macos-aarch64) (build > >> 25.312-b07, mixed mode) > >> > >> openjdk version "11.0.12" 2021-07-20 > >> OpenJDK Runtime Environment Homebrew (build 11.0.12+0) > >> OpenJDK 64-Bit Server VM Homebrew (build 11.0.12+0, mixed mode) > >> > >> openjdk version "17.0.1" 2021-10-19 > >> OpenJDK Runtime Environment Homebrew (build 17.0.1+1) > >> OpenJDK 64-Bit Server VM Homebrew (build 17.0.1+1, mixed mode, sharing) > >> > >> Apache Maven 3.8.4 (9b656c72d54e5bacbed989b64718c159fe39b537) > >> > >> Notes: > >> * Some of the performance tests in log4j-core-its have flakes, but no > big > >> deal given the context of the test. > >> * Cassandra integration test doesn’t seem to work properly on ARM. > >> > >>> On Dec 6, 2021, at 22:12, Ralph Goers > >> wrote: > >>> > >>> This is a vote to release Log4j 2.15.0, the next version of the Log4j 2 > >> project. > >>> > >>> Please download, test, and cast your votes on the log4j developers > list. > >>> [] +1, release the artifacts > >>> [] -1, don't release because... > >>> > >>> The vote will remain open for 72 hours (or more if required). All votes > >> are welcome and we encourage everyone to test the release, but only > Logging > >> PMC votes are “officially” counted. As always, at least 3 +1 votes and > more > >> positive than negative votes are required. > >>> > >>> Changes in this release include: > >>> > >>> New Features > >>> > >>> • LOG4J2-3198: Pattern layout no longer enables lookups within > >> message text by default for cleaner API boundaries and reduced > formatting > >> overhead. The old 'log4j2.formatMsgNoLookups' which enabled this > behavior > >> has been removed as well as the 'nolookups' message pattern converter > >> option. The old behavior can be enabled on a per-pattern basis using > >> '%m{lookups}'. > >>> • LOG4J2-3194: Allow fractional attributes for size attribute of > >> SizeBsaedTriggeringPolicy. Thanks to markuss. > >>> • LOG4J2-2978: Add support for Jakarta EE 9 (Tomcat 10 / Jetty 11) > >> Thanks to Michael Seele. > >>> • LOG4J2-3189: Improve NameAbbreviator worst-case performance. > >>> • LOG4J2-3170: Make CRLF/HTML encoding run in O(n) worst-case > >> time, rather than O(n^2). Thanks to Gareth Smith. > >>> • LOG4J2-3133: Add missing slf4j-api singleton accessors to > >> log4j-slf4j-impl (1.7) StaticMarkerBinder and StaticMDCBinder. This > doesn't > >> impact behavior or correctness, but avoids throwing and catching > >> NoSuchMethodErrors when slf4j is initialized and avoids linkage linting > >> warnings. > >>> • LOG4J2-2885: Add support for US-style date patterns and > >> micro/nano seconds to FixedDateTime. Thanks to Markus Spann. > >>> • LOG4J2-3116: Add JsonTemplateLayout for Google Cloud Platform > >> structured logging layout. > >>> • LOG4J2-3067: Add CounterResolver to JsonTemplateLayout. > >>> • LOG4J2-3074: Add replacement parameter to > >> ReadOnlyStringMapResolver. > >>> • LOG4J2-3051: Add CaseConverterResolver to JsonTemplateLayout. > >>> • LOG4J2-3064: Add Arbiters and SpringProfile plugin. > >>> • LOG4J2-3056: Refactor MD5 usage for sharing sensitive > >> information. Thanks to Marcono1234. > >>> • LOG4J2-3004: Add plugin support to JsonTemplateLayout. > >>> • LOG4J2-3050: Allow AdditionalFields to be ignored if their value > >> is null or a zero-length String. > >>> • LOG4J2-3049: Allow MapMessage and ThreadContext attributes to be > >> prefixed. > >>> • LOG4J2=3048: Add improved MapMessge support to GelfLayout. > >>> • LOG4J2-3044: Add RepeatPatternConverter. > >>> • LOG4J2-2940: Context selectors are aware of their dependence > >> upon the callers ClassLoader, allowing basic context selectors to avoid > the > >> unnecessary overhead of walking
Re: [VOTE] Release Log4j 2.15.0-rc1
+1 Building - mvn clean install - mvn apache-rat:check - mvn revapi:check -pl log4j-api Apache Maven 3.8.4 (9b656c72d54e5bacbed989b64718c159fe39b537) Maven home: /usr/local/Cellar/maven/3.8.4/libexec Java version: 1.8.0_292, vendor: AdoptOpenJDK, runtime: /Library/Java/JavaVirtualMachines/adoptopenjdk-8.jdk/Contents/Home/jre Default locale: en_US, platform encoding: UTF-8 OS name: "mac os x", version: "10.16", arch: "x86_64", family: "mac" On Darwin *** 21.1.0 Darwin Kernel Version 21.1.0: Wed Oct 13 17:33:23 PDT 2021; root:xnu-8019.41.5~1/RELEASE_X86_64 x86_64 Gary On Mon, Dec 6, 2021 at 11:13 PM Ralph Goers wrote: > This is a vote to release Log4j 2.15.0, the next version of the Log4j 2 > project. > > Please download, test, and cast your votes on the log4j developers list. > [] +1, release the artifacts > [] -1, don't release because... > > The vote will remain open for 72 hours (or more if required). All votes > are welcome and we encourage everyone to test the release, but only Logging > PMC votes are “officially” counted. As always, at least 3 +1 votes and more > positive than negative votes are required. > > Changes in this release include: > > New Features > > • LOG4J2-3198: Pattern layout no longer enables lookups within > message text by default for cleaner API boundaries and reduced formatting > overhead. The old 'log4j2.formatMsgNoLookups' which enabled this behavior > has been removed as well as the 'nolookups' message pattern converter > option. The old behavior can be enabled on a per-pattern basis using > '%m{lookups}'. > • LOG4J2-3194: Allow fractional attributes for size attribute of > SizeBsaedTriggeringPolicy. Thanks to markuss. > • LOG4J2-2978: Add support for Jakarta EE 9 (Tomcat 10 / Jetty 11) > Thanks to Michael Seele. > • LOG4J2-3189: Improve NameAbbreviator worst-case performance. > • LOG4J2-3170: Make CRLF/HTML encoding run in O(n) worst-case > time, rather than O(n^2). Thanks to Gareth Smith. > • LOG4J2-3133: Add missing slf4j-api singleton accessors to > log4j-slf4j-impl (1.7) StaticMarkerBinder and StaticMDCBinder. This doesn't > impact behavior or correctness, but avoids throwing and catching > NoSuchMethodErrors when slf4j is initialized and avoids linkage linting > warnings. > • LOG4J2-2885: Add support for US-style date patterns and > micro/nano seconds to FixedDateTime. Thanks to Markus Spann. > • LOG4J2-3116: Add JsonTemplateLayout for Google Cloud Platform > structured logging layout. > • LOG4J2-3067: Add CounterResolver to JsonTemplateLayout. > • LOG4J2-3074: Add replacement parameter to > ReadOnlyStringMapResolver. > • LOG4J2-3051: Add CaseConverterResolver to JsonTemplateLayout. > • LOG4J2-3064: Add Arbiters and SpringProfile plugin. > • LOG4J2-3056: Refactor MD5 usage for sharing sensitive > information. Thanks to Marcono1234. > • LOG4J2-3004: Add plugin support to JsonTemplateLayout. > • LOG4J2-3050: Allow AdditionalFields to be ignored if their value > is null or a zero-length String. > • LOG4J2-3049: Allow MapMessage and ThreadContext attributes to be > prefixed. > • LOG4J2=3048: Add improved MapMessge support to GelfLayout. > • LOG4J2-3044: Add RepeatPatternConverter. > • LOG4J2-2940: Context selectors are aware of their dependence > upon the callers ClassLoader, allowing basic context selectors to avoid the > unnecessary overhead of walking the stack to determine the caller's > ClassLoader. > • LOG4J2-2940: Add BasicAsyncLoggerContextSelector equivalent to > AsyncLoggerContextSelector for applications with a single LoggerContext. > This selector avoids classloader lookup overhead incurred by the existing > AsyncLoggerContextSelector. > • LOG4J2-3041: Allow a PatternSelector to be specified on > GelfLayout. > • LOG4J2-3141: Avoid ThreadLocal overhead in > RandomAccessFileAppender, RollingRandomAccessFileManager, and > MemoryMappedFileManager due to the unused setEndOfBatch and isEndOfBatch > methods. The methods on LogEvent are preferred. > • LOG4J2-3144: Prefer string.getBytes(Charset) over > string.getBytes(String) based on performance improvements in modern Java > releases. > • LOG4J2-3171: Improve PatternLayout performance by reducing > unnecessary indirection and branching. > > Fixed Bugs > > • LOG4J2-3201: Limit the protocols JNDI can use by default. Limit > the servers and classes that can be accessed via LDAP. > • LOG4J2-3114: Enable immediate flush on RollingFileAppender when > buffered i/o is not enabled. Thanks to Barnabas Bodnar. > • LOG4J2-3168: Fix bug when file names contain regex characters. > Thanks to Benjamin Wöster. > • LOG4J2-3110: Fix the number of {}-placeholders in the string > literal argument does not match the number of other arguments to the > logging call. Thanks to Arturo Bernal. > • LOG4J2-3060:
changes.xml
Gary, Please review the manual changes for 2.15.0 on the staging web site. The last item is yours from upgrading a bunch of dependency versions. I spent a bunch of time yesterday trying to figure out how to make that pretty and finally gave up. It requires knowing now the changes plugin passes data to Doxia and what Doxia is going to do to render it. If you look at https://github.com/apache/maven-changes-plugin/blob/master/src/main/java/org/apache/maven/plugins/changes/ChangesReportGenerator.java in the constructAction methodyou will see that it calls sink.text() for the description. I can only guess it is using Doxia’s XHTML Sink which just appends the data to a StringBuffer. Interestingly, it doesn’t look to bad when the announcement goal is run, but that is only because the target is a Markdown file so it sort of looks ok, although Markdown seems to treat it as one large code block. Bottom line - Unless you can figure out how to get these to properly format entries like this will continue to be a mess in the future. I know we have had at least one like it in the past. Ralph
Re: [VOTE] Release Log4j 2.15.0-rc1
I built with Java 8 because that's the default JDK on this Windows 10 box. Based on https://logging.apache.org/log4j/2.x/build.html I understand why Java 9 is needed. Why are Java 7 and Java 11 JDKs required to build? It took a few minutes to find a JDK 7 installer. I had to add a new toolchain entry to the local toolchains-sample-win.xml for JDK 11. https://logging.apache.org/log4j/2.x/build.html references https://cwiki.apache.org/confluence/display/logging/Log4j2ReleaseGuide which doesn't exist. This warning caused apache-rat:check to fail so I deleted the file (.toDelete). It is not in the repo so it may be a left over from a test that didn't run correctly on Windows? "Files with unapproved licenses: C:/projects/log4j-2.15.0-rc1/log4j-cassandra/.toDelete" Once I fixed those couple things everything was fine: +1 Building - mvn clean install - mvn apache-rat:check - mvn revapi:check -pl log4j-api Apache Maven 3.8.4 (9b656c72d54e5bacbed989b64718c159fe39b537)Maven home: C:\projects\apache-maven-3.8.4Java version: 1.8.0_181, vendor: Oracle Corporation, runtime: C:\Program Files\Java\jdk1.8.0_181\jreDefault locale: en_US, platform encoding: Cp1252OS name: "windows 10", version: "10.0", arch: "amd64", family: "windows" On Tuesday, December 7, 2021, 03:36:47 PM EST, Gary Gregory wrote: +1 Building - mvn clean install - mvn apache-rat:check - mvn revapi:check -pl log4j-api Apache Maven 3.8.4 (9b656c72d54e5bacbed989b64718c159fe39b537) Maven home: /usr/local/Cellar/maven/3.8.4/libexec Java version: 1.8.0_292, vendor: AdoptOpenJDK, runtime: /Library/Java/JavaVirtualMachines/adoptopenjdk-8.jdk/Contents/Home/jre Default locale: en_US, platform encoding: UTF-8 OS name: "mac os x", version: "10.16", arch: "x86_64", family: "mac" On Darwin *** 21.1.0 Darwin Kernel Version 21.1.0: Wed Oct 13 17:33:23 PDT 2021; root:xnu-8019.41.5~1/RELEASE_X86_64 x86_64 Gary On Mon, Dec 6, 2021 at 11:13 PM Ralph Goers wrote: > This is a vote to release Log4j 2.15.0, the next version of the Log4j 2 > project. > > Please download, test, and cast your votes on the log4j developers list. > [] +1, release the artifacts > [] -1, don't release because... > > The vote will remain open for 72 hours (or more if required). All votes > are welcome and we encourage everyone to test the release, but only Logging > PMC votes are “officially” counted. As always, at least 3 +1 votes and more > positive than negative votes are required. > > Changes in this release include: > > New Features > > • LOG4J2-3198: Pattern layout no longer enables lookups within > message text by default for cleaner API boundaries and reduced formatting > overhead. The old 'log4j2.formatMsgNoLookups' which enabled this behavior > has been removed as well as the 'nolookups' message pattern converter > option. The old behavior can be enabled on a per-pattern basis using > '%m{lookups}'. > • LOG4J2-3194: Allow fractional attributes for size attribute of > SizeBsaedTriggeringPolicy. Thanks to markuss. > • LOG4J2-2978: Add support for Jakarta EE 9 (Tomcat 10 / Jetty 11) > Thanks to Michael Seele. > • LOG4J2-3189: Improve NameAbbreviator worst-case performance. > • LOG4J2-3170: Make CRLF/HTML encoding run in O(n) worst-case > time, rather than O(n^2). Thanks to Gareth Smith. > • LOG4J2-3133: Add missing slf4j-api singleton accessors to > log4j-slf4j-impl (1.7) StaticMarkerBinder and StaticMDCBinder. This doesn't > impact behavior or correctness, but avoids throwing and catching > NoSuchMethodErrors when slf4j is initialized and avoids linkage linting > warnings. > • LOG4J2-2885: Add support for US-style date patterns and > micro/nano seconds to FixedDateTime. Thanks to Markus Spann. > • LOG4J2-3116: Add JsonTemplateLayout for Google Cloud Platform > structured logging layout. > • LOG4J2-3067: Add CounterResolver to JsonTemplateLayout. > • LOG4J2-3074: Add replacement parameter to > ReadOnlyStringMapResolver. > • LOG4J2-3051: Add CaseConverterResolver to JsonTemplateLayout. > • LOG4J2-3064: Add Arbiters and SpringProfile plugin. > • LOG4J2-3056: Refactor MD5 usage for sharing sensitive > information. Thanks to Marcono1234. > • LOG4J2-3004: Add plugin support to JsonTemplateLayout. > • LOG4J2-3050: Allow AdditionalFields to be ignored if their value > is null or a zero-length String. > • LOG4J2-3049: Allow MapMessage and ThreadContext attributes to be > prefixed. > • LOG4J2=3048: Add improved MapMessge support to GelfLayout. > • LOG4J2-3044: Add RepeatPatternConverter. > • LOG4J2-2940: Context selectors are aware of their dependence > upon the callers ClassLoader, allowing basic context selectors to avoid the > unnecessary overhead of walking the stack to determine the caller's > ClassLoader. > • LOG4J2-2940: Add BasicAsyncLoggerContextSelector equivalent to > AsyncLoggerContextSelector for applications with a
Re: [VOTE] Release Log4j 2.15.0-rc1
Java 7 was only used in older releases. Java 9 can be replaced with 11 as there’s a module that requires 11. Matt Sicker > On Dec 7, 2021, at 16:49, Ron Grabowski > wrote: > > I built with Java 8 because that's the default JDK on this Windows 10 box. > Based on https://logging.apache.org/log4j/2.x/build.html I understand why > Java 9 is needed. Why are Java 7 and Java 11 JDKs required to build? It took > a few minutes to find a JDK 7 installer. I had to add a new toolchain entry > to the local toolchains-sample-win.xml for JDK 11. > https://logging.apache.org/log4j/2.x/build.html references > https://cwiki.apache.org/confluence/display/logging/Log4j2ReleaseGuide which > doesn't exist. > This warning caused apache-rat:check to fail so I deleted the file > (.toDelete). It is not in the repo so it may be a left over from a test that > didn't run correctly on Windows? > "Files with unapproved licenses: > C:/projects/log4j-2.15.0-rc1/log4j-cassandra/.toDelete" > Once I fixed those couple things everything was fine: > +1 > > Building > - mvn clean install > - mvn apache-rat:check > - mvn revapi:check -pl log4j-api > Apache Maven 3.8.4 (9b656c72d54e5bacbed989b64718c159fe39b537)Maven home: > C:\projects\apache-maven-3.8.4Java version: 1.8.0_181, vendor: Oracle > Corporation, runtime: C:\Program Files\Java\jdk1.8.0_181\jreDefault locale: > en_US, platform encoding: Cp1252OS name: "windows 10", version: "10.0", arch: > "amd64", family: "windows" >On Tuesday, December 7, 2021, 03:36:47 PM EST, Gary Gregory > wrote: > > +1 > > Building > - mvn clean install > - mvn apache-rat:check > - mvn revapi:check -pl log4j-api > > Apache Maven 3.8.4 (9b656c72d54e5bacbed989b64718c159fe39b537) > Maven home: /usr/local/Cellar/maven/3.8.4/libexec > Java version: 1.8.0_292, vendor: AdoptOpenJDK, runtime: > /Library/Java/JavaVirtualMachines/adoptopenjdk-8.jdk/Contents/Home/jre > Default locale: en_US, platform encoding: UTF-8 > OS name: "mac os x", version: "10.16", arch: "x86_64", family: "mac" > > On > > Darwin *** 21.1.0 Darwin Kernel Version 21.1.0: Wed Oct 13 17:33:23 PDT > 2021; root:xnu-8019.41.5~1/RELEASE_X86_64 x86_64 > > Gary > > >> On Mon, Dec 6, 2021 at 11:13 PM Ralph Goers >> wrote: >> >> This is a vote to release Log4j 2.15.0, the next version of the Log4j 2 >> project. >> >> Please download, test, and cast your votes on the log4j developers list. >> [] +1, release the artifacts >> [] -1, don't release because... >> >> The vote will remain open for 72 hours (or more if required). All votes >> are welcome and we encourage everyone to test the release, but only Logging >> PMC votes are “officially” counted. As always, at least 3 +1 votes and more >> positive than negative votes are required. >> >> Changes in this release include: >> >> New Features >> >> • LOG4J2-3198: Pattern layout no longer enables lookups within >> message text by default for cleaner API boundaries and reduced formatting >> overhead. The old 'log4j2.formatMsgNoLookups' which enabled this behavior >> has been removed as well as the 'nolookups' message pattern converter >> option. The old behavior can be enabled on a per-pattern basis using >> '%m{lookups}'. >> • LOG4J2-3194: Allow fractional attributes for size attribute of >> SizeBsaedTriggeringPolicy. Thanks to markuss. >> • LOG4J2-2978: Add support for Jakarta EE 9 (Tomcat 10 / Jetty 11) >> Thanks to Michael Seele. >> • LOG4J2-3189: Improve NameAbbreviator worst-case performance. >> • LOG4J2-3170: Make CRLF/HTML encoding run in O(n) worst-case >> time, rather than O(n^2). Thanks to Gareth Smith. >> • LOG4J2-3133: Add missing slf4j-api singleton accessors to >> log4j-slf4j-impl (1.7) StaticMarkerBinder and StaticMDCBinder. This doesn't >> impact behavior or correctness, but avoids throwing and catching >> NoSuchMethodErrors when slf4j is initialized and avoids linkage linting >> warnings. >> • LOG4J2-2885: Add support for US-style date patterns and >> micro/nano seconds to FixedDateTime. Thanks to Markus Spann. >> • LOG4J2-3116: Add JsonTemplateLayout for Google Cloud Platform >> structured logging layout. >> • LOG4J2-3067: Add CounterResolver to JsonTemplateLayout. >> • LOG4J2-3074: Add replacement parameter to >> ReadOnlyStringMapResolver. >> • LOG4J2-3051: Add CaseConverterResolver to JsonTemplateLayout. >> • LOG4J2-3064: Add Arbiters and SpringProfile plugin. >> • LOG4J2-3056: Refactor MD5 usage for sharing sensitive >> information. Thanks to Marcono1234. >> • LOG4J2-3004: Add plugin support to JsonTemplateLayout. >> • LOG4J2-3050: Allow AdditionalFields to be ignored if their value >> is null or a zero-length String. >> • LOG4J2-3049: Allow MapMessage and ThreadContext attributes to be >> prefixed. >> • LOG4J2=3048: Add improved MapMessge support to GelfLayout. >> • LOG4J2-3044: Add RepeatPatternConverter.
[Discuss] [VOTE] Release Log4j 2.15.0-rc1
Java 7 is no longer required. Most of the build requires Java 8. The modules with java9 in their names require and version from Java 9 up. For some reason log4j-perf says it requires Java 11. I have no idea why. Ralph > On Dec 7, 2021, at 3:48 PM, Ron Grabowski > wrote: > > I built with Java 8 because that's the default JDK on this Windows 10 box. > Based on https://logging.apache.org/log4j/2.x/build.html I understand why > Java 9 is needed. Why are Java 7 and Java 11 JDKs required to build? It took > a few minutes to find a JDK 7 installer. I had to add a new toolchain entry > to the local toolchains-sample-win.xml for JDK 11. > https://logging.apache.org/log4j/2.x/build.html references > https://cwiki.apache.org/confluence/display/logging/Log4j2ReleaseGuide which > doesn't exist. > This warning caused apache-rat:check to fail so I deleted the file > (.toDelete). It is not in the repo so it may be a left over from a test that > didn't run correctly on Windows? > "Files with unapproved licenses: > C:/projects/log4j-2.15.0-rc1/log4j-cassandra/.toDelete" > Once I fixed those couple things everything was fine: > +1 > > Building > - mvn clean install > - mvn apache-rat:check > - mvn revapi:check -pl log4j-api > Apache Maven 3.8.4 (9b656c72d54e5bacbed989b64718c159fe39b537)Maven home: > C:\projects\apache-maven-3.8.4Java version: 1.8.0_181, vendor: Oracle > Corporation, runtime: C:\Program Files\Java\jdk1.8.0_181\jreDefault locale: > en_US, platform encoding: Cp1252OS name: "windows 10", version: "10.0", arch: > "amd64", family: "windows" >On Tuesday, December 7, 2021, 03:36:47 PM EST, Gary Gregory > wrote: > > +1 > > Building > - mvn clean install > - mvn apache-rat:check > - mvn revapi:check -pl log4j-api > > Apache Maven 3.8.4 (9b656c72d54e5bacbed989b64718c159fe39b537) > Maven home: /usr/local/Cellar/maven/3.8.4/libexec > Java version: 1.8.0_292, vendor: AdoptOpenJDK, runtime: > /Library/Java/JavaVirtualMachines/adoptopenjdk-8.jdk/Contents/Home/jre > Default locale: en_US, platform encoding: UTF-8 > OS name: "mac os x", version: "10.16", arch: "x86_64", family: "mac" > > On > > Darwin *** 21.1.0 Darwin Kernel Version 21.1.0: Wed Oct 13 17:33:23 PDT > 2021; root:xnu-8019.41.5~1/RELEASE_X86_64 x86_64 > > Gary > > > On Mon, Dec 6, 2021 at 11:13 PM Ralph Goers > wrote: > >> This is a vote to release Log4j 2.15.0, the next version of the Log4j 2 >> project. >> >> Please download, test, and cast your votes on the log4j developers list. >> [] +1, release the artifacts >> [] -1, don't release because... >> >> The vote will remain open for 72 hours (or more if required). All votes >> are welcome and we encourage everyone to test the release, but only Logging >> PMC votes are “officially” counted. As always, at least 3 +1 votes and more >> positive than negative votes are required. >> >> Changes in this release include: >> >> New Features >> >> • LOG4J2-3198: Pattern layout no longer enables lookups within >> message text by default for cleaner API boundaries and reduced formatting >> overhead. The old 'log4j2.formatMsgNoLookups' which enabled this behavior >> has been removed as well as the 'nolookups' message pattern converter >> option. The old behavior can be enabled on a per-pattern basis using >> '%m{lookups}'. >> • LOG4J2-3194: Allow fractional attributes for size attribute of >> SizeBsaedTriggeringPolicy. Thanks to markuss. >> • LOG4J2-2978: Add support for Jakarta EE 9 (Tomcat 10 / Jetty 11) >> Thanks to Michael Seele. >> • LOG4J2-3189: Improve NameAbbreviator worst-case performance. >> • LOG4J2-3170: Make CRLF/HTML encoding run in O(n) worst-case >> time, rather than O(n^2). Thanks to Gareth Smith. >> • LOG4J2-3133: Add missing slf4j-api singleton accessors to >> log4j-slf4j-impl (1.7) StaticMarkerBinder and StaticMDCBinder. This doesn't >> impact behavior or correctness, but avoids throwing and catching >> NoSuchMethodErrors when slf4j is initialized and avoids linkage linting >> warnings. >> • LOG4J2-2885: Add support for US-style date patterns and >> micro/nano seconds to FixedDateTime. Thanks to Markus Spann. >> • LOG4J2-3116: Add JsonTemplateLayout for Google Cloud Platform >> structured logging layout. >> • LOG4J2-3067: Add CounterResolver to JsonTemplateLayout. >> • LOG4J2-3074: Add replacement parameter to >> ReadOnlyStringMapResolver. >> • LOG4J2-3051: Add CaseConverterResolver to JsonTemplateLayout. >> • LOG4J2-3064: Add Arbiters and SpringProfile plugin. >> • LOG4J2-3056: Refactor MD5 usage for sharing sensitive >> information. Thanks to Marcono1234. >> • LOG4J2-3004: Add plugin support to JsonTemplateLayout. >> • LOG4J2-3050: Allow AdditionalFields to be ignored if their value >> is null or a zero-length String. >> • LOG4J2-3049: Allow MapMessage and ThreadContext attributes to be >> prefixed. >> • LOG4J2=3048: Add i