-
Notifications
You must be signed in to change notification settings - Fork 1.2k
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
BlockHound support #1682
BlockHound support #1682
Conversation
Codecov Report
@@ Coverage Diff @@
## master #1682 +/- ##
===========================================
+ Coverage 84.27% 84.3% +0.03%
Complexity 3932 3932
===========================================
Files 361 362 +1
Lines 30037 30048 +11
Branches 5590 5590
===========================================
+ Hits 25313 25333 +20
Misses 3097 3097
+ Partials 1627 1618 -9
Continue to review full report at Codecov.
|
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.
@bsideup I think it should be possible to bump Gradle to 4.10, and use the latest version of the plugin you introduced.
I'm wondering about that plugin, and its possible interactions with pattern-based "test sets" we have so far (loops, tck, tests, jmh)... Maybe either follow a similar pattern-based approach, or migrate everything to unbroken-dome
's testSets
?
We're using 4.10 already, and the plugin's second version does not work with 4.10.x. We could try Gradle 5.x, but I remember having issues with upping it.
There are no conflicts between the test sets (since this is a separate source set anyways), but I would be happy to convert the existing sets if you prefer :) |
@bsideup I'll keep the gitignore commit separate, so I'll do a manual rebase with some squashing before I merge this. |
38647a5
to
ad07981
Compare
Add BlockHound SPI's implementation. By keeping it next to core, we control how we intercept the tasks (e.g., `onScheduleHook`) and can also apply internal optimizations in future. BlockHound's built-in Reactor integration will be adjusted to not apply anything if Reactor's version is 3.3 or higher. The integration class must be public to to the ServiceLoader use, but it is excluded from javadoc and documented inline as "do not consider public".
The regular expression in the gitignore file was way too broad, which prevents a SPI file to be committed.
Add BlockHound SPI's implementation. By keeping it next to core, we control how we intercept the tasks (e.g., `onScheduleHook`) and can also apply internal optimizations in future. BlockHound's built-in Reactor integration will be adjusted to not apply anything if Reactor's version is 3.3 or higher. The integration class must be public to to the ServiceLoader use, but it is excluded from javadoc and documented inline as "do not consider public".
ad07981
to
f494640
Compare
#29) Since reactor/reactor-core#1682 is merged now, we should not instrument Reactor because it natively integrates with BlockHound via the SPI
Add BlockHound SPI's implementation. By keeping it next to core, we control how we intercept the tasks (e.g., `onScheduleHook`) and can also apply internal optimizations in future. BlockHound's built-in Reactor integration will be adjusted to not apply anything if Reactor's version is 3.3 or higher. The integration class must be public to to the ServiceLoader use, but it is excluded from javadoc and documented inline as "do not consider public".
Add BlockHound SPI's implementation. By keeping it next to core,
we control how we intercept the tasks (e.g.,
onScheduleHook
)and can also apply internal optimizations in future.
BlockHound's built-in Reactor integration will be adjusted to not
apply anything if Reactor's version is 3.3 or higher.