FYI, probably not important, but noticed that this was removed: org.apache.logging.log4j.core.util.Constant.LINE_SEPARATOR. For some reason we used it in one of custom plugins (probably copied from log4j2 existing classes as a starting point). So it threw class not found exception in 2.7. It was easy to fix since plugin is under our control.
On 2016-09-27 23:10 (-0400), Gary Gregory <garydgreg...@gmail.com> wrote: > I'm going to go to +1 since the software can be built soup to nuts with 'mvn > clean install'. > > Gary > > On Mon, Sep 26, 2016 at 11:06 PM, Ralph Goers <ralph.go...@dslextreme.com> > wrote: > > > Matt, note that it didnât fail when Gary ran mvn clean install. If you > > run mvn install -DskipTests followed by mvn test it fails. This tells me > > there is something funny going on in the tests that requires the tests to > > be run as part of the full lifecycle. > > > > Ralph > > > > On Sep 26, 2016, at 9:51 PM, Matt Sicker <boa...@gmail.com> wrote: > > > > That OSGi test failure could be related to the fix for LOG4J2-351, though > > I'm surprised it hasn't caused a test failure until now. > > > > On 26 September 2016 at 23:42, Ralph Goers <ralph.go...@dslextreme.com> > > wrote: > > > >> When I looked at it the Log4j1Configuration stuff said it was > >> experimental so if it has issues I donât think it matters. > >> > >> Believe it or not I have never run mvn test all by itself. I pretty much > >> only do mvn clean install. So I have no idea if this is new or has always > >> been this way. > >> > >> Ralph > >> > >> On Sep 26, 2016, at 9:15 PM, Gary Gregory <garydgreg...@gmail.com> wrote: > >> > >> Based in the src distribution: MD5, SHA1, ASC OK. > >> > >> mvn clean install OK. > >> > >> BUT I had to hack the tset org.apache.log4j.config.Log4j1 > >> ConfigurationFactoryTest.testSystemProperties2() and add a > >> "appender.stop(10, TimeUnit.SECONDS);" to get the test to pass; this is > >> pushed to Git master. > >> > >> RAT check OK. > >> > >> mvn clirr:check -pl log4j-api OK > >> > >> mvn clirr:check -pl log4j-1.2-api FAILS due to changes > >> in org.apache.log4j.config.Log4j1ConfigurationFactory which is OK by me. > >> > >> Then I ran: > >> > >> mvn install -DskipTests OK > >> mvn package -DskipTests OK > >> > >> and: > >> > >> mvn test > >> > >> gives me: > >> -- > >> Tests run: 3, Failures: 0, Errors: 2, Skipped: 0, Time elapsed: 1.753 sec > >> <<< FAILURE! - in org.apache.logging.log4j.osgi. > >> felix.FelixLoadApiBundleTest > >> testMissingImportOfCoreOsgiPackage(org.apache.logging.log4j. > >> osgi.felix.FelixLoadApiBundleTest) Time elapsed: 1.389 sec <<< ERROR! > >> org.osgi.framework.BundleException: Activator start error in bundle > >> org.apache.logging.log4j.core [2]. > >> Caused by: java.lang.NoClassDefFoundError: org/apache/logging/log4j/Logge > >> r > >> Caused by: java.lang.ClassNotFoundException: > >> org.apache.logging.log4j.Logger not found by > >> org.apache.logging.log4j.core [2] > >> > >> testSimpleLogInAnOsgiContext(org.apache.logging.log4j.osgi.felix.FelixLoadApiBundleTest) > >> Time elapsed: 0.172 sec <<< ERROR! > >> org.osgi.framework.BundleException: Activator start error in bundle > >> org.apache.logging.log4j.core [2]. > >> Caused by: java.lang.NoClassDefFoundError: org/apache/logging/log4j/Logge > >> r > >> Caused by: java.lang.ClassNotFoundException: > >> org.apache.logging.log4j.Logger not found by > >> org.apache.logging.log4j.core [2] > >> > >> Tests run: 3, Failures: 0, Errors: 2, Skipped: 0, Time elapsed: 2.309 sec > >> <<< FAILURE! - in org.apache.logging.log4j.osgi. > >> equinox.EquinoxLoadApiBundleTest > >> testMissingImportOfCoreOsgiPackage(org.apache.logging.log4j. > >> osgi.equinox.EquinoxLoadApiBundleTest) Time elapsed: 1.371 sec <<< > >> ERROR! > >> org.osgi.framework.BundleException: The activator > >> org.apache.logging.log4j.core.osgi.Activator for bundle > >> org.apache.logging.log4j.core is invalid > >> Caused by: java.lang.NoClassDefFoundError: org/apache/logging/log4j/Logge > >> r > >> Caused by: java.lang.ClassNotFoundException: > >> org.apache.logging.log4j.Logger > >> > >> testSimpleLogInAnOsgiContext(org.apache.logging.log4j.osgi.e > >> quinox.EquinoxLoadApiBundleTest) Time elapsed: 0.293 sec <<< ERROR! > >> org.osgi.framework.BundleException: The activator > >> org.apache.logging.log4j.core.osgi.Activator for bundle > >> org.apache.logging.log4j.core is invalid > >> Caused by: java.lang.NoClassDefFoundError: org/apache/logging/log4j/Logge > >> r > >> Caused by: java.lang.ClassNotFoundException: > >> org.apache.logging.log4j.Logger > >> > >> > >> Results : > >> > >> Tests in error: > >> > >> EquinoxLoadApiBundleTest>AbstractLoadBundleTest.testMissingImportOfCoreOsgiPackage:174 > >> â Bundle > >> > >> EquinoxLoadApiBundleTest>AbstractLoadBundleTest.testSimpleLogInAnOsgiContext:131 > >> â Bundle > >> > >> FelixLoadApiBundleTest>AbstractLoadBundleTest.testMissingImportOfCoreOsgiPackage:174 > >> â Bundle > >> > >> FelixLoadApiBundleTest>AbstractLoadBundleTest.testSimpleLogInAnOsgiContext:131 > >> â Bundle > >> > >> Tests run: 508, Failures: 0, Errors: 4, Skipped: 3 > >> -- > >> > >> Any ideas on getting the OSGi tests to pass? > >> > >> Gary > >> > >> On Mon, Sep 26, 2016 at 8:50 AM, Ralph Goers <ralph.go...@dslextreme.com> > >> wrote: > >> > >>> This is a vote to release Log4j 2.6.2, 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 version include: > >>> > >>> New features: > >>> o LOG4J2-1578: RoutingAppender can be configured with scripts. Add > >>> Script in a Routes element. > >>> o LOG4J2-1597: Add a ScriptAppenderSelector to create an Appender > >>> specified by a Script. > >>> o LOG4J2-1349: (GC) Added support for garbage-free ThreadContext map. > >>> Disabled by default, users need to enable this explicitly. > >>> o LOG4J2-1447: (GC) Changed LogEvent's internal data structure for > >>> context data to be garbage-free. Added method LogEvent#getContextData(), > >>> deprecated method #getContextMap(). > >>> o LOG4J2-1010: Users can now inject context data from other sources than > >>> ThreadContext. Values can be any Object, not just Strings. Thanks to > >>> Mikael StÃ¥ldal. > >>> o LOG4J2-1568: Added support for > >>> java.util.concurrent.LinkedTransferQueue to AsyncAppender. > >>> o LOG4J2-1430: Added optional support for Conversant > >>> DisruptorBlockingQueue in AsyncAppender. Thanks to John Cairns. > >>> o LOG4J2-1439: Added optional support for JCTools MPSC bounded lock-free > >>> queue in AsyncAppender. Thanks to Anthony Maire. > >>> o LOG4J2-1558: SocketAppender now supports IO buffering. > >>> o LOG4J2-1557: Add a Builder for the SocketAppender (deprecates factory > >>> method). > >>> o LOG4J2-1609: Add a Builder to ServletAppender and deprecate factory > >>> method. > >>> o LOG4J2-1553: AbstractManager now implements AutoCloseable. > >>> o LOG4J2-1528: Added ability to generate Log4j 2-style XML configuration > >>> file from ConfigurationBuilder. > >>> o LOG4J2-1181: Added Logging API for Scala 2.10 and 2.11. > >>> o LOG4J2-1512: Added options to exclude stack trace from JSON, XML and > >>> YAML layouts. > >>> o LOG4J2-1539: Added Core API Configurator.shutdown(LoggerContext, long, > >>> TimeUnit). > >>> o LOG4J2-1501: FileAppender is now able to create files on-demand. > >>> o LOG4J2-1504: RollingFileAppender is now able to create files on-demand. > >>> o LOG4J2-1471: [PatternLayout] Add an ANSI option to %xThrowable. > >>> o LOG4J2-1472: org.apache.logging.log4j.core.LoggerContext now > >>> implements Closeable. > >>> o LOG4J2-1458: [PatternLayout] Add an ANSI option to %message. > >>> o LOG4J2-1505: Create a Builder for the FileAppender plugin to > >>> facilitate adding attributes in the future. > >>> o LOG4J2-1507: Allow Builders to be completely generic. > >>> o LOG4J2-1508: Allow a Builder to subclass another Builder. > >>> o LOG4J2-1516: Add ThreadContextMap2 interface supporting method > >>> putAll(Map<String, String>). Thanks to Gary Gregory. > >>> o LOG4J2-1519: Add ThreadContext.putAll(Map<String, String>). > >>> o LOG4J2-1520: Add JUnit Rule implementations to manage the thread > >>> context. > >>> o LOG4J2-1547: The Core AbstractConfiguration now tracks its > >>> LoggerContext and add Configuration.getLoggerContext(). > >>> o LOG4J2-1540: The Core AbstractManager now tracks its LoggerContext. > >>> o LOG4J2-1577: Add a Builder to the RoutingAppender and deprecate > >>> factory method. > >>> > >>> Fixed Bugs: > >>> o LOG4J2-1611: Improved performance of context data injector for web > >>> applications to be on par with standalone applications. > >>> o LOG4J2-1591: Introduced new interface LifeCycle2 with > >>> stop(long,TimeUnit) method to avoid breaking backwards compatibility with > >>> new Configurator.shutdown(LoggerContext, long, TimeUnit) API. > >>> o LOG4J2-1590: Fixed issue with filters extending AbstractFilter that > >>> did not override methods with unrolled varargs. > >>> o LOG4J2-1583: Fixed scrambled log messages triggered by nested logging > >>> from toString() method of a logging parameter object. Thanks to Larry > >>> West. > >>> o LOG4J2-1259: Log4j threads are no longer leaking on Tomcat shutdown. > >>> Thanks to Misagh Moayyed, Steffen Offermann. > >>> o LOG4J2-1051: When starting on Google App Engine, Interpolator now > >>> suppresses the NoClassDefFoundError stack trace for the jvmrunargs > >>> lookup. Thanks to Lukasz Lenart. > >>> o LOG4J2-1582: When initializing on platforms where JMX is not > >>> available, Interpolator component no longer prints stack trace for > >>> warning messages. > >>> o LOG4J2-1581: Unregistering JMX components no longer prints a stack > >>> trace when the MBean has already been unregistered. > >>> o LOG4J2-1313: Support Property values to be specified in configuration > >>> as a value attribute as well as an element. Thanks to Philipp Knobel, > >>> Leon Finker. > >>> o LOG4J2-1575: (GC) LoggerConfig now stores configuration properties in > >>> a List, not a Map to prevent creating temporary Iterator objects. Added > >>> method LoggerConfig#getPropertyList(), deprecated method #getProperties(). > >>> o LOG4J2-1457: Fixed class loader deadlock when using async logging and > >>> extended stack trace pattern. Thanks to Leon Finker. > >>> o LOG4J2-1563: Fix to prevent Log4j 2.6.2 and higher from losing > >>> exceptions when a security manager is present. Thanks to Jason Tedor. > >>> o LOG4J2-1530: Fixed issue where LogEvent.getContextStack() returned > >>> null. > >>> o LOG4J2-1518: Prevent deadlock in Async Loggers when queue is full and > >>> logged Object's toString() logs another message. Thanks to Leon Finker. > >>> o LOG4J2-1542: Prevent ArrayIndexOutOfBoundsException in > >>> ParameterizedMessage.formatTo for single-char or empty messages. Thanks > >>> to Rogério Lecarião Leite. > >>> o LOG4J2-1549: Fixed issue where > >>> AsyncLoggerContextSelector+PropertiesConfigurationBuilder defaulted to > >>> includeLocation=true. Thanks to Jason Bedard. > >>> o LOG4J2-1562: Prevent SocketAppender memory usage from growing > >>> unbounded if it cannot connect to a server. > >>> o LOG4J2-1559: Prevent NPE in Level.isInRange. Thanks to Andrey Plotkin. > >>> o LOG4J2-1511: DynamicThresholdFilter filtered incorrectly when params > >>> were passed as individual arguments instead of varargs. Thanks to > >>> Srikanth Surukuntu. > >>> o LOG4J2-1548: [CronTriggeringPolicy] ConfigurationScheduler scheduled > >>> the task infinitely after first fire. > >>> o LOG4J2-1506: Log4j should not unregister JMX MBeans when > >>> log4j2.disable.jmx property is true. Thanks to Johannes Schleger. > >>> o LOG4J2-1490: Log4j2 should postpone creating log file until the > >>> appender actually receives an event. Thanks to Krzysztof Taborski. > >>> o LOG4J2-1320: Support loading custom plugins from jar files and > >>> directories whose classpath entries use the "vfs" URL protocol. Thanks to > >>> Paresh Varke, Pierrick Hymbert. > >>> o LOG4J2-1541: Fix file handle resource leak in > >>> XmlConfiguration.XmlConfiguration(ConfigurationSource). > >>> o LOG4J2-1538: Prevent NPE when dynamically removing filters. Thanks to > >>> Igor Karpov. > >>> o LOG4J2-1532: Attributes were not merged properly in composite > >>> configurations. > >>> o LOG4J2-1529: Attributes were not merged properly in composite > >>> configurations. Thanks to Sridevi Narra. > >>> o LOG4J2-1527: Prevent NPE in RingBufferLogEvent.getFormattedMessage() > >>> when used in web applications. Thanks to Jose Leon. > >>> o LOG4J2-905: Added ability to disable (date) lookup completely for > >>> compatibility with other libraries like Camel. Thanks to Moritz Löser. > >>> o LOG4J2-1526: Added support for setting StatusLogger destination in > >>> ConfigurationBuilder. > >>> o LOG4J2-1448: Allow comma separated agents, host list to be passed to > >>> FlumeAppender. Thanks to Keith Laban. > >>> o LOG4J2-1500: Merging configurations failed with an NPE when comparing > >>> Nodes with different attributes. Thanks to Jose Leon. > >>> o LOG4J2-1482: Fixed improper header in CsvParameterLayout. Thanks to > >>> Sumit Singhal. > >>> o LOG4J2-1199: Documented that JVM Input Arguments Lookup (JMX) is not > >>> available on Google App Engine. > >>> o LOG4J2-1438: (GC) Added method getParameter() to ObjectMessage (and > >>> ReusableObjectMessage). > >>> o LOG4J2-1488: (GC) Fixed ISO8601 %date conversion pattern with a period > >>> '.' separator for milliseconds is now garbage free. Thanks to Richard > >>> Zschech. > >>> o LOG4J2-1489: (GC) Fixed %date conversion patterns with a timezone > >>> parameter are now garbage free. Thanks to Richard Zschech. > >>> o LOG4J2-1279: Prevent NullPointerException in > >>> FastDateParser$TimeZoneStrategy. Thanks to Tony Baines. > >>> o LOG4J2-1341: (GC) HighlightConverter and StyleConverter are now > >>> GC-free. Thanks to Richard Zschech. > >>> o LOG4J2-1467: [OSGi] Fixed missing import package. Thanks to Ralf, Gary > >>> Gregory. > >>> o LOG4J2-351: [OSGi] Fixed wrong Fragment-Host in manifest files. Thanks > >>> to Roland Weiglhofer. > >>> o LOG4J2-1313: Properties declared in configuration can now have their > >>> value either in the element body or in an attribute named "value". Thanks > >>> to Philipp Knobel. > >>> o LOG4J2-1235: > >>> org.apache.logging.log4j.core.appender.routing.IdlePurgePolicy was not > >>> working correctly. Thanks to Niranjan Rao, Sascha Scholz, Aleksey > >>> Zvolinsky. > >>> o LOG4J2-1502: Fixed issue where CsvParameterLayout and > >>> CsvLogEventLayout inserted NUL characters if data starts with {, (, [ or > >>> " Thanks to Sumit Singhal. > >>> o LOG4J2-1573: Layout is no longer optional. Thanks to Steffen Offermann. > >>> o LOG4J2-1608: ServletAppender does not provide throwable object to > >>> ServletContext. > >>> o LOG4J2-1599: Prevent potential NPE in > >>> org.apache.logging.log4j.message.ParameterFormatter.formatMessage3(StringBuilder, > >>> char[], int, Object[], int, int[]). > >>> o LOG4J2-1600: Prevent potential NPE due to > >>> org.apache.logging.log4j.core.layout.MarkerPatternSelector.createSelector(PatternMatch[], > >>> String, boolean, boolean, Configuration). > >>> o LOG4J2-1601: Prevent potential NPE due to > >>> org.apache.logging.log4j.core.layout.ScriptPatternSelector.createSelector(AbstractScript, > >>> PatternMatch[], String, boolean, boolean, Configuration). > >>> o LOG4J2-1602: Prevent potential NPE in > >>> org.apache.logging.log4j.core.util.datetime.FormatCache.MultipartKey.equals(Object) > >>> when object is null. > >>> o LOG4J2-1603: Redo hashCode() and equals() methods in > >>> org.apache.logging.log4j.core.net.ssl classes. > >>> o LOG4J2-1610: Add targetNamespace to log4j-config.xsd. GitHub #43. > >>> Thanks to Shubhankar. > >>> > >>> Changes: > >>> o LOG4J2-1604: Log4j2 TcpSocketServer in background. Thanks to Colin > >>> Hillman. > >>> o LOG4J2-1574: Allow the RollingFileAppender to use default pattern > >>> layout. > >>> o LOG4J2-1556: Custom Log4j threads now extend Log4jThread. > >>> o LOG4J2-1605: Improve error messages for TcpSocketServer and > >>> UdpSocketServer. > >>> o LOG4J2-1458: Updated Jackson from 2.7.5 to 2.8.0. > >>> o LOG4J2-1494: Updated Jackson from 2.8.0 to 2.8.1. > >>> o LOG4J2-1569: Updated Jackson from 2.8.1 to 2.8.2. > >>> o LOG4J2-1598: Updated Jackson from 2.8.2 to 2.8.3. > >>> o LOG4J2-1495: Updated LMAX Disruptor from 3.3.4 to 3.3.5. > >>> o LOG4J2-1496: Updated Kafka client from 0.9.1.0 to 0.10.0.0. > >>> o LOG4J2-1533: Updated Kafka client from 0.10.0.0 to 0.10.0.1. > >>> o LOG4J2-1487: Updated JMS test from ActiveMQ 5.13.3 to 5.13.4. > >>> o LOG4J2-1551: Updated JMS test from ActiveMQ 5.13.4 to 5.14.0. > >>> o LOG4J2-1543: Removed deprecated Core API > >>> org.apache.logging.log4j.core.util.Constants.UTF_8. > >>> o LOG4J2-1544: Removed deprecated Core API > >>> org.apache.logging.log4j.core.util.Assert.requireNonNull(T, String). > >>> o LOG4J2-1545: Removed deprecated Web API > >>> org.apache.logging.log4j.web.WebLookup.getServletContext(). > >>> > >>> Tag: > >>> > >>> > >>> a) for a new copy do "git clone > >>> https://git-wip-us.apache.org/repos/asf/logging-log4j2.git" and then "git > >>> checkout tags/log4j-2.7-rc1â > >>> b) for an existing working copy to âgit pullâ and then âgit > >>> checkout tags/log4j-2.7-rc1â > >>> > >>> Web Site: > >>> <http://rgoers.github.io/log4j2-site/index.html>http://rgoers.github.io/log4j2-site/index.html > >>> > >>> Artifacts: > >>> https://repository.apache.org/content/repositories/orgapachelogging-1021/ > >>> > >>> You may download all the artifacts by executing: > >>> > >>> wget -e robots=off --cut-dirs=7 -nH -r -p -np --no-check-certificate > >>> https://repository.apache.org/content/repositories/orgapachelogging-1021/org/apache/logging/log4j/ > >>> > >>> Ralph > >>> > >>> > >> > >> > >> -- > >> E-Mail: garydgreg...@gmail.com | ggreg...@apache.org > >> Java Persistence with Hibernate, Second Edition > >> <http://www.manning.com/bauer3/> > >> JUnit in Action, Second Edition <http://www.manning.com/tahchiev/> > >> Spring Batch in Action <http://www.manning.com/templier/> > >> Blog: http://garygregory.wordpress.com > >> Home: http://garygregory.com/ > >> Tweet! http://twitter.com/GaryGregory > >> > >> > >> > > > > > > -- > > Matt Sicker <boa...@gmail.com> > > > > > > > > > -- > E-Mail: garydgreg...@gmail.com | ggreg...@apache.org > Java Persistence with Hibernate, Second Edition > <http://www.manning.com/bauer3/> > JUnit in Action, Second Edition <http://www.manning.com/tahchiev/> > Spring Batch in Action <http://www.manning.com/templier/> > Blog: http://garygregory.wordpress.com > Home: http://garygregory.com/ > Tweet! http://twitter.com/GaryGregory > --------------------------------------------------------------------- To unsubscribe, e-mail: log4j-dev-unsubscr...@logging.apache.org For additional commands, e-mail: log4j-dev-h...@logging.apache.org