diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 22985df4..d2b54942 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -31,7 +31,7 @@ jobs: fail-fast: false matrix: java: ['adopt@1.8', 'adopt@1.11'] - scala: ['2.12.17', '2.13.10', '3.3.0'] + scala: ['2.12.19', '2.13.13', '3.3.3'] platform: ['JVM', 'JS'] steps: - name: Checkout current branch @@ -45,10 +45,10 @@ jobs: - name: Cache scala dependencies uses: coursier/cache-action@v5 - name: Run tests - if: matrix.scala != '3.3.0' + if: matrix.scala != '3.3.3' run: sbt ++${{ matrix.scala }}! test${{ matrix.platform }} - name: Run dotty tests - if: matrix.scala == '3.3.0' && matrix.platform == 'JVM' + if: matrix.scala == '3.3.3' && matrix.platform == 'JVM' run: sbt ++${{ matrix.scala }}! testJVM ci: diff --git a/build.sbt b/build.sbt index 383e520a..4904cbb0 100644 --- a/build.sbt +++ b/build.sbt @@ -51,12 +51,12 @@ lazy val root = project unusedCompileDependenciesFilter -= moduleFilter("org.scala-js", "scalajs-library") ) -val zioVersion = "2.0.21" +val zioVersion = "2.0.22" val catsVersion = "2.9.0" -val catsEffectVersion = "3.5.3" +val catsEffectVersion = "3.5.4" val catsMtlVersion = "1.3.0" val disciplineScalaTestVersion = "2.2.0" -val fs2Version = "3.9.4" +val fs2Version = "3.10.2" val scalaJavaTimeVersion = "2.5.0" lazy val zioInteropTracer = crossProject(JSPlatform, JVMPlatform) diff --git a/core-only-test/shared/src/test/scala/zio/interop/test/CoreSummonSpec.scala b/core-only-test/shared/src/test/scala/zio/interop/test/CoreSummonSpec.scala index 77492baa..564d5211 100644 --- a/core-only-test/shared/src/test/scala/zio/interop/test/CoreSummonSpec.scala +++ b/core-only-test/shared/src/test/scala/zio/interop/test/CoreSummonSpec.scala @@ -10,7 +10,7 @@ import zio.stream.{ Stream, ZStream } import zio.test.* object CoreSummonSpec extends ZIOSpecDefault { - override def spec = + override def spec: Spec[Any, Throwable] = suite("summons from catz.core work with only a cats-core dependency")( test("ZIO instances") { val monad = implicitly[Monad[UIO]] diff --git a/project/BuildHelper.scala b/project/BuildHelper.scala index a50916a0..e30569c9 100644 --- a/project/BuildHelper.scala +++ b/project/BuildHelper.scala @@ -9,9 +9,9 @@ import BuildInfoKeys._ object BuildHelper { val testDeps = Seq("org.scalacheck" %% "scalacheck" % "1.17.0" % Test) - val Scala212 = "2.12.17" - val Scala213 = "2.13.10" - val Scala3 = "3.3.0" + val Scala212 = "2.12.19" + val Scala213 = "2.13.13" + val Scala3 = "3.3.3" private val stdOptions = Seq( "-deprecation", @@ -92,7 +92,7 @@ object BuildHelper { scalacOptions ++= stdOptions ++ extraOptions(scalaVersion.value, optimize = !isSnapshot.value), libraryDependencies ++= testDeps ++ { if (isDotty(scalaVersion.value)) Seq.empty - else Seq(compilerPlugin("org.typelevel" % "kind-projector" % "0.13.2") cross CrossVersion.full) + else Seq(compilerPlugin("org.typelevel" % "kind-projector" % "0.13.3") cross CrossVersion.full) }, Test / parallelExecution := true, incOptions ~= (_.withLogRecompileOnMacro(false)), diff --git a/project/build.properties b/project/build.properties index 46e43a97..04267b14 100644 --- a/project/build.properties +++ b/project/build.properties @@ -1 +1 @@ -sbt.version=1.8.2 +sbt.version=1.9.9 diff --git a/zio-interop-cats-tests/jvm/src/test/scala/zio/internal/stacktracer/InteropTracerSpec.scala b/zio-interop-cats-tests/jvm/src/test/scala/zio/internal/stacktracer/InteropTracerSpec.scala index 4809cc77..c5e5b7a9 100644 --- a/zio-interop-cats-tests/jvm/src/test/scala/zio/internal/stacktracer/InteropTracerSpec.scala +++ b/zio-interop-cats-tests/jvm/src/test/scala/zio/internal/stacktracer/InteropTracerSpec.scala @@ -5,8 +5,8 @@ import zio.Trace object InteropTracerSpec extends ZIOSpecDefault { - private val myLambda: () => Any = () => () - override def spec = + private val myLambda: () => Any = () => () + override def spec: Spec[Any, Throwable] = suite("InteropTracerSpec")( test("lambda tracing") { diff --git a/zio-interop-cats-tests/jvm/src/test/scala/zio/interop/CatsInteropSpec.scala b/zio-interop-cats-tests/jvm/src/test/scala/zio/interop/CatsInteropSpec.scala index cf27333b..f83c3c00 100644 --- a/zio-interop-cats-tests/jvm/src/test/scala/zio/interop/CatsInteropSpec.scala +++ b/zio-interop-cats-tests/jvm/src/test/scala/zio/interop/CatsInteropSpec.scala @@ -7,7 +7,7 @@ import zio.test.* import zio.* object CatsInteropSpec extends CatsRunnableSpec { - def spec = suite("Cats interop")( + def spec: Spec[Any, Throwable] = suite("Cats interop")( test("cats fiber wrapped in Resource can be canceled") { for { promise <- Promise.make[Nothing, Int] diff --git a/zio-interop-cats-tests/jvm/src/test/scala/zio/interop/CatsZManagedSyntaxSpec.scala b/zio-interop-cats-tests/jvm/src/test/scala/zio/interop/CatsZManagedSyntaxSpec.scala index ad70d8a0..74033e68 100644 --- a/zio-interop-cats-tests/jvm/src/test/scala/zio/interop/CatsZManagedSyntaxSpec.scala +++ b/zio-interop-cats-tests/jvm/src/test/scala/zio/interop/CatsZManagedSyntaxSpec.scala @@ -12,7 +12,7 @@ import scala.collection.mutable object CatsZManagedSyntaxSpec extends CatsRunnableSpec { - def spec = + def spec: Spec[Any, Throwable] = suite("CatsZManagedSyntaxSpec")( suite("toManaged")( test("calls finalizers correctly when use is externally interrupted") { diff --git a/zio-interop-cats-tests/jvm/src/test/scala/zio/interop/Fs2ZioSpec.scala b/zio-interop-cats-tests/jvm/src/test/scala/zio/interop/Fs2ZioSpec.scala index 498ac49c..c428737d 100644 --- a/zio-interop-cats-tests/jvm/src/test/scala/zio/interop/Fs2ZioSpec.scala +++ b/zio-interop-cats-tests/jvm/src/test/scala/zio/interop/Fs2ZioSpec.scala @@ -10,7 +10,7 @@ import zio.test.* import zio.test.interop.catz.test.* object Fs2ZioSpec extends CatsRunnableSpec { - def spec = + def spec: Spec[Any, Throwable] = suite("ZIO with Fs2")( suite("fs2 parJoin")( testF("works if F is cats.effect.IO") { diff --git a/zio-interop-cats-tests/jvm/src/test/scala/zio/interop/catzQueueSpec.scala b/zio-interop-cats-tests/jvm/src/test/scala/zio/interop/catzQueueSpec.scala index dfe7acdf..7aa14fdb 100644 --- a/zio-interop-cats-tests/jvm/src/test/scala/zio/interop/catzQueueSpec.scala +++ b/zio-interop-cats-tests/jvm/src/test/scala/zio/interop/catzQueueSpec.scala @@ -40,7 +40,7 @@ object catzQueueSpec extends CatsRunnableSpec { actual <- q.takeAll } yield assert(actual)(equalTo(expected.toList)) - def spec = suite("catzQueueSpec")( + def spec: Spec[Any, Throwable] = suite("catzQueueSpec")( testF("can use a bounded queue from Cats Effect IO")(boundedQueueTest[CIO]), testF("can use a dropping queue from Cats Effect IO")(droppingQueueTest[CIO]), testF("can use a sliding queue from Cats Effect IO")(slidingQueueTest[CIO]), diff --git a/zio-interop-cats-tests/jvm/src/test/scala/zio/interop/fs2StreamSpec.scala b/zio-interop-cats-tests/jvm/src/test/scala/zio/interop/fs2StreamSpec.scala index 99870c38..920c0d7d 100644 --- a/zio-interop-cats-tests/jvm/src/test/scala/zio/interop/fs2StreamSpec.scala +++ b/zio-interop-cats-tests/jvm/src/test/scala/zio/interop/fs2StreamSpec.scala @@ -28,7 +28,7 @@ object fs2StreamSpec extends ZIOSpecDefault { y <- expected.runCollect } yield assert(x)(equalTo(y)) - def spec = suite("zio.stream.ZStream <-> fs2.Stream")( + def spec: Spec[Any, Throwable] = suite("zio.stream.ZStream <-> fs2.Stream")( suite("test toFs2Stream conversion")( test("simple stream")(check(Gen.chunkOf(Gen.int)) { (chunk: Chunk[Int]) => assertEqual(ZStream.fromChunk(chunk).toFs2Stream, fs2StreamFromChunk(chunk)) diff --git a/zio-test-interop-cats/shared/src/test/scala/zio/test/interop/CatsRunnableSpec.scala b/zio-test-interop-cats/shared/src/test/scala/zio/test/interop/CatsRunnableSpec.scala index 29a525a6..475f4dd9 100644 --- a/zio-test-interop-cats/shared/src/test/scala/zio/test/interop/CatsRunnableSpec.scala +++ b/zio-test-interop-cats/shared/src/test/scala/zio/test/interop/CatsRunnableSpec.scala @@ -32,15 +32,15 @@ abstract class CatsRunnableSpec extends ZIOSpecDefault { Unsafe.unsafe { implicit u => runtime.unsafe.runToFuture { ZIO.fromFuture { implicit ec => - Dispatcher.parallel[CIO].allocated.unsafeToFuture().andThen { case Success((dispatcher, close)) => - openDispatcher = dispatcher + Dispatcher.parallel[CIO].allocated.unsafeToFuture().andThen { case Success((disp, close)) => + openDispatcher = disp closeDispatcher = close } }.orDie } } - override val aspects = Chunk( + override val aspects: Chunk[TestAspect[Nothing, Any, Nothing, Any]] = Chunk( TestAspect.timeout(1.minute), TestAspect.afterAll(ZIO.fromFuture(_ => closeDispatcher.unsafeToFuture()).orDie) )