CI for Weld2 error

classic Classic list List threaded Threaded
6 messages Options
Reply | Threaded
Open this post in threaded view
|

CI for Weld2 error

Mark Struberg-3
Hi!

I've tried to fix the CI for Weld2, but it seems that there is nothing wrong with DeltaSpike but a bug in Weld2 regarding alternatives in beans.xml if they get disabled via ProcessAnnotatedType#veto(). Weld 1 and Weld3 both work perfectly fine, as does various OWB versions.

What to do?

LieGrue,
strub
Reply | Threaded
Open this post in threaded view
|

Re: CI for Weld2 error

John D. Ament
What versions of weld 2 have you tried?

On Thu, Jun 7, 2018, 5:11 PM Mark Struberg <[hidden email]>
wrote:

> Hi!
>
> I've tried to fix the CI for Weld2, but it seems that there is nothing
> wrong with DeltaSpike but a bug in Weld2 regarding alternatives in
> beans.xml if they get disabled via ProcessAnnotatedType#veto(). Weld 1 and
> Weld3 both work perfectly fine, as does various OWB versions.
>
> What to do?
>
> LieGrue,
> strub
Reply | Threaded
Open this post in threaded view
|

Re: CI for Weld2 error

Mark Struberg-3
I tried a few Weld2 versions and all are hit by it.

I now dug into the CDI spec archive and found an old bug from 2016
https://issues.jboss.org/browse/CDI-627

A backward incompatible (and thus void) change was introduced in the alternatives in beans.xml handling in CDI-1.2.
We reverted and fixed the wording in CDI-2.0 again.
But it seems that Weld-2 still follows the broken (illegal and void regarding to JCP rules) CDI-1.2 spec wording.

I'd say we could try to rewrite our tests to avoid this scenario but I have honestly no clue how!
We cannot use @Priority as we could not run on EE6 anymore. And the test is actually correct - it's reallly a Weld bug!

LieGrue,
strub


> Am 08.06.2018 um 02:28 schrieb John D. Ament <[hidden email]>:
>
> What versions of weld 2 have you tried?
>
> On Thu, Jun 7, 2018, 5:11 PM Mark Struberg <[hidden email]>
> wrote:
>
>> Hi!
>>
>> I've tried to fix the CI for Weld2, but it seems that there is nothing
>> wrong with DeltaSpike but a bug in Weld2 regarding alternatives in
>> beans.xml if they get disabled via ProcessAnnotatedType#veto(). Weld 1 and
>> Weld3 both work perfectly fine, as does various OWB versions.
>>
>> What to do?
>>
>> LieGrue,
>> strub

Reply | Threaded
Open this post in threaded view
|

Re: CI for Weld2 error

Matej Novotny
What tests are you talking about now?
Is it those in DS-1338?

BTW in regards to CDI-627, I can see the reason for that issue and the use case behind it, yet Weld behaves correctly - it follows what the spec says.
Though if you have such a test in DS, I am not really sure how to fix that to make it work on both versions...

Matej

----- Original Message -----

> From: "Mark Struberg" <[hidden email]>
> To: "deltaspike" <[hidden email]>
> Sent: Friday, June 8, 2018 8:33:27 AM
> Subject: Re: CI for Weld2 error
>
> I tried a few Weld2 versions and all are hit by it.
>
> I now dug into the CDI spec archive and found an old bug from 2016
> https://issues.jboss.org/browse/CDI-627
>
> A backward incompatible (and thus void) change was introduced in the
> alternatives in beans.xml handling in CDI-1.2.
> We reverted and fixed the wording in CDI-2.0 again.
> But it seems that Weld-2 still follows the broken (illegal and void regarding
> to JCP rules) CDI-1.2 spec wording.
>
> I'd say we could try to rewrite our tests to avoid this scenario but I have
> honestly no clue how!
> We cannot use @Priority as we could not run on EE6 anymore. And the test is
> actually correct - it's reallly a Weld bug!
>
> LieGrue,
> strub
>
>
> > Am 08.06.2018 um 02:28 schrieb John D. Ament <[hidden email]>:
> >
> > What versions of weld 2 have you tried?
> >
> > On Thu, Jun 7, 2018, 5:11 PM Mark Struberg <[hidden email]>
> > wrote:
> >
> >> Hi!
> >>
> >> I've tried to fix the CI for Weld2, but it seems that there is nothing
> >> wrong with DeltaSpike but a bug in Weld2 regarding alternatives in
> >> beans.xml if they get disabled via ProcessAnnotatedType#veto(). Weld 1 and
> >> Weld3 both work perfectly fine, as does various OWB versions.
> >>
> >> What to do?
> >>
> >> LieGrue,
> >> strub
>
>
Reply | Threaded
Open this post in threaded view
|

Re: CI for Weld2 error

Mark Struberg-3
Well, Weld2 follows the CDI-1.2 spec wording. Which is actively contradicts the CDI-1.0 spec - which is forbidden by the JCP rules.
So Weld2 _could_ behave correctly. Just apply the changes you did for Weld3.

Otoh this is just a test in DeltaSpike.
The point is that I really have no idea how we can make this test pass :(
Happy to get hints!

LieGrue,
strub

> Am 08.06.2018 um 09:43 schrieb Matej Novotny <[hidden email]>:
>
> What tests are you talking about now?
> Is it those in DS-1338?
>
> BTW in regards to CDI-627, I can see the reason for that issue and the use case behind it, yet Weld behaves correctly - it follows what the spec says.
> Though if you have such a test in DS, I am not really sure how to fix that to make it work on both versions...
>
> Matej
>
> ----- Original Message -----
>> From: "Mark Struberg" <[hidden email]>
>> To: "deltaspike" <[hidden email]>
>> Sent: Friday, June 8, 2018 8:33:27 AM
>> Subject: Re: CI for Weld2 error
>>
>> I tried a few Weld2 versions and all are hit by it.
>>
>> I now dug into the CDI spec archive and found an old bug from 2016
>> https://issues.jboss.org/browse/CDI-627
>>
>> A backward incompatible (and thus void) change was introduced in the
>> alternatives in beans.xml handling in CDI-1.2.
>> We reverted and fixed the wording in CDI-2.0 again.
>> But it seems that Weld-2 still follows the broken (illegal and void regarding
>> to JCP rules) CDI-1.2 spec wording.
>>
>> I'd say we could try to rewrite our tests to avoid this scenario but I have
>> honestly no clue how!
>> We cannot use @Priority as we could not run on EE6 anymore. And the test is
>> actually correct - it's reallly a Weld bug!
>>
>> LieGrue,
>> strub
>>
>>
>>> Am 08.06.2018 um 02:28 schrieb John D. Ament <[hidden email]>:
>>>
>>> What versions of weld 2 have you tried?
>>>
>>> On Thu, Jun 7, 2018, 5:11 PM Mark Struberg <[hidden email]>
>>> wrote:
>>>
>>>> Hi!
>>>>
>>>> I've tried to fix the CI for Weld2, but it seems that there is nothing
>>>> wrong with DeltaSpike but a bug in Weld2 regarding alternatives in
>>>> beans.xml if they get disabled via ProcessAnnotatedType#veto(). Weld 1 and
>>>> Weld3 both work perfectly fine, as does various OWB versions.
>>>>
>>>> What to do?
>>>>
>>>> LieGrue,
>>>> strub
>>
>>

Reply | Threaded
Open this post in threaded view
|

Re: CI for Weld2 error

Gerhard Petracek-2
@mark: +1

we do add @Priority dynamically >if< it is available (in case of global
alternatives).
however, in case of @Exclude we need for sure ProcessAnnotatedType#veto.
there is no way around it (by definition)...

regards,
gerhard



2018-06-08 17:42 GMT+02:00 Mark Struberg <[hidden email]>:

> Well, Weld2 follows the CDI-1.2 spec wording. Which is actively
> contradicts the CDI-1.0 spec - which is forbidden by the JCP rules.
> So Weld2 _could_ behave correctly. Just apply the changes you did for
> Weld3.
>
> Otoh this is just a test in DeltaSpike.
> The point is that I really have no idea how we can make this test pass :(
> Happy to get hints!
>
> LieGrue,
> strub
>
> > Am 08.06.2018 um 09:43 schrieb Matej Novotny <[hidden email]>:
> >
> > What tests are you talking about now?
> > Is it those in DS-1338?
> >
> > BTW in regards to CDI-627, I can see the reason for that issue and the
> use case behind it, yet Weld behaves correctly - it follows what the spec
> says.
> > Though if you have such a test in DS, I am not really sure how to fix
> that to make it work on both versions...
> >
> > Matej
> >
> > ----- Original Message -----
> >> From: "Mark Struberg" <[hidden email]>
> >> To: "deltaspike" <[hidden email]>
> >> Sent: Friday, June 8, 2018 8:33:27 AM
> >> Subject: Re: CI for Weld2 error
> >>
> >> I tried a few Weld2 versions and all are hit by it.
> >>
> >> I now dug into the CDI spec archive and found an old bug from 2016
> >> https://issues.jboss.org/browse/CDI-627
> >>
> >> A backward incompatible (and thus void) change was introduced in the
> >> alternatives in beans.xml handling in CDI-1.2.
> >> We reverted and fixed the wording in CDI-2.0 again.
> >> But it seems that Weld-2 still follows the broken (illegal and void
> regarding
> >> to JCP rules) CDI-1.2 spec wording.
> >>
> >> I'd say we could try to rewrite our tests to avoid this scenario but I
> have
> >> honestly no clue how!
> >> We cannot use @Priority as we could not run on EE6 anymore. And the
> test is
> >> actually correct - it's reallly a Weld bug!
> >>
> >> LieGrue,
> >> strub
> >>
> >>
> >>> Am 08.06.2018 um 02:28 schrieb John D. Ament <[hidden email]>:
> >>>
> >>> What versions of weld 2 have you tried?
> >>>
> >>> On Thu, Jun 7, 2018, 5:11 PM Mark Struberg <[hidden email]>
> >>> wrote:
> >>>
> >>>> Hi!
> >>>>
> >>>> I've tried to fix the CI for Weld2, but it seems that there is nothing
> >>>> wrong with DeltaSpike but a bug in Weld2 regarding alternatives in
> >>>> beans.xml if they get disabled via ProcessAnnotatedType#veto(). Weld
> 1 and
> >>>> Weld3 both work perfectly fine, as does various OWB versions.
> >>>>
> >>>> What to do?
> >>>>
> >>>> LieGrue,
> >>>> strub
> >>
> >>
>
>