diff --git a/project/AkkaBuild.scala b/project/AkkaBuild.scala index 1d67923ec8..3ed1c084d6 100644 --- a/project/AkkaBuild.scala +++ b/project/AkkaBuild.scala @@ -1,8 +1,7 @@ import sbt._ import Keys._ import MultiJvmPlugin.{ MultiJvm, extraOptions } -import com.github.oforero.sbtformatter.SbtFormatter._ -import com.github.oforero.sbtformatter.SbtFormatterSettings._ +import ScalariformPlugin.{ format, formatPreferences } object AkkaBuild extends Build { lazy val buildSettings = Seq( @@ -65,7 +64,7 @@ object AkkaBuild extends Build { id = "akka-cluster", base = file("akka-cluster"), dependencies = Seq(stm, actorTests % "test->test"), - settings = defaultSettings ++ MultiJvmPlugin.settings ++ Seq( + settings = defaultSettings ++ multiJvmSettings ++ Seq( libraryDependencies ++= Dependencies.cluster, extraOptions in MultiJvm <<= (sourceDirectory in MultiJvm) { src => (name: String) => (src ** (name + ".conf")).get.headOption.map("-Dakka.config=" + _.absolutePath).toSeq @@ -273,7 +272,7 @@ object AkkaBuild extends Build { override lazy val settings = super.settings ++ buildSettings ++ Publish.versionSettings - lazy val baseSettings = Defaults.defaultSettings ++ Publish.settings ++ formatterPreferences ++ formatterTasks + lazy val baseSettings = Defaults.defaultSettings ++ Publish.settings lazy val parentSettings = baseSettings ++ Seq( publishArtifact in Compile := false @@ -286,7 +285,7 @@ object AkkaBuild extends Build { if (exclude.isEmpty) Seq.empty else exclude.split(",").toSeq } - lazy val defaultSettings = baseSettings ++ Seq( + lazy val defaultSettings = baseSettings ++ formatSettings ++ Seq( resolvers += "Typesafe Repo" at "http://repo.typesafe.com/typesafe/releases/", resolvers += "Twitter Public Repo" at "http://maven.twttr.com", // This will be going away with com.mongodb.async's next release @@ -306,6 +305,24 @@ object AkkaBuild extends Build { testOptions in Test <++= testExcludes map { _.map(exclude => Tests.Filter(test => !test.contains(exclude))) } ) + lazy val formatSettings = ScalariformPlugin.settings ++ Seq( + formatPreferences in Compile := formattingPreferences, + formatPreferences in Test := formattingPreferences + ) + + def formattingPreferences = { + import scalariform.formatter.preferences._ + FormattingPreferences() + .setPreference(RewriteArrowSymbols, true) + .setPreference(AlignParameters, true) + .setPreference(AlignSingleLineCaseStatements, true) + } + + lazy val multiJvmSettings = MultiJvmPlugin.settings ++ inConfig(MultiJvm)(ScalariformPlugin.formatSettings) ++ Seq( + compileInputs in MultiJvm <<= (compileInputs in MultiJvm) dependsOn (format in MultiJvm), + formatPreferences in MultiJvm := formattingPreferences + ) + // reStructuredText docs val rstdocDirectory = SettingKey[File]("rstdoc-directory") diff --git a/project/plugins/build.sbt b/project/plugins/build.sbt index 39a11cabee..a37add7cb7 100644 --- a/project/plugins/build.sbt +++ b/project/plugins/build.sbt @@ -2,3 +2,5 @@ resolvers += "Typesafe Repo" at "http://repo.typesafe.com/typesafe/releases/" libraryDependencies += "com.typesafe" %% "sbt-multi-jvm" % "0.1.2" + +libraryDependencies += "com.typesafe" %% "sbt-scalariform" % "0.1" diff --git a/project/plugins/project/BuildPlugin.scala b/project/plugins/project/BuildPlugin.scala deleted file mode 100644 index 3648f1e926..0000000000 --- a/project/plugins/project/BuildPlugin.scala +++ /dev/null @@ -1,11 +0,0 @@ -import sbt._ -import Keys._ - -object PluginDef extends Build { - - lazy val formatterPlugin = ProjectRef( uri("git://github.com/viktorklang/sbt-cool-plugins.git"), "Formatter") - - lazy override val projects = Seq(root) - - lazy val root = Project("plugins", file(".")) dependsOn (formatterPlugin) -} \ No newline at end of file