Skip to content

Commit

Permalink
Clean up before merge
Browse files Browse the repository at this point in the history
- remove unused imports with scalafix (hurray!)
- refactor build.sbt a bit
- polish new doc entries
- Remove unused Patch.applyInternal
  • Loading branch information
olafurpg committed Aug 18, 2017
1 parent a53dffa commit 9e27ebe
Show file tree
Hide file tree
Showing 14 changed files with 34 additions and 40 deletions.
37 changes: 24 additions & 13 deletions build.sbt
Original file line number Diff line number Diff line change
Expand Up @@ -97,8 +97,8 @@ lazy val allSettings = List(
stableVersion := version.value.replaceAll("\\+.*", ""),
resolvers += Resolver.sonatypeRepo("releases"),
triggeredMessage in ThisBuild := Watched.clearWhenTriggered,
scalacOptions ++= compilerOptions,
scalacOptions in (Compile, console) := compilerOptions :+ "-Yrepl-class-based",
scalacOptions ++= compilerOptions.value,
scalacOptions in (Compile, console) := compilerOptions.value :+ "-Yrepl-class-based",
libraryDependencies += scalatest.value % Test,
testOptions in Test += Tests.Argument("-oD"),
scalaVersion := ciScalaVersion.getOrElse(scala212),
Expand Down Expand Up @@ -197,6 +197,7 @@ lazy val `scalafix-sbt` = project
.configs(IntegrationTest)
.settings(
allSettings,
is210Only,
publishSettings,
buildInfoSettings,
Defaults.itSettings,
Expand All @@ -220,8 +221,6 @@ lazy val `scalafix-sbt` = project
"; very scalafix-sbt/scripted"
)(state.value)
},
scalaVersion := scala210,
crossScalaVersions := Seq(scala210),
moduleName := "sbt-scalafix",
scriptedLaunchOpts ++= Seq(
"-Dplugin.version=" + version.value,
Expand Down Expand Up @@ -293,6 +292,7 @@ lazy val testsInput = project
resolvers += Resolver.bintrayRepo("allanrenucci", "maven"),
libraryDependencies ++= testsDeps
)
.disablePlugins(ScalafixPlugin)
.dependsOn(testsShared)

lazy val testsOutput = project
Expand All @@ -301,6 +301,7 @@ lazy val testsOutput = project
allSettings,
noPublish,
semanticdbSettings,
scalacOptions -= warnUnusedImports,
resolvers := resolvers.in(testsInput).value,
libraryDependencies := libraryDependencies.in(testsInput).value
)
Expand All @@ -324,7 +325,7 @@ lazy val testsInputSbt = project
.settings(
logLevel := Level.Error, // avoid flood of deprecation warnings.
scalacOptions += "-Xplugin-require:sbthost",
scalaVersion := scala210,
is210Only,
sbtPlugin := true,
scalacOptions += s"-P:sbthost:sourceroot:${sourceDirectory.in(Compile).value}",
addCompilerPlugin(
Expand All @@ -334,7 +335,7 @@ lazy val testsInputSbt = project
lazy val testsOutputSbt = project
.in(file("scalafix-tests/output-sbt"))
.settings(
scalaVersion := scala210,
is210Only,
sbtPlugin := true
)

Expand Down Expand Up @@ -434,17 +435,27 @@ lazy val readme = scalatex
.dependsOn(coreJVM, cli)
.enablePlugins(GhpagesPlugin)

lazy val is210Only = Seq(
scalaVersion := scala210,
crossScalaVersions := Seq(scala210),
scalacOptions -= warnUnusedImports
)

lazy val isFullCrossVersion = Seq(
crossVersion := CrossVersion.full
)

lazy val compilerOptions = Seq(
"-deprecation",
"-encoding",
"UTF-8",
"-feature",
"-unchecked"
)
lazy val warnUnusedImports = "-Ywarn-unused-import"
lazy val compilerOptions = Def.setting {
Seq(
"-deprecation",
"-encoding",
"UTF-8",
"-feature",
warnUnusedImports,
"-unchecked"
)
}

lazy val gitPushTag = taskKey[Unit]("Push to git tag")

Expand Down
1 change: 1 addition & 0 deletions project/plugins.sbt
Original file line number Diff line number Diff line change
Expand Up @@ -15,5 +15,6 @@ addSbtPlugin(
addSbtPlugin("org.scala-js" % "sbt-scalajs" % "0.6.18")
addSbtPlugin("ch.epfl.scala" % "sbt-scalajs-bundler" % "0.7.0")
addSbtPlugin("com.typesafe" % "sbt-mima-plugin" % "0.1.14")
addSbtPlugin("ch.epfl.scala" % "sbt-scalafix" % "0.5.0-M4")

libraryDependencies += "org.scala-sbt" % "scripted-plugin" % sbtVersion.value
8 changes: 5 additions & 3 deletions readme/ImplementingRewrites.scalatex
Original file line number Diff line number Diff line change
Expand Up @@ -98,7 +98,7 @@
of the rewrite and the expected output in the @code{output} project.
@li
Assert that a @sect.ref{LintMessage} is expected at a particular line
by suffixing the line with the comment @code{// scalafix: warning}.
by suffixing the line with the comment @code{// scalafix: <LintCategory>}.
The test fails if there exist reported lint messages that have no
associated assertion in the input file.

Expand Down Expand Up @@ -149,7 +149,7 @@
Rewrites are able to emit "lint messages" with info/warn/error severity
using @code{ctx.lint(lintCategory.at(String/Position)): Patch}.
To report a lint message, first create a @sect.ref{LintCategory} and then
report as a Patch
report it as a @code{Patch}
@hl.scala
val divisionByZero = LintCategory.error("Division by zero is unsafe!")
def rewrite(ctx: RewriteCtx): Patch = {
Expand All @@ -159,7 +159,9 @@

@sect{LintCategory}
A LintCategory is group of lint messages of the same kind.
The severity of a LintCategory can be customized in @sect.ref{lint}.
A LintCategory has a default severity level (info/warn/error) at which
it will be reported. Scalafix users can override the default severity
with @sect.ref{lint}.

@sect{Scalameta}
Scalafix uses @lnk("Scalameta", "http://scalameta.org/") to implement
Expand Down
1 change: 0 additions & 1 deletion readme/src/main/scala/scalafix/Readme.scala
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,6 @@ import scalafix.internal.config.ScalafixMetaconfigReaders
import scalafix.reflect.ScalafixReflect
import scalatags.Text.TypedTag
import scalatags.Text.all._
import scalatex.Main
import scalatex.site.Highlighter

object Readme {
Expand Down
3 changes: 0 additions & 3 deletions scalafix-cli/src/main/scala/scalafix/cli/Cli.scala
Original file line number Diff line number Diff line change
Expand Up @@ -10,9 +10,6 @@ import scalafix.internal.cli.CommonOptions
import scalafix.internal.cli.ScalafixOptions
import scalafix.rewrite.ScalafixRewrites
import scala.meta.io.AbsolutePath
import scalafix.internal.config.PrintStreamReporter
import scalafix.internal.config.ScalafixReporter
import scalafix.internal.util.Severity
import caseapp.Name
import caseapp.core.Arg
import caseapp.core.Messages
Expand Down
2 changes: 0 additions & 2 deletions scalafix-cli/src/main/scala/scalafix/cli/CliRunner.scala
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,6 @@ import java.util.regex.PatternSyntaxException
import scala.meta._
import scala.meta.inputs.Input
import scala.meta.internal.inputs._
import scala.meta.internal.tokenizers.PlatformTokenizerCache
import scala.meta.io.AbsolutePath
import scala.meta.sbthost.Sbthost
import scala.util.Try
Expand All @@ -37,7 +36,6 @@ import scalafix.reflect.ScalafixReflect
import scalafix.syntax._
import metaconfig.Configured.Ok
import metaconfig._
import org.scalameta.logger

sealed abstract case class CliRunner(
sourceroot: AbsolutePath,
Expand Down
2 changes: 0 additions & 2 deletions scalafix-core/shared/src/main/scala/scalafix/Failure.scala
Original file line number Diff line number Diff line change
@@ -1,7 +1,5 @@
package scalafix

import scala.meta._

// TODO(olafur) this signature makes no sense. We should try to avoid exception
// try/catch dodgeball court whenever possible.
sealed abstract class Failure(val ex: Throwable)
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
package scalafix.internal.config

import scalafix.lint.LintSeverity
import scalafix.lint.LintCategory
import metaconfig.ConfDecoder

case class LintConfig(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,6 @@ import scala.meta.Position
import scala.meta.internal.inputs.XtensionPositionFormatMessage
import java.io.PrintStream
import java.util.concurrent.atomic.AtomicInteger
import java.util.concurrent.atomic.AtomicReference
import scalafix.internal.util.Severity
import metaconfig._

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,6 @@ import metaconfig.Configured.Ok
import scalafix.internal.config.MetaconfigParser.{parser => hoconParser}
import scalafix.patch.TreePatch
import scalafix.rewrite.ConfigRewrite
import org.scalameta.logger

object ScalafixMetaconfigReaders extends ScalafixMetaconfigReaders
// A collection of metaconfig.Reader instances that are shared across
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@ package scalafix.internal

import scala.meta.Tree
import scala.meta.parsers.Parse
import scalafix.SemanticCtx

package object config extends ScalafixMetaconfigReaders {
type MetaParser = Parse[_ <: Tree]
Expand Down
13 changes: 4 additions & 9 deletions scalafix-core/shared/src/main/scala/scalafix/patch/Patch.scala
Original file line number Diff line number Diff line change
Expand Up @@ -114,14 +114,6 @@ object Patch {
case (rem: Remove, rem2: Remove) => rem
case _ => throw Failure.TokenPatchMergeError(a, b)
}
// Patch.apply and Patch.lintMessages package private. Feel free to use them
// for your application, but please ask on the Gitter channel to see if we
// can expose a better api for your use case.
private[scalafix] def apply(
p: Patch,
ctx: RewriteCtx,
semanticCtx: Option[SemanticCtx]): String =
applyInternal(p, ctx, semanticCtx)

private[scalafix] def lintMessages(
patch: Patch,
Expand All @@ -135,7 +127,10 @@ object Patch {
builder.result()
}

private[scalafix] def applyInternal(
// Patch.apply and Patch.lintMessages package private. Feel free to use them
// for your application, but please ask on the Gitter channel to see if we
// can expose a better api for your use case.
private[scalafix] def apply(
p: Patch,
ctx: RewriteCtx,
semanticCtx: Option[SemanticCtx]
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,6 @@ import scalafix.internal.config.ScalafixConfig
import scalafix.internal.config.ScalafixMetaconfigReaders
import scalafix.internal.config.ScalafixReporter
import scalafix.internal.util.SymbolOps.BottomSymbol
import scalafix.lint.LintSeverity
import scalafix.patch.LintPatch
import scalafix.patch.PatchOps
import scalafix.patch.TokenPatch
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
package scalafix
package testkit

import scala.collection.JavaConverters._
import scala.collection.mutable
import scalafix.syntax._
import scala.meta._
Expand All @@ -11,7 +10,6 @@ import org.scalatest.BeforeAndAfterAll
import org.scalatest.FunSuite
import org.scalatest.exceptions.TestFailedException
import scala.meta.internal.inputs.XtensionPositionFormatMessage
import scalafix.lint.LintSeverity

abstract class SemanticRewriteSuite(
val semanticCtx: SemanticCtx,
Expand Down

0 comments on commit 9e27ebe

Please sign in to comment.