-
Notifications
You must be signed in to change notification settings - Fork 2.7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Revisit the non-standard behavior of ArcContainer#instanceSupplier() #28429
Conversation
Added commit from @geoand that solves the issue I encountered. |
I've updated the RR processor to transform annotations using RR build items as per @geoand suggestion. I also noticed that I can still get intermittent failures of the |
Thanks for the update. I'll have a look on Monday. |
I pushed two commits:
|
You are right, seems I must have missed something. |
The reason we don't want my initial commit is that it breaks the TCK, so I need to figure out a different approach |
Should be fixed now. My comment about squashing the two sorting commits I mentioned above still applies. |
Yeah, looks good now, thanks!
I know, I intend to squash all commits into two. |
Great, thanks! |
The TCK failure also occurred on #27526 so it's unlikely to be related to this change |
The failure showed up in a few PRs (like quarkusio#28429 and quarkusio#27526)
#28498 fixes the test failure |
Modify RR and Undertow processors to add @typed to the resources they discover as beans
…verable. These providers are registered manually, but previously because they were annotated with @Provider, they could be inadvertently registered as application classes in some test cases (essentially if an actual application class extended them). Added note about sorting - this note is needed in order to folks debugging in the future from going down the wrong path and having the TCK fail. Fix ChunkedResponseTest to be spec compliant.
…original syntax to give users time to adapt
Alright, I've rebased to include that commit |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good. Thanks!
The failure showed up in a few PRs (like quarkusio#28429 and quarkusio#27526) (cherry picked from commit fbd8fff)
The failure showed up in a few PRs (like quarkusio#28429 and quarkusio#27526)
The failure showed up in a few PRs (like quarkusio#28429 and quarkusio#27526)
The failure showed up in a few PRs (like quarkusio#28429 and quarkusio#27526)
The failure showed up in a few PRs (like quarkusio#28429 and quarkusio#27526)
The failure showed up in a few PRs (like quarkusio#28429 and quarkusio#27526)
Fixes #28115
This would be a breaking change in
ArcContainer#instanceSupplier()
because there can be other extensions (outside of this repo) that use this method unknowingly viaBeanContainer#instanceFactory
and those might rely on the non-CDI behavior that the underlying resolution performed.Theoretically, we could instead deprecate
instanceSupplier()
method (as well as the method onBeanContainer
) and keep their current behavior while introducing new ones with similar names that would behave per spec. That'd give extension creators time to adapt. WDYT @mkouba?As for our own extensions, I am stuck with RE reactive and its handling of
@Provider
. The second commit shows the issue - the altered test would lead to ambig. exception (expected due to changes inBeanContainer#instanceFactory
) but I am adding@Typed
to all providers. Despite the fact that RE will register such provider, but will not use it during test execution. I might need someone with RE internals knowledge to take a look and tell me what I am missing...