Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [rest-dev] [External] : EE11 Platform call update



On Wed, Feb 21, 2024 at 6:22 AM Jim Krueger via rest-dev <rest-dev@xxxxxxxxxxx> wrote:
Santiago,
James or Jan will likely be able to add more details here if needed, but in my opinion, as the EE11 schedules stand now it will not be possible to include any changes to the 3.1 support for @Context in EE11.   In my guess at a plan below is proposing that the Epic and Release Plan for Jakarta Rest 4.0 (for EE11) not contain any @Context injection changes (neither deprecation nor removal).     However, under the “Release-3.2” working branch the work to deprecate @Context would continue and could potentially be added into Jakarta Rest 4.0 for EE11 if for some reason , unrelated to Rest, the Jakarta EE11 release is delayed.

I guess I would see not including any context/CDI changes as a "maybe" :) I would like to see these go in as it's a quicker path forward to finally removing the old form of context injection. That said, as long as there is a migration path in some release of Jakarta REST for a true deprecation of @Context and @Suspended, that would be ideal. This will be very helpful for projects like MicroProfile as well as users in general.

Now, to address the "maybe". I can see a path to the added CDI support and deprecation of the two annotations if we can get the TCK work done. To me this depends on how much TCK work we need to get done. Currently there are no CDI tests in the TCK at all. If we can get by with the minimum, it would be a test which injects the known types that @Context could inject. Then a few tests which ensure resources and providers are CDI beans. Along with a few tests which allow for resources with CDI constructors and methods.

Jan has a good point too that "4.0 has a capability to overcome potential incompatibilities when moving towards CDI injection, while it can keep compatibility with 3.1 when using the 3.1 legacy injection. It would also allow a path for MP.next to move from @Context.". I understand we're on borrowed time effectively. However, if we don't do this now, I think a 4.1 would be equally as difficult given what Jan has pointed out. That doesn't mean we can't do a 5.0 though.

That's just my opinion on it :)
 

On Feb 21, 2024, at 7:53 AM, Santiago Pericasgeertsen <santiago.pericasgeertsen@xxxxxxxxxx> wrote:

Jim,

 Seems like a good plan to me. However, for the release review, we are going to need to be explicit about our @Context plans, that’s why I thought the prototype work needs to further along (or maybe it already is?) for us to make a decision one way or the other. Can someone summarize where we are at with it?

— Santiago

On Feb 21, 2024, at 8:47 AM, Jim Krueger via rest-dev <rest-dev@xxxxxxxxxxx> wrote:

Thanks.   If I’m understanding correctly I have a suggestion for one way we could proceed starting today using the branches available to us. The idea being to start with a 4.0  for EE11 that only removes the XML binding dependency and ManagedBean annotation, and allows for @Context deprecation work to continue for possible inclusion in 4.0  for EE11 (a stretch goal for sure) or EE12.  Thoughts?

Master branch

  • Updated to remove the XML binding dependency (as required for EE11 by the Platform).
  • Updated to remove @ManagedBean annotation. 
  • Updated with TCK updates and fixes.
  • Make adjustments to Epic and Release Plan to account for content.
  • Will initially NOT contain and changes to remove or formally deprecate @Context injection.

Release-3.2 branch

  • Update with all PRs going into Master branch.  
  • Continue prototype work to deprecate @Context injection and provide alternative implementation
  • Move changes into master for release.  This might be 4.0, 4.x, or 5.0 for EE11 or EE12, depending on when it is ready.

Release-4.0 branch

  • Keep for reference
  • Remove when no longer relevant.

On Feb 21, 2024, at 4:00 AM, Jan Supol via rest-dev <rest-dev@xxxxxxxxxxx> wrote:

Thank you for sharing, Jim.

+1 for Jakarta REST 4.0 in EE11, with @Context deprecated and kept as we planned for 3.2.
4.0 has a capability to overcome potential incompatibilities when moving towards CDI injection, while it can keep compatibility with 3.1 when using the 3.1 legacy injection. It would also allow a path for MP.next to move from @Context.

Thanks,
Jan

From: rest-dev <rest-dev-bounces@xxxxxxxxxxx> on behalf of James Perkins via rest-dev <rest-dev@xxxxxxxxxxx>
Sent: Tuesday, February 20, 2024 10:49 PM
To: Jakarta Rest project developer discussions <rest-dev@xxxxxxxxxxx>
Cc: James Perkins <jperkins@xxxxxxxxxx>
Subject: Re: [rest-dev] [External] : EE11 Platform call update
 


On Tue, Feb 20, 2024 at 12:22 PM Santiago Pericasgeertsen via rest-dev <rest-dev@xxxxxxxxxxx> wrote:
Jim,

 Thanks for the update.

 - On 3.2: I have not seen proof that we can do 3.2 with the suggested changes (deprecations) without breaking backward compatibility. I am skeptical.

My concern here is there will be no path forward for projects like MicroProfile if we simply just remove the @Context injection. If we drop @Context support, say in Jakarta EE 12, there is a very likely chance you can't have a Jakarta EE 12 deployment that works with some MicroProfile specifications and/or implementations. I know for sure there are several API's and implementations that use @Context injection for their REST endpoints.
 

 - On 3.1 for EE11: No objections.

 - On 4.0 for JAXB deprecation: Seems OK at first glance.

Just for a personal preference, I like the idea of what we have planned for 3.2, in a 4.0 which removes JAXB. That part is just my opinion though :)
 

— Santiago

On Feb 20, 2024, at 2:03 PM, Jim Krueger via rest-dev <rest-dev@xxxxxxxxxxx> wrote:

Hi,

In this morning's EE11 Platform call there was renewed concerns about the possibility that Jakarta Rest may need to remain on 3.1 for EE11. The primary point of concern centered around the fact that XML binding would be moving to optional in EE11. This will cause a problem for Jakarta Rest since the deprecated dependency with JAXB is not slated for removal prior to JAkarta Rest 4.0. It was discussed that we might be asked to put out Jakarta Rest 4.0 containing only the removal of the JAXB dependency. I'd also assume if our work with release-3.2 reaches a point where it could be included in EE11 that there would likely be a push to rename 3.2 to 4.0 in order to allow the JAXB dependency removal to be included.

I was not in a position to advocate a course of action. I felt that the group should be made aware of this discussion.
_______________________________________________
rest-dev mailing list
rest-dev@xxxxxxxxxxx
To unsubscribe from this list, visit https://urldefense.com/v3/__https://accounts.eclipse.org__;!!ACWV5N9M2RV99hQ!OKE2-3coiWbO1poF9zfNNnIeHBWQ8QGhrpflT-cPEApEZxWsoYIlXpIg0Pz5ElVotc6exqiXp5S8q5WMQ2972MSCKRgw$

_______________________________________________
rest-dev mailing list
rest-dev@xxxxxxxxxxx
To unsubscribe from this list, visit https://accounts.eclipse.org


-- 
James R. Perkins
JBoss by Red Hat
_______________________________________________
rest-dev mailing list
rest-dev@xxxxxxxxxxx
To unsubscribe from this list, visit https://accounts.eclipse.org

_______________________________________________
rest-dev mailing list
rest-dev@xxxxxxxxxxx
To unsubscribe from this list, visit https://urldefense.com/v3/__https://accounts.eclipse.org__;!!ACWV5N9M2RV99hQ!KbzEMUQhiEkWgndecDSPN-khfJhN_t-ER1xKpVWEPdQlUh4KNr2EQNxw4rOtg2QHGlGaFEZMTXLQQWJNsOD_NgPfCUFp$


_______________________________________________
rest-dev mailing list
rest-dev@xxxxxxxxxxx
To unsubscribe from this list, visit https://accounts.eclipse.org


--
James R. Perkins
JBoss by Red Hat

Back to the top