Return-Path: Delivered-To: apmail-harmony-commits-archive@www.apache.org Received: (qmail 90754 invoked from network); 23 Dec 2006 12:12:22 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.2) by minotaur.apache.org with SMTP; 23 Dec 2006 12:12:22 -0000 Received: (qmail 35884 invoked by uid 500); 23 Dec 2006 12:12:29 -0000 Delivered-To: apmail-harmony-commits-archive@harmony.apache.org Received: (qmail 35853 invoked by uid 500); 23 Dec 2006 12:12:29 -0000 Mailing-List: contact commits-help@harmony.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@harmony.apache.org Delivered-To: mailing list commits@harmony.apache.org Received: (qmail 35842 invoked by uid 99); 23 Dec 2006 12:12:29 -0000 Received: from herse.apache.org (HELO herse.apache.org) (140.211.11.133) by apache.org (qpsmtpd/0.29) with ESMTP; Sat, 23 Dec 2006 04:12:29 -0800 X-ASF-Spam-Status: No, hits=0.0 required=10.0 tests= X-Spam-Check-By: apache.org Received-SPF: pass (herse.apache.org: local policy) Received: from [208.99.205.121] (HELO pogo.kaffe.org) (208.99.205.121) by apache.org (qpsmtpd/0.29) with ESMTP; Sat, 23 Dec 2006 04:12:19 -0800 Received: from stuart by pogo.kaffe.org with local (Exim 3.35 #1 (Debian)) id 1Gy5jK-00043C-00; Sat, 23 Dec 2006 04:11:58 -0800 To: commits@harmony.apache.org, japitools-results@nongnu.org, stuart.a.ballard@gmail.com Subject: Japi diffs for harmony Message-Id: From: Stuart Ballard Date: Sat, 23 Dec 2006 04:11:58 -0800 X-Virus-Checked: Checked by ClamAV on apache.org Japi diff jdk15 vs harmony: Full results: http://www.kaffe.org/~stuart/japi/htmlout/h-jdk15-harmony.html Changes since last run: -Comparison run at Fri Dec 22 12:09:48 2006 GMT -jdk15 API scanned at 2006/12/22 05:17:08 EST -harmony API scanned at 2006/12/22 11:20:34 GMT +Comparison run at Sat Dec 23 12:02:07 2006 GMT +jdk15 API scanned at 2006/12/23 05:16:35 EST +harmony API scanned at 2006/12/22 11:59:43 GMT -java.lang: 99.89% good, 0.03% minor -java.lang.annotation: 98.67% good +java.lang: 100% good +java.lang.annotation: 100% good -java.lang.management: 99.55% good +java.lang.management: 100% good -java.math: 99.52% good -java.net: 99.86% good +java.math: 100% good +java.net: 100% good -java.security: 99.93% good +java.security: 100% good -java.util: 99.95% good -java.util.concurrent: 99.47% good, 0.31% bad, 0.1% missing +java.util: 100% good +java.util.concurrent: 99.57% good, 0.31% bad, 0.1% missing -javax.net.ssl: 99.75% good +javax.net.ssl: 100% good -javax.sql.rowset.serial: 38.29% good, 1.27% bad, 60.42% missing +javax.sql.rowset.serial: 39.14% good, 1.27% bad, 59.57% missing -javax.swing.text.html: 99.9% good, 0.04% bad +javax.swing.text.html: 99.95% good, 0.04% bad -Total: 96.47% good, 0.06% minor, 0.03% bad, 3.41% missing, 0.02% abs.add +Total: 96.48% good, 0.06% minor, 0.03% bad, 3.41% missing, 0.02% abs.add -Classes: 41 minor, 2 bad, 47 missing. +Classes: 40 minor, 2 bad, 47 missing. -Methods: 45 minor, 23 bad, 426 missing, 38 abs.add. +Methods: 45 minor, 23 bad, 424 missing, 38 abs.add. -java.lang: -Minor -class java.lang.Enum: SerialVersionUID=-4300926546619394005 in jdk15, but SerialVersionUID=8050472724494888780 in harmony - -method javax.sql.rowset.serial.SerialBlob.setBytes(long, byte[]): not implemented in harmony -method javax.sql.rowset.serial.SerialBlob.setBytes(long, byte[], int, int): not implemented in harmony Japi diff jdk6 vs harmony: Full results: http://www.kaffe.org/~stuart/japi/htmlout/h-jdk6-harmony.html Changes since last run: -Comparison run at Fri Dec 22 12:12:22 2006 GMT -jdk6 API scanned at 2006/12/22 05:25:25 EST -harmony API scanned at 2006/12/22 11:20:34 GMT +Comparison run at Sat Dec 23 12:04:35 2006 GMT +jdk6 API scanned at 2006/12/23 05:24:28 EST +harmony API scanned at 2006/12/22 11:59:43 GMT -java.lang: 99.6% good, 0.03% minor, 0.32% bad, 0.03% missing -java.lang.annotation: 100% good -java.lang.instrument: 100% good -java.lang.management: 84.32% good, 15.67% missing +java.lang: 98.43% good, 0.03% minor, 0.39% bad, 1.12% missing +java.lang.annotation: 98.67% good, 1.32% bad +java.lang.instrument: 90.12% good, 9.87% missing +java.lang.management: 83.95% good, 0.37% bad, 15.67% missing -java.lang.reflect: 100% good +java.lang.reflect: 99.73% good, 0.26% bad -java.io: 100% good -java.math: 100% good -java.net: 100% good -java.nio: 100% good +java.io: 96.88% good, 0.04% minor, 3.06% missing +java.math: 99.52% good, 0.47% bad +java.net: 93.02% good, 0.12% bad, 6.85% missing +java.nio: 99.32% good, 0.67% missing -java.security: 99.87% good, 0.12% missing +java.security: 97.28% good, 0.24% bad, 2.46% missing -java.util: 100% good -java.util.concurrent: 75.45% good, 0.81% bad, 23.73% missing, 0.08% abs.add +java.util: 87.47% good, 0.14% bad, 12.37% missing +java.util.concurrent: 75.36% good, 0.9% bad, 23.73% missing, 0.08% abs.add -java.util.spi: 100% good -java.util.zip: 100% good -javax.accessibility: 99.16% good, 0.83% missing +java.util.spi: 100% missing +java.util.zip: 88.85% good, 11.14% missing +javax.accessibility: 99.15% good, 0.84% missing -javax.net.ssl: 95.72% good, 0.35% bad, 3.91% missing +javax.net.ssl: 95.48% good, 0.59% bad, 3.91% missing -javax.security.auth.login: 92.83% good, 0.32% bad, 6.84% missing +javax.security.auth.login: 92.5% good, 0.32% bad, 7.16% missing -javax.security.sasl: 100% good +javax.security.sasl: 99.37% good, 0.62% missing -javax.sql.rowset.serial: 36.32% good, 1.22% bad, 62.44% missing +javax.sql.rowset.serial: 37.14% good, 1.22% bad, 61.63% missing -javax.swing.text.html: 99.9% good, 0.09% bad +javax.swing.text.html: 99.85% good, 0.14% bad -Total: 89.49% good, 0.06% minor, 0.2% bad, 10.23% missing, 0.02% abs.add +Total: 88.98% good, 0.06% minor, 0.22% bad, 10.73% missing, 0.02% abs.add -Packages: 41 missing. -Classes: 59 minor, 60 bad, 115 missing. -Interfaces: 42 bad, 26 missing. +Packages: 42 missing. +Classes: 59 minor, 64 bad, 132 missing. +Interfaces: 42 bad, 33 missing. -Fields: 8 minor, 17 bad, 80 missing. -Methods: 45 minor, 189 bad, 949 missing, 39 abs.add. -Constructors: 4 minor, 48 bad, 65 missing. +Fields: 8 minor, 17 bad, 92 missing. +Methods: 46 minor, 207 bad, 1095 missing, 39 abs.add. +Constructors: 4 minor, 48 bad, 74 missing. -class java.lang.Enum: SerialVersionUID=5861450562797534454 in jdk6, but SerialVersionUID=8050472724494888780 in harmony +class java.lang.Enum: SerialVersionUID=5861450562797534454 in jdk6, but SerialVersionUID=-4300926546619394005 in harmony +method java.lang.Enum.finalize(): doesn't throw java.lang.Throwable in jdk6, but throws java.lang.Throwable in harmony +method java.lang.Thread.State.finalize(): doesn't throw java.lang.Throwable in jdk6, but throws java.lang.Throwable in harmony +constructor java.lang.String(byte[], int, int, java.nio.charset.Charset): missing in harmony +constructor java.lang.String(byte[], java.nio.charset.Charset): missing in harmony +field java.lang.Double.MAX_EXPONENT: missing in harmony +field java.lang.Double.MIN_EXPONENT: missing in harmony +field java.lang.Double.MIN_NORMAL: missing in harmony +field java.lang.Float.MAX_EXPONENT: missing in harmony +field java.lang.Float.MIN_EXPONENT: missing in harmony +field java.lang.Float.MIN_NORMAL: missing in harmony +method java.lang.Math.copySign(double, double): missing in harmony +method java.lang.Math.copySign(float, float): missing in harmony +method java.lang.Math.getExponent(double): missing in harmony +method java.lang.Math.getExponent(float): missing in harmony +method java.lang.Math.nextAfter(double, double): missing in harmony +method java.lang.Math.nextAfter(float, double): missing in harmony +method java.lang.Math.nextUp(double): missing in harmony +method java.lang.Math.nextUp(float): missing in harmony +method java.lang.Math.scalb(double, int): missing in harmony +method java.lang.Math.scalb(float, int): missing in harmony +method java.lang.StrictMath.copySign(double, double): missing in harmony +method java.lang.StrictMath.copySign(float, float): missing in harmony +method java.lang.StrictMath.getExponent(double): missing in harmony +method java.lang.StrictMath.getExponent(float): missing in harmony +method java.lang.StrictMath.nextAfter(double, double): missing in harmony +method java.lang.StrictMath.nextAfter(float, double): missing in harmony +method java.lang.StrictMath.nextUp(double): missing in harmony +method java.lang.StrictMath.nextUp(float): missing in harmony +method java.lang.StrictMath.scalb(double, int): missing in harmony +method java.lang.StrictMath.scalb(float, int): missing in harmony +method java.lang.String.getBytes(java.nio.charset.Charset): missing in harmony +method java.lang.String.isEmpty(): missing in harmony +java.lang.annotation: +Bad +method java.lang.annotation.ElementType.finalize(): doesn't throw java.lang.Throwable in jdk6, but throws java.lang.Throwable in harmony +method java.lang.annotation.RetentionPolicy.finalize(): doesn't throw java.lang.Throwable in jdk6, but throws java.lang.Throwable in harmony + +java.lang.instrument: +Missing +method java.lang.instrument.Instrumentation.addTransformer(java.lang.instrument.ClassFileTransformer, boolean): missing in harmony +method java.lang.instrument.Instrumentation.appendToBootstrapClassLoaderSearch(java.util.jar.JarFile): missing in harmony +method java.lang.instrument.Instrumentation.appendToSystemClassLoaderSearch(java.util.jar.JarFile): missing in harmony +method java.lang.instrument.Instrumentation.isModifiableClass(java.lang.Class): missing in harmony +method java.lang.instrument.Instrumentation.isNativeMethodPrefixSupported(): missing in harmony +method java.lang.instrument.Instrumentation.isRetransformClassesSupported(): missing in harmony +method java.lang.instrument.Instrumentation.retransformClasses(java.lang.Class[]): missing in harmony +method java.lang.instrument.Instrumentation.setNativeMethodPrefix(java.lang.instrument.ClassFileTransformer, java.lang.String): missing in harmony + +Bad +method java.lang.management.MemoryType.finalize(): doesn't throw java.lang.Throwable in jdk6, but throws java.lang.Throwable in harmony +java.lang.reflect: +Bad +method java.lang.reflect.Member.getDeclaringClass(): type java.lang.Class in jdk6, but type java.lang.Class in harmony + +java.io: +Minor +method java.io.File.toURL(): deprecated in jdk6, but not deprecated in harmony +Missing +class java.io.Console: missing in harmony +class java.io.IOError: missing in harmony +constructor java.io.IOException(java.lang.String, java.lang.Throwable): missing in harmony +constructor java.io.IOException(java.lang.Throwable): missing in harmony +constructor java.io.PipedInputStream(int): missing in harmony +constructor java.io.PipedInputStream(java.io.PipedOutputStream, int): missing in harmony +constructor java.io.PipedReader(int): missing in harmony +constructor java.io.PipedReader(java.io.PipedWriter, int): missing in harmony +method java.io.File.canExecute(): missing in harmony +method java.io.File.getFreeSpace(): missing in harmony +method java.io.File.getTotalSpace(): missing in harmony +method java.io.File.getUsableSpace(): missing in harmony +method java.io.File.setExecutable(boolean): missing in harmony +method java.io.File.setExecutable(boolean, boolean): missing in harmony +method java.io.File.setReadable(boolean): missing in harmony +method java.io.File.setReadable(boolean, boolean): missing in harmony +method java.io.File.setWritable(boolean): missing in harmony +method java.io.File.setWritable(boolean, boolean): missing in harmony +method java.io.ObjectStreamClass.lookupAny(java.lang.Class): missing in harmony +method java.io.PrintStream.clearError(): missing in harmony +method java.io.PrintWriter.clearError(): missing in harmony + +java.math: +Bad +method java.math.RoundingMode.finalize(): doesn't throw java.lang.Throwable in jdk6, but throws java.lang.Throwable in harmony + +java.net: +Bad +method java.net.Authenticator.RequestorType.finalize(): doesn't throw java.lang.Throwable in jdk6, but throws java.lang.Throwable in harmony +method java.net.Proxy.Type.finalize(): doesn't throw java.lang.Throwable in jdk6, but throws java.lang.Throwable in harmony +Missing +class java.net.CookieManager: missing in harmony +class java.net.HttpCookie: missing in harmony +class java.net.IDN: missing in harmony +class java.net.InterfaceAddress: missing in harmony +interface java.net.CookiePolicy: missing in harmony +interface java.net.CookieStore: missing in harmony +method java.net.NetworkInterface.getHardwareAddress(): missing in harmony +method java.net.NetworkInterface.getInterfaceAddresses(): missing in harmony +method java.net.NetworkInterface.getMTU(): missing in harmony +method java.net.NetworkInterface.getParent(): missing in harmony +method java.net.NetworkInterface.getSubInterfaces(): missing in harmony +method java.net.NetworkInterface.isLoopback(): missing in harmony +method java.net.NetworkInterface.isPointToPoint(): missing in harmony +method java.net.NetworkInterface.isUp(): missing in harmony +method java.net.NetworkInterface.isVirtual(): missing in harmony +method java.net.NetworkInterface.supportsMulticast(): missing in harmony + +java.nio: +Missing +method java.nio.Buffer.array(): missing in harmony +method java.nio.Buffer.arrayOffset(): missing in harmony +method java.nio.Buffer.hasArray(): missing in harmony +method java.nio.Buffer.isDirect(): missing in harmony + -Missing +Bad +class java.security.UnrecoverableKeyException: subclass of java.security.UnrecoverableEntryException in jdk6, but not a subclass of java.security.UnrecoverableEntryException in harmony +method java.security.KeyRep.Type.finalize(): doesn't throw java.lang.Throwable in jdk6, but throws java.lang.Throwable in harmony +method java.security.Policy.getPermissions(java.security.CodeSource): concrete in jdk6, but abstract in harmony +method java.security.Policy.refresh(): concrete in jdk6, but abstract in harmony +Missing +class java.security.PolicySpi: missing in harmony +class java.security.URIParameter: missing in harmony +field java.security.Policy.UNSUPPORTED_EMPTY_COLLECTION: missing in harmony +interface java.security.Policy.Parameters: missing in harmony +method java.security.Policy.getInstance(java.lang.String, java.security.Policy.Parameters): missing in harmony +method java.security.Policy.getInstance(java.lang.String, java.security.Policy.Parameters, java.lang.String): missing in harmony +method java.security.Policy.getInstance(java.lang.String, java.security.Policy.Parameters, java.security.Provider): missing in harmony +method java.security.Policy.getParameters(): missing in harmony +method java.security.Policy.getProvider(): missing in harmony +method java.security.Policy.getType(): missing in harmony +java.util: +Bad +class java.util.LinkedList: implements java.util.Deque in jdk6, but doesn't implement java.util.Deque in harmony +class java.util.TreeMap: implements java.util.NavigableMap in jdk6, but doesn't implement java.util.NavigableMap in harmony +class java.util.TreeSet: implements java.util.NavigableSet in jdk6, but doesn't implement java.util.NavigableSet in harmony +method java.util.Formatter.BigDecimalLayoutForm.finalize(): doesn't throw java.lang.Throwable in jdk6, but throws java.lang.Throwable in harmony +Missing +class java.util.AbstractMap.SimpleEntry: missing in harmony +class java.util.AbstractMap.SimpleImmutableEntry: missing in harmony +class java.util.ArrayDeque: missing in harmony +class java.util.ResourceBundle.Control: missing in harmony +class java.util.ServiceConfigurationError: missing in harmony +class java.util.ServiceLoader: missing in harmony +constructor java.util.PropertyResourceBundle(java.io.Reader): missing in harmony +field java.util.Calendar.ALL_STYLES: missing in harmony +field java.util.Calendar.LONG: missing in harmony +field java.util.Calendar.SHORT: missing in harmony +field java.util.Locale.ROOT: missing in harmony +interface java.util.Deque: missing in harmony +interface java.util.NavigableMap: missing in harmony +interface java.util.NavigableSet: missing in harmony +method java.util.Arrays.binarySearch(T[], int, int, T, java.util.Comparator): missing in harmony +method java.util.Arrays.binarySearch(byte[], int, int, byte): missing in harmony +method java.util.Arrays.binarySearch(char[], int, int, char): missing in harmony +method java.util.Arrays.binarySearch(double[], int, int, double): missing in harmony +method java.util.Arrays.binarySearch(float[], int, int, float): missing in harmony +method java.util.Arrays.binarySearch(int[], int, int, int): missing in harmony +method java.util.Arrays.binarySearch(long[], int, int, long): missing in harmony +method java.util.Arrays.binarySearch(java.lang.Object[], int, int, java.lang.Object): missing in harmony +method java.util.Arrays.binarySearch(short[], int, int, short): missing in harmony +method java.util.Arrays.copyOf(T[], int): missing in harmony +method java.util.Arrays.copyOf(T2[], int, java.lang.Class): missing in harmony +method java.util.Arrays.copyOf(byte[], int): missing in harmony +method java.util.Arrays.copyOf(char[], int): missing in harmony +method java.util.Arrays.copyOf(double[], int): missing in harmony +method java.util.Arrays.copyOf(float[], int): missing in harmony +method java.util.Arrays.copyOf(int[], int): missing in harmony +method java.util.Arrays.copyOf(long[], int): missing in harmony +method java.util.Arrays.copyOf(short[], int): missing in harmony +method java.util.Arrays.copyOf(boolean[], int): missing in harmony +method java.util.Arrays.copyOfRange(T[], int, int): missing in harmony +method java.util.Arrays.copyOfRange(T2[], int, int, java.lang.Class): missing in harmony +method java.util.Arrays.copyOfRange(byte[], int, int): missing in harmony +method java.util.Arrays.copyOfRange(char[], int, int): missing in harmony +method java.util.Arrays.copyOfRange(double[], int, int): missing in harmony +method java.util.Arrays.copyOfRange(float[], int, int): missing in harmony +method java.util.Arrays.copyOfRange(int[], int, int): missing in harmony +method java.util.Arrays.copyOfRange(long[], int, int): missing in harmony +method java.util.Arrays.copyOfRange(short[], int, int): missing in harmony +method java.util.Arrays.copyOfRange(boolean[], int, int): missing in harmony +method java.util.Calendar.getDisplayName(int, int, java.util.Locale): missing in harmony +method java.util.Calendar.getDisplayNames(int, int, java.util.Locale): missing in harmony +method java.util.Collections.asLifoQueue(java.util.Deque): missing in harmony +method java.util.Collections.newSetFromMap(java.util.Map): missing in harmony +method java.util.LinkedList.descendingIterator(): missing in harmony +method java.util.LinkedList.offerFirst(T): missing in harmony +method java.util.LinkedList.offerLast(T): missing in harmony +method java.util.LinkedList.peekFirst(): missing in harmony +method java.util.LinkedList.peekLast(): missing in harmony +method java.util.LinkedList.pollFirst(): missing in harmony +method java.util.LinkedList.pollLast(): missing in harmony +method java.util.LinkedList.pop(): missing in harmony +method java.util.LinkedList.push(T): missing in harmony +method java.util.LinkedList.removeFirstOccurrence(java.lang.Object): missing in harmony +method java.util.LinkedList.removeLastOccurrence(java.lang.Object): missing in harmony +method java.util.Properties.load(java.io.Reader): missing in harmony +method java.util.Properties.store(java.io.Writer, java.lang.String): missing in harmony +method java.util.Properties.stringPropertyNames(): missing in harmony +method java.util.ResourceBundle.clearCache(): missing in harmony +method java.util.ResourceBundle.clearCache(java.lang.ClassLoader): missing in harmony +method java.util.ResourceBundle.containsKey(java.lang.String): missing in harmony +method java.util.ResourceBundle.getBundle(java.lang.String, java.util.Locale, java.lang.ClassLoader, java.util.ResourceBundle.Control): missing in harmony +method java.util.ResourceBundle.getBundle(java.lang.String, java.util.Locale, java.util.ResourceBundle.Control): missing in harmony +method java.util.ResourceBundle.getBundle(java.lang.String, java.util.ResourceBundle.Control): missing in harmony +method java.util.ResourceBundle.handleKeySet(): missing in harmony +method java.util.ResourceBundle.keySet(): missing in harmony +method java.util.Scanner.reset(): missing in harmony +method java.util.TreeMap.ceilingEntry(T): missing in harmony +method java.util.TreeMap.ceilingKey(T): missing in harmony +method java.util.TreeMap.descendingKeySet(): missing in harmony +method java.util.TreeMap.descendingMap(): missing in harmony +method java.util.TreeMap.firstEntry(): missing in harmony +method java.util.TreeMap.floorEntry(T): missing in harmony +method java.util.TreeMap.floorKey(T): missing in harmony +method java.util.TreeMap.headMap(T, boolean): missing in harmony +method java.util.TreeMap.higherEntry(T): missing in harmony +method java.util.TreeMap.higherKey(T): missing in harmony +method java.util.TreeMap.lastEntry(): missing in harmony +method java.util.TreeMap.lowerEntry(T): missing in harmony +method java.util.TreeMap.lowerKey(T): missing in harmony +method java.util.TreeMap.navigableKeySet(): missing in harmony +method java.util.TreeMap.pollFirstEntry(): missing in harmony +method java.util.TreeMap.pollLastEntry(): missing in harmony +method java.util.TreeMap.subMap(T, boolean, T, boolean): missing in harmony +method java.util.TreeMap.tailMap(T, boolean): missing in harmony +method java.util.TreeSet.ceiling(T): missing in harmony +method java.util.TreeSet.descendingIterator(): missing in harmony +method java.util.TreeSet.descendingSet(): missing in harmony +method java.util.TreeSet.floor(T): missing in harmony +method java.util.TreeSet.headSet(T, boolean): missing in harmony +method java.util.TreeSet.higher(T): missing in harmony +method java.util.TreeSet.lower(T): missing in harmony +method java.util.TreeSet.pollFirst(): missing in harmony +method java.util.TreeSet.pollLast(): missing in harmony +method java.util.TreeSet.subSet(T, boolean, T, boolean): missing in harmony +method java.util.TreeSet.tailSet(T, boolean): missing in harmony + +method java.util.concurrent.TimeUnit.finalize(): doesn't throw java.lang.Throwable in jdk6, but throws java.lang.Throwable in harmony +java.util.spi: +Missing +package java.util.spi: missing in harmony + +java.util.zip: +Missing +class java.util.zip.DeflaterInputStream: missing in harmony +class java.util.zip.InflaterOutputStream: missing in harmony +class java.util.zip.ZipError: missing in harmony + +method javax.net.ssl.SSLEngineResult.HandshakeStatus.finalize(): doesn't throw java.lang.Throwable in jdk6, but throws java.lang.Throwable in harmony +method javax.net.ssl.SSLEngineResult.Status.finalize(): doesn't throw java.lang.Throwable in jdk6, but throws java.lang.Throwable in harmony +interface javax.security.auth.login.Configuration.Parameters: missing in harmony +javax.security.sasl: +Missing +field javax.security.sasl.Sasl.CREDENTIALS: missing in harmony + -method javax.sql.rowset.serial.SerialBlob.setBytes(long, byte[]): not implemented in harmony -method javax.sql.rowset.serial.SerialBlob.setBytes(long, byte[], int, int): not implemented in harmony +method javax.swing.JTable.PrintMode.finalize(): doesn't throw java.lang.Throwable in jdk6, but throws java.lang.Throwable in harmony +method javax.swing.text.html.FormSubmitEvent.MethodType.finalize(): doesn't throw java.lang.Throwable in jdk6, but throws java.lang.Throwable in harmony Japi diff harmony vs jdk6: Full results: http://www.kaffe.org/~stuart/japi/htmlout/h-harmony-jdk6.html Changes since last run: -Comparison run at Fri Dec 22 12:15:00 2006 GMT -harmony API scanned at 2006/12/22 11:20:34 GMT -jdk6 API scanned at 2006/12/22 05:25:25 EST +Comparison run at Sat Dec 23 12:07:02 2006 GMT +harmony API scanned at 2006/12/22 11:59:43 GMT +jdk6 API scanned at 2006/12/23 05:24:28 EST -java.lang: 99.96% good, 0.03% minor -java.lang.annotation: 100% good -java.lang.instrument: 100% good -java.lang.management: 100% good, 2.65% abs.add +java.lang: 99.89% good, 0.03% minor, 0.07% bad +java.lang.annotation: 98.67% good, 1.32% bad +java.lang.instrument: 100% good, 10.95% abs.add +java.lang.management: 99.55% good, 0.44% bad, 2.65% abs.add -java.math: 95.75% good, 3.77% bad, 0.47% missing -java.net: 100% good +java.math: 95.28% good, 4.24% bad, 0.47% missing +java.net: 99.8% good, 0.13% bad, 0.06% missing -java.security: 100% good +java.security: 99.93% good, 0.06% bad -java.util: 100% good -java.util.concurrent: 99.25% good, 0.74% bad, 0.1% abs.add +java.util: 99.95% good, 0.04% bad +java.util.concurrent: 99.14% good, 0.85% bad, 0.1% abs.add -java.util.spi: 100% good -javax.accessibility: 98.32% good, 1.34% bad, 0.33% missing +javax.accessibility: 98.29% good, 1.36% bad, 0.34% missing -javax.net.ssl: 100% good +javax.net.ssl: 99.75% good, 0.24% bad -javax.swing: 99.53% good, 0.46% minor, 0% missing +javax.swing: 99.53% good, 0.46% minor, 0% bad, 0% missing -javax.swing.text.html: 99.24% good, 0.66% minor, 0.09% bad +javax.swing.text.html: 99.19% good, 0.66% minor, 0.14% bad -Total: 91.15% good, 0.27% minor, 0.09% bad, 8.47% missing, 0.15% abs.add +Total: 91.1% good, 0.27% minor, 0.1% bad, 8.51% missing, 0.15% abs.add -Methods: 7 minor, 32 bad, 68 missing, 225 abs.add. -Constructors: 7 bad, 7 missing. +Methods: 7 minor, 48 bad, 68 missing, 233 abs.add. +Constructors: 7 bad, 8 missing. -class java.lang.Enum: SerialVersionUID=8050472724494888780 in harmony, but SerialVersionUID=5861450562797534454 in jdk6 +class java.lang.Enum: SerialVersionUID=-4300926546619394005 in harmony, but SerialVersionUID=5861450562797534454 in jdk6 +Bad +method java.lang.Enum.finalize(): nonfinal in harmony, but final in jdk6 +method java.lang.Enum.finalize(): throws java.lang.Throwable in harmony, but doesn't throw java.lang.Throwable in jdk6 +method java.lang.Thread.State.finalize(): throws java.lang.Throwable in harmony, but doesn't throw java.lang.Throwable in jdk6 + +java.lang.annotation: +Bad +method java.lang.annotation.ElementType.finalize(): throws java.lang.Throwable in harmony, but doesn't throw java.lang.Throwable in jdk6 +method java.lang.annotation.RetentionPolicy.finalize(): throws java.lang.Throwable in harmony, but doesn't throw java.lang.Throwable in jdk6 + +java.lang.instrument: +Abs.add +method java.lang.instrument.Instrumentation.addTransformer(java.lang.instrument.ClassFileTransformer, boolean): new interface method in jdk6 +method java.lang.instrument.Instrumentation.appendToBootstrapClassLoaderSearch(java.util.jar.JarFile): new interface method in jdk6 +method java.lang.instrument.Instrumentation.appendToSystemClassLoaderSearch(java.util.jar.JarFile): new interface method in jdk6 +method java.lang.instrument.Instrumentation.isModifiableClass(java.lang.Class): new interface method in jdk6 +method java.lang.instrument.Instrumentation.isNativeMethodPrefixSupported(): new interface method in jdk6 +method java.lang.instrument.Instrumentation.isRetransformClassesSupported(): new interface method in jdk6 +method java.lang.instrument.Instrumentation.retransformClasses(java.lang.Class[]): new interface method in jdk6 +method java.lang.instrument.Instrumentation.setNativeMethodPrefix(java.lang.instrument.ClassFileTransformer, java.lang.String): new interface method in jdk6 +Bad +method java.lang.management.MemoryType.finalize(): throws java.lang.Throwable in harmony, but doesn't throw java.lang.Throwable in jdk6 +method java.math.RoundingMode.finalize(): throws java.lang.Throwable in harmony, but doesn't throw java.lang.Throwable in jdk6 +java.net: +Bad +method java.net.Authenticator.RequestorType.finalize(): throws java.lang.Throwable in harmony, but doesn't throw java.lang.Throwable in jdk6 +method java.net.Proxy.Type.finalize(): throws java.lang.Throwable in harmony, but doesn't throw java.lang.Throwable in jdk6 +Missing +constructor java.net.ServerSocket(java.net.SocketImpl): missing in jdk6 + +java.security: +Bad +method java.security.KeyRep.Type.finalize(): throws java.lang.Throwable in harmony, but doesn't throw java.lang.Throwable in jdk6 + +java.util: +Bad +method java.util.Formatter.BigDecimalLayoutForm.finalize(): throws java.lang.Throwable in harmony, but doesn't throw java.lang.Throwable in jdk6 + +method java.util.concurrent.TimeUnit.finalize(): throws java.lang.Throwable in harmony, but doesn't throw java.lang.Throwable in jdk6 +javax.net.ssl: +Bad +method javax.net.ssl.SSLEngineResult.HandshakeStatus.finalize(): throws java.lang.Throwable in harmony, but doesn't throw java.lang.Throwable in jdk6 +method javax.net.ssl.SSLEngineResult.Status.finalize(): throws java.lang.Throwable in harmony, but doesn't throw java.lang.Throwable in jdk6 + +Bad +method javax.swing.JTable.PrintMode.finalize(): throws java.lang.Throwable in harmony, but doesn't throw java.lang.Throwable in jdk6 +method javax.swing.text.html.FormSubmitEvent.MethodType.finalize(): throws java.lang.Throwable in harmony, but doesn't throw java.lang.Throwable in jdk6 Japi diff jdk7 vs harmony: Full results: http://www.kaffe.org/~stuart/japi/htmlout/h-jdk7-harmony.html Changes since last run: -Comparison run at Fri Dec 22 12:17:39 2006 GMT -jdk7 API scanned at 2006/12/22 05:39:17 EST -harmony API scanned at 2006/12/22 11:20:34 GMT +Comparison run at Sat Dec 23 12:09:31 2006 GMT +jdk7 API scanned at 2006/12/23 05:35:32 EST +harmony API scanned at 2006/12/22 11:59:43 GMT -java.lang: 99.6% good, 0.03% minor, 0.32% bad, 0.03% missing -java.lang.annotation: 100% good -java.lang.instrument: 100% good -java.lang.management: 84.32% good, 15.67% missing +java.lang: 98.43% good, 0.03% minor, 0.39% bad, 1.12% missing +java.lang.annotation: 98.67% good, 1.32% bad +java.lang.instrument: 90.12% good, 9.87% missing +java.lang.management: 83.95% good, 0.37% bad, 15.67% missing -java.lang.reflect: 100% good +java.lang.reflect: 99.73% good, 0.26% bad -java.io: 100% good -java.math: 100% good -java.net: 99.87% good, 0.12% missing -java.nio: 100% good +java.io: 96.88% good, 0.04% minor, 3.06% missing +java.math: 99.52% good, 0.47% bad +java.net: 92.91% good, 0.12% bad, 6.96% missing +java.nio: 99.32% good, 0.67% missing -java.security: 99.87% good, 0.12% missing +java.security: 97.28% good, 0.24% bad, 2.46% missing -java.util: 100% good -java.util.concurrent: 75.45% good, 0.81% bad, 23.73% missing, 0.08% abs.add +java.util: 87.47% good, 0.14% bad, 12.37% missing +java.util.concurrent: 75.36% good, 0.9% bad, 23.73% missing, 0.08% abs.add -java.util.spi: 100% good -java.util.zip: 100% good -javax.accessibility: 99.16% good, 0.83% missing +java.util.spi: 100% missing +java.util.zip: 88.85% good, 11.14% missing +javax.accessibility: 99.15% good, 0.84% missing -javax.net.ssl: 95.72% good, 0.35% bad, 3.91% missing +javax.net.ssl: 95.48% good, 0.59% bad, 3.91% missing -javax.security.auth.login: 92.83% good, 0.32% bad, 6.84% missing +javax.security.auth.login: 92.5% good, 0.32% bad, 7.16% missing -javax.security.sasl: 100% good +javax.security.sasl: 99.37% good, 0.62% missing -javax.sql.rowset.serial: 36.32% good, 1.22% bad, 62.44% missing +javax.sql.rowset.serial: 37.14% good, 1.22% bad, 61.63% missing -javax.swing.text.html: 99.9% good, 0.09% bad +javax.swing.text.html: 99.85% good, 0.14% bad -Total: 89.49% good, 0.06% minor, 0.2% bad, 10.23% missing, 0.02% abs.add +Total: 88.97% good, 0.06% minor, 0.22% bad, 10.73% missing, 0.02% abs.add -Packages: 41 missing. -Classes: 59 minor, 60 bad, 115 missing. -Interfaces: 42 bad, 26 missing. +Packages: 42 missing. +Classes: 59 minor, 64 bad, 132 missing. +Interfaces: 42 bad, 33 missing. -Fields: 8 minor, 17 bad, 80 missing. -Methods: 45 minor, 189 bad, 952 missing, 39 abs.add. -Constructors: 4 minor, 48 bad, 65 missing. +Fields: 8 minor, 17 bad, 92 missing. +Methods: 46 minor, 207 bad, 1098 missing, 39 abs.add. +Constructors: 4 minor, 48 bad, 74 missing. -class java.lang.Enum: SerialVersionUID=5861450562797534454 in jdk7, but SerialVersionUID=8050472724494888780 in harmony +class java.lang.Enum: SerialVersionUID=5861450562797534454 in jdk7, but SerialVersionUID=-4300926546619394005 in harmony +method java.lang.Enum.finalize(): doesn't throw java.lang.Throwable in jdk7, but throws java.lang.Throwable in harmony +method java.lang.Thread.State.finalize(): doesn't throw java.lang.Throwable in jdk7, but throws java.lang.Throwable in harmony +constructor java.lang.String(byte[], int, int, java.nio.charset.Charset): missing in harmony +constructor java.lang.String(byte[], java.nio.charset.Charset): missing in harmony +field java.lang.Double.MAX_EXPONENT: missing in harmony +field java.lang.Double.MIN_EXPONENT: missing in harmony +field java.lang.Double.MIN_NORMAL: missing in harmony +field java.lang.Float.MAX_EXPONENT: missing in harmony +field java.lang.Float.MIN_EXPONENT: missing in harmony +field java.lang.Float.MIN_NORMAL: missing in harmony +method java.lang.Math.copySign(double, double): missing in harmony +method java.lang.Math.copySign(float, float): missing in harmony +method java.lang.Math.getExponent(double): missing in harmony +method java.lang.Math.getExponent(float): missing in harmony +method java.lang.Math.nextAfter(double, double): missing in harmony +method java.lang.Math.nextAfter(float, double): missing in harmony +method java.lang.Math.nextUp(double): missing in harmony +method java.lang.Math.nextUp(float): missing in harmony +method java.lang.Math.scalb(double, int): missing in harmony +method java.lang.Math.scalb(float, int): missing in harmony +method java.lang.StrictMath.copySign(double, double): missing in harmony +method java.lang.StrictMath.copySign(float, float): missing in harmony +method java.lang.StrictMath.getExponent(double): missing in harmony +method java.lang.StrictMath.getExponent(float): missing in harmony +method java.lang.StrictMath.nextAfter(double, double): missing in harmony +method java.lang.StrictMath.nextAfter(float, double): missing in harmony +method java.lang.StrictMath.nextUp(double): missing in harmony +method java.lang.StrictMath.nextUp(float): missing in harmony +method java.lang.StrictMath.scalb(double, int): missing in harmony +method java.lang.StrictMath.scalb(float, int): missing in harmony +method java.lang.String.getBytes(java.nio.charset.Charset): missing in harmony +method java.lang.String.isEmpty(): missing in harmony +java.lang.annotation: +Bad +method java.lang.annotation.ElementType.finalize(): doesn't throw java.lang.Throwable in jdk7, but throws java.lang.Throwable in harmony +method java.lang.annotation.RetentionPolicy.finalize(): doesn't throw java.lang.Throwable in jdk7, but throws java.lang.Throwable in harmony + +java.lang.instrument: +Missing +method java.lang.instrument.Instrumentation.addTransformer(java.lang.instrument.ClassFileTransformer, boolean): missing in harmony +method java.lang.instrument.Instrumentation.appendToBootstrapClassLoaderSearch(java.util.jar.JarFile): missing in harmony +method java.lang.instrument.Instrumentation.appendToSystemClassLoaderSearch(java.util.jar.JarFile): missing in harmony +method java.lang.instrument.Instrumentation.isModifiableClass(java.lang.Class): missing in harmony +method java.lang.instrument.Instrumentation.isNativeMethodPrefixSupported(): missing in harmony +method java.lang.instrument.Instrumentation.isRetransformClassesSupported(): missing in harmony +method java.lang.instrument.Instrumentation.retransformClasses(java.lang.Class[]): missing in harmony +method java.lang.instrument.Instrumentation.setNativeMethodPrefix(java.lang.instrument.ClassFileTransformer, java.lang.String): missing in harmony + +Bad +method java.lang.management.MemoryType.finalize(): doesn't throw java.lang.Throwable in jdk7, but throws java.lang.Throwable in harmony +java.lang.reflect: +Bad +method java.lang.reflect.Member.getDeclaringClass(): type java.lang.Class in jdk7, but type java.lang.Class in harmony + +java.io: +Minor +method java.io.File.toURL(): deprecated in jdk7, but not deprecated in harmony +Missing +class java.io.Console: missing in harmony +class java.io.IOError: missing in harmony +constructor java.io.IOException(java.lang.String, java.lang.Throwable): missing in harmony +constructor java.io.IOException(java.lang.Throwable): missing in harmony +constructor java.io.PipedInputStream(int): missing in harmony +constructor java.io.PipedInputStream(java.io.PipedOutputStream, int): missing in harmony +constructor java.io.PipedReader(int): missing in harmony +constructor java.io.PipedReader(java.io.PipedWriter, int): missing in harmony +method java.io.File.canExecute(): missing in harmony +method java.io.File.getFreeSpace(): missing in harmony +method java.io.File.getTotalSpace(): missing in harmony +method java.io.File.getUsableSpace(): missing in harmony +method java.io.File.setExecutable(boolean): missing in harmony +method java.io.File.setExecutable(boolean, boolean): missing in harmony +method java.io.File.setReadable(boolean): missing in harmony +method java.io.File.setReadable(boolean, boolean): missing in harmony +method java.io.File.setWritable(boolean): missing in harmony +method java.io.File.setWritable(boolean, boolean): missing in harmony +method java.io.ObjectStreamClass.lookupAny(java.lang.Class): missing in harmony +method java.io.PrintStream.clearError(): missing in harmony +method java.io.PrintWriter.clearError(): missing in harmony + +java.math: +Bad +method java.math.RoundingMode.finalize(): doesn't throw java.lang.Throwable in jdk7, but throws java.lang.Throwable in harmony + +Bad +method java.net.Authenticator.RequestorType.finalize(): doesn't throw java.lang.Throwable in jdk7, but throws java.lang.Throwable in harmony +method java.net.Proxy.Type.finalize(): doesn't throw java.lang.Throwable in jdk7, but throws java.lang.Throwable in harmony +class java.net.CookieManager: missing in harmony +class java.net.HttpCookie: missing in harmony +class java.net.IDN: missing in harmony +class java.net.InterfaceAddress: missing in harmony +interface java.net.CookiePolicy: missing in harmony +interface java.net.CookieStore: missing in harmony +method java.net.NetworkInterface.getHardwareAddress(): missing in harmony +method java.net.NetworkInterface.getInterfaceAddresses(): missing in harmony +method java.net.NetworkInterface.getMTU(): missing in harmony +method java.net.NetworkInterface.getParent(): missing in harmony +method java.net.NetworkInterface.getSubInterfaces(): missing in harmony +method java.net.NetworkInterface.isLoopback(): missing in harmony +method java.net.NetworkInterface.isPointToPoint(): missing in harmony +method java.net.NetworkInterface.isUp(): missing in harmony +method java.net.NetworkInterface.isVirtual(): missing in harmony +method java.net.NetworkInterface.supportsMulticast(): missing in harmony + +java.nio: +Missing +method java.nio.Buffer.array(): missing in harmony +method java.nio.Buffer.arrayOffset(): missing in harmony +method java.nio.Buffer.hasArray(): missing in harmony +method java.nio.Buffer.isDirect(): missing in harmony -Missing +Bad +class java.security.UnrecoverableKeyException: subclass of java.security.UnrecoverableEntryException in jdk7, but not a subclass of java.security.UnrecoverableEntryException in harmony +method java.security.KeyRep.Type.finalize(): doesn't throw java.lang.Throwable in jdk7, but throws java.lang.Throwable in harmony +method java.security.Policy.getPermissions(java.security.CodeSource): concrete in jdk7, but abstract in harmony +method java.security.Policy.refresh(): concrete in jdk7, but abstract in harmony +Missing +class java.security.PolicySpi: missing in harmony +class java.security.URIParameter: missing in harmony +field java.security.Policy.UNSUPPORTED_EMPTY_COLLECTION: missing in harmony +interface java.security.Policy.Parameters: missing in harmony +method java.security.Policy.getInstance(java.lang.String, java.security.Policy.Parameters): missing in harmony +method java.security.Policy.getInstance(java.lang.String, java.security.Policy.Parameters, java.lang.String): missing in harmony +method java.security.Policy.getInstance(java.lang.String, java.security.Policy.Parameters, java.security.Provider): missing in harmony +method java.security.Policy.getParameters(): missing in harmony +method java.security.Policy.getProvider(): missing in harmony +method java.security.Policy.getType(): missing in harmony +java.util: +Bad +class java.util.LinkedList: implements java.util.Deque in jdk7, but doesn't implement java.util.Deque in harmony +class java.util.TreeMap: implements java.util.NavigableMap in jdk7, but doesn't implement java.util.NavigableMap in harmony +class java.util.TreeSet: implements java.util.NavigableSet in jdk7, but doesn't implement java.util.NavigableSet in harmony +method java.util.Formatter.BigDecimalLayoutForm.finalize(): doesn't throw java.lang.Throwable in jdk7, but throws java.lang.Throwable in harmony +Missing +class java.util.AbstractMap.SimpleEntry: missing in harmony +class java.util.AbstractMap.SimpleImmutableEntry: missing in harmony +class java.util.ArrayDeque: missing in harmony +class java.util.ResourceBundle.Control: missing in harmony +class java.util.ServiceConfigurationError: missing in harmony +class java.util.ServiceLoader: missing in harmony +constructor java.util.PropertyResourceBundle(java.io.Reader): missing in harmony +field java.util.Calendar.ALL_STYLES: missing in harmony +field java.util.Calendar.LONG: missing in harmony +field java.util.Calendar.SHORT: missing in harmony +field java.util.Locale.ROOT: missing in harmony +interface java.util.Deque: missing in harmony +interface java.util.NavigableMap: missing in harmony +interface java.util.NavigableSet: missing in harmony +method java.util.Arrays.binarySearch(T[], int, int, T, java.util.Comparator): missing in harmony +method java.util.Arrays.binarySearch(byte[], int, int, byte): missing in harmony +method java.util.Arrays.binarySearch(char[], int, int, char): missing in harmony +method java.util.Arrays.binarySearch(double[], int, int, double): missing in harmony +method java.util.Arrays.binarySearch(float[], int, int, float): missing in harmony +method java.util.Arrays.binarySearch(int[], int, int, int): missing in harmony +method java.util.Arrays.binarySearch(long[], int, int, long): missing in harmony +method java.util.Arrays.binarySearch(java.lang.Object[], int, int, java.lang.Object): missing in harmony +method java.util.Arrays.binarySearch(short[], int, int, short): missing in harmony +method java.util.Arrays.copyOf(T[], int): missing in harmony +method java.util.Arrays.copyOf(T2[], int, java.lang.Class): missing in harmony +method java.util.Arrays.copyOf(byte[], int): missing in harmony +method java.util.Arrays.copyOf(char[], int): missing in harmony +method java.util.Arrays.copyOf(double[], int): missing in harmony +method java.util.Arrays.copyOf(float[], int): missing in harmony +method java.util.Arrays.copyOf(int[], int): missing in harmony +method java.util.Arrays.copyOf(long[], int): missing in harmony +method java.util.Arrays.copyOf(short[], int): missing in harmony +method java.util.Arrays.copyOf(boolean[], int): missing in harmony +method java.util.Arrays.copyOfRange(T[], int, int): missing in harmony +method java.util.Arrays.copyOfRange(T2[], int, int, java.lang.Class): missing in harmony +method java.util.Arrays.copyOfRange(byte[], int, int): missing in harmony +method java.util.Arrays.copyOfRange(char[], int, int): missing in harmony +method java.util.Arrays.copyOfRange(double[], int, int): missing in harmony +method java.util.Arrays.copyOfRange(float[], int, int): missing in harmony +method java.util.Arrays.copyOfRange(int[], int, int): missing in harmony +method java.util.Arrays.copyOfRange(long[], int, int): missing in harmony +method java.util.Arrays.copyOfRange(short[], int, int): missing in harmony +method java.util.Arrays.copyOfRange(boolean[], int, int): missing in harmony +method java.util.Calendar.getDisplayName(int, int, java.util.Locale): missing in harmony +method java.util.Calendar.getDisplayNames(int, int, java.util.Locale): missing in harmony +method java.util.Collections.asLifoQueue(java.util.Deque): missing in harmony +method java.util.Collections.newSetFromMap(java.util.Map): missing in harmony +method java.util.LinkedList.descendingIterator(): missing in harmony +method java.util.LinkedList.offerFirst(T): missing in harmony +method java.util.LinkedList.offerLast(T): missing in harmony +method java.util.LinkedList.peekFirst(): missing in harmony +method java.util.LinkedList.peekLast(): missing in harmony +method java.util.LinkedList.pollFirst(): missing in harmony +method java.util.LinkedList.pollLast(): missing in harmony +method java.util.LinkedList.pop(): missing in harmony +method java.util.LinkedList.push(T): missing in harmony +method java.util.LinkedList.removeFirstOccurrence(java.lang.Object): missing in harmony +method java.util.LinkedList.removeLastOccurrence(java.lang.Object): missing in harmony +method java.util.Properties.load(java.io.Reader): missing in harmony +method java.util.Properties.store(java.io.Writer, java.lang.String): missing in harmony +method java.util.Properties.stringPropertyNames(): missing in harmony +method java.util.ResourceBundle.clearCache(): missing in harmony +method java.util.ResourceBundle.clearCache(java.lang.ClassLoader): missing in harmony +method java.util.ResourceBundle.containsKey(java.lang.String): missing in harmony +method java.util.ResourceBundle.getBundle(java.lang.String, java.util.Locale, java.lang.ClassLoader, java.util.ResourceBundle.Control): missing in harmony +method java.util.ResourceBundle.getBundle(java.lang.String, java.util.Locale, java.util.ResourceBundle.Control): missing in harmony +method java.util.ResourceBundle.getBundle(java.lang.String, java.util.ResourceBundle.Control): missing in harmony +method java.util.ResourceBundle.handleKeySet(): missing in harmony +method java.util.ResourceBundle.keySet(): missing in harmony +method java.util.Scanner.reset(): missing in harmony +method java.util.TreeMap.ceilingEntry(T): missing in harmony +method java.util.TreeMap.ceilingKey(T): missing in harmony +method java.util.TreeMap.descendingKeySet(): missing in harmony +method java.util.TreeMap.descendingMap(): missing in harmony +method java.util.TreeMap.firstEntry(): missing in harmony +method java.util.TreeMap.floorEntry(T): missing in harmony +method java.util.TreeMap.floorKey(T): missing in harmony +method java.util.TreeMap.headMap(T, boolean): missing in harmony +method java.util.TreeMap.higherEntry(T): missing in harmony +method java.util.TreeMap.higherKey(T): missing in harmony +method java.util.TreeMap.lastEntry(): missing in harmony +method java.util.TreeMap.lowerEntry(T): missing in harmony +method java.util.TreeMap.lowerKey(T): missing in harmony +method java.util.TreeMap.navigableKeySet(): missing in harmony +method java.util.TreeMap.pollFirstEntry(): missing in harmony +method java.util.TreeMap.pollLastEntry(): missing in harmony +method java.util.TreeMap.subMap(T, boolean, T, boolean): missing in harmony +method java.util.TreeMap.tailMap(T, boolean): missing in harmony +method java.util.TreeSet.ceiling(T): missing in harmony +method java.util.TreeSet.descendingIterator(): missing in harmony +method java.util.TreeSet.descendingSet(): missing in harmony +method java.util.TreeSet.floor(T): missing in harmony +method java.util.TreeSet.headSet(T, boolean): missing in harmony +method java.util.TreeSet.higher(T): missing in harmony +method java.util.TreeSet.lower(T): missing in harmony +method java.util.TreeSet.pollFirst(): missing in harmony +method java.util.TreeSet.pollLast(): missing in harmony +method java.util.TreeSet.subSet(T, boolean, T, boolean): missing in harmony +method java.util.TreeSet.tailSet(T, boolean): missing in harmony + +method java.util.concurrent.TimeUnit.finalize(): doesn't throw java.lang.Throwable in jdk7, but throws java.lang.Throwable in harmony +java.util.spi: +Missing +package java.util.spi: missing in harmony + +java.util.zip: +Missing +class java.util.zip.DeflaterInputStream: missing in harmony +class java.util.zip.InflaterOutputStream: missing in harmony +class java.util.zip.ZipError: missing in harmony + +method javax.net.ssl.SSLEngineResult.HandshakeStatus.finalize(): doesn't throw java.lang.Throwable in jdk7, but throws java.lang.Throwable in harmony +method javax.net.ssl.SSLEngineResult.Status.finalize(): doesn't throw java.lang.Throwable in jdk7, but throws java.lang.Throwable in harmony +interface javax.security.auth.login.Configuration.Parameters: missing in harmony +javax.security.sasl: +Missing +field javax.security.sasl.Sasl.CREDENTIALS: missing in harmony + -method javax.sql.rowset.serial.SerialBlob.setBytes(long, byte[]): not implemented in harmony -method javax.sql.rowset.serial.SerialBlob.setBytes(long, byte[], int, int): not implemented in harmony +method javax.swing.JTable.PrintMode.finalize(): doesn't throw java.lang.Throwable in jdk7, but throws java.lang.Throwable in harmony +method javax.swing.text.html.FormSubmitEvent.MethodType.finalize(): doesn't throw java.lang.Throwable in jdk7, but throws java.lang.Throwable in harmony Japi diff harmony vs jdk7: Full results: http://www.kaffe.org/~stuart/japi/htmlout/h-harmony-jdk7.html Changes since last run: -Comparison run at Fri Dec 22 12:20:16 2006 GMT -harmony API scanned at 2006/12/22 11:20:34 GMT -jdk7 API scanned at 2006/12/22 05:39:17 EST +Comparison run at Sat Dec 23 12:11:56 2006 GMT +harmony API scanned at 2006/12/22 11:59:43 GMT +jdk7 API scanned at 2006/12/23 05:35:32 EST -java.lang: 99.96% good, 0.03% minor -java.lang.annotation: 100% good -java.lang.instrument: 100% good -java.lang.management: 100% good, 2.65% abs.add +java.lang: 99.89% good, 0.03% minor, 0.07% bad +java.lang.annotation: 98.67% good, 1.32% bad +java.lang.instrument: 100% good, 10.95% abs.add +java.lang.management: 99.55% good, 0.44% bad, 2.65% abs.add -java.math: 95.75% good, 3.77% bad, 0.47% missing -java.net: 100% good +java.math: 95.28% good, 4.24% bad, 0.47% missing +java.net: 99.8% good, 0.13% bad, 0.06% missing -java.security: 100% good +java.security: 99.93% good, 0.06% bad -java.util: 100% good -java.util.concurrent: 99.25% good, 0.74% bad, 0.1% abs.add +java.util: 99.95% good, 0.04% bad +java.util.concurrent: 99.14% good, 0.85% bad, 0.1% abs.add -java.util.spi: 100% good -javax.accessibility: 98.32% good, 1.34% bad, 0.33% missing +javax.accessibility: 98.29% good, 1.36% bad, 0.34% missing -javax.net.ssl: 100% good +javax.net.ssl: 99.75% good, 0.24% bad -javax.swing: 99.53% good, 0.46% minor, 0% missing +javax.swing: 99.53% good, 0.46% minor, 0% bad, 0% missing -javax.swing.text.html: 99.24% good, 0.66% minor, 0.09% bad +javax.swing.text.html: 99.19% good, 0.66% minor, 0.14% bad -Total: 91.15% good, 0.27% minor, 0.09% bad, 8.47% missing, 0.15% abs.add +Total: 91.1% good, 0.27% minor, 0.1% bad, 8.51% missing, 0.15% abs.add -Methods: 7 minor, 32 bad, 68 missing, 225 abs.add. -Constructors: 7 bad, 7 missing. +Methods: 7 minor, 48 bad, 68 missing, 233 abs.add. +Constructors: 7 bad, 8 missing. -class java.lang.Enum: SerialVersionUID=8050472724494888780 in harmony, but SerialVersionUID=5861450562797534454 in jdk7 +class java.lang.Enum: SerialVersionUID=-4300926546619394005 in harmony, but SerialVersionUID=5861450562797534454 in jdk7 +Bad +method java.lang.Enum.finalize(): nonfinal in harmony, but final in jdk7 +method java.lang.Enum.finalize(): throws java.lang.Throwable in harmony, but doesn't throw java.lang.Throwable in jdk7 +method java.lang.Thread.State.finalize(): throws java.lang.Throwable in harmony, but doesn't throw java.lang.Throwable in jdk7 + +java.lang.annotation: +Bad +method java.lang.annotation.ElementType.finalize(): throws java.lang.Throwable in harmony, but doesn't throw java.lang.Throwable in jdk7 +method java.lang.annotation.RetentionPolicy.finalize(): throws java.lang.Throwable in harmony, but doesn't throw java.lang.Throwable in jdk7 + +java.lang.instrument: +Abs.add +method java.lang.instrument.Instrumentation.addTransformer(java.lang.instrument.ClassFileTransformer, boolean): new interface method in jdk7 +method java.lang.instrument.Instrumentation.appendToBootstrapClassLoaderSearch(java.util.jar.JarFile): new interface method in jdk7 +method java.lang.instrument.Instrumentation.appendToSystemClassLoaderSearch(java.util.jar.JarFile): new interface method in jdk7 +method java.lang.instrument.Instrumentation.isModifiableClass(java.lang.Class): new interface method in jdk7 +method java.lang.instrument.Instrumentation.isNativeMethodPrefixSupported(): new interface method in jdk7 +method java.lang.instrument.Instrumentation.isRetransformClassesSupported(): new interface method in jdk7 +method java.lang.instrument.Instrumentation.retransformClasses(java.lang.Class[]): new interface method in jdk7 +method java.lang.instrument.Instrumentation.setNativeMethodPrefix(java.lang.instrument.ClassFileTransformer, java.lang.String): new interface method in jdk7 +Bad +method java.lang.management.MemoryType.finalize(): throws java.lang.Throwable in harmony, but doesn't throw java.lang.Throwable in jdk7 +method java.math.RoundingMode.finalize(): throws java.lang.Throwable in harmony, but doesn't throw java.lang.Throwable in jdk7 +java.net: +Bad +method java.net.Authenticator.RequestorType.finalize(): throws java.lang.Throwable in harmony, but doesn't throw java.lang.Throwable in jdk7 +method java.net.Proxy.Type.finalize(): throws java.lang.Throwable in harmony, but doesn't throw java.lang.Throwable in jdk7 +Missing +constructor java.net.ServerSocket(java.net.SocketImpl): missing in jdk7 + +java.security: +Bad +method java.security.KeyRep.Type.finalize(): throws java.lang.Throwable in harmony, but doesn't throw java.lang.Throwable in jdk7 + +java.util: +Bad +method java.util.Formatter.BigDecimalLayoutForm.finalize(): throws java.lang.Throwable in harmony, but doesn't throw java.lang.Throwable in jdk7 + +method java.util.concurrent.TimeUnit.finalize(): throws java.lang.Throwable in harmony, but doesn't throw java.lang.Throwable in jdk7 +javax.net.ssl: +Bad +method javax.net.ssl.SSLEngineResult.HandshakeStatus.finalize(): throws java.lang.Throwable in harmony, but doesn't throw java.lang.Throwable in jdk7 +method javax.net.ssl.SSLEngineResult.Status.finalize(): throws java.lang.Throwable in harmony, but doesn't throw java.lang.Throwable in jdk7 + +Bad +method javax.swing.JTable.PrintMode.finalize(): throws java.lang.Throwable in harmony, but doesn't throw java.lang.Throwable in jdk7 +method javax.swing.text.html.FormSubmitEvent.MethodType.finalize(): throws java.lang.Throwable in harmony, but doesn't throw java.lang.Throwable in jdk7