From f216c5da9ff6d8912a8a29801e69caf97ce62153 Mon Sep 17 00:00:00 2001 From: Sarah Gerweck Date: Wed, 4 May 2016 20:59:15 -0700 Subject: [PATCH] Update to several SBT plugins --- project/Build.scala | 45 ++++++++++++++++++++++++--------------------- project/plugins.sbt | 6 +++--- 2 files changed, 27 insertions(+), 24 deletions(-) diff --git a/project/Build.scala b/project/Build.scala index 9806741..c462676 100644 --- a/project/Build.scala +++ b/project/Build.scala @@ -1,7 +1,7 @@ import sbt._ import Keys._ -import com.typesafe.sbt.SbtSite.site +import com.typesafe.sbt.site._ import sbtrelease.ReleasePlugin.autoImport._ import com.typesafe.sbt.SbtPgp.autoImport._ @@ -82,30 +82,33 @@ object BuildSettings extends Basics { if (deprecation) Seq("-Xlint:deprecation") else Seq.empty ) - /* Site setup */ - lazy val siteSettings = site.settings ++ site.includeScaladoc() + /** A wrapper so we can call `commonSettings()` on a project. */ + implicit class ProjectSettingsHelper(p: Project) { + def commonSettings() = siteSettings(p).settings(buildSettings: _*) - val buildSettings = buildMetadata ++ - siteSettings ++ - projectMainClass.toSeq.map(mainClass := Some(_)) ++ - Seq ( - organization := buildOrganization, - organizationName := buildOrganizationName, - organizationHomepage := buildOrganizationUrl map { url _ }, + private[this] def siteSettings(p: Project) = p.enablePlugins(SiteScaladocPlugin) - scalaVersion := buildScalaVersion, - crossScalaVersions := buildScalaVersions, + private[this] val buildSettings = buildMetadata ++ + projectMainClass.toSeq.map(mainClass := Some(_)) ++ + Seq ( + organization := buildOrganization, + organizationName := buildOrganizationName, + organizationHomepage := buildOrganizationUrl map { url _ }, - scalacOptions ++= buildScalacOptions, - javacOptions ++= buildJavacOptions, - autoAPIMappings := true, + scalaVersion := buildScalaVersion, + crossScalaVersions := buildScalaVersions, - updateOptions := updateOptions.value.withCachedResolution(cachedResolution), - parallelExecution := parallelBuild, + scalacOptions ++= buildScalacOptions, + javacOptions ++= buildJavacOptions, + autoAPIMappings := true, - evictionWarningOptions in update := - EvictionWarningOptions.default.withWarnTransitiveEvictions(false).withWarnDirectEvictions(false).withWarnScalaVersionEviction(false) - ) + updateOptions := updateOptions.value.withCachedResolution(cachedResolution), + parallelExecution := parallelBuild, + + evictionWarningOptions in update := + EvictionWarningOptions.default.withWarnTransitiveEvictions(false).withWarnDirectEvictions(false).withWarnScalaVersionEviction(false) + ) + } } object Helpers { @@ -308,7 +311,7 @@ object UtilsBuild extends Build { import Helpers._ lazy val root = (project in file (".")) - .settings(buildSettings: _*) + .commonSettings() .settings(Eclipse.settings: _*) .settings(Publish.settings: _*) .settings(Release.settings: _*) diff --git a/project/plugins.sbt b/project/plugins.sbt index 9daba25..f772a7f 100644 --- a/project/plugins.sbt +++ b/project/plugins.sbt @@ -1,10 +1,10 @@ addSbtPlugin("com.typesafe.sbteclipse" % "sbteclipse-plugin" % "4.0.0") -addSbtPlugin("com.typesafe.sbt" % "sbt-site" % "0.8.1") +addSbtPlugin("com.typesafe.sbt" % "sbt-site" % "1.0.0") addSbtPlugin("com.jsuereth" % "sbt-pgp" % "1.0.0") -addSbtPlugin("org.xerial.sbt" % "sbt-sonatype" % "0.3.0") +addSbtPlugin("org.xerial.sbt" % "sbt-sonatype" % "1.1") -addSbtPlugin("com.github.gseitz" % "sbt-release" % "1.0.0") +addSbtPlugin("com.github.gseitz" % "sbt-release" % "1.0.3")