Skip to content

Commit 9236a21

Browse files
authored
Merge pull request #3613 from djspiewak/release/3.4.11-major
Backport 3.4.11 into major branch
2 parents a4d76cd + 7f65ba2 commit 9236a21

11 files changed

Lines changed: 46 additions & 30 deletions

File tree

README.md

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -11,11 +11,11 @@
1111

1212
## Getting Started
1313

14-
- Wired: **3.4.10**
14+
- Wired: **3.4.11**
1515
- Tired: **2.5.5** (end of life)
1616

1717
```scala
18-
libraryDependencies += "org.typelevel" %% "cats-effect" % "3.4.10"
18+
libraryDependencies += "org.typelevel" %% "cats-effect" % "3.4.11"
1919
```
2020

2121
The above represents the core, stable dependency which brings in the entirety of Cats Effect. This is *most likely* what you want. All current Cats Effect releases are published for Scala 2.12, 2.13, 3.0, and Scala.js 1.7.
@@ -30,22 +30,22 @@ Depending on your use-case, you may want to consider one of the several other mo
3030

3131
```scala
3232
libraryDependencies ++= Seq(
33-
"org.typelevel" %% "cats-effect-kernel" % "3.4.10",
34-
"org.typelevel" %% "cats-effect-laws" % "3.4.10" % Test)
33+
"org.typelevel" %% "cats-effect-kernel" % "3.4.11",
34+
"org.typelevel" %% "cats-effect-laws" % "3.4.11" % Test)
3535
```
3636

3737
If you're a middleware framework (like [Fs2](https://fs2.io/)), you probably want to depend on **std**, which gives you access to `Queue`, `Semaphore`, and much more without introducing a hard-dependency on `IO` outside of your tests:
3838

3939
```scala
4040
libraryDependencies ++= Seq(
41-
"org.typelevel" %% "cats-effect-std" % "3.4.10",
42-
"org.typelevel" %% "cats-effect" % "3.4.10" % Test)
41+
"org.typelevel" %% "cats-effect-std" % "3.4.11",
42+
"org.typelevel" %% "cats-effect" % "3.4.11" % Test)
4343
```
4444

4545
You may also find some utility in the **testkit** and **kernel-testkit** projects, which contain `TestContext`, generators for `IO`, and a few other things:
4646

4747
```scala
48-
libraryDependencies += "org.typelevel" %% "cats-effect-testkit" % "3.4.10" % Test
48+
libraryDependencies += "org.typelevel" %% "cats-effect-testkit" % "3.4.11" % Test
4949
```
5050

5151
Cats Effect provides backward binary compatibility within the 2.x and 3.x version lines, and both forward and backward compatibility within any major/minor line. This is analogous to the versioning scheme used by Cats itself, as well as other major projects such as Scala.js. Thus, any project depending upon Cats Effect 2.2.1 can be used with libraries compiled against Cats Effect 2.0.0 or 2.2.3, but *not* with libraries compiled against 2.3.0 or higher.

core/jvm/src/main/scala/cats/effect/unsafe/WorkerThread.scala

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -100,7 +100,7 @@ private final class WorkerThread(
100100
private val indexTransfer: LinkedTransferQueue[Integer] = new LinkedTransferQueue()
101101
private[this] val runtimeBlockingExpiration: Duration = pool.runtimeBlockingExpiration
102102

103-
val nameIndex: Int = pool.blockedWorkerThreadNamingIndex.incrementAndGet()
103+
val nameIndex: Int = pool.blockedWorkerThreadNamingIndex.getAndIncrement()
104104

105105
// Constructor code.
106106
{
@@ -824,6 +824,9 @@ private final class WorkerThread(
824824
val idx = index
825825
val clone =
826826
new WorkerThread(idx, queue, parked, external, fiberBag, sleepers, pool)
827+
// Make sure the clone gets our old name:
828+
val clonePrefix = pool.threadPrefix
829+
clone.setName(s"$clonePrefix-$idx")
827830
pool.replaceWorker(idx, clone)
828831
pool.blockedWorkerThreadCounter.incrementAndGet()
829832
clone.start()

docs/core/native-image.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ ThisBuild / scalaVersion := "2.13.8"
3333

3434
lazy val root = (project in file(".")).enablePlugins(NativeImagePlugin).settings(
3535
name := "cats-effect-3-hello-world",
36-
libraryDependencies += "org.typelevel" %% "cats-effect" % "3.4.10",
36+
libraryDependencies += "org.typelevel" %% "cats-effect" % "3.4.11",
3737
Compile / mainClass := Some("com.example.Main"),
3838
nativeImageOptions += "--no-fallback",
3939
nativeImageVersion := "22.1.0" // It should be at least version 21.0.0

docs/core/scala-native.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ lazy val root = project.in(file("."))
2222
.enablePlugins(ScalaNativePlugin)
2323
.settings(
2424
name := "cats-effect-3-hello-world",
25-
libraryDependencies += "org.typelevel" %%% "cats-effect" % "3.4.10",
25+
libraryDependencies += "org.typelevel" %%% "cats-effect" % "3.4.11",
2626
Compile / mainClass := Some("com.example.Main")
2727
)
2828

docs/core/test-runtime.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ For those migrating code from Cats Effect 2, `TestControl` is a considerably mor
2828
In order to use `TestControl`, you will need to bring in the **cats-effect-testkit** dependency:
2929

3030
```scala
31-
libraryDependencies += "org.typelevel" %% "cats-effect-testkit" % "3.4.10" % Test
31+
libraryDependencies += "org.typelevel" %% "cats-effect-testkit" % "3.4.11" % Test
3232
```
3333

3434
## Example

docs/faq.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ title: FAQ
99

1010
```scala-cli
1111
//> using scala "2.13.8"
12-
//> using lib "org.typelevel::cats-effect::3.4.10"
12+
//> using lib "org.typelevel::cats-effect::3.4.11"
1313
1414
import cats.effect._
1515

docs/getting-started.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ title: Getting Started
66
Add the following to your **build.sbt**:
77

88
```scala
9-
libraryDependencies += "org.typelevel" %% "cats-effect" % "3.4.10"
9+
libraryDependencies += "org.typelevel" %% "cats-effect" % "3.4.11"
1010
```
1111

1212
Naturally, if you're using ScalaJS, you should replace the double `%%` with a triple `%%%`. If you're on Scala 2, it is *highly* recommended that you enable the [better-monadic-for](https://github.com/oleg-py/better-monadic-for) plugin, which fixes a number of surprising elements of the `for`-comprehension syntax in the Scala language:
@@ -62,7 +62,7 @@ We will learn more about constructs like `start` and `*>` in later pages, but fo
6262
Of course, the easiest way to play with Cats Effect is to try it out in a Scala REPL. We recommend using [Ammonite](https://ammonite.io/#Ammonite-REPL) for this kind of thing. To get started, run the following lines (if not using Ammonite, skip the first line and make sure that Cats Effect and its dependencies are correctly configured on the classpath):
6363

6464
```scala
65-
import $ivy.`org.typelevel::cats-effect:3.4.10`
65+
import $ivy.`org.typelevel::cats-effect:3.4.11`
6666

6767
import cats.effect.unsafe.implicits._
6868
import cats.effect.IO

docs/migration-guide.md

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ Here is an overview of the steps you should take to migrate your application to
1616
### Before You Begin: This Isn't A "Quick Start" Guide
1717

1818
This guide is meant for existing users of Cats Effect 2 who want to upgrade their applications
19-
to 3.4.10.
19+
to 3.4.11.
2020

2121
> If you haven't used Cats Effect before and want to give it a try,
2222
> please follow the [getting started guide](./getting-started.md) instead!
@@ -81,9 +81,9 @@ Cats Effect 3 splits the code dependency into multiple modules. If you were prev
8181
The current non-test modules are:
8282

8383
```scala
84-
"org.typelevel" %% "cats-effect-kernel" % "3.4.10",
85-
"org.typelevel" %% "cats-effect-std" % "3.4.10",
86-
"org.typelevel" %% "cats-effect" % "3.4.10",
84+
"org.typelevel" %% "cats-effect-kernel" % "3.4.11",
85+
"org.typelevel" %% "cats-effect-std" % "3.4.11",
86+
"org.typelevel" %% "cats-effect" % "3.4.11",
8787
```
8888

8989
- `kernel` - type class definitions, simple concurrency primitives
@@ -96,7 +96,7 @@ The current non-test modules are:
9696
libraryDependencies ++= Seq(
9797
//...
9898
- "org.typelevel" %% "cats-effect" % "2.4.0",
99-
+ "org.typelevel" %% "cats-effect" % "3.4.10",
99+
+ "org.typelevel" %% "cats-effect" % "3.4.11",
100100
//...
101101
)
102102
```
@@ -108,8 +108,8 @@ sbt:demo> update
108108
[error] stack trace is suppressed; run last core / update for the full output
109109
[error] (core / update) found version conflict(s) in library dependencies; some are suspected to be binary incompatible:
110110
[error]
111-
[error] * org.typelevel:cats-effect_2.13:3.4.10 (early-semver) is selected over {2.3.1, 2.1.4}
112-
[error] +- com.example:core-core_2.13:0.0.7-26-3183519d (depends on 3.4.10)
111+
[error] * org.typelevel:cats-effect_2.13:3.4.11 (early-semver) is selected over {2.3.1, 2.1.4}
112+
[error] +- com.example:core-core_2.13:0.0.7-26-3183519d (depends on 3.4.11)
113113
[error] +- io.monix:monix-catnap_2.13:3.3.0 (depends on 2.1.4)
114114
[error] +- com.github.valskalla:odin-core_2.13:0.11.0 (depends on 2.3.1)
115115
[error]

docs/std/ref.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ This is probably one of the most common uses of this concurrency primitive.
3333
In this example, the workers will concurrently run and update the value of the `Ref`.
3434

3535
```scala mdoc:reset:silent
36-
//> using lib "org.typelevel::cats-effect:3.4.10"
36+
//> using lib "org.typelevel::cats-effect:3.4.11"
3737

3838
import cats.effect.{IO, IOApp, Sync}
3939
import cats.effect.kernel.Ref

docs/tutorial.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -42,11 +42,11 @@ running the code snippets in this tutorial, it is recommended to use the same
4242
```scala
4343
name := "cats-effect-tutorial"
4444

45-
version := "3.4.10"
45+
version := "3.4.11"
4646

4747
scalaVersion := "2.13.6"
4848

49-
libraryDependencies += "org.typelevel" %% "cats-effect" % "3.4.10" withSources() withJavadoc()
49+
libraryDependencies += "org.typelevel" %% "cats-effect" % "3.4.11" withSources() withJavadoc()
5050

5151
scalacOptions ++= Seq(
5252
"-feature",

0 commit comments

Comments
 (0)