Skip to content

Commit

Permalink
Update the user guide and dependencies for EE 11 (#1572)
Browse files Browse the repository at this point in the history
Signed-off-by: Scott M Stark <[email protected]>
#1571
  • Loading branch information
starksm64 authored Oct 9, 2024
1 parent 1d3acfb commit 12ed0d2
Show file tree
Hide file tree
Showing 7 changed files with 68 additions and 46 deletions.
16 changes: 8 additions & 8 deletions core-profile-tck/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -80,24 +80,24 @@
<annotations.api.version>3.0.0</annotations.api.version>
<apache.httpclient.version>3.1</apache.httpclient.version>

<cdi.api.version>4.0.0</cdi.api.version>
<cdi.tck.version>4.0.6</cdi.tck.version>
<cdi.api.version>4.1.0</cdi.api.version>
<cdi.tck.version>4.1.0</cdi.tck.version>
<!-- Required for distribution build, should be overriden for each build -->
<core.tck.version>${project.version}</core.tck.version>
<el.api.version>5.0.0</el.api.version>
<el.api.version>6.0.0</el.api.version>
<inject.api.version>2.0.1</inject.api.version>
<inject.tck.version>2.0.2</inject.tck.version>
<interceptors.api.version>2.1.0</interceptors.api.version>
<interceptors.api.version>2.2.0</interceptors.api.version>
<jsonb.api.version>3.0.0</jsonb.api.version>
<jsonp.api.version>2.1.0</jsonp.api.version>
<junit.version>5.8.2</junit.version>
<maven.compiler.release>17</maven.compiler.release>
<rest.api.version>3.1.0</rest.api.version>
<rest.tck.version>3.1.1</rest.tck.version>
<rest.api.version>4.0.0</rest.api.version>
<rest.tck.version>4.0.0</rest.tck.version>

<!-- Test tools/dependencies -->
<testng.version>7.4.0</testng.version>
<weld.version>5.0.1.Final</weld.version>
<testng.version>7.10.2</testng.version>
<weld.version>6.0.0.Beta4</weld.version>
</properties>

<!-- Dependency management -->
Expand Down
4 changes: 2 additions & 2 deletions core-profile-tck/tck-dist/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -25,8 +25,8 @@

<properties>
<asciidoctor.maven.plugin.version>3.0.0</asciidoctor.maven.plugin.version>
<asciidoctorj.pdf.version>1.6.2</asciidoctorj.pdf.version>
<asciidoctorj.version>2.5.3</asciidoctorj.version>
<asciidoctorj.pdf.version>2.3.18</asciidoctorj.pdf.version>
<asciidoctorj.version>3.0.0</asciidoctorj.version>
<guide.name>core-profile-tck-reference-guide</guide.name>
</properties>

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@

While the Jakarta Core Profile TCK is rigorous about enforcing an implementation's conformance to the Jakarta Core Profile specification, it's reasonable to assume that an implementor may discover new and/or better ways to validate the assertions.
The appeals process is defined by the Jakarta EE
link:$$https://jakarta.ee/committees/specification/tckprocess/$$[Jakarta EE TCK Process 1.2]
link:$$https://jakarta.ee/committees/specification/tckprocess/$$[Jakarta EE TCK Process {tck-process-version}]


=== What challenges to the TCK may be submitted?
Expand All @@ -24,8 +24,8 @@ The challenges will be addressed in a timely fashion by the platform dev team.

=== How accepted challenges to the TCK are managed?
The worflow for TCK challenges is outlined in
link:$$https://jakarta.ee/committees/specification/tckprocess/$$[Jakarta EE TCK Process 1.2].
link:$$https://jakarta.ee/committees/specification/tckprocess/$$[Jakarta EE TCK Process {tck-process-version}].

Periodically, an updated TCK will be released, containing tests altered due to challenges - no new tests will be added. Implementations are required to pass the updated TCK. This release stream is named 10.0.x, where x will be incremented.
Periodically, an updated TCK will be released, containing tests altered due to challenges - no new tests will be added. Implementations are required to pass the updated TCK. This release stream is named {revnumber}.x, where x will be incremented.


25 changes: 17 additions & 8 deletions core-profile-tck/tck-dist/src/main/asciidoc/installation.asciidoc
Original file line number Diff line number Diff line change
Expand Up @@ -6,25 +6,34 @@ This chapter explains how to obtain the TCK and supporting software and provides

=== Obtaining the Software

You can obtain a release of the Jakarta Core Profile TCK project from the link:$$https://download.eclipse.org/jakartaee/platform/$$[Jakarta EE download site]. The release stream for Jakarta Profile TCK is named _10.0.x_. The Jakarta Core Profile TCK is distributed as a ZIP file, which contains the TCK artifacts (the test suite binary and source, test suite configuration file) in the `artifacts` directory, and documentation in `doc` directory.
You can obtain a release of the Jakarta Core Profile TCK project from the link:$$https://download.eclipse.org/jakartaee/platform/$$[Jakarta EE download site]. The release stream for Jakarta Profile TCK is named _{revnumber}.x_. The Jakarta Core Profile TCK is distributed as a ZIP file, which contains the TCK artifacts (the test suite binary and source, test suite configuration file) in the `artifacts` directory, and documentation in `doc` directory.

You can also download the current source code from link:$$https://github.com/eclipse-ee4j/jakartaee-tck/core-profile-tck$$[GitHub repository].
This is the distribution that must be used for compatibility certification requests

Executing the TCK requires a Jakarta EE 10 or newer runtime environment (i.e., application server), to which the test artifacts are deployed and the individual tests are invoked. The TCK does not depend on any particular Jakarta EE implementation.
==== Obtaining the Software from Repositories/Source

Naturally, to execute Java programs, you must have a Java SE runtime environment. The TCK requires Java SE 11 or newer, which you can obtain from the link:$$http://www.oracle.com/technetwork/java/index.html$$[Java Software] website.
You may obtain the software from a public repository like Maven Central, or you can also download the current source code from link:$$https://github.com/eclipse-ee4j/jakartaee-tck/core-profile-tck$$[GitHub repository] and build the distribution locally.

These sources of the TCK cannot be used for compatibility certification requests.

=== Jakarta EE {revmajor} Runtime
Executing the TCK requires a Jakarta EE {revmajor} or newer runtime environment (i.e., application server), to which the test artifacts are deployed and the individual tests are invoked. The TCK does not depend on any particular Jakarta EE implementation.

=== Java SE

Naturally, to execute Java programs, you must have a Java SE runtime environment. The TCK requires Java SE 17 or newer, which you can obtain from the link:$$http://www.oracle.com/technetwork/java/index.html$$[Java Software] or the link:$$https://adoptium.net/temurin/releases/$$[Eclipse Temurin] websites.

=== The TCK Environment

The TCK requires the following software to be installed:

* Java SE 11 or newer
* Java SE 17 or newer

* Maven 3.6 or newer
* Maven 3.9 or newer

* A Jakarta EE 10 implementation (e.g., WildFly 27.x)
* A Jakarta EE {revmajor} implementation (e.g., WildFly 34.x)

You should refer to EE 10 implementation instructions for how to install the runtime environment.
You should refer to EE {revmajor} implementation instructions for how to install the runtime environment.

Unzipping the Jakarta Core Profile TCK archive will create a `core-profile-tck-x.y.z` root folder which contains the TCK contents. To complete the installation, cd into the `artifacts` directory and install the standalone TCKs and Core Profile TCK artifacts using the maven `pom.xml` file. From that directory run:

Expand Down
26 changes: 13 additions & 13 deletions core-profile-tck/tck-dist/src/main/asciidoc/introduction.asciidoc
Original file line number Diff line number Diff line change
Expand Up @@ -183,14 +183,14 @@ binary Conformance Tests supplied as part of the Test Suite must be used to cert

*CORE_PROFILE-10* In addition to the instructions and requirements the Core Profile TCK, each Product must pass the following standalone TCKs for the following technologies:

* Jakarta Contexts and Dependency Injection, Lite https://jakarta.ee/specifications/cdi[CDI 4.0].
* Jakarta Contexts and Dependency Injection, Lite https://jakarta.ee/specifications/cdi[CDI {cdi-version}].
** This TCK includes compatibility and signature tests for Jakarta Jakarta Interceptors.
** The Jakarta Contexts and Dependency Injection Language Model TCK included in the CDI distribution.
* Jakarta Dependency Injection https://jakarta.ee/specifications/dependency-injection/2.0/[DI 2.0]
* Jakarta JSON Binding https://jakarta.ee/specifications/jsonb/3.0/[JSON-B 3.0]
* Jakarta JSON Processing https://jakarta.ee/specifications/jsonp/2.1/[JSON-B 2.1]
* Jakarta RESTful Web Services https://jakarta.ee/specifications/restful-ws/3.1/[Rest 3.1]
* Signature tests for Jakarta Common Annotations https://jakarta.ee/specifications/annotations/2.1/[Annotations 2.1.1]
* Jakarta Dependency Injection https://jakarta.ee/specifications/dependency-injection/{di-version}/[DI {di-version}]
* Jakarta JSON Binding https://jakarta.ee/specifications/jsonb/{jsonb-version}/[JSON-B {jsonb-version}]
* Jakarta JSON Processing https://jakarta.ee/specifications/jsonp/{jsonp-version}/[JSON-B {jsonp-version}]
* Jakarta RESTful Web Services https://jakarta.ee/specifications/restful-ws/{rest-version}/[Rest {rest-version}]
* Signature tests for Jakarta Common Annotations https://jakarta.ee/specifications/annotations/{annotations-version}/[Annotations {annotations-version}]

=== About the Jakarta Core Profile TCK

Expand All @@ -211,11 +211,11 @@ This section lists the applicable requirements and specifications for the Jakart

* *Jakarta Contexts and Dependency Injection API* - The Java API defined in the CDI specification and provided by the compatible implementation.

* *Testing platform* - The Jakarta Core Profile TCK requires version 1.7.0.Alpha10 of the Arquillian (http://arquillian.org) and an Arquillian container implementation that can deploy ShrinkWrap `WebArchives` of the test contents. The TCK test suite is based on Junit 5.8.2 (http://junit.org).
* *Testing platform* - The Jakarta Core Profile TCK requires version {arquillian-version} of the Arquillian (http://arquillian.org) and an Arquillian container implementation that can deploy ShrinkWrap `WebArchives` of the test contents. The TCK test suite is based on Junit {junit-version} (http://junit.org).

* *Porting Package* - An implementation of SPIs that are required for the test suite to run the in-container tests and at times extend the Jakarta Core Profile 4.0 API to provide extra information to the TCK.
* *Porting Package* - An implementation of SPIs that are required for the test suite to run the in-container tests and at times extend the Jakarta Core Profile {ee-version} API to provide extra information to the TCK.

* *Compatible implementation* - A compatible implementation runtime for compatibility testing of the Jakarta Platform Enterprise Edition Core Profile 10.
* *Compatible implementation* - A compatible implementation runtime for compatibility testing of the Jakarta Platform Enterprise Edition Core Profile {revmajor}.

* *Jarkarta Container and Dependency Injection (CDI)* - CDI builds on Jakarta Annotations and Jakarta Interceptors, and the standalone CDI TCK provides signature and unit testing for those component specifications. Passing the CDI TCK is sufficient for validation of compatibility of Jakarta Annotations and Jakarta Interceptors.

Expand All @@ -227,11 +227,11 @@ This section lists the applicable requirements and specifications for the Jakart

The Core Profile TCK includes the following components:

* *Arquillian 1.7.0.Alpha10*
* *Arquillian {arquillian-version}*

* *Junit 5.8.2*
* *Junit {junit-version}*

* *TestNG 7.4.x*
* *TestNG {testng-version}*

* *Porting Package SPIs* - Extensions to the CDI SPIs to allow testing of a container.

Expand All @@ -241,5 +241,5 @@ The Core Profile TCK includes the following components:

The Core Profile TCK has been tested on following platforms:

* WildFly 27 Preview using Eclipse Temurin Java SE 11 and Eclipse Temurin Java SE 17 on Linux based operating systems.
* WildFly 34 Preview using Eclipse Temurin Java SE 17 and Eclipse Temurin Java SE 21 on Linux based operating systems.

Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,6 @@ The Core Profile specification has no API artifact other than the utility api ja

=== Running the Component Specification Signature Tests

Each required component TCK describes how to run its signature tests. The JSON-P, JSON-B and Restful standalone TCKs include a test that sets up and runs the signature tests as part of the Junit 5 tests. Running those standalone TCKs generates the signature test results.
Each required component TCK describes how to run its signature tests. The Annotations, JSON-P, JSON-B and Restful standalone TCKs include a test that sets up and runs the signature tests as part of the Junit 5 tests. Running those standalone TCKs generates the signature test results.

The CDI TCK includes a pom file to execute the signature tests. See the CDI TCK user guide for how to run those tests.
Original file line number Diff line number Diff line change
@@ -1,13 +1,26 @@
= Technology Compatibility Kit Reference Guide for Jakarta Core Profile

:annotations-version: 3.0
:arquillian-version: 1.9.2.Final
:cdi-version: 4.1
:di-version: 2.0
:ee-version: 11
:interceptors-version: 2.2
:jsonb-version: 3.0
:jsonp-version: 2.1
:junit-version: 10.0.2
:rest-version: 4.0
:revnumber: 11.0
:revmajor: 11
:tck-process-version: 1.4.1
:testng-version: 7.9.x

[preface]
== Preface
This guide describes how to download, install, configure, and run the
Technology Compatibility Kit (TCK) used to verify the compatibility of an implementation of the Jakarta Core Profile.

The Core Profile TCK is built atop Junit5 framework and Arquillian platform. The Core Profile TCK uses
the Arquillian version _1.7.0.Alpha10_ to execute the test suite.
the Arquillian version _{arquillian-version}_ to execute the test suite.

The Core Profile TCK is provided under link:$$http://www.apache.org/licenses/LICENSE-2.0$$[Apache Public License 2.0].

Expand All @@ -18,18 +31,18 @@ This guide is for implementors of the Jakarta Core Profile {revnumber} technolog

=== Before You Read This Book

Before reading this guide, you should familiarize yourself with the Jakarta EE programming model, specifically the Jakarta Restful Webservices 3.1 and the Jakarta Contexts and Dependency Injection 4.0 specifications. A good resource for the Jakarta EE programming model is the link:$$http://jakarta.ee$$[Jakarta EE] web site.
Before reading this guide, you should familiarize yourself with the Jakarta EE programming model, specifically the Jakarta Restful Webservices {rest-version} and the Jakarta Contexts and Dependency Injection {cdi-version} specifications. A good resource for the Jakarta EE programming model is the link:$$http://jakarta.ee$$[Jakarta EE] web site.

The Core Profile TCK is based on the following Jakarta technologies:

* Jakarta EE Core Profile https://jakarta.ee/specifications/coreprofile/10/[Core Profile 10.0]
* Jakarta Annotations https://jakarta.ee/specifications/annotations/2.1/[Annotations 2.1]
* Jakarta Contexts and Dependency Injection Lite https://jakarta.ee/specifications/cdi[CDI 4.0].
* Jakarta Dependency Injection https://jakarta.ee/specifications/dependency-injection/2.0/[DI 2.0]
* Jakarta Interceptors https://jakarta.ee/specifications/interceptors/2.1/[Interceptors 2.1]
* Jakarta JSON Binding https://jakarta.ee/specifications/jsonb/3.0/[JSON-B 3.0]
* Jakarta JSON Processing https://jakarta.ee/specifications/jsonp/2.1/[JSON-B 2.1]
* Jakarta RESTful Web Services https://jakarta.ee/specifications/restful-ws/3.1/[Rest 3.1]
* Jakarta EE Core Profile https://jakarta.ee/specifications/coreprofile/{ee-version}/[Core Profile {ee-version}]
* Jakarta Annotations https://jakarta.ee/specifications/annotations/{annotations-version}/[Annotations {annotations-version}]
* Jakarta Contexts and Dependency Injection Lite https://jakarta.ee/specifications/cdi[CDI {cdi-version}].
* Jakarta Dependency Injection https://jakarta.ee/specifications/dependency-injection/{di-version}/[DI {di-version}]
* Jakarta Interceptors https://jakarta.ee/specifications/interceptors/{interceptors-version}/[Interceptors {interceptors-version}]
* Jakarta JSON Binding https://jakarta.ee/specifications/jsonb/{jsonb-version}/[JSON-B {jsonb-version}]
* Jakarta JSON Processing https://jakarta.ee/specifications/jsonp/{jsonp-version}/[JSON-P {jsonp-version}]
* Jakarta RESTful Web Services https://jakarta.ee/specifications/restful-ws/{rest-version}/[Rest {rest-version}]


Before running the tests in the Core Profile TCK, optionally read and become familiar with the Arquillian testing platform. A good starting point could be a series of link:$$http://arquillian.org/guides/$$[Arquillian Guides].
Expand Down

0 comments on commit 12ed0d2

Please sign in to comment.