diff options
Diffstat (limited to 'project/Settings.scala')
-rw-r--r-- | project/Settings.scala | 70 |
1 files changed, 70 insertions, 0 deletions
diff --git a/project/Settings.scala b/project/Settings.scala new file mode 100644 index 00000000..d33b8a99 --- /dev/null +++ b/project/Settings.scala @@ -0,0 +1,70 @@ +/* ========================================================================================= + * Copyright © 2013-2016 the kamon project <http://kamon.io/> + * + * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software distributed under the + * License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, + * either express or implied. See the License for the specific language governing permissions + * and limitations under the License. + * ========================================================================================= + */ + +import sbt._ +import Keys._ +import com.typesafe.sbt.SbtScalariform +import com.typesafe.sbt.SbtScalariform.ScalariformKeys +import Publish.{settings => publishSettings} +import Release.{settings => releaseSettings} +import scalariform.formatter.preferences._ + +object Settings { + + val JavaVersion = "1.6" + val SVersion = "2.11.8" + + lazy val basicSettings = Seq( + scalaVersion := SVersion, + crossScalaVersions := Seq("2.10.5", SVersion, "2.12.0"), + resolvers ++= Dependencies.resolutionRepos, + fork in run := true, + parallelExecution in Global := false, + scalacOptions := commonScalacOptions, + javacOptions := commonJavaOptions + ) ++ publishSettings ++ releaseSettings + + lazy val commonJavaOptions = Seq( + "-Xlint:-options", + "-source", JavaVersion, "-target", JavaVersion) + + lazy val commonScalacOptions = Seq( + "-encoding", + "utf8", + "-g:vars", + "-feature", + "-unchecked", + "-deprecation", + "-language:postfixOps", + "-language:implicitConversions", + "-Xlog-reflective-calls" +// "-Yno-adapted-args", +// "-Ywarn-dead-code", +// "-Ywarn-numeric-widen", +// "-Ywarn-value-discard", + ) + + lazy val formatSettings = SbtScalariform.scalariformSettings ++ Seq( + ScalariformKeys.preferences in Compile := formattingPreferences, + ScalariformKeys.preferences in Test := formattingPreferences + ) + + def formattingPreferences = + FormattingPreferences() + .setPreference(RewriteArrowSymbols, true) + .setPreference(AlignParameters, false) + .setPreference(AlignSingleLineCaseStatements, true) + .setPreference(DoubleIndentClassDeclaration, true) +} |