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

Allow MP 6.x to run with either Jakarta EE 9.1 or Jakarta EE 10 #295

Open
Emily-Jiang opened this issue Nov 23, 2022 · 1 comment
Open

Comments

@Emily-Jiang
Copy link
Member

We need to ensure MP 6.x to run with either Jakarta EE 9.1 or Jakarta EE 10 Core Profile. We need to either come up with different types of releases or 2 pom.xml.

@JanWesterkamp-iJUG
Copy link
Contributor

JanWesterkamp-iJUG commented Dec 5, 2022

We definitly must prevent having two POMs for one artifact - a POM describes a single artifact!

But a way to solve the issue might be to release two separate artifacts of a component spec: I.e. one, that is a at least minor update with adding a new feature on the same Jakarta EE base (i.e. EE 9.1 specs) and another one for the spec version that is including the same feature based on a higher Jakarta EE (Core) base (i.e. EE 10) - as a minimum as a minor release, but reflecting the major Jakarta release base in most cases will be a major one.

Backporting (even partly from a major release) of a component specs is possible too.

But releasing two versions or creating a backport requires extra work - so especially the members calling for the extended support should invest their ressources to fulfill the request (PRs, CI etc.), then the hole community will support it (i.e. with reviews, ballots etc.).

Another thing, that could make it easier to meet requirements of component specs would be to not let them depend on the Jakarta EE Core Profile as a hole, instead use it as BOM and decleare the specific parts of it (with the same versions of course!) as required only.

As an user, I definitely expect the dependencies including the transitive ones are fulfills as expected and I do expect things to break on major releses following semver rules only.
And in the case of MP 6.0 I to expect a Jakarta EE Core Profile 10 implementation behind it - this part is required now, meaning it must pass the coresponding Jakarta Core Profile TCK(s) too.
This is especially helpful, because in case in Jakarta EE there exists a compatiblity program. In MP the MPWG decides to skip this last year and have only compatible implementations get listed on the spec page - and there is no difference in the platform profile (spec) and the component specs...
To reach this, we might need to ensure using a test framework, that does not require a Servlet implementation (Arquilian 1.7.0 alpha 13 ? or hopefully a final version of it) on the Jakarta Core Profile and MP.

Besides the Jakarta EE dependency this is the same for the Java SE dependency and the ones between MP component specs.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants