[
Date Prev][
Date Next][
Thread Prev][
Thread Next][
Date Index][
Thread Index]
[
List Home]
Re: [jakarta.ee-spec] [External] : [BALLOT] Revised: Recommend naming convention for new TCK tests in Jakarta EE 10 - Ends Jan 26th, 6pm Pacific
|
On 1/20/22 7:03 PM, Scott Stark wrote:
I still don't understand why the jakarta namespace cannot be treated the
same as the java.* and javax.* namespace with respect to filtering.
Historically this code worked, so why is it now that it is a requirement
that implementations have to process some jakarta.* namespaces?
it is likely that there will always be a CI of some Jakarta
Specification which won't be able to filter out everything from jakarta
package namespace, yet most will be probably able to do so. It should
not be a requirement for all implementations to process all jakarta
namespaces but the decision about what the particular implementation
wants to process or skip should be left up to itself and/or a spec which
defines it. This used to work in the past and if it does not work today
- based on provided example - I do not understand why the solution is to
"let's ban jakarta namespace" instead of "you have a bug, fix it".
Former is simpler for everyone, but is it the right one?
Historically, most CIs (former RIs) of specifications directly included
in JDK were not filtering out everything from javax package namespace,
even GlassFish was not doing so to the certain extent (versions 3 and 4
at least, I think), and they cannot blindly do so even today with
jakarta namespace, so from those projects' point of view saying that
everything from the jakarta package namespace must/can be filtered out
by CI is misleading based on what we have today.
With jakarta namespace, there is an opportunity to learn from the past,
apply the knowledge gained over decades to the rules being defined and
prepare them for the future, ie it wasn't true for the javax namespace
in Java EE times that everything being developed in the javax package
namespace is part of the Java EE Platform and the same is not/will not
be true for the jakarta package namespace.
That may be as simple as putting sth like "Package/module names that
start with the identifier jakarta are reserved for packages of the
Jakarta Specification Projects. These packages/modules are not subject
to the requirements given on user applications." somewhere to be
explicit about it and to not allow this to fall into grey area. Maybe it
is already written somewhere and I just cannot find it.
With regard to the question on 'Is there a distinction between
"Application developers" and "Jakarta Specification APIs developers"? If
so, would it make sense to define clear border between these two groups
of developers?', the answer is certainly yes, but that still leaves the
question of how the TCK fits in. Specification projects are able to
utilize the jakarta.* namespace for APIs. TCK test vehicle deployments
are acting as if they are application developers to validate the
expected behavior of implementations. As such, they should not be making
use of API package namespaces.
Whatever wording allows inclusion of tests for integrations between
various specifications in the TCK, very likely in the jakarta package
namespace for those who needs it, is fine by me, assuming legal aspect
of things allows that. I believe "should not" satisfies it.
thanks,
--lukas
On Jan 20, 2022 at 5:40:33 AM, Lukas Jungmann <lukas.jungmann@xxxxxxxxxx
<mailto:lukas.jungmann@xxxxxxxxxx>> wrote:
On 1/20/22 3:00 AM, David Blevins wrote:
- Technical: Some implementations handle the jakarta.* namespace
specially, so if applications in the TCK use it, those TCK
applications will not deploy. EclipseLink is one of the
implementations, which is used by 15 or so of our certified
platforms, so this would be a fairly global issue if the
jakarta.tck.* trend continued.
With my EclipseLink project project lead hat on: This is a bug in
EclipseLink and a project should file a TCK challenge/bug against XML
Binding Specification TCK to add a test covering applications written in
jakarta package namespace. Jakarta XML Web Services Specification API is
an example of the XML Binding application written in jakarta package
namespace - as of Jakarta EE 9.x.
(see also https://www.eclipse.org/lists/eclipselink-dev/msg08208.html
<https://urldefense.com/v3/__https://www.eclipse.org/lists/eclipselink-dev/msg08208.html__;!!ACWV5N9M2RV99hQ!fYfQBphkHk-n4YHKYN6W3UOT-s-QNwPJ4M9fwpEiLo2CEZp0P5NC5YAALvWekOg5DZM$>)
- Trademark: Application developers cannot legally create original
code in jakarta.* anyway, so there is no merit to putting TCK test
applications in that namespace and/or forcing vendors put workarounds
in their product to specially handle jakarta.tck.*
With my XML Web Services specification project lead hat on: Is the same
(legal?) restriction applicable to Jakarta Specification projects? Is
there a distinction between "Application developers" and "Jakarta
Specification APIs developers"? If so, would it make sense to define
clear border between these two groups of developers?
- Certification: due to the above, implementations could rightfully
argue for tests in jakarta.* to be excluded. This would effectively
mean very low test coverage for new Jakarta EE 10 features.
With my EclipseLink project lead and Eclipse Implementation of JAXB
project lead hats on (both are CIs of the XML Binding specification):
we argue that the TCK for the XML Binding Specification should provide
better coverage for applications written in the jakarta package
namespace. Complete exclusion of the jakarta package namespace from TCK
will lead to less test coverage for integrations between various Jakarta
Specification projects.
thanks,
--lukas
Please use the this thread if you'd like to discuss/challenge the
above:
https://urldefense.com/v3/__https://www.eclipse.org/lists/jakartaee-platform-dev/msg03014.html__;!!ACWV5N9M2RV99hQ!cAMOYrqf80eHdwv5hFz3XAn7oo3MYZOaulN0FUGj7hTFbXhChW6G8mspe-JcMuQDk5w$
<https://urldefense.com/v3/__https://www.eclipse.org/lists/jakartaee-platform-dev/msg03014.html__;!!ACWV5N9M2RV99hQ!cAMOYrqf80eHdwv5hFz3XAn7oo3MYZOaulN0FUGj7hTFbXhChW6G8mspe-JcMuQDk5w$>
# Status
Several specification teams are awaiting undisputed guidance on a new
namespace so they can repackage their jakarta.tck.* tests.
Jakarta EE 10 is being delayed by lack of guidance on how to handle
TCK tests in jakarta.tck.*
# Attempts to Resolve
- The Platform project collected namespace candidates, held a poll
and selected ee.jakarta.tck.[spec] as the namespace. In that
conversation it was clear this would be a recommendation for EE 10,
not a requirement. It was rightfully pointed out the Platform
project doesn't have the authority to make a namespace decision for
other projects and the Specification Committee should in some way
ratify the result.
- The Specification Committee ballot we just saw attempted to
ratify that result. The details on it being a recommendation for
Jakarta EE 10 where missing and despite clarification, the vote did
not pass. No one with a binding vote expressed concern over
ee.jakarta.tck.* package itself.
# Vote
The revised vote text:
- Specification projects may not use any form of jakarta.* for
their TCK tests. Tests that do so must be renamed to some other
package of their choosing prior to the Jakarta EE 10 release.
- The recommended package and naming convention is
ee.jakarta.tck.[spec]. This is a recommendation for Jakarta EE 10,
not a requirement.
- Specification teams should anticipate this becoming a requirement
in some future date, perhaps even as soon as Jakarta EE 11 and
possibly only for new Jakarta EE 11 tests or Jakarta EE 10 tests that
did not follow the recommendation. However, this is not decided and
those details are intentionally TBD so as to not inadvertently create
more sources of disagreement and further delay of Jakarta EE 10.
Jakarta EE.next requirements and potential disagreement over vote
text and scope can be handled separately.
This is a seven-day ballot, ending on January 26, 2022, that requires
a Super-majority positive vote of the Specification Committee
members. All votes welcome.
Please respond with +1 (positive), 0 (abstain), or -1 (reject). Any
feedback that you can provide to support your vote will be appreciated.
Reminder, there are teams that have been waiting to do renames on TCK
tests for the last two weeks. They are simply awaiting our guidance
to proceed.
-David
_______________________________________________
jakarta.ee-spec mailing list
jakarta.ee-spec@xxxxxxxxxxx <mailto:jakarta.ee-spec@xxxxxxxxxxx>
To unsubscribe from this list, visit
https://urldefense.com/v3/__https://www.eclipse.org/mailman/listinfo/jakarta.ee-spec__;!!ACWV5N9M2RV99hQ!cAMOYrqf80eHdwv5hFz3XAn7oo3MYZOaulN0FUGj7hTFbXhChW6G8mspe-JcR-_dwLE$
<https://urldefense.com/v3/__https://www.eclipse.org/mailman/listinfo/jakarta.ee-spec__;!!ACWV5N9M2RV99hQ!cAMOYrqf80eHdwv5hFz3XAn7oo3MYZOaulN0FUGj7hTFbXhChW6G8mspe-JcR-_dwLE$>
_______________________________________________
jakarta.ee-spec mailing list
jakarta.ee-spec@xxxxxxxxxxx <mailto:jakarta.ee-spec@xxxxxxxxxxx>
To unsubscribe from this list, visit
https://www.eclipse.org/mailman/listinfo/jakarta.ee-spec
<https://urldefense.com/v3/__https://www.eclipse.org/mailman/listinfo/jakarta.ee-spec__;!!ACWV5N9M2RV99hQ!fYfQBphkHk-n4YHKYN6W3UOT-s-QNwPJ4M9fwpEiLo2CEZp0P5NC5YAALvWedo3Otw0$>
_______________________________________________
jakarta.ee-spec mailing list
jakarta.ee-spec@xxxxxxxxxxx
To unsubscribe from this list, visit https://urldefense.com/v3/__https://www.eclipse.org/mailman/listinfo/jakarta.ee-spec__;!!ACWV5N9M2RV99hQ!fYfQBphkHk-n4YHKYN6W3UOT-s-QNwPJ4M9fwpEiLo2CEZp0P5NC5YAALvWedo3Otw0$