Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Coding assistance for developing apps with Jakarta EE 9/9.1 Web Profile APIs #10353

Open
31 tasks done
yeekangc opened this issue Jan 9, 2020 · 7 comments
Open
31 tasks done
Assignees
Labels
Design Approved dev-ex enhancement Epic Used to track Feature Epics that are following the UFO process In Progress Items that are in active development.

Comments

@yeekangc
Copy link
Member

yeekangc commented Jan 9, 2020

Provide developers with coding assistance (e.g., validations, auto completion, quick fixes, code snippets) to write cloud-native Java applications using Jakarta EE 9/9.1 Web Profile APIs.

A solution is to build a language server with the community for Jakarta EE (like through Eclipse LSP4Jakarta project) to assist developers to build applications with the programming model. We will focus on Web Profile APIs first.

Description

Solution provides a language server implementation for the JakartaEE specification. This language server implementations solution is managed from a new community Eclipse LSP4Jakarta project to assist developers in building applications with the JakartaEE programming model. We will focus on Web Profile APIs first.

The solution implements the Language Server Protocol specifically for the JakartaEE Programming model.


Note on Checklist for non-runtime feature

Took some liberties in deleting, ignoring, marking N/A sections that did not seem to apply to a tooling (rather than a runtime) deliverable, while realizing this isn't the only way to interpret or map the runtime process onto tooling. Still left some aspects like the ID and SVT focal approval, and of course the whole UFO process.


Documents


Design

Design Preliminaries

  • ID requirements identified. (Epic owner / Feature owner with ID focal point) Doc issue
  • Serviceability Requirements Identified. (Owner and Serviceability focal point)
  • SVT Requirements Identified. (Epic owner / Feature owner with SVT focal point) SVT epic
  • Performance testing requirements identified.

Design

  • POC Design / UFO review requested.
  • POC Design / UFO review scheduled.
  • POC Design / UFO review completed.
  • POC / UFO Review follow-ons completed.
  • POC Design / UFO approval requested.
  • Design / UFO approved.
    • The UFO must always accurately reflect the final implementation of the feature. Any changes must be first approved. Afterwards, update the UFO by creating a copy of the original approved slide(s) at the end of the deck and prepend "OLD" to the title(s). A single updated copy of the slide(s) should take the original's place, and have its title(s) prepended with "UPDATED".

FAT Documentation

  • "Feature Test Summary" child task created

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. Both MUST be completed before Beta or GA is requested.

Legal (Complete before Feature Complete Date)

  • Changed or new open source libraries are cleared and approved, or N/A. (Legal Release Services/Cass Tucker/Release PM).
  • Licenses and Certificates of Originality (COOs) are updated, or N/A:
  • OUR WORK: Went through initial PTC scan in October. Delta scan will happen 11/25. The license is EPL 2 since this is an open source offering, and there will be no COO.

Translation (Complete 1 week before Feature Complete Date)

  • N/A

Innovation (Complete 1 week before Feature Complete Date)

  • Consider whether any aspects of the feature may be patentable. If any identified, disclosures have been submitted.

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

  • Did release as Early Release as noted in beta blog post

GA

A feature is ready to GA after it is Feature Complete and has obtained all necessary Focal Point Approvals.

Feature Complete

  • Feature implementation and tests completed.
    • All PRs are merged.
    • All epic and child issues are closed.
    • All stop ship issues are completed.
  • Legal: all necessary approvals granted.
  • [X ] Translation: N/A
  • GA development complete and feature ready for inclusion in a GA release

Focal Point Approvals (Complete by Feature Complete Date)

  • Demo Demo is scheduled for an upcoming EOI or N/A.

Design Approved Features

  • ID Documentation
  • Performance: N/A
  • Serviceability: N/A
  • STE: N/A
  • SVT
    • Approver adds label focalApproved:svt.

GA Blog (Complete by Feature Complete Date)

  • GA Blog issue created and populated

Other Deliverables

@yeekangc yeekangc added enhancement Epic Used to track Feature Epics that are following the UFO process labels Jan 9, 2020
@angelozerr
Copy link

I think JDT LS is the language server that you wish to have, no?

@yeekangc
Copy link
Member Author

yeekangc commented Mar 9, 2020

This is more looking at what more beyond the JDT LS that the community may want to consider for Jakarta EE.

@yeekangc yeekangc changed the title Language Server for Jakarta EE Language Server for Jakarta EE (Web Profile) Mar 14, 2022
@yeekangc yeekangc changed the title Language Server for Jakarta EE (Web Profile) Coding assistance for developing apps with Jakarta EE Web Profile APIs May 10, 2022
@yeekangc yeekangc changed the title Coding assistance for developing apps with Jakarta EE Web Profile APIs Coding assistance for developing apps with Jakarta EE 9/9.1 Web Profile APIs May 10, 2022
@yeekangc
Copy link
Member Author

yeekangc commented Jul 6, 2022

@kathrynkodama is working on the first draft of the UFO.

@kathrynkodama
Copy link

UFO: https://ibm.box.com/s/wnux2tmy5hwzu81pfml98u2uqbrzagtn

The following updates have been made to the UFO following the review:
Slide 18: Highlighted the Language Clients in the image
Slide 32 and 38: Updated to clarify what will be done as part of LSP4Jakarta

@kathrynkodama
Copy link

@NottyCode Updated Slide 34 (Platform/Cloud Considerations) to indicate that for the first release we will be targeting Java 17 and Eclipse 22.0.0.9.
cc: @yeekangc

@yeekangc yeekangc added In Progress Items that are in active development. and removed Non-Release labels Dec 12, 2022
@yeekangc yeekangc added the dev-ex label Jun 9, 2023
@yeekangc yeekangc assigned ajm01 and unassigned kathrynkodama Jul 24, 2023
@yeekangc
Copy link
Member Author

Discussed with @scottkurz that @ajm01 will take over ownership of this item.

@yeekangc
Copy link
Member Author

yeekangc commented Dec 4, 2023

@ajm01, can you please go over the checklist and take this for closure? Thank you.

@NottyCode NottyCode moved this to Developer Experience in Open Liberty Roadmap Aug 26, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Design Approved dev-ex enhancement Epic Used to track Feature Epics that are following the UFO process In Progress Items that are in active development.
Projects
Status: Developer Experience
Development

No branches or pull requests

6 participants