From 0011d667935333cafc7a410093bb50fca1daa641 Mon Sep 17 00:00:00 2001 From: Alistair Johnson Date: Mon, 19 Mar 2018 23:31:47 +0100 Subject: [PATCH 1/2] Add 2.13.0-M3 support --- .travis.yml | 1 + build.sbt | 45 ++++++++++++++++++++++++++----------- project/plugins.sbt | 11 ++++----- project/project/plugins.sbt | 2 +- 4 files changed, 40 insertions(+), 19 deletions(-) diff --git a/.travis.yml b/.travis.yml index 83afb76816..5932658251 100644 --- a/.travis.yml +++ b/.travis.yml @@ -13,6 +13,7 @@ scala: - 2.10.7 - 2.11.12 - 2.12.4 + - 2.13.0-M3 jdk: - oraclejdk8 diff --git a/build.sbt b/build.sbt index 8365bc7022..ce8556d299 100644 --- a/build.sbt +++ b/build.sbt @@ -39,10 +39,10 @@ lazy val commonSettings = Seq( Resolver.sonatypeRepo("snapshots") ), libraryDependencies ++= Seq( - "com.github.mpilquist" %%% "simulacrum" % "0.11.0" % CompileTime, - "org.typelevel" %%% "machinist" % "0.6.2", + "com.github.mpilquist" %%% "simulacrum" % "0.12.0" % CompileTime, + "org.typelevel" %%% "machinist" % "0.6.4", compilerPlugin("org.scalamacros" %% "paradise" % "2.1.0" cross CrossVersion.patch), - compilerPlugin("org.spire-math" %% "kind-projector" % "0.9.4") + compilerPlugin("org.spire-math" %% "kind-projector" % "0.9.6") ), fork in test := true, parallelExecution in Test := false, @@ -102,9 +102,12 @@ lazy val includeGeneratedSrc: Setting[_] = { lazy val catsSettings = commonSettings ++ publishSettings ++ scoverageSettings ++ javadocSettings lazy val scalaCheckVersion = "1.13.5" -lazy val scalaTestVersion = "3.0.3" -lazy val disciplineVersion = "0.8" -lazy val catalystsVersion = "0.0.5" +lazy val scalaTestVersion = "3.0.5" +lazy val disciplineVersion = "0.9.0" +lazy val catalystsVersion = "0.6" + +// 2.13.0-M3 workaround +val scalatest_2_13 = "3.0.5-M1" lazy val disciplineDependencies = Seq( libraryDependencies += "org.scalacheck" %%% "scalacheck" % scalaCheckVersion, @@ -113,8 +116,16 @@ lazy val disciplineDependencies = Seq( lazy val testingDependencies = Seq( libraryDependencies += "org.typelevel" %%% "catalysts-platform" % catalystsVersion, libraryDependencies += "org.typelevel" %%% "catalysts-macros" % catalystsVersion % "test", - libraryDependencies += "org.scalatest" %%% "scalatest" % scalaTestVersion % "test") - + // 2.13.0-M3 workaround + // libraryDependencies += "org.scalatest" %%% "scalatest" % scalaTestVersion % "test") + libraryDependencies += { + CrossVersion.partialVersion(scalaVersion.value) match { + case Some((2, 13)) => + "org.scalatest" %%% "scalatest" % scalatest_2_13 % "test" + case _ => + "org.scalatest" %%% "scalatest" % scalaTestVersion % "test" + }} + ) /** * Remove 2.10 projects from doc generation, as the macros used in the projects @@ -335,8 +346,16 @@ lazy val testkit = crossProject.crossType(CrossType.Pure) .settings(moduleName := "cats-testkit") .settings(catsSettings) .settings(disciplineDependencies) - .settings( - libraryDependencies += "org.scalatest" %%% "scalatest" % scalaTestVersion) + // 2.13.0-M3 workaround + //.settings(libraryDependencies += "org.scalatest" %%% "scalatest" % scalaTestVersion) + .settings(libraryDependencies += { + CrossVersion.partialVersion(scalaVersion.value) match { + case Some((2, 13)) => + "org.scalatest" %%% "scalatest" % scalatest_2_13 + case _ => + "org.scalatest" %%% "scalatest" % scalaTestVersion + }} + ) .jsSettings(commonJsSettings) .jvmSettings(commonJvmSettings) @@ -401,7 +420,7 @@ lazy val bench = project.dependsOn(macrosJVM, coreJVM, freeJVM, lawsJVM) .settings(commonJvmSettings) .settings(coverageEnabled := false) .settings(libraryDependencies ++= Seq( - "org.scalaz" %% "scalaz-core" % "7.2.15")) + "org.scalaz" %% "scalaz-core" % "7.2.19")) .enablePlugins(JmhPlugin) // cats-js is JS-only @@ -683,7 +702,7 @@ def disableScoverage210Jvm(crossProject: CrossProject) = lazy val update2_12 = Seq( scalacOptions -= { CrossVersion.partialVersion(scalaVersion.value) match { - case Some((2, 12)) => "-Yinline-warnings" + case Some((2, scalaMajor)) if scalaMajor >= 12 => "-Yinline-warnings" case _ => "" } } @@ -692,7 +711,7 @@ lazy val update2_12 = Seq( lazy val xlint = Seq( scalacOptions += { CrossVersion.partialVersion(scalaVersion.value) match { - case Some((2, 12)) => "-Xlint:-unused,_" + case Some((2, scalaMajor)) if scalaMajor >= 12 => "-Xlint:-unused,_" case _ => "-Xlint" } } diff --git a/project/plugins.sbt b/project/plugins.sbt index e666d7866a..df04e13b68 100644 --- a/project/plugins.sbt +++ b/project/plugins.sbt @@ -1,15 +1,16 @@ -addSbtPlugin("io.get-coursier" % "sbt-coursier" % "1.0.0") +addSbtPlugin("io.get-coursier" % "sbt-coursier" % "1.0.2") addSbtPlugin("com.eed3si9n" % "sbt-unidoc" % "0.4.1") addSbtPlugin("com.github.gseitz" %% "sbt-release" % "1.0.8") addSbtPlugin("com.jsuereth" % "sbt-pgp" % "1.1.0") addSbtPlugin("com.typesafe" % "sbt-mima-plugin" % "0.1.18") addSbtPlugin("pl.project13.scala" % "sbt-jmh" % "0.2.27") addSbtPlugin("org.scalastyle" % "scalastyle-sbt-plugin" % "1.0.0") -addSbtPlugin("org.scoverage" % "sbt-scoverage" % "1.5.1") +addSbtPlugin("org.scoverage" % "sbt-scoverage" % "1.6.0-M3") addSbtPlugin("com.typesafe.sbt" % "sbt-git" % "0.9.3") -addSbtPlugin("org.scala-js" % "sbt-scalajs" % "0.6.20") -addSbtPlugin("com.github.tkawachi" % "sbt-doctest" % "0.7.0") +addSbtPlugin("org.scala-js" % "sbt-scalajs" % "0.6.22") +addSbtPlugin("com.github.tkawachi" % "sbt-doctest" % "0.7.1") addSbtPlugin("org.xerial.sbt" % "sbt-sonatype" % "2.0") -addSbtPlugin("com.47deg" % "sbt-microsites" % "0.7.13") +addSbtPlugin("com.47deg" % "sbt-microsites" % "0.7.17") addSbtPlugin("com.dwijnand" % "sbt-travisci" % "1.1.1") addSbtPlugin("org.lyranthe.sbt" % "partial-unification" % "1.1.0") +addSbtPlugin("org.tpolecat" % "tut-plugin" % "0.6.3") diff --git a/project/project/plugins.sbt b/project/project/plugins.sbt index aecbe5bd26..ef1f82c556 100644 --- a/project/project/plugins.sbt +++ b/project/project/plugins.sbt @@ -1 +1 @@ -addSbtPlugin("io.get-coursier" % "sbt-coursier" % "1.0.0") +addSbtPlugin("io.get-coursier" % "sbt-coursier" % "1.0.2") From fa6ff5c4ae91b5555bcf265502653fa936bb4d44 Mon Sep 17 00:00:00 2001 From: Alistair Johnson Date: Mon, 19 Mar 2018 23:48:39 +0100 Subject: [PATCH 2/2] Allow travis 2.13.0-M3 build to fail --- .travis.yml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.travis.yml b/.travis.yml index 5932658251..c1f83a1db1 100644 --- a/.travis.yml +++ b/.travis.yml @@ -15,6 +15,10 @@ scala: - 2.12.4 - 2.13.0-M3 +matrix: + allow_failures: + - scala: 2.13.0-M3 + jdk: - oraclejdk8