Open lukasj opened 3 months ago
This would be great.
So the steps involved would be those described in the Creation Review of the JESP:
[^1]: It may be a good idea to socialize the idea with the Specification Committee to solicit support before proceeding with the project creation.
@lukasj if it's fine by you, I will make a start on this process.
@lukasj @starksm64 how does this look to you guys:
@starksm64 the Creation Review template requires a link to a specification project ... but there's no instructions on how to set up such a project.
There needs to be a new project created under the https://projects.eclipse.org/projects/ee4j umbrella project. I'll ask the EE4J PMC what needs to be done.
The parent operations guide details the steps for creating a new project: https://www.eclipse.org/projects/efsp/operations.php#efspo-creating
I'll start the socialization with the spec committee.
There are several paths to accomplish this -- If you want to just extract it into a separate specification, you will need to create a TCK (or refactor from the existing), and write the new specification document. You could also factor this into two facets of Persistence (like JSON Supportability or CDI Code Model) -- and just work on separating the material -- while keeping it within Persistence. Then, once you are satisfied things are factored as you want them, broach the topic of splitting it into a new Specification. You could also create the new Specification and keep it in the Persistence Specification project. There is no requirement that Specifications within a single project must evolve in lock-step so, this might make it easier to manage the contents (e.g. Dependency Injection is maintained in the CDI specification project). Process wise: Separate the material, hold a Restructuring review (when you are ready to create a new specification), optionally along with a Creation review (if you want to move this into a separate specification project). Once that is all approved, move the content into the new project and move forward.
If you want to just extract it into a separate specification, you will need to create a TCK (or refactor from the existing), and write the new specification document.
That's not really enough here. It's not just a question of splitting out JPQL, but of:
Since Jakarta Data shouldn't depend on Jakarta Persistence for its core functionality (and vice versa) it doesn't make sense for this spec to be maintained by either one of the existing projects. Instead it should be maintained by a separate project which takes account of the needs to both consumers (and, potentially, even other future consumers which don't exist today).
So I think it makes much more sense to continue down the path we've just started, which is to create a new dedicated project for this work, and invest in the promotion of an interesting new "brand": Jakarta Query.
...or establish new specification project for Jakarta EE wide Query Language(s), where the Data QL can be core, JPQL a RDBMS extension/superset and possibly another extension for NoSQL DBs