Skip to content

chore(deps): update dependency org.typelevel:cats-effect to v3.7-4972921#197

Open
renovate[bot] wants to merge 1 commit intomasterfrom
renovate/org.typelevel-cats-effect-3.x
Open

chore(deps): update dependency org.typelevel:cats-effect to v3.7-4972921#197
renovate[bot] wants to merge 1 commit intomasterfrom
renovate/org.typelevel-cats-effect-3.x

Conversation

@renovate
Copy link
Contributor

@renovate renovate bot commented Apr 4, 2025

This PR contains the following updates:

Package Update Change
org.typelevel:cats-effect minor 3.6-623178c3.7-4972921

Release Notes

typelevel/cats-effect (org.typelevel:cats-effect)

v3.6.3

Compare 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.

[!WARNING]
Please note that Cats Effect 3.6.x is targeting Scala Native 0.4.x, which means it does not at present support native multithreading. This was a very intentional choice meant to give us an opportunity to break binary compatibility only on Scala Native if necessary when upgrading to Scala Native 0.5 and as we discover the impacts of the integrated runtime on the downstream ecosystem. It also reduces risk since Native multithreading in the runtime is a significant lift and we want to make sure we isolate that change from the already significant changes in 3.6.0. This functionality has already merged into the development branch and we plan to release it in 3.7.0 as soon as possible.

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.2

This 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.

[!WARNING]
Please note that Cats Effect 3.6.x is targeting Scala Native 0.4.x, which means it does not at present support native multithreading. This was a very intentional choice meant to give us an opportunity to break binary compatibility only on Scala Native if necessary when upgrading to Scala Native 0.5 and as we discover the impacts of the integrated runtime on the downstream ecosystem. It also reduces risk since Native multithreading in the runtime is a significant lift and we want to make sure we isolate that change from the already significant changes in 3.6.0. This functionality has already merged into the development branch and we plan to release it in 3.7.0 as soon as possible.

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
Documentation
Behind the Scenes

New Contributors

Full Changelog: typelevel/cats-effect@v3.6.1...v3.6.2

v3.6.1

This 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.

[!WARNING]
Please note that Cats Effect 3.6.x is targeting Scala Native 0.4.x, which means it does not at present support native multithreading. This was a very intentional choice meant to give us an opportunity to break binary compatibility only on Scala Native if necessary when upgrading to Scala Native 0.5 and as we discover the impacts of the integrated runtime on the downstream ecosystem. It also reduces risk since Native multithreading in the runtime is a significant lift and we want to make sure we isolate that change from the already significant changes in 3.6.0. This functionality has already merged into the development branch and we plan to release it in 3.7.0 as soon as possible.

What's Changed

Bug Fixes
Documentation
Behind 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.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@renovate renovate bot enabled auto-merge (squash) April 4, 2025 20:20
@renovate renovate bot force-pushed the renovate/org.typelevel-cats-effect-3.x branch from 5081954 to 91fece7 Compare May 7, 2025 20:23
@renovate renovate bot force-pushed the renovate/org.typelevel-cats-effect-3.x branch from 91fece7 to c4b269a Compare May 24, 2025 14:01
@renovate renovate bot force-pushed the renovate/org.typelevel-cats-effect-3.x branch 2 times, most recently from fd082be to 8523f91 Compare June 8, 2025 01:40
@renovate renovate bot force-pushed the renovate/org.typelevel-cats-effect-3.x branch 3 times, most recently from d17452c to c4d0d4e Compare July 6, 2025 06:01
@renovate renovate bot force-pushed the renovate/org.typelevel-cats-effect-3.x branch 2 times, most recently from 1487e09 to f7acd97 Compare July 11, 2025 05:25
@renovate renovate bot force-pushed the renovate/org.typelevel-cats-effect-3.x branch 2 times, most recently from f021827 to 9f6b24d Compare August 7, 2025 05:15
@renovate renovate bot force-pushed the renovate/org.typelevel-cats-effect-3.x branch 2 times, most recently from 5fbc9d4 to d40b7f4 Compare August 25, 2025 05:36
@renovate renovate bot force-pushed the renovate/org.typelevel-cats-effect-3.x branch 5 times, most recently from a3e8338 to b77bee4 Compare September 7, 2025 05:15
@renovate renovate bot force-pushed the renovate/org.typelevel-cats-effect-3.x branch from b77bee4 to 8c239a6 Compare September 17, 2025 20:23
@renovate renovate bot force-pushed the renovate/org.typelevel-cats-effect-3.x branch 3 times, most recently from 9e02856 to 00f458d Compare October 11, 2025 21:13
@renovate renovate bot force-pushed the renovate/org.typelevel-cats-effect-3.x branch from 00f458d to ff7af0f Compare October 31, 2025 01:13
@renovate renovate bot force-pushed the renovate/org.typelevel-cats-effect-3.x branch from ff7af0f to 2f16ff2 Compare November 24, 2025 17:40
@renovate renovate bot force-pushed the renovate/org.typelevel-cats-effect-3.x branch from 2f16ff2 to e5ee527 Compare December 1, 2025 18:01
@renovate renovate bot force-pushed the renovate/org.typelevel-cats-effect-3.x branch from e5ee527 to 634820d Compare January 5, 2026 11:13
@renovate renovate bot force-pushed the renovate/org.typelevel-cats-effect-3.x branch 2 times, most recently from a8c3b86 to 2e2c94f Compare January 27, 2026 10:54
@renovate renovate bot force-pushed the renovate/org.typelevel-cats-effect-3.x branch from 2e2c94f to c4a9884 Compare February 4, 2026 13:07
@renovate renovate bot force-pushed the renovate/org.typelevel-cats-effect-3.x branch 2 times, most recently from 6c04a59 to 2f23c41 Compare February 16, 2026 20:51
@renovate renovate bot force-pushed the renovate/org.typelevel-cats-effect-3.x branch 2 times, most recently from 5408638 to 411657f Compare March 2, 2026 09:00
@renovate renovate bot force-pushed the renovate/org.typelevel-cats-effect-3.x branch 4 times, most recently from 5cc7919 to aecbaf8 Compare March 16, 2026 08:59
@renovate renovate bot force-pushed the renovate/org.typelevel-cats-effect-3.x branch 2 times, most recently from 92bf1a6 to d96273e Compare March 25, 2026 06:35
@renovate renovate bot force-pushed the renovate/org.typelevel-cats-effect-3.x branch from d96273e to a9b8950 Compare March 26, 2026 09:03
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants