Description
Since Hibernate is driving the Jakarta Persistence 4, it might be the earliest implementation for the next version of Jakarta Persistence. Some customers already use Hibernate with Liberty today by bundling Hibernate with their application. By offering Hibernate as a beta Open Liberty EE 11 Feature, Hibernate will be packaged and integrated by Open Liberty. Liberty team would like to use this feature to get usage and feedback.
Documents
When available, add links to required feature documents. Use "N/A" to mark particular documents which are not required by the feature.
- Externally raised requests for enhancements:
- Aha: Link to the Aha idea (also add a link to this issue in the Aha idea)
- Feature owner adds label
Aha idea
- Open Liberty Feature Request: Link to the OL GH issue (also add a link to this issue in the Feature Request GH issue)
- Feature owner adds label
Requested feature
- UFO: Link to Upcoming Feature Overview document
- Upload the feature UFO to Box and set the link to be publicly accessible, with a long expiration (10 years)
- Click "Share" > select "People with link" > click "Link Settings" > under "Link Expiration" select "Disable Shared Link on" > set an expiration date ~10 years into the future
- If you lack permissions, contact OpenLiberty/release-architect
- Feature Test Summary (FTS): Link to Feature Test Summary GH Issue
- Feature Serviceability Summary: Link to Feature Serviceability Summary GH Issue
- Beta Blog(s): Link to Beta Blog Post GH Issue(s)
- GA Blog: Link to GA Blog Post GH Issue
Process Overview
General Instructions
The process steps occur roughly in the order as presented. Process steps occasionally overlap.
Each process step has a number of tasks which must be completed or must be marked as not applicable ("N/A").
Unless otherwise indicated, the tasks are the responsibility of the feature owner or a delegate of the feature owner.
If you need assistance, reach out to the OpenLiberty/release-architect.
Important: Labels are used to trigger particular steps and must be added as indicated.
Sizing (Complete Before Development Starts)
Sizing features helps inform prioritization decisions by telling us how much investment a given feature will require.
Consider this as the scale to use to gauge sizes:
| Size |
Guide |
| XS |
<= 1 person week's (PW) worth of work |
| S |
2-3 PW |
| M |
4-5 PW |
| L |
6-9 PW |
| XL |
10-15 PW |
| 2XL |
16-20 PW |
| 3XL |
21+ PW |
Prioritization (Complete Before Development Starts)
The OpenLiberty/chief-architect and area leads are responsible for prioritizing the features and determining which features are being actively worked on.
Prioritization
Design (Complete Before Development Starts)
Design preliminaries determine whether a formal design, which will be provided by an Upcoming Feature Overview (UFO) document, must be created and reviewed. A formal design is required if the feature requires any of the following: UI, Serviceability, SVT, Performance testing, or non-trivial documentation/ID. Furthermore, each identified item places a blocking requirement on another team so it must be identified early in the process. The feature owner may check-off the item if they know it doesn't apply, but otherwise they should work with the focal point to determine what work, if any, will be necessary and make them aware of it.
Design Preliminaries
Governance requests
If work is required in any the following areas for the feature, a request for the Governance Team must be opened for each respective area:
The personnel working in these areas use these issues to prioritize and track work.
Design
No Design
Design Approval Request
Request design approval no later than 4 weeks before the Feature Complete date for the release.
Ideally, submit UFOs for design approval from the Chief Architect as soon as possible after addressing any feedback from the socialization. But that should be no later than 4 weeks before Feature Complete.
That gives the Chief Architect time to review the design and have developers make any necessary updates before the Feature Complete date hits for the release you’re trying to go out in.
See the WebSphere Dates Monday.com board or Current Liberty Release Schedule for relevant dates.
FAT Documentation
Serviceability Documentation
Implementation
A feature must be prioritized before any implementation work may begin to be delivered (inaccessible/no-ship). However, a design focused approach should still be applied to features, and developers should think about the feature design prior to writing and delivering any code.
Besides being prioritized, a feature must also be socialized (or No Design Approved) before any beta code may be delivered. All new Liberty content must be inaccessible in our GA releases until it is Feature Complete by either marking it kind=noship or beta fencing it.
Code may not GA until this feature has obtained the Design Approved or No Design Approved label, along with all other tasks outlined in the GA section.
Feature Development Begins
Legal and Translation
In order to avoid last minute blockers and significant disruptions to the feature, the legal items need to be done as early in the feature process as possible, either in design or as early into the development as possible. Similarly, translation is to be done concurrently with development. All items below MUST be completed before beta & GA is requested.
Innovation (Complete 1 week before Beta & GA Feature Complete Date)
Legal (Complete before Beta & GA Feature Complete Date)
Translation (Complete by Beta & GA Feature Complete Date)
Beta
In order to facilitate early feedback from users, all new features and functionality should first be released as part of a beta release.
Beta Code
Beta Blog (Complete by beta eGA)
GA
A feature is ready to GA after it is Feature Complete and has obtained all necessary Focal Point Approvals.
Feature Complete
Focal Point Approvals (Complete by Feature Complete Date)
These occur only after GA of this feature is requested (by adding a target:ga label). GA of this feature may not occur until all approvals are obtained.
All Features
Design Approved Features
Remove Beta Fencing (Complete by Feature Complete Date)
GA Blog (Complete by Friday after GM)
Post GM (Complete before GA)
Post GA
Other Deliverables
Description
Since Hibernate is driving the Jakarta Persistence 4, it might be the earliest implementation for the next version of Jakarta Persistence. Some customers already use Hibernate with Liberty today by bundling Hibernate with their application. By offering Hibernate as a beta Open Liberty EE 11 Feature, Hibernate will be packaged and integrated by Open Liberty. Liberty team would like to use this feature to get usage and feedback.
Documents
When available, add links to required feature documents. Use "N/A" to mark particular documents which are not required by the feature.
Aha ideaRequested featureProcess Overview
General Instructions
The process steps occur roughly in the order as presented. Process steps occasionally overlap.
Each process step has a number of tasks which must be completed or must be marked as not applicable ("N/A").
Unless otherwise indicated, the tasks are the responsibility of the feature owner or a delegate of the feature owner.
If you need assistance, reach out to the OpenLiberty/release-architect.
Important: Labels are used to trigger particular steps and must be added as indicated.
Sizing (Complete Before Development Starts)
Sizing features helps inform prioritization decisions by telling us how much investment a given feature will require.
Consider this as the scale to use to gauge sizes:
Prioritization (Complete Before Development Starts)
The OpenLiberty/chief-architect and area leads are responsible for prioritizing the features and determining which features are being actively worked on.
Prioritization
Prioritization - RequestedPrioritization - Requestedlabel removed (OpenLiberty/project-manager or feature owner)Design (Complete Before Development Starts)
Design preliminaries determine whether a formal design, which will be provided by an Upcoming Feature Overview (UFO) document, must be created and reviewed. A formal design is required if the feature requires any of the following: UI, Serviceability, SVT, Performance testing, or non-trivial documentation/ID. Furthermore, each identified item places a blocking requirement on another team so it must be identified early in the process. The feature owner may check-off the item if they know it doesn't apply, but otherwise they should work with the focal point to determine what work, if any, will be necessary and make them aware of it.
Design Preliminaries
ID Required, if non-trivial documentation needs to be created by the ID team.ID Required - Triviallabel.Governance requests
If work is required in any the following areas for the feature, a request for the Governance Team must be opened for each respective area:
The personnel working in these areas use these issues to prioritize and track work.
Design
Design SocializedDesign Approval RequestDesign ApprovedNo Design
No Design Approval RequestNo Design ApprovedProduct Management Approval Requestand notifies OpenLiberty/product-managementProduct Management Approved(OpenLiberty/product-management)Design Approval Request
Request design approval no later than 4 weeks before the Feature Complete date for the release.
Ideally, submit UFOs for design approval from the Chief Architect as soon as possible after addressing any feedback from the socialization. But that should be no later than 4 weeks before Feature Complete.
That gives the Chief Architect time to review the design and have developers make any necessary updates before the Feature Complete date hits for the release you’re trying to go out in.
See the WebSphere Dates Monday.com board or Current Liberty Release Schedule for relevant dates.
FAT Documentation
Serviceability Documentation
Implementation
A feature must be prioritized before any implementation work may begin to be delivered (inaccessible/no-ship). However, a design focused approach should still be applied to features, and developers should think about the feature design prior to writing and delivering any code.
Besides being prioritized, a feature must also be socialized (or No Design Approved) before any beta code may be delivered. All new Liberty content must be inaccessible in our GA releases until it is Feature Complete by either marking it
kind=noshipor beta fencing it.Code may not GA until this feature has obtained the
Design ApprovedorNo Design Approvedlabel, along with all other tasks outlined in the GA section.Feature Development Begins
In ProgresslabelLegal and Translation
In order to avoid last minute blockers and significant disruptions to the feature, the legal items need to be done as early in the feature process as possible, either in design or as early into the development as possible. Similarly, translation is to be done concurrently with development. All items below MUST be completed before beta & GA is requested.
Innovation (Complete 1 week before Beta & GA Feature Complete Date)
Legal (Complete before Beta & GA Feature Complete Date)
Translation (Complete by Beta & GA Feature Complete Date)
Beta
In order to facilitate early feedback from users, all new features and functionality should first be released as part of a beta release.
Beta Code
kind=beta,ibm:beta,ProductInfo.getBetaEdition()target:betaand the appropriatetarget:YY00X-beta(where YY00X is the targeted beta version) to the feature issue.Note: This is expected to be done whenever there is new functionality being added for this feature.
Example scenario: If you are introducing a new feature to the 26.0.0.1-beta release, you would add the
target:26001-betalabel to the feature issue. Once that beta is released, thetarget:26001-betaandtarget:betalabels can be removed from the feature issue. If additional functionality is added to the feature in the 26.0.0.3-beta release, you would re-add thetarget:betalabel as well as thetarget:26003-betalabel to the feature issue. This indicates that there is additional functionality being targeted for a beta release, and which specific beta is being targeted.release:YY00X-beta(where YY00X is the first beta version that included the functionality).release:26001-betaandrelease:26003-betalabels on the feature issue. Thetarget:betalabel can be removed at this point if there is no additional work being targeted for a beta release.Beta Blog (Complete by beta eGA)
target:YY00X-betalabel added to it.GA
A feature is ready to GA after it is Feature Complete and has obtained all necessary Focal Point Approvals.
Feature Complete
Translation - Not Required,Translation - Complete, orTranslation - MissinglabelTranslation - Not Required.releasebranch, feature owner adds labelTranslation - Complete.Translation - Missing.Translation - Missinglabel is replaced withTranslation - Complete.Translation - Blockedlabel.Translation - Blockedmay NOT proceed to GA until the label has been replaced with eitherTranslation - MissingorTranslation - Complete.target:gaand the appropriatetarget:YY00X(where YY00X is the targeted GA version).Focal Point Approvals (Complete by Feature Complete Date)
These occur only after GA of this feature is requested (by adding a
target:galabel). GA of this feature may not occur until all approvals are obtained.All Features
focalApproved:externals@OpenLiberty/demo-approvers Demo scheduled for EOI [Iteration Number]to this issue.focalApproved:demo.focalApproved:fat.Design Approved Features
focalApproved:id.focalApproved:instantOn.focalApproved:performance.focalApproved:serviceability.focalApproved:ste.focalApproved:svt.Remove Beta Fencing (Complete by Feature Complete Date)
GA Blog (Complete by Friday after GM)
Post GM (Complete before GA)
Post GA
target:gaandtarget:YY00Xlabels, and add the appropriaterelease:YY00X. (OpenLiberty/release-manager)Other Deliverables