Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [jakarta.ee-spec.committee] Incremental vs Big Bang boms

A profile isn't really functionally any different than an optional spec.  I don't think this rises to the level of what we originally intended profiles to be used for.

Steve Millidge (Payara) wrote on 5/31/19 7:05 AM:

+1

 

From: jakarta.ee-spec.committee-bounces@xxxxxxxxxxx <jakarta.ee-spec.committee-bounces@xxxxxxxxxxx> On Behalf Of Mark Little
Sent: 31 May 2019 14:13
To: Jakarta specification committee <jakarta.ee-spec.committee@xxxxxxxxxxx>
Subject: Re: [jakarta.ee-spec.committee] Incremental vs Big Bang boms

 

Option 4: an interop profile?

 

On Fri, May 31, 2019 at 1:53 PM Kevin Sutter <sutter@xxxxxxxxxx> wrote:

I'd agree with Steve that it needs to be either 2 or 3.  Option 1 says that all Jakarta EE 9 implementations *must* support binary compatibility.  That requirement would inhibit or prevent new implementations which only want to start with Jakarta EE 9.

---------------------------------------------------
Kevin Sutter
STSM, MicroProfile and Jakarta EE architect
e-mail:  sutter@xxxxxxxxxx     Twitter:  @kwsutter
phone: tl-553-3620 (office), 507-253-3620 (office)    
LinkedIn:
https://www.linkedin.com/in/kevinwsutter



From:        Mark Little <mlittle@xxxxxxxxxx>
To:        Jakarta specification committee <jakarta.ee-spec.committee@xxxxxxxxxxx>
Date:        05/31/2019 05:24 AM
Subject:        [EXTERNAL] Re: [jakarta.ee-spec.committee] Incremental vs Big Bang boms
Sent by:        jakarta.ee-spec.committee-bounces@xxxxxxxxxxx





Just because these are the choices you’ve mentioned, I’d say 1 or 2. 3 has more negative implications on the developer, e.g., they have to hunt down whether an implementation has done this, plus what does that say about “compatibility” if an implementation isn’t, well, compatible? If a vendor wants to go down that route then they could stay on v8.

Mark.


On 31 May 2019, at 10:50, Steve Millidge (Payara) <steve.millidge@xxxxxxxxxxx> wrote:

I agree with the scenarios.

My view is where does the binary compatibility story lie.

1) Should it be mandatory on all compatible implementations as part of the Jakarta EE 9 platform specification?
2) Should it be optional as part of the Jakarta EE 9 platform specification?
3) Should it be left as a vendor's decision?

My view is 3 or 2, specifically for the namespace change.


Steve

-----Original Message-----
From:
jakarta.ee-spec.committee-bounces@xxxxxxxxxxx<jakarta.ee-spec.committee-bounces@xxxxxxxxxxx> On Behalf Of Bill Shannon
Sent: 31 May 2019 00:38
To: Jakarta specification committee <
jakarta.ee-spec.committee@xxxxxxxxxxx>; Kazumura, Kenji <kzr@xxxxxxxxxxxxxx>
Subject: Re: [jakarta.ee-spec.committee] Incremental vs Big Bang boms

If the vendor's Jakarta EE 9 product provides binary compatibility with Jakarta EE 8, the customer doesn't need to do anything to run their existing Jakarta EE 8 app on the Jakarta EE 9 product and they can upgrade to the new version of the product based on their own needs.

If the vendor doesn't provide Jakarta EE 8 binary compatibility, then the customer needs to change everything in their app that uses any API that's changed in Jakarta EE 9 if they want to upgrade to the Jakarta EE 9 version of the product.  In the Incremental approach, that would only be some subset of the APIs, but almost certainly would include some APIs that the customer is using.  In the Big Bang approach, all uses of Jakarta EE 8 APIs would need to be changed.  In both cases, this is independent of whether the customer wants to use any new Jakarta EE 9 features.  In both cases, the customer would need to change their build configuration to replace any reference to the Jakarta EE 8 bom with a reference to the Jakarta EE 9 bom.

With a good binary compatibility story, this change doesn't make any difference to the customer.

Without a binary compatibility story, the customer is forced to change their app when *we* change the APIs, either a little bit every release, or all at once in Jakarta EE 9.


Kazumura, Kenji wrote on 5/30/19 3:03 AM:

Steve,

I 'm not sure other country, but it likely happens in Japan.

(1) A vendor provides a Jakarta EE 9 product which run with Java SE
13, and a customer want to use Java SE 13 features (but not want to use Jakarta EE 9 new features).
In this case, this customer must use Jakarta EE 9 product, unless we
provide Jakarta EE 8 product which run with Java SE 13.

(2) The customers, who wants a long term support, usually select the
newer version product.
For example, the date of EOL for Jakarta EE 9 product is later than the one for Jakarta EE 8.
They select Jakarta EE 9 product because they want to use it as long as possible.

-Kenji Kazumura


-----Original Message-----
From:
jakarta.ee-spec.committee-bounces@xxxxxxxxxxx
[
mailto:jakarta.ee-spec.committee-bounces@xxxxxxxxxxx] On Behalf Of
Steve Millidge (Payara)
Sent: Thursday, May 30, 2019 6:48 PM
To: Jakarta specification committee
<
jakarta.ee-spec.committee@xxxxxxxxxxx>
Subject: Re: [jakarta.ee-spec.committee] Incremental vs Big Bang boms

Hi Kenji,

I may have missed something subtle in your email but if the customer
is not using any Jakarta EE 9 features then don't they just have a Jakarta EE 8 app and therefore can't they just use the Jakarta EE 8 bom?

Steve

-----Original Message-----
From:
jakarta.ee-spec.committee-bounces@xxxxxxxxxxx
<
jakarta.ee-spec.committee-bounces@xxxxxxxxxxx> On Behalf Of
Kazumura, Kenji
Sent: 30 May 2019 08:07
To: Jakarta specification committee
<
jakarta.ee-spec.committee@xxxxxxxxxxx>
Subject: Re: [jakarta.ee-spec.committee] Incremental vs Big Bang boms

Assume that you have an existing Jakarta EE 8 app, and you want to
change just your own business logic, but you don't want to use any new features in Jakarta EE 9.
You don't need to change the package names in your source code when
using incremental bom, while you need to change all the package names in your source when using big bang bom.

If we choose the big bang approach, this type of customers do not have motivation to use Jakarta EE 9.
My concern is, if a vendor has a lot of this type of existing
customers, this vendor also does not have motivation to provide Jakarta EE 9 products.

-Kenji Kazumura


-----Original Message-----
From:
jakarta.ee-spec.committee-bounces@xxxxxxxxxxx
[
mailto:jakarta.ee-spec.committee-bounces@xxxxxxxxxxx] On Behalf Of
Bill Shannon
Sent: Thursday, May 30, 2019 6:10 AM
To: Scott Stark <
sstark@xxxxxxxxxx>
Cc: Jakarta specification committee
<
jakarta.ee-spec.committee@xxxxxxxxxxx>
Subject: Re: [jakarta.ee-spec.committee] Incremental vs Big Bang
boms

If you have an existing app that's using the Jakarta EE 8 bom and
you update part of that app to use the new features in Jakarta EE 9,
e.g., the jakarta.ws.rs.Path class, you'll need to add something to
your app configuration to get access to the new API, either by
adding the entire Jakarta EE 9 bom or by adding the adding the new
Jakarta RESTful Web Services API pom.

That's the same with Incremental or Big Bang.


Scott Stark wrote on 5/29/19 1:43 PM:

Let's focus on javax.ws.rs.Path moving to jakarta.ws.rs.Path, and I
have updated updated a Jakarta EE 8 app to

Jakarta EE 9 where the only change was in the REST spec. I expect that the Jakarta EE 9 bom will have:
- under incremental, the jakarta.ws.rs.* + all unmodified javax.* spect artifacts.
- under Big Bang, the  
jakarta.ws.rs.* + all jakarta.* spec artifacts that simply had a package name change.

If I am using the incremental bom, I will only be able to compile
my updated Jakarta EE 8 app if I have replaced

all of the javax.ws.rs.Path usage.
If I am using the Big Bang bom, and I have only incrementally
updated my app to what has functionally changed,

then I also need to include the Jakarta EE 8 bom. Any location where
I forgot to update javax.ws.rs.Path usage will be treated as Jakarta
EE 8 and the binary compatibility layer will kick

in.

On May 29, 2019, at 12:56 PM, Bill Shannon <bill.shannon@xxxxxxxxxx> wrote:


If I have a Jakarta EE 8 app that is updated to use the new REST
apis, it would need to include both Jakarta EE 8 and Jakarta EE 9
boms to compile the app. Do we envision having a compatibly bom
such that there is a single bom a user could use to still build
from source against? The concern here is that they intended to
update all REST api usage to the Jakarta EE 9 apis, but missed
some locations. If they have to include both Jakarta EE 8 and
Jakarta EE 9 boms, this would be masked. If there was a Jakarta
EE
9 compatibility bom, compiling against it would fail on the
locations that did not update from JAX-RS to

the Jakarta EE 9 REST apis.

That would only be an issue with the incremental approach where
the bom would have the jakarta.rest.* APIs but not the
javax.ws.rs.* APIs, right?

If compatibility works by effectively "aliasing" the javax names
to the jakarta names, an app, or even a class, could mix and match
javax names and jakarta names and still work.  (Whether fine
grained mixing is a good idea is a separate issue.  :-))  And yes,
it would need to depend on the appropriate bom(s) or pom(s) to get access to the APIs it needs.


Whether there's a "compatibility bom" and what it's called would
seem to depend on whether compatibility is a Jakarta EE spec of
some sort or whether it's left completely to products to provide.
In any event, there would continue to be the Jakarta EE 8 bom.


_______________________________________________
jakarta.ee-spec.committee mailing list
jakarta.ee-spec.committee@xxxxxxxxxxx
To change your delivery options, retrieve your password, or
unsubscribe from this list, visit
https://www.eclipse.org/mailman/listinfo/jakarta.ee-spec.committee


_______________________________________________
jakarta.ee-spec.committee mailing list
jakarta.ee-spec.committee@xxxxxxxxxxx
To change your delivery options, retrieve your password, or
unsubscribe from this list, visit
https://www.eclipse.org/mailman/listinfo/jakarta.ee-spec.committee
_______________________________________________
jakarta.ee-spec.committee mailing list
jakarta.ee-spec.committee@xxxxxxxxxxx
To change your delivery options, retrieve your password, or
unsubscribe from this list, visit
https://www.eclipse.org/mailman/listinfo/jakarta.ee-spec.committee


_______________________________________________
jakarta.ee-spec.committee mailing list
jakarta.ee-spec.committee@xxxxxxxxxxx
To change your delivery options, retrieve your password, or
unsubscribe from this list, visit
https://www.eclipse.org/mailman/listinfo/jakarta.ee-spec.committee

_______________________________________________
jakarta.ee-spec.committee mailing list
jakarta.ee-spec.committee@xxxxxxxxxxx
To change your delivery options, retrieve your password, or unsubscribe from this list, visit
https://www.eclipse.org/mailman/listinfo/jakarta.ee-spec.committee
_______________________________________________
jakarta.ee-spec.committee mailing list
jakarta.ee-spec.committee@xxxxxxxxxxx
To change your delivery options, retrieve your password, or unsubscribe from this list, visit
https://www.eclipse.org/mailman/listinfo/jakarta.ee-spec.committee

---
Mark Little
mlittle@xxxxxxxxxx

JBoss, by Red Hat
Registered Address: Red Hat Ltd, 6700 Cork Airport Business Park, Kinsale Road, Co. Cork.
Registered in the Companies Registration Office, Parnell House, 14 Parnell Square, Dublin 1, Ireland, No.304873
Directors:Michael Cunningham (USA), Vicky Wiseman (USA), Michael O'Neill, Keith Phelan, Matt Parson (USA)



_______________________________________________
jakarta.ee-spec.committee mailing list
jakarta.ee-spec.committee@xxxxxxxxxxx
To change your delivery options, retrieve your password, or unsubscribe from this list, visit
https://www.eclipse.org/mailman/listinfo/jakarta.ee-spec.committee



_______________________________________________
jakarta.ee-spec.committee mailing list
jakarta.ee-spec.committee@xxxxxxxxxxx
To change your delivery options, retrieve your password, or unsubscribe from this list, visit
https://www.eclipse.org/mailman/listinfo/jakarta.ee-spec.committee


_______________________________________________
jakarta.ee-spec.committee mailing list
jakarta.ee-spec.committee@xxxxxxxxxxx
To change your delivery options, retrieve your password, or unsubscribe from this list, visit
https://www.eclipse.org/mailman/listinfo/jakarta.ee-spec.committee


Back to the top