@@ -17,12 +17,11 @@ ThisBuild / homepage := Some(url("https://github.com/typelevel/fs2"))
1717ThisBuild / startYear := Some (2013 )
1818
1919val Scala213 = " 2.13.16"
20- ThisBuild / crossScalaVersions := Seq (" 3.3.6" , " 2.12.15" , Scala213 )
20+ ThisBuild / crossScalaVersions := Seq (" 3.0.2" , " 2.12.20" , Scala213 )
21+ ThisBuild / scalaVersion := Scala213
2122
2223ThisBuild / githubWorkflowOSes := Seq (" ubuntu-latest" )
2324ThisBuild / githubWorkflowJavaVersions := Seq (JavaSpec .temurin(" 11" ))
24- // ThisBuild / githubWorkflowBuildPreamble ++= nativeBrewInstallWorkflowSteps.value
25- // ThisBuild / nativeBrewInstallCond := Some("matrix.project == 'rootNative'")
2625
2726ThisBuild / tlCiReleaseBranches := List (" main" , " series/2.5.x" )
2827
@@ -48,8 +47,6 @@ ThisBuild / developers ++= List(
4847 Developer (username, fullName, s " @ $username" , url(s " https://github.com/ $username" ))
4948}
5049
51- ThisBuild / tlFatalWarnings := false
52-
5350ThisBuild / Test / javaOptions ++= Seq (
5451 " -Dscala.concurrent.context.minThreads=8" ,
5552 " -Dscala.concurrent.context.numThreads=8" ,
@@ -156,24 +153,15 @@ ThisBuild / mimaBinaryIssueFilters ++= Seq(
156153 ProblemFilters .exclude[DirectMissingMethodProblem ](
157154 " fs2.compression#DeflateParams#DeflateParamsImpl.apply"
158155 ),
159- // Scala 3 exclusions for copy methods that should not have existed
160- ProblemFilters .exclude[DirectMissingMethodProblem ](" fs2.Chunk#ByteBuffer.copy" ),
161- ProblemFilters .exclude[DirectMissingMethodProblem ](" fs2.Chunk#ByteBuffer.copy$default$1" ),
162- ProblemFilters .exclude[DirectMissingMethodProblem ](" fs2.Chunk#ByteBuffer.copy$default$2" ),
163- ProblemFilters .exclude[DirectMissingMethodProblem ](" fs2.Chunk#ByteBuffer.copy$default$3" ),
164- ProblemFilters .exclude[DirectMissingMethodProblem ](" fs2.Chunk#ByteBuffer.apply" )
165156)
166157
167158lazy val root = tlCrossRootProject
168159 .aggregate(coreJVM, coreJS, io, reactiveStreams, benchmark, experimental)
169160
170- lazy val IntegrationTest = config(" it" ).extend(Test )
171-
172161lazy val core = crossProject(JVMPlatform , JSPlatform )
173162 .in(file(" core" ))
174163 .settings(
175164 name := " fs2-core" ,
176- tlJdkRelease := None ,
177165 libraryDependencies ++= Seq (
178166 " org.typelevel" %%% " cats-core" % " 2.6.1" ,
179167 " org.typelevel" %%% " cats-laws" % " 2.6.1" % Test ,
@@ -182,7 +170,25 @@ lazy val core = crossProject(JVMPlatform, JSPlatform)
182170 " org.scodec" %%% " scodec-bits" % " 1.1.28" ,
183171 " org.typelevel" %%% " scalacheck-effect-munit" % " 1.0.2" % Test ,
184172 " org.typelevel" %%% " munit-cats-effect-2" % " 1.0.5" % Test
185- )
173+ ) ++ (
174+ if (scalaVersion.value.startsWith(" 3." )) Nil
175+ else
176+ Seq (
177+ compilerPlugin(" com.olegpy" %% " better-monadic-for" % " 0.3.1" ),
178+ compilerPlugin((" org.typelevel" % " kind-projector" % " 0.13.4" ).cross(CrossVersion .full))
179+ )
180+ ),
181+ scalacOptions ++= (if (scalaVersion.value.startsWith(" 2.12" ))
182+ Seq (
183+ " -Ypartial-unification"
184+ )
185+ else if (scalaVersion.value.startsWith(" 3." ))
186+ Seq (
187+ " -language:implicitConversions" ,
188+ " -Ykind-projector" ,
189+ " -source:3.0-migration"
190+ )
191+ else Nil )
186192 )
187193
188194lazy val coreJVM = core.jvm
@@ -213,7 +219,6 @@ lazy val io = project
213219 .settings(
214220 name := " fs2-io" ,
215221 Test / fork := true ,
216- tlJdkRelease := None ,
217222 OsgiKeys .exportPackage := Seq (" fs2.io.*" ),
218223 OsgiKeys .privatePackage := Seq (),
219224 OsgiKeys .importPackage := {
@@ -234,7 +239,6 @@ lazy val reactiveStreams = project
234239 .enablePlugins(SbtOsgi )
235240 .settings(
236241 name := " fs2-reactive-streams" ,
237- tlJdkRelease := None ,
238242 libraryDependencies ++= Seq (
239243 " org.reactivestreams" % " reactive-streams" % " 1.0.3" ,
240244 " org.reactivestreams" % " reactive-streams-tck" % " 1.0.3" % " test" ,
@@ -270,7 +274,6 @@ lazy val experimental = project
270274 .enablePlugins(SbtOsgi )
271275 .settings(
272276 name := " fs2-experimental" ,
273- tlJdkRelease := None ,
274277 OsgiKeys .exportPackage := Seq (" fs2.experimental.*" ),
275278 OsgiKeys .privatePackage := Seq (),
276279 OsgiKeys .importPackage := {
0 commit comments