diff --git a/build.sbt b/build.sbt index 3cd413283a8..a768eedbc28 100644 --- a/build.sbt +++ b/build.sbt @@ -100,7 +100,7 @@ lazy val client = libraryProject("client") lazy val blazeCore = libraryProject("blaze-core") .settings( description := "Base library for binding blaze to http4s clients and servers", - libraryDependencies += blaze + libraryDependencies += blaze, ) .dependsOn(core, testing % "test->test") @@ -145,7 +145,7 @@ lazy val servlet = libraryProject("servlet") jettyServer % "test", jettyServlet % "test", mockito % "test" - ) + ), ) .dependsOn(server % "compile;test->test") @@ -216,7 +216,7 @@ lazy val json4s = libraryProject("json4s") libraryDependencies ++= Seq( jawnJson4s, json4sCore - ) + ), ) .dependsOn(jawn % "compile;test->test") @@ -240,7 +240,7 @@ lazy val scalaXml = libraryProject("scala-xml") libraryDependencies ++= scalaVersion(VersionNumber(_).numbers match { case Seq(2, scalaMajor, _*) if scalaMajor >= 11 => Seq(Http4sPlugin.scalaXml) case _ => Seq.empty - }).value + }).value, ) .dependsOn(core, testing % "test->test") @@ -449,7 +449,8 @@ lazy val examplesWar = exampleProject("examples-war") libraryDependencies ++= Seq( javaxServletApi % "provided", logbackClassic % "runtime" - ) + ), + containerLibs in Jetty := List(jettyRunner), ) .dependsOn(servlet) diff --git a/project/Http4sPlugin.scala b/project/Http4sPlugin.scala index fc88c1ca465..e3e2e16eb83 100644 --- a/project/Http4sPlugin.scala +++ b/project/Http4sPlugin.scala @@ -2,6 +2,7 @@ package org.http4s.build import com.lucidchart.sbt.scalafmt.ScalafmtCorePlugin import com.lucidchart.sbt.scalafmt.ScalafmtCorePlugin.autoImport._ +import com.timushev.sbt.updates.UpdatesPlugin.autoImport._ // autoImport vs. UpdateKeys necessary here for implicit import com.typesafe.sbt.SbtGit.git import com.typesafe.sbt.SbtPgp.autoImport._ import com.typesafe.sbt.git.JGit @@ -134,7 +135,15 @@ object Http4sPlugin extends AutoPlugin { """.stripMargin IO.write(dest, buildData) - } + }, + + dependencyUpdatesFilter -= moduleFilter(organization = "javax.servlet"), // servlet-4.0 is not yet supported by jetty-9 or tomcat-9, so don't accidentally depend on its new features + dependencyUpdatesFilter -= moduleFilter(organization = "org.asynchttpclient", name = "async-http-client"), // asynchttpclient-2.2 is incompatible with http4s-0.18 + dependencyUpdatesFilter -= moduleFilter(organization = "org.http4s", name = "blaze-http"), // blaze-0.13 dropped websocket support + dependencyUpdatesFilter -= moduleFilter(organization = "org.scalacheck"), // scalacheck-1.14 is incompatible with cats-laws-1.1 + dependencyUpdatesFilter -= moduleFilter(organization = "org.scala-lang.modules", name = "scala-xml"), // scala-xml-1.1 is (arguably) incompatible with http4s-0.18 + dependencyUpdatesFilter -= moduleFilter(organization = "org.specs2"), // specs2-4.2 is incompatible with scalacheck-1.13 + dependencyUpdatesFilter -= moduleFilter(organization = "org.spire-math", name = "jawn-json4s"), // jawn-0.12 is incompatible with http4s-0.18 ) ++ releaseSettings val releaseSettings = Seq( @@ -286,6 +295,7 @@ object Http4sPlugin extends AutoPlugin { lazy val javaxServletApi = "javax.servlet" % "javax.servlet-api" % "3.1.0" lazy val jawnJson4s = "org.spire-math" %% "jawn-json4s" % "0.11.1" lazy val jawnFs2 = "org.http4s" %% "jawn-fs2" % "0.12.2" + lazy val jettyRunner = "org.eclipse.jetty" % "jetty-runner" % jettyServer.revision lazy val jettyServer = "org.eclipse.jetty" % "jetty-server" % "9.4.10.v20180503" lazy val jettyServlet = "org.eclipse.jetty" % "jetty-servlet" % jettyServer.revision lazy val json4sCore = "org.json4s" %% "json4s-core" % "3.5.4" @@ -309,7 +319,7 @@ object Http4sPlugin extends AutoPlugin { lazy val specs2Core = "org.specs2" %% "specs2-core" % "4.1.0" lazy val specs2MatcherExtra = "org.specs2" %% "specs2-matcher-extra" % specs2Core.revision lazy val specs2Scalacheck = "org.specs2" %% "specs2-scalacheck" % specs2Core.revision - lazy val tomcatCatalina = "org.apache.tomcat" % "tomcat-catalina" % "9.0.7" + lazy val tomcatCatalina = "org.apache.tomcat" % "tomcat-catalina" % "9.0.8" lazy val tomcatCoyote = "org.apache.tomcat" % "tomcat-coyote" % tomcatCatalina.revision lazy val twirlApi = "com.typesafe.play" %% "twirl-api" % "1.3.15" lazy val mockito = "org.mockito" % "mockito-core" % "2.18.3" diff --git a/project/plugins.sbt b/project/plugins.sbt index ee88c6be113..26306ecb530 100644 --- a/project/plugins.sbt +++ b/project/plugins.sbt @@ -12,7 +12,7 @@ addSbtPlugin("io.get-coursier" % "sbt-coursier" % "1.0.3") addSbtPlugin("io.spray" % "sbt-revolver" % "0.9.1") addSbtPlugin("io.verizon.build" % "sbt-rig" % "5.0.39") addSbtPlugin("org.tpolecat" % "tut-plugin" % "0.6.4") -addSbtPlugin("pl.project13.scala" % "sbt-jmh" % "0.3.3") +addSbtPlugin("pl.project13.scala" % "sbt-jmh" % "0.3.4") addSbtPlugin("com.timushev.sbt" % "sbt-updates" % "0.3.4") libraryDependencies += "ch.qos.logback" % "logback-classic" % "1.2.3" diff --git a/website/src/hugo/content/changelog.md b/website/src/hugo/content/changelog.md index fc7628e244a..e0e96aff33f 100644 --- a/website/src/hugo/content/changelog.md +++ b/website/src/hugo/content/changelog.md @@ -19,6 +19,7 @@ it. * Dependency upgrades: * jetty-9.4.10.v20180503 * json4s-3.5.4 + * tomcat-9.0.8 # v0.18.11 (2018-05-09) * Prevent zero-padding of servlet input chunks [#1835](https://github.com/http4s/http4s/pull/1835)