Skip to content
Snippets Groups Projects
build.sbt 1.47 KiB
Newer Older
Alexander Gehrke's avatar
Alexander Gehrke committed
name := "short-exercises"
organization := "de.uniwue.fp"
version := "0.1-SNAPSHOT"
scalaVersion := "2.12.8"

scalacOptions ++= Seq(
  "-deprecation",
  "-encoding", "UTF-8",
  "-feature",
  "-unchecked",
  "-Xfatal-warnings",
  "-Xlint",
  "-Yno-adapted-args",
  "-Ywarn-dead-code",
  "-Ywarn-numeric-widen",
  "-Ywarn-value-discard",
  "-Ypartial-unification",
  "-Xfuture",
  "-Ywarn-unused-import",
  "-Ywarn-unused:implicits",
  "-Ywarn-unused:locals",
  "-Ywarn-unused:params",
  "-Ywarn-unused:patvars",
  "-Ywarn-unused:privates",
  "-Ypatmat-exhaust-depth", "40"
)

resolvers += Resolver.sonatypeRepo("releases")
addCompilerPlugin("org.spire-math" %% "kind-projector" % "0.9.3")


// Disallow some language construcs
// your bonus exercises will have to compile with these options
addCompilerPlugin("org.wartremover" %% "wartremover" % "2.4.1")
scalacOptions ++= Seq(
  "-P:wartremover:traverser:org.wartremover.warts.AsInstanceOf",
  "-P:wartremover:traverser:org.wartremover.warts.IsInstanceOf",
  "-P:wartremover:traverser:org.wartremover.warts.MutableDataStructures",
  "-P:wartremover:traverser:org.wartremover.warts.Null",
  "-P:wartremover:traverser:org.wartremover.warts.Return",
  "-P:wartremover:traverser:org.wartremover.warts.Throw",
  "-P:wartremover:traverser:org.wartremover.warts.Var",
  "-P:wartremover:traverser:org.wartremover.warts.While",
)

libraryDependencies += "org.scalactic" %% "scalactic" % "3.0.5"
libraryDependencies += "org.scalatest" %% "scalatest" % "3.0.5" % "test"