|
| 1 | +import sbt._ |
| 2 | + |
| 3 | +object Dependencies { |
| 4 | + |
| 5 | + type Version = String |
| 6 | + |
| 7 | + object Versions { |
| 8 | + val Sttp: Version = "3.3.4" |
| 9 | + val ScalaTest: Version = "3.2.8" |
| 10 | + |
| 11 | + val Cats: Version = "2.6.0" |
| 12 | + val CatsEffect: Version = "3.1.1" |
| 13 | + val Circe: Version = "0.12.3" |
| 14 | + val Doobie: Version = "1.0.0-M4" // "0.12.1" |
| 15 | + val LogbackClassic: Version = "1.2.3" |
| 16 | + val ScalaLogging: Version = "3.9.3" |
| 17 | + val FS2: Version = "3.0.0" |
| 18 | + val Akka: Version = "2.6.14" |
| 19 | + val AkkaHttp: Version = "10.2.4" |
| 20 | + val Tapir: Version = "0.18.0-M15" |
| 21 | + } |
| 22 | + |
| 23 | + val sttp = Seq( |
| 24 | + "com.softwaremill.sttp.client3" %% "core" % Versions.Sttp, |
| 25 | + "com.softwaremill.sttp.client3" %% "circe" % Versions.Sttp |
| 26 | + ) |
| 27 | + |
| 28 | + val cats = Seq( |
| 29 | + "org.typelevel" %% "cats-core" % Versions.Cats, |
| 30 | + "org.typelevel" %% "cats-effect" % Versions.CatsEffect |
| 31 | + ) |
| 32 | + |
| 33 | + val circe = Seq( |
| 34 | + "io.circe" %% "circe-core", |
| 35 | + "io.circe" %% "circe-generic", |
| 36 | + "io.circe" %% "circe-parser" |
| 37 | + ).map(_ % Versions.Circe) |
| 38 | + |
| 39 | + val doobie = Seq( |
| 40 | + "org.tpolecat" %% "doobie-core" % Versions.Doobie, |
| 41 | + "org.xerial" % "sqlite-jdbc" % "3.34.0" |
| 42 | + |
| 43 | + // "org.tpolecat" %% "doobie-specs2" % "0.12.1" % "test", // Specs2 support for typechecking statements. |
| 44 | + // "org.tpolecat" %% "doobie-scalatest" % "0.12.1" % "test" // ScalaTest support for typechecking statements. |
| 45 | + ) |
| 46 | + |
| 47 | + val logging = Seq( |
| 48 | + "ch.qos.logback" % "logback-classic" % Versions.LogbackClassic, |
| 49 | + "com.typesafe.scala-logging" %% "scala-logging" % Versions.ScalaLogging, |
| 50 | + "com.softwaremill.sttp.client3" %% "slf4j-backend" % Versions.Sttp |
| 51 | + ) |
| 52 | + |
| 53 | + val apacheCommons = Seq( |
| 54 | + "org.apache.commons" % "commons-math3" % "3.6.1" |
| 55 | + ) |
| 56 | + |
| 57 | + val fs2 = Seq( |
| 58 | + "co.fs2" %% "fs2-core", |
| 59 | + "co.fs2" %% "fs2-io", |
| 60 | + "co.fs2" %% "fs2-reactive-streams" |
| 61 | + ).map(_ % Versions.FS2) |
| 62 | + |
| 63 | + val scalaTest = Seq( |
| 64 | + "org.scalatest" %% "scalatest" % Versions.ScalaTest |
| 65 | + ) |
| 66 | + |
| 67 | + val akka = Seq( |
| 68 | + // Classic |
| 69 | + "com.typesafe.akka" %% "akka-actor" % Versions.Akka, |
| 70 | + "com.typesafe.akka" %% "akka-testkit" % Versions.Akka % Test, |
| 71 | + |
| 72 | + // Typed |
| 73 | + "com.typesafe.akka" %% "akka-actor-typed" % Versions.Akka, |
| 74 | + "com.typesafe.akka" %% "akka-actor-testkit-typed" % Versions.Akka % Test, |
| 75 | + |
| 76 | + // Http |
| 77 | + "com.typesafe.akka" %% "akka-stream" % Versions.Akka, |
| 78 | + "com.typesafe.akka" %% "akka-http" % Versions.AkkaHttp, |
| 79 | + "com.typesafe.akka" %% "akka-http-xml" % Versions.AkkaHttp, |
| 80 | + |
| 81 | + // Persistance |
| 82 | + "com.typesafe.akka" %% "akka-persistence-cassandra" % "1.0.5", |
| 83 | + "com.typesafe.akka" %% "akka-persistence" % Versions.Akka, |
| 84 | + "com.typesafe.akka" %% "akka-persistence-query" % Versions.Akka, |
| 85 | + "com.typesafe.akka" %% "akka-cluster-tools" % Versions.Akka |
| 86 | + ) |
| 87 | + |
| 88 | + val tapir = Seq( |
| 89 | + "com.softwaremill.sttp.tapir" %% "tapir-core", |
| 90 | + "com.softwaremill.sttp.tapir" %% "tapir-akka-http-server", |
| 91 | + "com.softwaremill.sttp.tapir" %% "tapir-openapi-docs", |
| 92 | + "com.softwaremill.sttp.tapir" %% "tapir-openapi-circe-yaml", |
| 93 | + |
| 94 | + "com.softwaremill.sttp.tapir" %% "tapir-swagger-ui-akka-http", |
| 95 | + "com.softwaremill.sttp.tapir" %% "tapir-redoc-akka-http" |
| 96 | + ).map(_ % Versions.Tapir) |
| 97 | +} |
0 commit comments