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

Scott,

Thanks for the reply. That has helped clear things up a lot for me. I have a few follow-ups in-line.

On 01/04/2024 20:23, Scott Marlow wrote:
On Mon, Apr 1, 2024 at 12:02 PM Mark Thomas via jakartaee-spec-project-leads <jakartaee-spec-project-leads@xxxxxxxxxxx <mailto:jakartaee-spec-project-leads@xxxxxxxxxxx>> wrote:

<snip/>

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

<snip/>

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.

ACK.

I'll update the Servlet TCK to use that namespace.

The published EL TCK still uses com.sun.ts.tests but I can't see that being an issue and it can be updated to ee.jakarta.tck.el for the next release.

<snip/>

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

The Platform TCK is going to use jakarta.tck

<snip/>

The published EL TCK uses that groupId. Is it correct to assume all the individual TCKs should use that groupId as well?

What about artifactId? The published EL TCK uses jakarta-expression-language-tck. Is it correct to assume individual TCKs should use the same format?


<snip/>

    3. Where are TCKs expected to be staged?

<snip/>

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

That download location is empty. I assume you meant:

https://download.eclipse.org/ee4j/jakartaee-tck/jakartaee11/staged/

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

ACK.

So far only the EL TCK has made it that far.

I can't find any tag for that release.

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.

ACK.

I do think this would be incredibly useful. The TCKs are already a lot easier to run. Having the JARs available on Maven Central would make it even simpler and save users from having to install them locally using the correct coordinates.

    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.

ACK. I've added a note the release reviews.

    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 <https://github.com/jakartaee/platform-tck/tree/tckrefactor> branch and then rename that branch to `11.0.x`.

What is the timescale for that? I ask since it is likely going to block progress on the release reviews until it is complete.

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 <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 <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 <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`.

ACK

<snip/>

Would it help if we just did our TCK releases to https://download.eclipse.org/ee4j/jakartaee-tck/jakartaee11/staged/eftl <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.

Personally, I'd find it easier to consume the shared artifacts if they were staged to Nexus and then released to Maven Central. But that is just a single opinion. Others may have different views.


Thanks again for all the clarifications. Things are looking a lot clearer even if I do now have a bunch of additional tasks to complete.

Mark


Back to the top