Content
Introduction
This article is a self-contained, step-by-step, practical guide to help developers navigate the Jakarta EE Specification Process (JESP).
It is meant as a helpful tool, so if in doubt, always refer to the JESP for completeness. Contact the Specification Committee if you have any questions or comments about anything related to the development of Jakarta EE Specifications. The JESP is an adaptation of the Eclipse Foundation Specification Process (EFSP), which is itself an adaptation of the Eclipse Foundation Development Process (EDP).
This diagram is the Eclipse Specification Version Lifecycle. It shows the steps to create and evolve a Specification.
The most important kind of step in the lifecycle is the Review step. A Review is an event that takes place over a week or two of calendar time. The team developing a Specification creates some kind of artifact and submits it to the Specification Committee for review. The Specifiation Committee has a short amount of time to review the submitted artifact and conduct a ballot among its members to approve or not-approve that artifact under review. This guide contains a sufficient explanation of Review, but if you want the full definition, see the Eclipse Foundation Specification Process and the Eclipse Foundation Development Process.
The remainder of this guide explains the different kinds of Review steps, and the steps you need to take for each one.
Creation Review
- A Jakarta Specification project is created as any other project under the Eclipse Development Process (EDP).
- It is possible to convert an existing project into a Specification project.
- A Jakarta Specification project must be approved by the Specification Committee.
- Read more about creation reviews in the EFSP.
Steps Involved
- Create a Project Proposal (*).
- Submit a Pull Request to the Jakarta EE Specifications repository using the Creation Review template.
- Send an email to the Specification Committee to request a Creation Review.
- Wait for a successful Creation Review before proceeding.
(*) It may be a good idea to socialize the idea with the Specification Committee to solicit support before proceeding with the project creation.
Plan Review
- Each specification project needs to engage in a Plan Review prior to any extensive development effort in support of a new Specification Major or Minor Version.
- Plan reviews are not required for Service Releases.
- Read more about Plan Reviews in the EFSP.
Steps Involved
- Submit a Pull Request to the Jakarta EE Specifications repository using the Plan Review template.
- Send an email to the Specification Committee to request a Plan Review.
- Wait for a successful Plan Review before proceeding.
Release Review
- A final version of a specification cannot be made generally available until after engaging in a successful Release Review (with corresponding super-majority approval from the specification committee).
- Read more about Release Reviews in the EFSP.
Steps Involved
- Submit a Pull Request to the Jakarta EE Specifications repository using the Release Review template.
- Send an email to the Specification Committee to request a Release Review.
- Wait for a successful Release Review before proceeding with the release.
Service Release
- There is no formal Release Review required for a Specification service release (x.y.z) as long as the JESP definition of a “service release” is adhered to.
- That means that no functionality changes or increase in IP scope are permitted in a service release.
- Read more about service releases in the EFSP as well as in the JESP.
Steps Involved
- Submit a Pull Request to the Jakarta EE Specifications repository using the service release template.
- Send an email to the Specification Committee to announce that the PR is ready for review.
- Wait for the PR approval and merge before proceeding.
Progress Review
- Progress Reviews are not part of the normal flow of the JESP: creation->plan->release->plan->release->plan->release and so on.
- A Progress Review can be initiated by the project when they want to inform the specification committee about their progress, but are not ready for a release yet.
- A Progress Review may be requested by the specification committee if no progress has been made in 12 months.
- Read more about Progress Reviews in the EFSP.
Steps Involved
- Submit a Pull Request to the Jakarta EE Specifications repository using the Progress Review template.
- Send an email to the Specification Committee to request a Plan Review.
- Wait for a successful Progress Review before proceeding.