Return-Path: Delivered-To: apmail-incubator-harmony-dev-archive@www.apache.org Received: (qmail 66187 invoked from network); 7 Nov 2006 22:01:48 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.2) by minotaur.apache.org with SMTP; 7 Nov 2006 22:01:48 -0000 Received: (qmail 21580 invoked by uid 500); 7 Nov 2006 22:01:51 -0000 Delivered-To: apmail-incubator-harmony-dev-archive@incubator.apache.org Received: (qmail 21525 invoked by uid 500); 7 Nov 2006 22:01:51 -0000 Mailing-List: contact harmony-dev-help@incubator.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: harmony-dev@incubator.apache.org Delivered-To: mailing list harmony-dev@incubator.apache.org Received: (qmail 21476 invoked by uid 99); 7 Nov 2006 22:01:50 -0000 Received: from herse.apache.org (HELO herse.apache.org) (140.211.11.133) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 07 Nov 2006 14:01:50 -0800 X-ASF-Spam-Status: No, hits=0.0 required=10.0 tests= X-Spam-Check-By: apache.org Received-SPF: neutral (herse.apache.org: local policy) Received: from [69.9.190.6] (HELO lox.whirlycott.com) (69.9.190.6) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 07 Nov 2006 14:01:29 -0800 Received: (qmail 8278 invoked by uid 1016); 7 Nov 2006 22:01:02 -0000 Received: from 70.36.208.192 by lox.whirlycott.com (envelope-from , uid 1009) with qmail-scanner-1.25 (clamdscan: 0.87.1/1179. Clear:RC:1(70.36.208.192):. Processed in 0.301386 secs); 07 Nov 2006 22:01:02 -0000 X-Qmail-Scanner-Mail-From: stefano@apache.org via lox.whirlycott.com X-Qmail-Scanner: 1.25 (Clear:RC:1(70.36.208.192):. Processed in 0.301386 secs) Received: from unknown (HELO ?192.168.1.100?) (stefano@ormaz.it@70.36.208.192) by lox.whirlycott.com with ESMTPA; 7 Nov 2006 22:01:02 -0000 Message-ID: <4551021D.1020602@apache.org> Date: Tue, 07 Nov 2006 14:01:01 -0800 From: Stefano Mazzocchi User-Agent: Thunderbird 1.5.0.7 (Macintosh/20060909) MIME-Version: 1.0 To: harmony-dev@incubator.apache.org CC: japitools-list@nongnu.org Subject: [general] interesting discoveries with japitools - part 2 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit X-Virus-Checked: Checked by ClamAV on apache.org Stuart told me that using the released version of japitools was not ideal, so I've re-run the tests with the latest version of japitools from CVS. I did find a few bugs in japitools when dealing with JRockit and J9 (submitted to the japitools mail list) but there are still interesting results. ======== sun 1.5 vs bea 1.5 ============ Total: 99.99% good, 0% missing, 0% abs.add Error Summary: Methods: 1 missing, 1 abs.add. Errors: java.awt.peer: Missing method java.awt.peer.WindowPeer.updateFocusableWindowState(): missing in bea1.5 java.util.concurrent: Abs.add method java.util.concurrent.Delayed.compareTo(java.lang.Object): new interface method in bea1.5 So, it appears that that Sun added a method that is not available in the javadocs (bad Sun, no donut for you!) and that BEA did not (correctly) implement. Also, BEA added the method "compareTo" to the java.util.concurrent.Delayed interface. This is not really a problem because Delayed extends Comparable, therefore all classes implementing Delayed will have to have the compareTo method anyway. Stuart, do you think this is something that japitools should check? I would call this a false positive. ======== sun 1.5 vs ibm 1.5 =================== Total: 99.93% good, 0% bad, 0.06% missing, 0% abs.add Error Summary: Classes: 2 missing. Fields: 1 bad. Methods: 5 missing, 6 abs.add. Errors: java.awt.peer: Missing method java.awt.peer.WindowPeer.updateFocusableWindowState(): missing in ibm1.5 java.util.concurrent: Abs.add method java.util.concurrent.Delayed.compareTo(java.lang.Object): new interface method in ibm1.5 javax.xml.datatype: Bad field javax.xml.datatype.DatatypeFactory.DATATYPEFACTORY_IMPLEMENTATION_CLASS: constant [com.sun.org.apache.xerces.internal.jaxp.datatype.DatatypeFactoryImpl] in sun1.5, but constant [org.apache.xerces.jaxp.datatype.DatatypeFactoryImpl] in ibm1.5 org.omg.stub.javax.management.remote.rmi: Missing class org.omg.stub.javax.management.remote.rmi._RMIConnectionImpl_Tie: missing in ibm1.5 class org.omg.stub.javax.management.remote.rmi._RMIServerImpl_Tie: missing in ibm1.5 org.w3c.dom.html: Missing method org.w3c.dom.html.HTMLFrameElement.getContentDocument(): missing in ibm1.5 method org.w3c.dom.html.HTMLIFrameElement.getContentDocument(): missing in ibm1.5 method org.w3c.dom.html.HTMLObjectElement.getContentDocument(): missing in ibm1.5 method org.w3c.dom.html.HTMLOptionElement.setSelected(boolean): missing in ibm1.5 Abs.add method org.w3c.dom.html.HTMLOptionElement.setIndex(int): new interface method in ibm1.5 method org.w3c.dom.html.HTMLTableCellElement.setCellIndex(int): new interface method in ibm1.5 method org.w3c.dom.html.HTMLTableRowElement.setCells(org.w3c.dom.html.HTMLCollection): new interface method in ibm1.5 method org.w3c.dom.html.HTMLTableRowElement.setRowIndex(int): new interface method in ibm1.5 method org.w3c.dom.html.HTMLTableRowElement.setSectionRowIndex(int): new interface method in ibm1.5 So, it seems that the new japitools does fix some problems. The first two are the same as with BEA. The datatype factory is not problematic. The RMI over IIOP stubs should probably be ignored. The only substantial difference is the HTML DOM (which nobody uses anyway). Now the reverse checks ====== bea 1.5 vs sun 1.5 ====================== Total: 100% good, 0% abs.add Error Summary: Methods: 2 abs.add. Errors: java.awt.peer: Abs.add method java.awt.peer.WindowPeer.updateFocusableWindowState(): new interface method in sun1.5 java.util.concurrent: Abs.add method java.util.concurrent.Delayed.compareTo(java.lang.Object): new interface method in sun1.5 Done. Hmmm, the compareTo is in both the direct and the reverse? smells like a japitool bug to me. ======= IBM 1.5 vs. Sun 1.5 ======================== Total: 99.78% good, 0% bad, 0.21% missing, 0% abs.add Error Summary: Packages: 4 missing. Classes: 2 missing. Fields: 1 bad. Methods: 6 missing, 6 abs.add. Errors: java.lang: Missing method java.lang.StringBuilder.append(java.lang.StringBuilder): missing in sun1.5 java.awt.peer: Abs.add method java.awt.peer.WindowPeer.updateFocusableWindowState(): new interface method in sun1.5 java.util.concurrent: Abs.add method java.util.concurrent.Delayed.compareTo(java.lang.Object): new interface method in sun1.5 javax.management.remote.rmi: Missing class javax.management.remote.rmi._RMIConnectionImpl_Tie: missing in sun1.5 class javax.management.remote.rmi._RMIServerImpl_Tie: missing in sun1.5 javax.xml.datatype: Bad field javax.xml.datatype.DatatypeFactory.DATATYPEFACTORY_IMPLEMENTATION_CLASS: constant [org.apache.xerces.jaxp.datatype.DatatypeFactoryImpl] in ibm1.5, but constant [com.sun.org.apache.xerces.internal.jaxp.datatype.DatatypeFactoryImpl] in sun1.5 org.omg.stub.java.lang: Missing package org.omg.stub.java.lang: missing in sun1.5 org.omg.stub.java.security: Missing package org.omg.stub.java.security: missing in sun1.5 org.omg.stub.java.util: Missing package org.omg.stub.java.util: missing in sun1.5 org.w3c.dom.html: Missing method org.w3c.dom.html.HTMLOptionElement.setIndex(int): missing in sun1.5 method org.w3c.dom.html.HTMLTableCellElement.setCellIndex(int): missing in sun1.5 method org.w3c.dom.html.HTMLTableRowElement.setCells(org.w3c.dom.html.HTMLCollection): missing in sun1.5 method org.w3c.dom.html.HTMLTableRowElement.setRowIndex(int): missing in sun1.5 method org.w3c.dom.html.HTMLTableRowElement.setSectionRowIndex(int): missing in sun1.5 Abs.add method org.w3c.dom.html.HTMLFrameElement.getContentDocument(): new interface method in sun1.5 method org.w3c.dom.html.HTMLIFrameElement.getContentDocument(): new interface method in sun1.5 method org.w3c.dom.html.HTMLObjectElement.getContentDocument(): new interface method in sun1.5 method org.w3c.dom.html.HTMLOptionElement.setSelected(boolean): new interface method in sun1.5 org.w3c.dom.xpath: Missing package org.w3c.dom.xpath: missing in sun1.5 So other than the problems we identified before, there seem to be two more issues: 1) java.lang.StringBuilder.append(java.lang.StringBuilder) missing in sun1.5 2) package org.w3c.dom.xpath: missing in sun1.5 - o - The results show clearly that japitools did indeed improve a lot over the last released version. NOTE: the results were taken with the following package passed to the "japize" tool: +java +javax +org -org.apache -org.ietf -- Stefano.