Florent -- I've updated https://github.com/freenet/scripts/pull/12 per your comment.
Usually my log files make it to devl, not sure why recent ones haven't. Temporary file link - https://cryptnode.org/temp/verify-1475.log --Byron On 07/01/2016 11:56 AM, CryptNode wrote: > I was able to verify this build. Log file attached. > > Ran verify-build after installing Oracle jdk1.7.0_79 instead of > openjdk-7u101. Thank you Bert for explaining how you tested the > differences, and Florent for reporting which version of java you used. > > PR for scripts/README.md is still open - > https://github.com/freenet/scripts/pull/12/files > > --Byron > > On 06/29/2016 06:09 AM, Florent Daigniere wrote: >> Hmm, yeah it's my fault... 1475 was compiled with Oracle's jdk1.7.0_79 >> I'll ensure that I use the debian/openjdk version the script expects in >> the future... >> >> Florent >> >> On Wed, 2016-06-29 at 11:55 +0200, Bert Massop wrote: >>> Let's analyze the smallest class file for which you observe a >>> difference. >>> That happens to be freenet/clients/fcp/ClientRequest$4.class. >>> Fortunately, >>> the code for ClientRequest has not changed between 1473 and 1475, so >>> the >>> resulting file for both versions should be the same. Turns out they >>> are not: >>> >>> $ sha1sum ClientRequest\$4.class.1473 ClientRequest\$4.class.1475 >>> f535c7e5ff73ca200007f756076eabd0bfe08217 ClientRequest$4.class.1473 >>> fc4680b0be297136fe939617635aa2c5389e5525 ClientRequest$4.class.1475 >>> >>> So where are they different? Let's first convert them to one-byte- >>> per-line >>> hex (plus decimal, character) dumps and create a diff (result >>> attached): >>> $ hexdump -v -e '/1 "%02X (hex)"' -e '/1 " %03u (dec)"' -e '/1 " >>> %_p\n"' >>> ClientRequest\$4.class.1473 > CR4.hex.1473 >>> $ hexdump -v -e '/1 "%02X (hex)"' -e '/1 " %03u (dec)"' -e '/1 " >>> %_p\n"' >>> ClientRequest\$4.class.1475 > CR4.hex.1475 >>> $ diff -u CR4.hex.1473 CR4.hex.1475 > CR4.diff >>> >>> The first difference is at byte 10, as indicated by your analysis. >>> According to the class file format specification [0], this is the >>> element >>> count of the constant pool (the collection of constant strings, >>> classes, >>> interface names referenced in the class file). The count went up from >>> 42 to >>> 44 constants. Further analysis reveals that the Utf8 constants "ex" >>> and >>> "Ljava.lang.NoSuchFieldError" where added; and as such, the constant >>> table >>> has different indexes, leading to slightly different bytecode. Most >>> other >>> differences can be seen to be off-by-two errors indeed. >>> >>> Where do these differences originate from? Further analysis of the >>> differences between the byte code in these files reveals that this >>> class is >>> a SwitchMap (a jump table for the switch() statement), and that the >>> sole >>> difference is that the Java compiler has added additional runtime >>> exception >>> handling. This being an automatically generated class by the Java >>> compiler, >>> it gives clear evidence that differences in the build environment >>> cause the >>> validation error for this particular file. >>> >>> I did not analyze the differences for all files, but it is quite >>> likely >>> that they are all related to differences in the build environment. >>> From the >>> META-INF difference, it is already clear that the two compiler >>> versions >>> used were not exactly equal. >>> >>> Kind regards, >>> Bert >>> >>> [0] https://docs.oracle.com/javase/specs/jvms/se7/html/jvms-4.html >>> >>> On Wed, Jun 29, 2016 at 7:58 AM, CryptNode <[email protected]> >>> wrote: >>> >>>> Temporary file link - https://cryptnode.org/temp/verify-1475-failed >>>> .log >>>> >>>> >>>> On 06/27/2016 05:28 AM, Bert Massop wrote: >>>>> On Mon, Jun 27, 2016 at 5:27 AM, CryptNode <[email protected] >>>> wrote: >>>>>> This build is failing for me. Log file attached. >>>>>> >>>>> You log file unfortunately did not arrive here. Can try to send >>>>> it again, >>>>> or upload it somewhere? (e.g. pastebin) >>>>> >>>>> Thank you for validating the builds! >>>>> >>>>> Imported Florent's key. >>>>>> gpg --keyserver keys.gnupg.net --recv-key 0x7AA9C2A3 >>>>>> >>>>>> Using Debian 8.5 x64, ant 1.9.4-3, openjdk-7-jdk 7u101-2.6.6- >>>>>> 1~deb8u1, >>>>>> unzip 6.0-16+deb8u2 >>>>>> I was able to verify build 1474 using this VM. >>>>>> >>>>>> --Byron >>>>>> >>>>>> On 06/25/2016 04:32 AM, Florent Daigniere wrote: >>>>>>> 2016-06-25 >>>>>>> >>>>>>> Freenet 0.7.5 build 1475 is now available. It materializes >>>>>>> several >>>>>>> months of work (the previous release was rushed to fix >>>>>>> frostbite) and >>>>>>> features some major changes. Your nodes should start auto- >>>>>>> updating >>>>>>> soon. This build will become mandatory on July 15th. >>>>> _______________________________________________ >>>>> Devl mailing list >>>>> [email protected] >>>>> https://emu.freenetproject.org/cgi-bin/mailman/listinfo/devl >>>> _______________________________________________ >>>> Devl mailing list >>>> [email protected] >>>> https://emu.freenetproject.org/cgi-bin/mailman/listinfo/devl >>>> >>> _______________________________________________ >>> Devl mailing list >>> [email protected] >>> https://emu.freenetproject.org/cgi-bin/mailman/listinfo/devl >>> >>> >>> _______________________________________________ >>> Devl mailing list >>> [email protected] >>> https://emu.freenetproject.org/cgi-bin/mailman/listinfo/devl > _______________________________________________ > Devl mailing list > [email protected] > https://emu.freenetproject.org/cgi-bin/mailman/listinfo/devl _______________________________________________ Devl mailing list [email protected] https://emu.freenetproject.org/cgi-bin/mailman/listinfo/devl
