PS: for ref, the original thread on this topic
https://markmail.org/message/76uveuuvvhxx6b3v

Romain Manni-Bucau
@rmannibucau <https://twitter.com/rmannibucau> |  Blog
<https://rmannibucau.metawerx.net/> | Old Blog
<http://rmannibucau.wordpress.com> | Github <https://github.com/rmannibucau> |
LinkedIn <https://www.linkedin.com/in/rmannibucau> | Book
<https://www.packtpub.com/application-development/java-ee-8-high-performance>


Le dim. 7 juin 2020 à 20:25, Romain Manni-Bucau <rmannibu...@gmail.com> a
écrit :

>
>
> Le dim. 7 juin 2020 à 20:20, Gurkan Erdogdu <cgurkanerdo...@gmail.com> a
> écrit :
>
>> Hi David
>>
>> I’m not sure exactly how it impacts this decision, but IIUC the geronimo
>> > cdi spec jar is rather essential for some uses as it has OSGI support
>> > whereas IIUC the eclipse/jakarta one doesn’t.
>> >
>> No, it is not correct. It has OSGI support. GlassFish is an OSGI based
>> server.You can grap the code from https://github.com/eclipse-ee4j/cdi and
>> build. It has OSGI enabled MANIFEST.MF file.
>>
>
> Not, it is not correct Gurkan ;).
> jakarta does NOT support OSGi properly, it does it the old way and break
> several rules. For instance last CDI spec jar contains:
>
> Manifest-Version: 1.0
> Bundle-Description: APIs for CDI (Contexts and Dependency Injection fo
>  r Java)
> Bundle-License: https://repository.jboss.org/licenses/apache-2.0.txt
> Bundle-SymbolicName: jakarta.enterprise.cdi-api
> Built-By: default
> Bnd-LastModified: 1590678420932
> Bundle-ManifestVersion: 2
> Bundle-DocURL: https://jboss.org
> Bundle-Vendor: JBoss by Red Hat, Inc.
> Import-Package: jakarta.el;version="4.0",jakarta.inject;version="[2.0,
>  3)",jakarta.interceptor;version="[2.0,3)"
> Require-Capability: osgi.ee;filter:="(&(osgi.ee=JavaSE)(version=1.8))"
> Tool: Bnd-2.4.1.201501161923
> Originally-Created-By: Apache Maven Bundle Plugin
> Export-Package: jakarta.decorator;version="3.0";uses:="jakarta.enterpr
>  ise.inject",jakarta.enterprise.context;version="3.0";uses:="jakarta.e
>  nterprise.util,jakarta.inject",jakarta.enterprise.context.control;ver
>  sion="3.0";uses:="jakarta.enterprise.context,jakarta.interceptor",jak
>  arta.enterprise.context.spi;version="3.0",jakarta.enterprise.event;ve
>  rsion="3.0";uses:="jakarta.enterprise.util",jakarta.enterprise.inject
>  ;version="3.0";uses:="jakarta.enterprise.context,jakarta.enterprise.u
>  til,jakarta.inject",jakarta.enterprise.inject.literal;version="3.0";u
>  ses:="jakarta.enterprise.util,jakarta.inject",jakarta.enterprise.inje
>  ct.se;version="3.0";uses:="jakarta.enterprise.inject,jakarta.enterpri
>  se.inject.spi",jakarta.enterprise.inject.spi;version="3.0";uses:="jak
>  arta.el,jakarta.enterprise.context.spi,jakarta.enterprise.event,jakar
>  ta.enterprise.inject,jakarta.enterprise.inject.spi.configurator,jakar
>  ta.interceptor",jakarta.enterprise.inject.spi.configurator;version="3
>  .0";uses:="jakarta.enterprise.context.spi,jakarta.enterprise.event,ja
>  karta.enterprise.inject,jakarta.enterprise.inject.spi,jakarta.enterpr
>  ise.util",jakarta.enterprise.util;version="3.0"
> Bundle-Name: CDI APIs
> Bundle-Version: 3.0.0.M4
> Build-Jdk-Spec: 1.8
> Created-By: Apache Maven Bundle Plugin
> Build-Jdk: 1.8.0_202
>
> Where are the osgi.serviceloader and osgi.contract ?
> This is important and used by OSGi-CDI for example (even if it can be
> worked around).
>
> So to conclude on this point not belonging to OWB, we still need our fork
> and eclipse always answered saying "yes we want OSGi [but we don't really
> know]" - and I know eclipse+EE has a lot of OSGi experts but they don't
> work on that factually so OSGi is done at minimal cost.
>
>
>>
>> Gurkan’s proposal will only add difficulty for developers and probably
>> > users.
>> >
>> What is the difficulty? The change will only affect maintaining the
>> javax.*
>> branch and fully renamed jakarta.* dependencies in master.
>>
>
> Ok Gurkan, let's be concrete, do you - you as you personally - accept and
> commit yourself to port any commit to one of the two branches to the other
> for all the time the project is at apache?
> if so fine, if not -1 to create us unneeded (+ still unjustified by facts)
> work.
>
>
>>
>> Regards.
>> Gurkan
>>
>> On Sun, Jun 7, 2020 at 8:58 PM David Jencks <david.a.jen...@gmail.com>
>> wrote:
>>
>> > I’m not sure exactly how it impacts this decision, but IIUC the geronimo
>> > cdi spec jar is rather essential for some uses as it has OSGI support
>> > whereas IIUC the eclipse/jakarta one doesn’t.
>> >
>> > Personally I’m afraid I’m totally on Romain’s side so far, AFAICT
>> Gurkan’s
>> > proposal will only add difficulty for developers and probably users.
>> > Although I haven’t been active here for years I might even vote.
>> >
>> > thanks
>> > David Jencks
>> >
>> > > On Jun 7, 2020, at 10:46 AM, Gurkan Erdogdu <cgurkanerdo...@gmail.com
>> >
>> > wrote:
>> > >
>> > >>
>> > >> Tomcat works with branches since years without any issue.
>> > >> All projects we tried to use branches we abandoned branches just
>> after
>> > >> having done them.
>> > >> It is fine if the old branch is no more used but here we know we will
>> > >> maintain javax branch more than jakarta one for some time so I think
>> we
>> > >> should avoid it while it is not justified or one of the 2 branches
>> > (javax)
>> > >> is "almost dead".
>> > >
>> > > Working with branches always happens in all open source projects.  And
>> > > there are times when it is logical to create the branch. Jakarta EE 9
>> API
>> > > migration is the best time to create such a branch. Eventually, we
>> will
>> > > create such a branch in Jakarta EE 10.
>> > >
>> > > Fact there will be no more javax is useless IMHO, only question we
>> should
>> > >> care about is "do we have javax users?"  and should we work on javax
>> > branch
>> > >> enough to care about having 2 duplicate branches. Answer is obviously
>> > yes
>> > >> and more than jakarta users today, therefore I think for some months
>> > (maybe
>> > >> a few years) we should stick to javax as our primary branch and
>> ensure
>> > the
>> > >> alignments and bugfixes can trivially - == without any action from
>> dev
>> > - be
>> > >> ported. It is what we have today.
>> > >>
>> > > What could be more natural than maintaining branches (with backporting
>> > from
>> > > master only if necessary). With Jakarta EE 10, we will eventually
>> create
>> > > the branch for supporting the EE 8. Also, for the release versioning,
>> it
>> > is
>> > > nice to have a 3.x release. The community will notice that 3.x is the
>> > > starting point of Jakarta EE support. Will you release 2.x with the
>> > > intention of supporting Jakarta EE 9? I am personally not positive on
>> > this.
>> > > I think, 3.x release will also get more interest even if the
>> > functionality
>> > > and API stay the same. We can prepare the press release for it.
>> > >
>> > > Note we shouldn't depend on jakarta/javax api anyway (neither as
>> groupId
>> > >> nor as transitive dep so this change must stay a noop for consumers).
>> > >>
>> > > What is the problem of depending on the official Jakarta EE CDI API?
>> It
>> > is
>> > > an Apache friendly license. Instead of maintaining the Geronimo CDI
>> API
>> > > internally, it is more logical to use Jakarta EE official CDI API and
>> > > maintain this API with EE4J community.
>> > >
>> > > would also appreciate if you do a vote if you can point out the
>> breaking
>> > >> changes - except the package renaming - justifying to fork ourself
>> and
>> > what
>> > >> does not work with current solution, can ease the decision/vote.
>> > >> Today using jakarta/EE9 API is quite easy (
>> > >>
>> >
>> https://github.com/apache/openwebbeans/blob/master/src/site/apt/jakarta.apt
>> > >> ).
>> > >> We should absolutely enhance the pom experience though but it is
>> > trivial to
>> > >> do at maven level - I was envisionning to do it in shade plugin to be
>> > more
>> > >> precise.
>> > >>
>> > > I know that there will be no functional change. But, I am also against
>> > > shading for jakarta.*. If there will be no change on Jakarta EE 10,
>> will
>> > we
>> > > continue to shade?  What happens when there will be a change in EJB,
>> JMS
>> > > etc specifications but no change in CDI in Jakarta EE 10? Also,
>> VOTING is
>> > > the natural thing to do for the community decision. If the community
>> > would
>> > > like to keep it as it is via shading, it is fine.
>> > >
>> > >>
>> > >> To try to rephrase/clarify my questionning today: you ask for jakarta
>> > >> support, we already have it in a dev and project efficient way so why
>> > >> should we change since I don't hink there is anything new - once
>> again
>> > if
>> > >> API starts to fully break discussion is different but github doesnt
>> > reflect
>> > >> that?
>> > >>
>> > > This is not just for Jakarta EE 9 support. As we know, there will be
>> no
>> > API
>> > > (functional) change, only package renaming. But, I want to emphasize
>> that
>> > > with such turning points, it is so logical to integrate official
>> Jakarta
>> > > CDI API into our master (removing the geronimo-cdi), and release our
>> new
>> > > 3.x version and let the public know that OWB supports official CDI API
>> > > beginning with 3.x release. Yeah, shading is an option for package
>> > renaming
>> > > but think long term. Also, I am really against the shading. It really
>> > > disturbs the users which depend on OWB implementation. For example,
>> > > currently Glassfish supports Weld integration but one can also
>> implement
>> > > OWB to replace Weld in Glassfish. Therefore, instead of using the
>> shaded
>> > > version, it is really important to have the full Jakarta EE CDI API in
>> > our
>> > > poms. You will still have javax.* dependency in ur POMs even if doing
>> a
>> > > shade. This is not good idea to still maintain javax.* in our POM
>> files.
>> > >
>> > > What are other opinions before formal voting?
>> > > Regards.
>> > > Gurkan
>> > >
>> > >
>> > >
>> > > On Sun, Jun 7, 2020 at 8:02 PM Romain Manni-Bucau <
>> rmannibu...@gmail.com
>> > >
>> > > wrote:
>> > >
>> > >> Le dim. 7 juin 2020 à 18:49, Gurkan Erdogdu <
>> cgurkanerdo...@gmail.com>
>> > a
>> > >> écrit :
>> > >>
>> > >>> Tomcat created branch 10 for jakarta ee 9. Glassfish is also on
>> master.
>> > >>>
>> > >>
>> > >> Tomcat works with branches since years without any issue.
>> > >> All projects we tried to use branches we abandoned branches just
>> after
>> > >> having done them.
>> > >> It is fine if the old branch is no more used but here we know we will
>> > >> maintain javax branch more than jakarta one for some time so I think
>> we
>> > >> should avoid it while it is not justified or one of the 2 branches
>> > (javax)
>> > >> is "almost dead".
>> > >>
>> > >>
>> > >>> sorry but not understand the resistance on this? will you always
>> shade
>> > ?
>> > >>>
>> > >>
>> > >> As mentionned, until API needs changes we can't easily handle - today
>> > there
>> > >> is no change.
>> > >>
>> > >>
>> > >>> creating the new master and maintain the 2.x branch, is the best
>> > logical
>> > >>> way. there will be no javax.* any more. Tomcat maintains 3  branches
>> > and
>> > >> 1
>> > >>> master. only maintains 1 branch and 1 master is totally fine.
>> > >>>
>> > >>
>> > >> Fact there will be no more javax is useless IMHO, only question we
>> > should
>> > >> care about is "do we have javax users?"  and should we work on javax
>> > branch
>> > >> enough to care about having 2 duplicate branches. Answer is obviously
>> > yes
>> > >> and more than jakarta users today, therefore I think for some months
>> > (maybe
>> > >> a few years) we should stick to javax as our primary branch and
>> ensure
>> > the
>> > >> alignments and bugfixes can trivially - == without any action from
>> dev
>> > - be
>> > >> ported. It is what we have today.
>> > >>
>> > >>
>> > >>>
>> > >>> I will propose a vote shortly to decide on to create a master with
>> 3.x
>> > >> with
>> > >>> fully support of jakarta with a normal pom dependency with jakarta
>> api.
>> > >>>
>> > >>
>> > >> Note we shouldn't depend on jakarta/javax api anyway (neither as
>> groupId
>> > >> nor as transitive dep so this change must stay a noop for consumers).
>> > >> I would also appreciate if you do a vote if you can point out the
>> > breaking
>> > >> changes - except the package renaming - justifying to fork ourself
>> and
>> > what
>> > >> does not work with current solution, can ease the decision/vote.
>> > >> Today using jakarta/EE9 API is quite easy (
>> > >>
>> >
>> https://github.com/apache/openwebbeans/blob/master/src/site/apt/jakarta.apt
>> > >> ).
>> > >> We should absolutely enhance the pom experience though but it is
>> > trivial to
>> > >> do at maven level - I was envisionning to do it in shade plugin to be
>> > more
>> > >> precise.
>> > >>
>> > >> To try to rephrase/clarify my questionning today: you ask for jakarta
>> > >> support, we already have it in a dev and project efficient way so why
>> > >> should we change since I don't hink there is anything new - once
>> again
>> > if
>> > >> API starts to fully break discussion is different but github doesnt
>> > reflect
>> > >> that?
>> > >>
>> > >>
>> > >>>
>> > >>> Regs
>> > >>> Gurkan
>> > >>>
>> > >>>
>> > >>> On 7 Jun 2020 Sun at 18:05 Romain Manni-Bucau <
>> rmannibu...@gmail.com>
>> > >>> wrote:
>> > >>>
>> > >>>> Today we don't need, tomorrow I don't know but while API does not
>> > >> change
>> > >>>> (except the package) we shouldn't fork ourself IMHO (cause it is
>> what
>> > >> you
>> > >>>> propose as a consequence).
>> > >>>> If it becomes necessary let's do it but my vote is to stay lazy on
>> > >> that.
>> > >>>>
>> > >>>>
>> > >>>> side note for G API discussion belongs to dev@G but it is less an
>> > >> issue
>> > >>> to
>> > >>>> fork from now since we rarely update the API, the side note here is
>> > >> that
>> > >>>> CDI SE is already fully runnable on ASF stack with jakarta package
>> > >> since
>> > >>>> some weeks or months, we did all the needed releases.
>> > >>>>
>> > >>>> Romain Manni-Bucau
>> > >>>> @rmannibucau <https://twitter.com/rmannibucau> |  Blog
>> > >>>> <https://rmannibucau.metawerx.net/> | Old Blog
>> > >>>> <http://rmannibucau.wordpress.com> | Github <
>> > >>>> https://github.com/rmannibucau> |
>> > >>>> LinkedIn <https://www.linkedin.com/in/rmannibucau> | Book
>> > >>>> <
>> > >>>>
>> > >>>
>> > >>
>> >
>> https://www.packtpub.com/application-development/java-ee-8-high-performance
>> > >>>>>
>> > >>>>
>> > >>>>
>> > >>>> Le dim. 7 juin 2020 à 16:42, Thomas Andraschko <
>> > >>>> andraschko.tho...@gmail.com>
>> > >>>> a écrit :
>> > >>>>
>> > >>>>> AFAIR we dont need it as we shade a -jakarta.jar via our build.
>> > >>>>> As EE9 just changes the namespace, it's perfectly fine.
>> > >>>>>
>> > >>>>> I'm actually also a supporter of doing a hard cut but it's not
>> > >> required
>> > >>>> and
>> > >>>>> we can do it for EE 10.
>> > >>>>>
>> > >>>>> <
>> > >>>>>
>> > >>>>
>> > >>>
>> > >>
>> >
>> https://www.avast.com/sig-email?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=webmail
>> > >>>>>>
>> > >>>>> Virenfrei.
>> > >>>>> www.avast.com
>> > >>>>> <
>> > >>>>>
>> > >>>>
>> > >>>
>> > >>
>> >
>> https://www.avast.com/sig-email?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=webmail
>> > >>>>>>
>> > >>>>> <#DAB4FAD8-2DD7-40BB-A1B8-4E2AA1F9FDF2>
>> > >>>>>
>> > >>>>> Am So., 7. Juni 2020 um 16:35 Uhr schrieb Gurkan Erdogdu <
>> > >>>>> cgurkanerdo...@gmail.com>:
>> > >>>>>
>> > >>>>>> We need to maintain two branches
>> > >>>>>>
>> > >>>>>> EE 8 for javax.* package 2.x branch
>> > >>>>>> EE 9 for jakarta.* package 3.x master
>> > >>>>>>
>> > >>>>>> On 7 Jun 2020 Sun at 16:25 Romain Manni-Bucau <
>> > >> rmannibu...@gmail.com
>> > >>>>
>> > >>>>>> wrote:
>> > >>>>>>
>> > >>>>>>> Hi,
>> > >>>>>>>
>> > >>>>>>> I'll probably restate my position on that: if EE 9 brings
>> > >>>>> significatively
>> > >>>>>>> new API yes - a quick review shows it is 1-1 with EE 8 but I can
>> > >>> have
>> > >>>>>>> missed sthg, looked quite fast. if EE9==EE8 then we can stay as
>> > >> we
>> > >>>> are
>> > >>>>> I
>> > >>>>>>> think avoiding to maintain two branches we can't merge
>> regularly.
>> > >>>>>>>
>> > >>>>>>> Romain Manni-Bucau
>> > >>>>>>> @rmannibucau <https://twitter.com/rmannibucau> |  Blog
>> > >>>>>>> <https://rmannibucau.metawerx.net/> | Old Blog
>> > >>>>>>> <http://rmannibucau.wordpress.com> | Github <
>> > >>>>>>> https://github.com/rmannibucau> |
>> > >>>>>>> LinkedIn <https://www.linkedin.com/in/rmannibucau> | Book
>> > >>>>>>> <
>> > >>>>>>>
>> > >>>>>>
>> > >>>>>
>> > >>>>
>> > >>>
>> > >>
>> >
>> https://www.packtpub.com/application-development/java-ee-8-high-performance
>> > >>>>>>>>
>> > >>>>>>>
>> > >>>>>>>
>> > >>>>>>> Le dim. 7 juin 2020 à 10:26, Gurkan Erdogdu <
>> > >>>> cgurkanerdo...@gmail.com>
>> > >>>>> a
>> > >>>>>>> écrit :
>> > >>>>>>>
>> > >>>>>>>> Hi
>> > >>>>>>>> After the 2.x release, can we get the master to 3.0.0 to
>> > >> support
>> > >>>>>> upcoming
>> > >>>>>>>> Jakarta EE 9 release with jakarta.* namespace?
>> > >>>>>>>>
>> > >>>>>>>> I also favor to use the Jakarta EE CDI API instead of using the
>> > >>>>> Apache
>> > >>>>>>>> based api.
>> > >>>>>>>> Regards
>> > >>>>>>>> Gurkan
>> > >>>>>>>>
>> > >>>>>>>> --
>> > >>>>>>>> Gurkan Erdogdu
>> > >>>>>>>> http://gurkanerdogdu.blogspot.com
>> > >>>>>>>>
>> > >>>>>>>
>> > >>>>>> --
>> > >>>>>> Gurkan Erdogdu
>> > >>>>>> http://gurkanerdogdu.blogspot.com
>> > >>>>>>
>> > >>>>>
>> > >>>>
>> > >>> --
>> > >>> Gurkan Erdogdu
>> > >>> http://gurkanerdogdu.blogspot.com
>> > >>>
>> > >>
>> > >
>> > >
>> > > --
>> > > Gurkan Erdogdu
>> > > http://gurkanerdogdu.blogspot.com
>> >
>> >
>>
>> --
>> Gurkan Erdogdu
>> http://gurkanerdogdu.blogspot.com
>>
>

Reply via email to