Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

TCK challenge for addressing Jakarta EE 10 Platform TCK signature test failures on Java 21 #1192

Closed
scottmarlow opened this issue Sep 29, 2023 · 3 comments
Assignees
Labels
10.0 Issues related to the Jakarta EE 10 Platform TCK release accepted TCK challenge accepted challenge TCK challenge

Comments

@scottmarlow
Copy link
Contributor

I tried running the EE 10 Platform TCK signature tests on Java 21 and see failures in:

jakarta.security.enterprise.identitystore(static mode)
jakarta.security.enterprise.identitystore(reflection mode)
jakarta.enterprise.concurrent(static mode)
jakarta.enterprise.concurrent(reflection mode)
jakarta.ejb(static mode)
jakarta.ejb(reflection mode)

The jakarta.security.enterprise.identitystore failures are:

Added Superclasses or Superinterfaces

jakarta.security.enterprise.identitystore.openid.Scope: interface java.util.SequencedCollection<java.lang.String>
jakarta.security.enterprise.identitystore.openid.Scope: interface java.util.SequencedSet<java.lang.String>

Added Methods

jakarta.security.enterprise.identitystore.openid.Scope: method public java.lang.String java.util.LinkedHashSet.getFirst()
jakarta.security.enterprise.identitystore.openid.Scope: method public java.lang.String java.util.LinkedHashSet.getLast()
jakarta.security.enterprise.identitystore.openid.Scope: method public java.lang.String java.util.LinkedHashSet.removeFirst()
jakarta.security.enterprise.identitystore.openid.Scope: method public java.lang.String java.util.LinkedHashSet.removeLast()
jakarta.security.enterprise.identitystore.openid.Scope: method public java.util.SequencedSet<java.lang.String> java.util.LinkedHashSet.reversed()
jakarta.security.enterprise.identitystore.openid.Scope: method public static <%0 extends java.lang.Object> java.util.HashSet<{%%0}> java.util.HashSet.newHashSet(int)
jakarta.security.enterprise.identitystore.openid.Scope: method public static <%0 extends java.lang.Object> java.util.LinkedHashSet<{%%0}> java.util.LinkedHashSet.newLinkedHashSet(int)
jakarta.security.enterprise.identitystore.openid.Scope: method public void java.util.LinkedHashSet.addFirst(java.lang.String)
jakarta.security.enterprise.identitystore.openid.Scope: method public void java.util.LinkedHashSet.addLast(java.lang.String)

The jakarta.enterprise.concurrent failures are:

Added Superclasses or Superinterfaces

jakarta.enterprise.concurrent.ManagedExecutorService: interface java.lang.AutoCloseable
jakarta.enterprise.concurrent.ManagedScheduledExecutorService: interface java.lang.AutoCloseable

Added Methods

jakarta.enterprise.concurrent.ManagedExecutorService: method public void java.util.concurrent.ExecutorService.close()
jakarta.enterprise.concurrent.ManagedScheduledExecutorService: method public void java.util.concurrent.ExecutorService.close()

The jakarta.ejb failures are:

Added Methods

jakarta.ejb.AsyncResult: method public java.lang.Throwable java.util.concurrent.Future.exceptionNow()
jakarta.ejb.AsyncResult: method public java.util.concurrent.Future$State java.util.concurrent.Future.state()
jakarta.ejb.AsyncResult: method public {jakarta.ejb.AsyncResult%0} java.util.concurrent.Future.resultNow()

@scottmarlow scottmarlow added the 10.0 Issues related to the Jakarta EE 10 Platform TCK release label Sep 29, 2023
@scottmarlow
Copy link
Contributor Author

scottmarlow commented Sep 29, 2023

Why do we have failures like ^ and what can we expect in the future?

When we addressed #156 in the signature test tooling, we discussed a different option for the validation of super class methods. TCK signature test map files may reference Java SE class methods. We could consider stopping the Java SE class method validation but continue to validate that any Jakarta EE super class methods match the information in the TCK signature test map file.

We may want to update our signature test tooling again to optimize the above in a few different ways. Perhaps we should only check super class method signatures that are in the jakarta package which would avoid checking the (subject to change JDK) classes. This would require a change to https://github.com/jtulach/netbeans-apitest.

@scottmarlow scottmarlow self-assigned this Dec 5, 2023
@scottmarlow scottmarlow added the challenge TCK challenge label Dec 5, 2023
@scottmarlow scottmarlow changed the title Jakarta EE 10 Platform TCK signature test failures on Java 21 TCK challenge for adding Jakarta EE 10 Platform TCK signature test failures on Java 21 Dec 5, 2023
@gurunrao gurunrao added the accepted TCK challenge accepted label Dec 8, 2023
@scottmarlow
Copy link
Contributor Author

scottmarlow commented Jan 8, 2024

https://ci.eclipse.org/jakartaee-tck/job/10/job/eftl-jakartaeetck-build-100/94 built https://www.eclipse.org/downloads/download.php?file=/ee4j/jakartaee-tck/jakartaee10/staged/eftl/jakarta-jakartaeetck-10.0.3.zip (https://download.eclipse.org/ee4j/jakartaee-tck/jakartaee10/staged/eftl) and the signature tests passed for me locally.

I also tried locally changing the list of excluded JDK classes to instead only reference { java, java., javax, javax.} but that didn't work so further signature test tooling changes will be needed in the future).

@scottmarlow
Copy link
Contributor Author

Marking as closed since the change is verified. I'll create a request to promote the 10.0.3 Platform TCK release.

@scottmarlow scottmarlow changed the title TCK challenge for adding Jakarta EE 10 Platform TCK signature test failures on Java 21 TCK challenge for addressing Jakarta EE 10 Platform TCK signature test failures on Java 21 Jan 8, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
10.0 Issues related to the Jakarta EE 10 Platform TCK release accepted TCK challenge accepted challenge TCK challenge
Projects
None yet
Development

No branches or pull requests

2 participants