+1 Site looks good, tests all pass, artifacts look good.
Potential issue:
RAT warns that src/ide/eclipse/4.3.2/organize-imports.importorder
does not have a license.
I could be wrong, but I don't think this is a showstopper. This file
is not in any of our binary distribution artifacts (although it is in
the -src artifact).
This seems similar to the warning for the two js files, and we agreed
with previous releases that these are not a problem:
src/site/resources/js/jquery.js
src/site/resources/js/jquery.min.js
Also, the log4j-perf module is excluded from the binary distribution
as discussed on the ML, but the apache-log4j-2.0-rc2-src artifact
contains the source files for the log4j-perf module. Just to clarify:
this is intentionally, and not a problem, right?
I noticed several other minor things, none of them showstoppers, just
making a note here so they can be fixed in an upcoming release:
Artifacts:
Looks like only the JUnit tests for the log4j-core module are in the
apache-log4j-2.0-rc2-bin artifact.
None of the other modules have a <module>-tests.jar file...
Not a showstopper AFAIC, but worth looking into.
StyleGuide page:
Says that block indentation should be +2 spaces, but we're using +4
spaces.
Says to indent continuation lines with at least +4 spaces, we're
using +8 spaces.
Has several links to "Column limit:120)" with a closing bracket ')'
but no opening bracket.
JMX page:
Description for starting JMX Client GUI is missing log4j-api-2.0.jar
in classpath.
(last 2 command line examples at the bottom of the page)
Extending Log4j Configuration:
Spelling mistake:
"Programattically Adding ..." -> Programatically
Components side-nav: not all modules have all 6 Component Reports
(Should have Rat Report, Checkstyle, JavaDocs, Source Xref, PMD, CPD)
* Commons Logging Bridge: missing PMD, CPD
* Log4j 1.2 API: missing CPD
* SLF4J Binding: missing CPD
* Log4j2 to SLF4J Adapter: missing PMD, CPD
* Tag Lib: missing PMD, CPD
* JMX GUI: missing CPD
* Web Applications: missing Checkstyle, JavaDocs, Source Xref, PMD,
CPD
* Web Applications has unnecessary "JIRA Report" link
* NoSQL Support/About: text now says: "Need something about
CouchDB/MongoDB"...
* NoSQL Support: missing Checkstyle, JavaDocs, Source Xref, PMD, CPD
* NoSQL Support has unnecessary "JIRA Report" link
Many Checkstyle warnings/errors for all modules.
No showstoppers that I can see.
Issue Tracking: first link on that page should be to the Log4J issue
tracker,
not to the Atlassian Jira product page.
On Sun, Jun 22, 2014 at 9:19 AM, Ralph Goers
<[email protected]> wrote:
This is a vote to release Log4j 2.0-rc2, which will hopefully be the
last release candidate.
Please note that I did not add the new logo to the web site. I will
add that after the release.
Please test and cast your votes.
[] +1, release the artifacts
[] -1, don't release becauseā¦
The vote will remain open for 72 hours (or more if required).
New features:
o LOG4J2-675: RollingFile and RollingRandomAccessFile now write the
layout footer before rollover.
o LOG4J2-674: Made RollingFileAppender buffer size configurable.
o LOG4J2-42: Create an appender to route log events to the
ServletContext log.
o LOG4J2-655: Add Vagrantfile for testing in GNU+Linux.
o LOG4J2-654: Add log4j-perf module to provide a home for all log4j
performance tests.
Add support for JMH microbenchmark performance tests.
o LOG4J2-652: Add support for default plugin values and attributes.
o LOG4J2-598: Add support for types other than String for plugin
factory values/attributes.
o LOG4J2-644: Implement a SecureSocketAppender and secure server
(SSL/TLS).
o LOG4J2-629: Document the system properties used in Log4J 2.
o LOG4J2-595: Introduce Java annotation processor as alternative
plugin pre-caching mechanism. This is available in the
log4j-plugin-processor module.
o LOG4J2-576: Add org.apache.logging.log4j.Logger.getLevel().
o LOG4J2-439: Add EncodingPatternConverter to escape newlines and
HTML special characters. Thanks to Bruce Brouwer.
o LOG4J2-427: Add support for configuration via YAML. Thanks to
Alexander Reelsen.
Fixed Bugs:
o LOG4J2-581: RollingRandomAccessFile now writes the layout header
after rollover. Thanks to Alexander Khokhlov.
o LOG4J2-622: RollingFileManager now correctly honours the
bufferedIO configuration after rollover. Thanks to Farooq Khan.
o LOG4J2-141: Improved documentation regarding log4j status logger.
Thanks to Joern Huxhorn.
o LOG4J2-539: Fixed issue with "Reconfigure using XML below"
function in JMX Client GUI.
ConfigurationSource is now a top-level class and can be obtained
with Configuration.getConfigurationSource().
LoggerContext.getConfiguration().getConfigurationSource()
provides a reliable public method for obtaining a logger
context's configuration location and content. Thanks to Colin
Froggatt.
o LOG4J2-619: Invalid XML configuration files do not prevent the
config file from being checked again. Thanks to Scott Harrington.
o LOG4J2-637: JMX: Updating a Logger's level via jConsole now
correctly takes effect. Thanks to Mansoor Sajjad, Jon Wilmoth.
o LOG4J2-668: Correctly process log events when combining
AsyncLoggers with AsyncAppender.
o LOG4J2-669: Prevent NPE when combining AsyncLoggers with
AsyncLoggerConfigs.
o LOG4J2-563: FlumeAvroManager now always uses a client type of
default_failover. Thanks to Michael Friedmann.
o LOG4J2-535: Reset rollover time when size rollover is triggered.
o LOG4J2-664: Moved plugin cache file to META-INF for OSGi
compatibility.
o LOG4J2-640: Fix NPE that can be caused by a null
ThreadContextClassLoader.
o LOG4J2-651: Log4j 2 throws ArrayIndexOutOfBoundsException.
o LOG4J2-620: Perform reconfiguration in a separate thread to
prevent deadlocks.
o LOG4J2-639: Prevent NPE in AsyncLogger and AsyncLoggerConfig if
logger is used after log4j has been shut down. Thanks to Mck
SembWever.
o LOG4J2-469: FailoverAppender was not resetting its status after
the primary appender recovered.
o LOG4J2-623: Generate MDC properties as a JSON map in JSONLayout.
o LOG4J2-520: Resolved issue where AsyncAppender dropped events if
queue still contained
events when application is stopped. Thanks to JavaTech, Andre
Bogus.
o LOG4J2-392: Resolved a problem with the previous solution for
LOG4J2-392 that resulted in dropped events
when using AsyncLoggerConfig with slow appenders when
application is stopped. Thanks to Andre Bogus.
o LOG4J2-613: The OSGi version of log4j-web imports Servlet 2.5 at
minimum instead of 3.0.
o LOG4J2-602: Unit tests are now less verbose during the build
process.
o LOG4J2-570: Fix shutdown thread memory leak in servlet containers.
o LOG4J2-542: Make Throwable transient in ThrowableProxy.
o LOG4J2-440: During shutdown, a NullPointerException could be
thrown due to the NullConfiguration class no longer being
available to the ClassLoader.
o LOG4J2-346: Cyclic dependency with log4j-slf4j-impl in OSGi.
o LOG4J2-345: The log4j-1.2-api module didn't export any packages to
OSGi.
o LOG4J2-605: Password data from the NoSQL plugins no longer shows
up in cleartext in debug logging.
o LOG4J2-448: A StringIndexOutOfBounds exception could occur during
property substitution. Thanks to X86core.
o LOG4J2-597: StatusLogger was not skipping multiple instances of
the FQCN class, causing messages from classes in
the Verbose list to be printed.
o LOG4J2-564: Renamed SLF4J logger class to Log4jLogger.
o LOG4J2-579: Rework Level comparison APIs.
o LOG4J2-560: SyslogAppenderTest and RFC5424LayoutTest were failing
in Java 8.
o LOG4J2-499: Add equals and hashcode to Log4jLogEvent.
o LOG4J2-378: Add DateLookup and ThreadContextLookup to default
lookups.
Changes:
o LOG4J2-419: Support default value for missing key in look ups with
fallbacking to looking in the properties map. Thanks to Woonsan Ko.
o LOG4J2-554: Allow configuration files to be located as Servlet
Context resources.
o LOG4J2-250: Refactor Log4jLogEvent to lazily create
ThrowableProxy.
o LOG4J2-647: Upgrade to Flume 1.5.0.
o LOG4J2-646: Merge the TLS Syslog appender into the Syslog
appender.
o LOG4J2-641: Override commons-logging dependency version in tests.
o LOG4J2-566: Made RollingRandomAccessFileAppender buffer size
configurable. Thanks to Luigi Alice.
o LOG4J2-628: Use Clock to generate all log event timestamps, not
just for Async Loggers.
o LOG4J2-617: Update SLF4J to 1.7.7.
o LOG4J2-616: Update Jackson to 2.3.3.
o LOG4J2-585: Add support for multiple parents to Markers. Thanks to
Bruce Brouwer.
o LOG4J2-574: Make Blocking the default WaitStrategy for Async
Loggers.
o LOG4J2-555: Introduce ExtendedLogger interface to facilitate
implementing and extending Loggers. Thanks to Bruce Brouwer.
o LOG4J2-561: Allow spaces around commas in Configuration's package
attribute. Thanks to vibin.
o LOG4J2-547: Have Logger API expose a PrintWriter instead of custom
LoggerStream. Thanks to Bruce Brouwer.
o LOG4J2-496: Allow header and footer to be specified as lookup
patterns in PatternLayout.
o LOG4J2-410: SLf4JLogger is now Serializable. Thanks to Ivlin Zeng.
o LOG4J2-468: Add support to add a LoggerConfig. Document two ways
to modify the configuration.
o LOG4J2-582: Rename org.apache.logging.log4j.core.net.SocketServer
to TCPSocketServer and refactor with UDP.
o LOG4J2-592: Update Jackson to 2.3.2 from 2.2.2.
Tag:
https://svn.apache.org/repos/asf/logging/log4j/log4j2/tags/log4j-2.0-rc2/
SVN revision: 1604493
Web Site: http://people.apache.org/~rgoers/log4j2/
Artifacts:
https://repository.apache.org/content/repositories/orgapachelogging-1003
Nexus did not send an email. The list of artifacts can be found at
the link above.