jakartaredhat / netbeans-apitest

SigTest is the tool for checking incompatibilities between different versions of the same API.
http://wiki.apidesign.org/wiki/SigTest
0 stars 0 forks source link

Ensure that -IgnoreJDKClass can ignore package names as well as class names. #2

Closed scottmarlow closed 7 months ago

scottmarlow commented 8 months ago

I locally tried updating https://github.com/jakartaee/platform-tck/blob/10.0.x/src/com/sun/ts/tests/signaturetest/SigTestDriver.java#L64 from:

private static final String[] excludeJdkClasses = {
          "java.util.Map",
          "java.lang.Object",
          "java.io.ByteArrayInputStream",
          "java.io.InputStream",
          "java.lang.Deprecated",
          "java.io.Writer",
          "java.io.OutputStream",
          "java.util.List",
          "java.util.Collection",
          "java.util.concurrent.ExecutorService",
          "java.util.concurrent.Future",
          "java.util.HashSet",
          "java.util.LinkedHashSet",
          "java.util.SequencedCollection",
          "java.util.SequencedSet",
          "java.lang.instrument.IllegalClassFormatException",
          "javax.transaction.xa.XAException",
          "java.lang.AutoCloseable",
          "java.lang.annotation.Repeatable",
          "java.lang.InterruptedException",
          "java.lang.CloneNotSupportedException",
          "java.lang.Throwable",
          "java.lang.Thread",
          "java.lang.Enum"
  };

To:

  private static final String[] excludeJdkClasses = {
          "java",
          "java.",
          "javax"
          "javax."
  };

But the above change didn't work as expected as we got signature test check failures.

I think that https://github.com/jakartaredhat/netbeans-apitest/blob/master/src/main/java/com/sun/tdk/signaturetest/core/PackageGroup.java#L35 should allow one of the ^ specified package names to be matched instead of included explicit JDK class names to ignore.

scottmarlow commented 7 months ago

Moved to https://github.com/eclipse-ee4j/jakartaee-tck-tools/issues/20