diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index e38a067b..4a038b3a 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -22,7 +22,7 @@ jobs: strategy: matrix: os: [ubuntu-latest] - scala: [2.12.14, 2.13.12] + scala: [2.12.14, 2.13.16] java: [corretto@17] runs-on: ${{ matrix.os }} steps: diff --git a/core/src/main/scala/mongo4cats/bson/BsonDecoder.scala b/bson/src/main/scala/mongo4cats/bson/BsonDecoder.scala similarity index 100% rename from core/src/main/scala/mongo4cats/bson/BsonDecoder.scala rename to bson/src/main/scala/mongo4cats/bson/BsonDecoder.scala diff --git a/core/src/main/scala/mongo4cats/bson/BsonEncoder.scala b/bson/src/main/scala/mongo4cats/bson/BsonEncoder.scala similarity index 100% rename from core/src/main/scala/mongo4cats/bson/BsonEncoder.scala rename to bson/src/main/scala/mongo4cats/bson/BsonEncoder.scala diff --git a/core/src/main/scala/mongo4cats/bson/package.scala b/bson/src/main/scala/mongo4cats/bson/package.scala similarity index 100% rename from core/src/main/scala/mongo4cats/bson/package.scala rename to bson/src/main/scala/mongo4cats/bson/package.scala diff --git a/core/src/main/scala/mongo4cats/bson/syntax.scala b/bson/src/main/scala/mongo4cats/bson/syntax.scala similarity index 100% rename from core/src/main/scala/mongo4cats/bson/syntax.scala rename to bson/src/main/scala/mongo4cats/bson/syntax.scala diff --git a/build.sbt b/build.sbt index 4b8af6ae..9d2866c7 100644 --- a/build.sbt +++ b/build.sbt @@ -3,7 +3,7 @@ import ReleaseTransformations._ import microsites.CdnDirectives lazy val scala212 = "2.12.14" -lazy val scala213 = "2.13.12" +lazy val scala213 = "2.13.16" lazy val supportedScalaVersions = List(scala212, scala213) ThisBuild / scalaVersion := scala213 @@ -45,7 +45,7 @@ lazy val noPublish = Seq( lazy val commonSettings = Seq( organizationName := "MongoDB Java client wrapper for Cats-Effect & FS2", startYear := Some(2020), - licenses += ("Apache-2.0", new URL("https://www.apache.org/licenses/LICENSE-2.0.txt")), + licenses += ("Apache-2.0", new URI("https://www.apache.org/licenses/LICENSE-2.0.txt").toURL), headerLicense := Some(HeaderLicense.ALv2("2020", "Kirill5k")), resolvers += "Apache public" at "https://repository.apache.org/content/groups/public/", scalafmtOnCompile := true, @@ -63,6 +63,7 @@ lazy val root = project crossScalaVersions := Nil ) .aggregate( + bson, core, circe, examples, @@ -70,9 +71,18 @@ lazy val root = project testkit ) +lazy val bson = project + .in(file("bson")) + .settings(commonSettings) + .settings( + name := "mongo4cats-bson", + libraryDependencies ++= Dependencies.bson ++ Dependencies.test, + test / parallelExecution := false) + .enablePlugins(AutomateHeaderPlugin) + lazy val core = project .in(file("core")) - .dependsOn(embedded % "test->compile") + .dependsOn(bson, embedded % "test->compile") .settings(commonSettings) .settings( name := "mongo4cats-core", diff --git a/circe/src/test/scala/mongo4cats/MongoCollectionSpec.scala b/circe/src/test/scala/mongo4cats/MongoCollectionSpec.scala index 045500d7..a8347485 100644 --- a/circe/src/test/scala/mongo4cats/MongoCollectionSpec.scala +++ b/circe/src/test/scala/mongo4cats/MongoCollectionSpec.scala @@ -54,10 +54,6 @@ class MongoCollectionSpec extends AsyncWordSpec with Matchers with EmbeddedMongo _ <- db.createCollection("people") coll <- db.getCollection("people") _ <- coll.insertOne[Person](p) - filter = Filter.lt("dob", LocalDate.now()) && Filter.lt( - "registrationDate", - Instant.now() - ) people <- coll.find.stream[Person].compile.to(List) } yield people diff --git a/project/Dependencies.scala b/project/Dependencies.scala index cc252471..e8285a07 100644 --- a/project/Dependencies.scala +++ b/project/Dependencies.scala @@ -3,10 +3,11 @@ import sbt._ object Dependencies { private object Versions { val mongodb = "4.11.1" - val fs2 = "3.10.2" + val fs2 = "3.11.0" val scalaCompat = "2.6.0" val circe = "0.14.6" val findbugsJsr305Version = "1.3.9" + val cats = "2.11.0" val logback = "1.2.10" val scalaTest = "3.2.10" @@ -25,6 +26,8 @@ object Dependencies { val mongodbDriverSync = "org.mongodb" % "mongodb-driver-sync" % Versions.mongodb val findbugsJsr305Version = "com.google.code.findbugs" % "jsr305" % Versions.findbugsJsr305Version % Provided + val catsCore = "org.typelevel" %% "cats-core" % Versions.cats + val fs2Core = "co.fs2" %% "fs2-core" % Versions.fs2 val scalaCompat = "org.scala-lang.modules" %% "scala-collection-compat" % Versions.scalaCompat @@ -43,6 +46,12 @@ object Dependencies { } + lazy val bson = Seq( + Libraries.catsCore, + Libraries.mongodbBson, + Libraries.scalaCompat + ) + lazy val core = Seq( Libraries.mongodbBson, Libraries.mongodbDriverCore, diff --git a/project/build.properties b/project/build.properties index 3161d214..e480c675 100644 --- a/project/build.properties +++ b/project/build.properties @@ -1 +1 @@ -sbt.version=1.6.1 +sbt.version=1.11.5 diff --git a/version.sbt b/version.sbt index c8d35100..fc2d32dd 100644 --- a/version.sbt +++ b/version.sbt @@ -1 +1 @@ -version in ThisBuild := "0.7.4" +ThisBuild / version := "0.8.0"