chore(deps): update dependency org.typelevel:cats-effect to v3.7-4972921#197
Open
renovate[bot] wants to merge 1 commit intomasterfrom
Open
chore(deps): update dependency org.typelevel:cats-effect to v3.7-4972921#197renovate[bot] wants to merge 1 commit intomasterfrom
renovate[bot] wants to merge 1 commit intomasterfrom
Conversation
5081954 to
91fece7
Compare
91fece7 to
c4b269a
Compare
fd082be to
8523f91
Compare
d17452c to
c4d0d4e
Compare
1487e09 to
f7acd97
Compare
f021827 to
9f6b24d
Compare
5fbc9d4 to
d40b7f4
Compare
a3e8338 to
b77bee4
Compare
b77bee4 to
8c239a6
Compare
9e02856 to
00f458d
Compare
00f458d to
ff7af0f
Compare
ff7af0f to
2f16ff2
Compare
2f16ff2 to
e5ee527
Compare
e5ee527 to
634820d
Compare
a8c3b86 to
2e2c94f
Compare
2e2c94f to
c4a9884
Compare
6c04a59 to
2f23c41
Compare
5408638 to
411657f
Compare
5cc7919 to
aecbaf8
Compare
92bf1a6 to
d96273e
Compare
d96273e to
a9b8950
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
3.6-623178c→3.7-4972921Release Notes
typelevel/cats-effect (org.typelevel:cats-effect)
v3.6.3Compare Source
This is the fifty-eighth release in the Cats Effect 3.x lineage. It is fully binary compatible with every 3.x release and fully source-compatible with the 3.6.x lineage.
What's Changed
This release fixes a pretty nasty bug introduced in 3.6.2 which frequently results in the thread pool being entirely poisoned, producing severe performance degradation that could only be resolved by restarting the process. It is highly recommended that all users on 3.6.2 upgrade to 3.6.3 as soon as possible.
Bug Fixes
Full Changelog: typelevel/cats-effect@v3.6.2...v3.6.3
v3.6.2This is the fifty-seventh release in the Cats Effect 3.x lineage. It is fully binary compatible with every 3.x release and fully source-compatible with the 3.6.x lineage.
What's Changed
This release addresses a performance issue since 3.6.0 that was reported to be somewhat severe in applications which leverage asynchronous I/O without using the new polling system. Extensive discussion of this issue can be found in #4328. While a workaround was possible, the regression was certainly undesirable. We've changed the polling logic to be considerably less aggressive. In particular, threads will only poll if the polling system has outstanding events which require polling. This means that any applications which make no use of the polling system should see marginal (if any) overhead relative to pre-3.6 versions of Cats Effect, while applications which lean heavily on the new integrated runtime will still see the full benefits thereof.
Note that there is a somewhat pathological case here where an application makes use of the polling system (usually via some dependency, like Skunk or Ember), but does not make heavy use of that code path while simultaneously making very heavy use of other asynchronous I/O mechanisms (such as Netty or Blaze, often indirectly via other dependencies). In this scenario, the worker threads will be forced to make the more expensive polling syscalls, but those calls will often yield very small or empty batches while the majority of the work is enqueued externally (via other async I/O mechanisms). This will result in meaningful overhead relative to the theoretical optimal behavior.
We made the conscious decision in 3.6.0 to prioritize the performance of the integrated runtime, and while we certainly still want all use cases to behave as optimally as possible, this does mean that we occasionally needed to make some tradeoffs in order to achieve the performance goals we had in mind. Our hope is that as the ecosystem continues to adapt to the use of the integrated runtime (particularly with the rise of Scala Native 0.5, where there are essentially no other viable options), these edge cases will become quite rare.
Enhancements
Bug Fixes
IO#syncStepinterpreter stack-safe by @pantShrey in #4352mayInterruptIfRunning = truewhen cancelingCompletableFutureby @istreeter in #4375EPOLLHUPinEpollSystemby @rahulrangers in #4422Documentation
IOLocalscaladoc by @arinal in #4391IOApp#pollingSystemby @armanbilge in #4222Behind the Scenes
New Contributors
Full Changelog: typelevel/cats-effect@v3.6.1...v3.6.2
v3.6.1This is the fifty-sixth release in the Cats Effect 3.x lineage. It is fully binary compatible with every 3.x release and fully source-compatible with the 3.6.x lineage. Please note that we did break binary compatibility with 3.6.0 RC1 (not with 3.5.x) in order to fix some things, so if you published anything against that release you will need to reconsider your life choices.
What's Changed
Bug Fixes
IO.onErrorpackage private by @CJSmith-0141 in #4343Documentation
PollingSystem#metricsby @antoniojimeneznieto in #4334Behind the Scenes
New Contributors
Full Changelog: typelevel/cats-effect@v3.6.0...v3.6.1
Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Enabled.
♻ Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.