Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ name: Continuous Integration
on:
pull_request:
branches: ['**', '!update/**', '!pr/**']
types: []
push:
branches: ['**', '!update/**', '!pr/**']
tags: [v*]
Expand Down
2 changes: 1 addition & 1 deletion .scalafmt.conf
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
version=3.10.0
version=3.10.1
maxColumn = 120
assumeStandardLibraryStripMargin = true

Expand Down
24 changes: 17 additions & 7 deletions build.sbt
Original file line number Diff line number Diff line change
Expand Up @@ -7,24 +7,24 @@ lazy val catsVersion = "2.13.0"
lazy val catsEffectVersion = "3.6.3"
lazy val circeVersion = "0.14.15"
lazy val fs2Version = "3.12.2"
lazy val h2Version = "2.3.232"
lazy val h2Version = "2.4.240"
lazy val hikariVersion = "7.0.2" // N.B. Hikari v4 introduces a breaking change via slf4j v2
lazy val kindProjectorVersion = "0.11.2"
lazy val mysqlVersion = "9.4.0"
lazy val mysqlVersion = "9.5.0"
lazy val log4catsVersion = "2.7.1"
lazy val postGisVersion = "2025.1.1"
lazy val postgresVersion = "42.7.8"
lazy val refinedVersion = "0.11.3"
lazy val scalaCollectionCompatVersion = "2.14.0"
lazy val scalaCheckVersion = "1.15.4"
lazy val scalatestVersion = "3.2.18"
lazy val munitVersion = "1.2.0"
lazy val munitVersion = "1.2.1"
lazy val shapelessVersion = "2.3.13"
lazy val silencerVersion = "1.7.1"
lazy val specs2Version = "4.21.0"
lazy val specs2Version = "4.23.0"
lazy val scala212Version = "2.12.20"
lazy val scala213Version = "2.13.16"
lazy val scala3Version = "3.3.6"
lazy val scala213Version = "2.13.17"
lazy val scala3Version = "3.3.7"
// scala-steward:off
lazy val slf4jVersion = "1.7.36"
// scala-steward:on
Expand Down Expand Up @@ -62,6 +62,8 @@ ThisBuild / githubWorkflowBuild := {
case other => other
}
}
// Disable running CI for Pull Requests (a normal push already triggers CI)
ThisBuild / githubWorkflowPREventTypes := Seq.empty
ThisBuild / githubWorkflowBuildPostamble ++= Seq(
WorkflowStep.Sbt(
commands = List("checkGitNoUncommittedChanges"),
Expand Down Expand Up @@ -111,7 +113,11 @@ lazy val compilerFlags = Seq(
// Handle irrefutable patterns in for comprehensions
Seq("-source:future", "-language:adhocExtensions", "-Xmax-inlines", "64")
case "2.13" =>
Seq("-Xsource:3-cross")
Seq(
"-Xsource:3-cross",
// See https://github.com/scala/bug/issues/13128. Should no longer be need in 2.13.18 since change was reverted
"-Wconf:cat=lint-infer-any&msg=kind-polymorphic:s"
)
case "2.12" =>
Seq("-Xsource:3")
}
Expand Down Expand Up @@ -144,6 +150,10 @@ lazy val commonSettings =
"https://github.com/typelevel/doobie/blob/v" + version.value + "€{FILE_PATH}.scala"
),

// I'm not sure why semanticdbVersion is 4.12.3 which doesn't exist for Scala version 2.13.17
// Perhaps SBT / Metals need to update their default version and this will be fixed in the future?
semanticdbVersion := "4.14.1",

// Kind Projector (Scala 2 only)
libraryDependencies ++= Seq(
compilerPlugin("org.typelevel" %% "kind-projector" % "0.13.4" cross CrossVersion.full),
Expand Down
9 changes: 4 additions & 5 deletions modules/core/src/test/scala/doobie/util/ReadSuite.scala
Original file line number Diff line number Diff line change
Expand Up @@ -344,16 +344,15 @@ class ReadSuite extends munit.CatsEffectSuite with ReadSuitePlatform {
test("Derivation for big case class works") {
Read.derived[Big30CaseClass].void

// Check "derived" still works in the presense of auto derivation
import doobie.implicits.*
Read.derived[Big30CaseClass].void
}

test("Derivation for big case class works") {
Read.derived[Big30CaseClass].void
}: @nowarn("msg=.*(u|U)nused import.*")

test("Auto-derivation for big case class works") {
import doobie.implicits.*
Read[Big30CaseClass].void
}
}: @nowarn("msg=.*(u|U)nused import.*")

private def insertTuple3AndCheckRead[Tup <: (?, ?, ?): Write, A: Read](in: Tup, expectedOut: A)(implicit
loc: Location
Expand Down
9 changes: 6 additions & 3 deletions modules/core/src/test/scala/doobie/util/YoloSuite.scala
Original file line number Diff line number Diff line change
Expand Up @@ -8,19 +8,22 @@ package util
import cats.effect.IO
import doobie.util.yolo.*

import scala.annotation.nowarn

class YoloSuite extends munit.FunSuite {

// Kind of a bogus test; just checking for compilation
test("YOLO checks should compile for Query, Query0, Update, Update0") {
lazy val _ = {
val y = new Yolo[IO](null); import y.*
lazy val x = {
val y = new Yolo[IO](null);
import y.*
void(
(null: Query0[Int]).check,
(null: Query[Int, Int]).check,
Update0("", None).check,
Update[Int]("", None).check
)
}
}
}: @nowarn("msg=.*(never used|unused).*")

}
2 changes: 1 addition & 1 deletion project/plugins.sbt
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,6 @@ addSbtPlugin("com.timushev.sbt" % "sbt-updates" % "0.6.2")
addSbtPlugin("pl.project13.scala" % "sbt-jmh" % "0.4.8")
addSbtPlugin("com.github.sbt" % "sbt-header" % "5.11.0")
addSbtPlugin("org.typelevel" % "sbt-tpolecat" % "0.5.2")
addSbtPlugin("org.scalameta" % "sbt-mdoc" % "2.7.2")
addSbtPlugin("org.scalameta" % "sbt-mdoc" % "2.8.0")
addSbtPlugin("org.scalameta" % "sbt-scalafmt" % "2.5.5")
addDependencyTreePlugin