You are viewing a plain text version of this content. The canonical link for it is here.
Posted to log4j-dev@logging.apache.org by Curt Arnold <ca...@apache.org> on 2007/06/21 05:27:25 UTC
log4j 1.2.15 RC 3
I've just pushed another release candidate out. This won't be the
last since I forgot to update the release date and another tweak to
the POM that I'd like to do. I'll likely refresh it tomorrow, but I
thought I would leave it up overnight for any immediate feedback.
The distributions are at http://people.apache.org/builds/logging/
log4j/1.2.15 and Maven artifacts are in the staging repo at http://
people.apache.org/build/logging/repo.
The big new change is this release was built on Ubuntu Linux 6.06-1
(Dapper Drake) using Sun Java 6 (but targeting JDK 1.1) and an MinGW
cross compiler (for NTEventLogAppender.dll) instead of Windows 2000
and JDK 1.3. Dapper Drake is a Long Term Support release of Ubuntu
and a prebuild VMWare Applicance is available and was used as a
starting point. The instructions at http://svn.apache.org/repos/asf/
logging/log4j/branches/v1_2-branch/BUILD-INFO.txt should allow you to
set up an identical build environment in not much longer than the
download time. Hopefully we can use that build environment across
the components, log4j 2.0 and log4cxx.
I tested a earlier builds on JDK 1.2 and 1.3 on Windows and java-gcj
1.4.2. JDK 1.3 passed all tests without incident. JDK 1.2 would
report IllegalStateExceptions in the XML parser when reading
configuration files and would print diagnostic messages about
problems with the JIT, but many tests still passed. I vaguely recall
seeing similar behavior with earlier releases, so it may not be a
regression from earlier versions of log4j. java-gcj would fail one
test in DRFATest where the rollover time was wrong on October 27 or
28th and only on that date. I attempted to debug on java-gcj with
Eclipse, but wasn't able to get it to stop on breakpoints (perhaps a
bundled log4j was interfering). I don't think that is a regression
either, perhaps a run-time library bug. I have not tested JRockit
with this release, but earlier (non Ubuntu) builds passed all tests.
I'd appreciate any feedback on the build environment setup and any
success in reproducing the build. There are some unavoidable
differences between builds, Javadoc puts timestamps in HTML comments
and jar files also contain timestamps. Something like the following
can be used to compare a test and a reference release:
mkdir test
cd test
tar -xvzf ~/log4j/target/log4j-1.2.15.tar.gz
cd apache-log4j-1.2.15
jar xf log4j-1.2.15.jar
hexdump NTEventLogAppender.dll > NTEventLogAppender.hex
cd ../..
mkdir reference
cd reference
tar -xvzf ~/downloads/apache-log4j-1.2.15_rc3.tar.gz
cd apache-log4j-1.2.15
jar xf log4j-1.2.15.jar
hexdump NTEventLogAppender.dll > NTEventLogAppender.hex
cd ../..
diff -r reference test
Hopefully all .class files are identical, HTML only varies by
timestamps in comments and perhaps a few bytes in the dump of the
NTEventLogAppender.
---------------------------------------------------------------------
To unsubscribe, e-mail: log4j-dev-unsubscribe@logging.apache.org
For additional commands, e-mail: log4j-dev-help@logging.apache.org
Re: log4j 1.2.15 RC 3
Posted by Curt Arnold <ca...@apache.org>.
On Jun 20, 2007, at 11:55 PM, Paul Smith wrote:
> I've done the following quick test to compare 1.2.14->1.2.15.
> After unpacking both, I compared the contents of the respective
> jars. One way to see missing/additional files was this:
>
> unzip -l log4j-1.2.14.jar > /tmp/log4j.1.2.14.txt
> ..
> unzip -l log4j-1.2.15.jar > /tmp/log4j.1.2.15.txt
>
> cat log4j.1.2.14.txt | awk '{print $NF}' | sort > a
> cat log4j.1.2.15.txt | awk '{print $NF}' | sort > b
>
> comm -3 a b
>
> This shows all the file entries that are not in both jars. In this
> case, there are only new entries in the 1.2.15 distribution:
>
> [psmith@forge tmp]$ comm -3 a b
> log4j-1.2.14.jar
> log4j-1.2.15.jar
> META-INF/maven/
> META-INF/maven/log4j/
> META-INF/maven/log4j/log4j/
> META-INF/maven/log4j/log4j/pom.properties
> META-INF/maven/log4j/log4j/pom.xml
> NTEventLogAppender.o
> org_apache_log4j_nt_NTEventLogAppender.h
> org_apache_log4j_Priority.h
> org/apache/log4j/xml/UnrecognizedElementHandler.class
>
> Obviously the 2 jar names are different, and the the maven stuff is
> expected.
> The .o and .h files are new, but probably benign.
They shouldn't be there, something to fix for RC4.
> The new class, IIRC, is expected in 1.2.15.
Yes, it is an interface that classes that need to handle unexpected
elements in the XML configuration implement.
>
> I thought of doing byte size comparison between the file entries in
> the jar, but I'm not sure what that would tell us.
>
> From the above test, the jar looks ok to me.
>
> A Jdiff report would be nice I think, just to compare the binary
> compatibility aspects.
>
The Ant build file had both CLIRR and JDiff reports. They should
still work, but may rebuild the jar file. The CLIRR Maven plugin
doesn't look like it has been ported to Maven 2. JDiff's plugin does
appear to have been ported (http://mojo.codehaus.org/jdiff-maven-
plugin/howto.html).
Likely CLIRR could be integrated as an Ant task into the build to
stop the build if any API breakage was detected and/or a JDiff report
could be added. I've been using log4j 1.2.8 as the reference release
in previous checks of compatibility.
---------------------------------------------------------------------
To unsubscribe, e-mail: log4j-dev-unsubscribe@logging.apache.org
For additional commands, e-mail: log4j-dev-help@logging.apache.org
Re: log4j 1.2.15 RC 3
Posted by Paul Smith <ps...@aconex.com>.
I've done the following quick test to compare 1.2.14->1.2.15. After
unpacking both, I compared the contents of the respective jars. One
way to see missing/additional files was this:
unzip -l log4j-1.2.14.jar > /tmp/log4j.1.2.14.txt
..
unzip -l log4j-1.2.15.jar > /tmp/log4j.1.2.15.txt
cat log4j.1.2.14.txt | awk '{print $NF}' | sort > a
cat log4j.1.2.15.txt | awk '{print $NF}' | sort > b
comm -3 a b
This shows all the file entries that are not in both jars. In this
case, there are only new entries in the 1.2.15 distribution:
[psmith@forge tmp]$ comm -3 a b
log4j-1.2.14.jar
log4j-1.2.15.jar
META-INF/maven/
META-INF/maven/log4j/
META-INF/maven/log4j/log4j/
META-INF/maven/log4j/log4j/pom.properties
META-INF/maven/log4j/log4j/pom.xml
NTEventLogAppender.o
org_apache_log4j_nt_NTEventLogAppender.h
org_apache_log4j_Priority.h
org/apache/log4j/xml/UnrecognizedElementHandler.class
Obviously the 2 jar names are different, and the the maven stuff is
expected. The .o and .h files are new, but probably benign. The
new class, IIRC, is expected in 1.2.15.
I thought of doing byte size comparison between the file entries in
the jar, but I'm not sure what that would tell us.
From the above test, the jar looks ok to me.
A Jdiff report would be nice I think, just to compare the binary
compatibility aspects.
Paul
---------------------------------------------------------------------
To unsubscribe, e-mail: log4j-dev-unsubscribe@logging.apache.org
For additional commands, e-mail: log4j-dev-help@logging.apache.org
Re: log4j 1.2.15 RC 3
Posted by Curt Arnold <ca...@apache.org>.
On Jun 20, 2007, at 10:37 PM, Paul Smith wrote:
>
> On 21/06/2007, at 1:27 PM, Curt Arnold wrote:
>
>> I've just pushed another release candidate out. This won't be the
>> last since I forgot to update the release date and another tweak
>> to the POM that I'd like to do. I'll likely refresh it tomorrow,
>> but I thought I would leave it up overnight for any immediate
>> feedback. The distributions are at http://people.apache.org/
>> builds/logging/log4j/1.2.15 and Maven artifacts are in the staging
>> repo at http://people.apache.org/build/logging/repo.
>>
> the repo url doesn't work for me.
>
Sorry, should have been "builds", not "build".
>>
>> mkdir test
>> cd test
>> tar -xvzf ~/log4j/target/log4j-1.2.15.tar.gz
>> cd apache-log4j-1.2.15
>> jar xf log4j-1.2.15.jar
>> hexdump NTEventLogAppender.dll > NTEventLogAppender.hex
>> cd ../..
>> mkdir reference
>> cd reference
>> tar -xvzf ~/downloads/apache-log4j-1.2.15_rc3.tar.gz
>> cd apache-log4j-1.2.15
>> jar xf log4j-1.2.15.jar
>> hexdump NTEventLogAppender.dll > NTEventLogAppender.hex
>> cd ../..
>> diff -r reference test
>>
>>
> Would running a jdiff report between 1.2.14 and 15 help?
>
Yes, but that is a different type of test. The idea here was that
one log4j release should be reproducible by different individuals in
case there is a need to a hotfix release and the previous release
manager was run over by that bus that keeps targeting developers.
Can't eliminate the different timestamps in the files, but the .class
files should be reproducible. When Mark Womack was release manager,
I had a duplicate build environment that I would use to replicate his
build and then do this type of test to make sure that I could come up
with an almost identical release if the need ever arose.
---------------------------------------------------------------------
To unsubscribe, e-mail: log4j-dev-unsubscribe@logging.apache.org
For additional commands, e-mail: log4j-dev-help@logging.apache.org
Re: log4j 1.2.15 RC 3
Posted by Paul Smith <ps...@aconex.com>.
On 21/06/2007, at 1:27 PM, Curt Arnold wrote:
> I've just pushed another release candidate out. This won't be the
> last since I forgot to update the release date and another tweak to
> the POM that I'd like to do. I'll likely refresh it tomorrow, but
> I thought I would leave it up overnight for any immediate
> feedback. The distributions are at http://people.apache.org/builds/
> logging/log4j/1.2.15 and Maven artifacts are in the staging repo at
> http://people.apache.org/build/logging/repo.
>
the repo url doesn't work for me.
>
> mkdir test
> cd test
> tar -xvzf ~/log4j/target/log4j-1.2.15.tar.gz
> cd apache-log4j-1.2.15
> jar xf log4j-1.2.15.jar
> hexdump NTEventLogAppender.dll > NTEventLogAppender.hex
> cd ../..
> mkdir reference
> cd reference
> tar -xvzf ~/downloads/apache-log4j-1.2.15_rc3.tar.gz
> cd apache-log4j-1.2.15
> jar xf log4j-1.2.15.jar
> hexdump NTEventLogAppender.dll > NTEventLogAppender.hex
> cd ../..
> diff -r reference test
>
>
Would running a jdiff report between 1.2.14 and 15 help?
Paul
---------------------------------------------------------------------
To unsubscribe, e-mail: log4j-dev-unsubscribe@logging.apache.org
For additional commands, e-mail: log4j-dev-help@logging.apache.org