Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [jakartaee-spec-project-leads] TCK queries



On Mon, Apr 1, 2024 at 12:02 PM Mark Thomas via jakartaee-spec-project-leads <jakartaee-spec-project-leads@xxxxxxxxxxx> wrote:
Hi,

I am in the middle of releases for _expression_ Language, WebSocket,
Servlet and Server Pages.

I currently believe that each of the TCKs for the above specifications
has been updated for Jakarta EE 11 and I have a CI that passes each of
the TCKs. However, I am seeing a large amount of variation between TCK
bundles hence these questions / clarifications.

I am assuming that all Jakarta EE TCKs are expected to have been
refactored to use Maven/Arquillian.

Some existing EE 10 or earlier TCKs still use Ant/TestHarness.
 

1. What is the expected Java package name for the TCK tests?
Currently, I am seeing:

As per https://jakarta.ee/committees/specification/tckprocess recommends a specific format that could be used:
"

Namespace

TCK tests must not be packaged in the jakarta.* namespace. At the current time TCKs may be packaged in any other namespace, however, the namespace format of ee.jakarta.tck.<spec-name> is recommended.

"

 
_expression_ Language
  com.sun.ts.tests.el.*
  com.sun.ts.tests.signaturetest.el
WebSocket
  com.sun.ts.tests.websocket
Servlet
  servlet.tck.*
Server Pages
  com.sun.ts.tests.jsp.*
  com.sun.ts.tests.signaturetest.jsp
  OR
  ee.jakarta.tck.pages

2. What are the expected Maven coordinates for TCK JARs?

The Platform TCK is going to use jakarta.tck (see https://github.com/jakartaee/platform-tck/blob/tckrefactor/pom.xml#L29).
 
Currently I am seeing:
_expression_ Language
   Group:    jakarta.tck
   Artifact: jakarta-_expression_-language-tck
WebSocket
   Group:    jakarta.tck
   Artifact: websocket-tck
             websocket-tck-common
             websocket-tck-spec-tests
Servlet
   Group:    jakarta.servlet
   Artifact: tck
             tck-runtime
             tck-util
Server Pages
   Group:    jakarta.tck
   Artifact: jakarta-pages-tck

3. Where are TCKs expected to be staged?
Currently I am seeing:
https://download.eclipse.org/ee4j/jakartaee-tck/jakartaee11/staged/eftl/
https://download.eclipse.org/jakartaee/
Nexus staging repos

TCK builds which include the EFTL license can be staged on the https://download.eclipse.org/ee4j/jakartaee11/staged/eftl page.  

The https://download.eclipse.org/jakartaee page is where TCKs are promoted to by the Specification committee.

TCK builds which include the project (e.g. EPL) license can be released to a Maven repository such as sonatype.  We are looking at doing this as an experiment but currently hitting some CI build failures.
 

4. Should the TCKs being used for releases have references to SNAPSHOT
builds?
I see SNAPSHOT dependencies in the artifacts for WebSocket and Server Pages.

I think ^ should block the review process since SNAPSHOTS do not identify an exact build of the respective TCK artifact.  
 

5. Where will refactored platform tests live?
I am aware that some of the TCK tests only apply when testing the web
profile or the full profile. Some of the TCKs above still have (some of)
these tests.

The current plan is to complete the TCK test refactoring for EE 11 via the https://github.com/jakartaee/platform-tck/tree/tckrefactor branch and then rename that branch to `11.0.x`.  We also plan to use a release branch to coordinate which changes we want to release to a Maven repo which is named https://github.com/jakartaee/platform-tck/tree/11.0.0-M1 (once we get https://ci.eclipse.org/jakartaee-tck/job/11/job/stage-artifacts/job/buildSharedArtifacts to work).  If we don't get https://ci.eclipse.org/jakartaee-tck/job/11/job/stage-artifacts/job/buildSharedArtifacts working, I think we should still release branches so we have a sense for what when into each release.  I think we should switch to a different pattern for that, something like `release-ID` where ID could be `release-11.0.0-M1`.



To summarise, the current level of variation is creating uncertainty and
confusion as well as concern that some of the current release work may
need to be re-done to correct issues with the TCKs.

Would it help if we just did our TCK releases to https://download.eclipse.org/ee4j/jakartaee-tck/jakartaee11/staged/eftl?  

We do need to release common shared TCK artifacts (e.g. signaturetest, common, libutil, runtime) somewhere in a form that they can be easily consumed via a maven repo.  We could move those artifacts out of the Platform TCK multi-module project (e.g. move them to standalone maven projects in the same repo) as a workaround for the ci difficulties.


I would very much like to get started on putting this right for the
specs I am involved in. With that in mind, I would appreciate answers to
the five questions above.

Thanks for starting this conversation!

Scott
 

Kind regards,

Mark
_______________________________________________
jakartaee-spec-project-leads mailing list
jakartaee-spec-project-leads@xxxxxxxxxxx
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/jakartaee-spec-project-leads


Back to the top