mirror of https://github.com/sbt/sbt.git
Remove all warnings from actionsProj
This commit is contained in:
parent
072366d48e
commit
f50260218d
|
|
@ -285,6 +285,12 @@ lazy val actionsProj = (project in file("main-actions"))
|
|||
name := "Actions",
|
||||
libraryDependencies += sjsonNewScalaJson.value,
|
||||
mimaSettings,
|
||||
mimaBinaryIssueFilters ++= Seq(
|
||||
// Removed unused private[sbt] nested class
|
||||
exclude[MissingClassProblem]("sbt.Doc$Scaladoc"),
|
||||
// Removed no longer used private[sbt] method
|
||||
exclude[DirectMissingMethodProblem]("sbt.Doc.generate"),
|
||||
),
|
||||
)
|
||||
.configure(
|
||||
addSbtIO,
|
||||
|
|
|
|||
|
|
@ -10,10 +10,6 @@ package sbt
|
|||
import java.io.File
|
||||
import sbt.internal.inc.AnalyzingCompiler
|
||||
|
||||
import Predef.{ conforms => _, _ }
|
||||
import sbt.io.syntax._
|
||||
import sbt.io.IO
|
||||
|
||||
import sbt.util.CacheStoreFactory
|
||||
import xsbti.Reporter
|
||||
import xsbti.compile.JavaTools
|
||||
|
|
@ -23,10 +19,12 @@ import sbt.internal.util.ManagedLogger
|
|||
|
||||
object Doc {
|
||||
import RawCompileLike._
|
||||
|
||||
def scaladoc(label: String,
|
||||
cacheStoreFactory: CacheStoreFactory,
|
||||
compiler: AnalyzingCompiler): Gen =
|
||||
scaladoc(label, cacheStoreFactory, compiler, Seq())
|
||||
|
||||
def scaladoc(label: String,
|
||||
cacheStoreFactory: CacheStoreFactory,
|
||||
compiler: AnalyzingCompiler,
|
||||
|
|
@ -34,82 +32,32 @@ object Doc {
|
|||
cached(cacheStoreFactory,
|
||||
fileInputOptions,
|
||||
prepare(label + " Scala API documentation", compiler.doc))
|
||||
def javadoc(label: String,
|
||||
cacheStoreFactory: CacheStoreFactory,
|
||||
doc: JavaTools,
|
||||
log: Logger,
|
||||
reporter: Reporter): Gen =
|
||||
javadoc(label, cacheStoreFactory, doc, log, reporter, Seq())
|
||||
def javadoc(label: String,
|
||||
cacheStoreFactory: CacheStoreFactory,
|
||||
doc: JavaTools,
|
||||
log: Logger,
|
||||
reporter: Reporter,
|
||||
fileInputOptions: Seq[String]): Gen =
|
||||
cached(
|
||||
cacheStoreFactory,
|
||||
fileInputOptions,
|
||||
prepare(
|
||||
label + " Java API documentation",
|
||||
filterSources(
|
||||
javaSourcesOnly,
|
||||
(sources: Seq[File],
|
||||
classpath: Seq[File],
|
||||
outputDirectory: File,
|
||||
options: Seq[String],
|
||||
maxErrors: Int,
|
||||
log: Logger) => {
|
||||
// doc.doc
|
||||
???
|
||||
}
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
@deprecated("Going away", "1.1.1")
|
||||
def javadoc(
|
||||
label: String,
|
||||
cacheStoreFactory: CacheStoreFactory,
|
||||
doc: JavaTools,
|
||||
log: Logger,
|
||||
reporter: Reporter,
|
||||
): Gen = ???
|
||||
|
||||
@deprecated("Going away", "1.1.1")
|
||||
def javadoc(
|
||||
label: String,
|
||||
cacheStoreFactory: CacheStoreFactory,
|
||||
doc: JavaTools,
|
||||
log: Logger,
|
||||
reporter: Reporter,
|
||||
fileInputOptions: Seq[String],
|
||||
): Gen = ???
|
||||
|
||||
@deprecated("Going away", "1.1.1")
|
||||
val javaSourcesOnly: File => Boolean = _.getName.endsWith(".java")
|
||||
|
||||
private[sbt] final class Scaladoc(maximumErrors: Int, compiler: AnalyzingCompiler) extends Doc {
|
||||
def apply(label: String,
|
||||
sources: Seq[File],
|
||||
classpath: Seq[File],
|
||||
outputDirectory: File,
|
||||
options: Seq[String],
|
||||
log: ManagedLogger): Unit = {
|
||||
generate("Scala",
|
||||
label,
|
||||
compiler.doc,
|
||||
sources,
|
||||
classpath,
|
||||
outputDirectory,
|
||||
options,
|
||||
maximumErrors,
|
||||
log)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@deprecated("Going away", "1.1.1")
|
||||
sealed trait Doc {
|
||||
@deprecated("Going away", "1.1.1")
|
||||
type Gen = (Seq[File], Seq[File], File, Seq[String], Int, ManagedLogger) => Unit
|
||||
|
||||
private[sbt] final def generate(variant: String,
|
||||
label: String,
|
||||
docf: Gen,
|
||||
sources: Seq[File],
|
||||
classpath: Seq[File],
|
||||
outputDirectory: File,
|
||||
options: Seq[String],
|
||||
maxErrors: Int,
|
||||
log: ManagedLogger): Unit = {
|
||||
val logSnip = variant + " API documentation"
|
||||
if (sources.isEmpty)
|
||||
log.info("No sources available, skipping " + logSnip + "...")
|
||||
else {
|
||||
log.info(
|
||||
"Generating " + logSnip + " for " + label + " sources to " + outputDirectory.absolutePath + "...")
|
||||
IO.delete(outputDirectory)
|
||||
IO.createDirectory(outputDirectory)
|
||||
docf(sources, classpath, outputDirectory, options, maxErrors, log)
|
||||
log.info(logSnip + " generation successful.")
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -17,6 +17,7 @@ import sbt.io.IO
|
|||
import sbt.util.Logger
|
||||
import sbt.ConcurrentRestrictions.Tag
|
||||
import sbt.protocol.testing._
|
||||
import sbt.internal.util.ConsoleAppender
|
||||
|
||||
private[sbt] object ForkTests {
|
||||
def apply(runners: Map[TestFramework, Runner],
|
||||
|
|
@ -78,7 +79,7 @@ private[sbt] object ForkTests {
|
|||
val is = new ObjectInputStream(socket.getInputStream)
|
||||
|
||||
try {
|
||||
val config = new ForkConfiguration(log.ansiCodesSupported, parallel)
|
||||
val config = new ForkConfiguration(ConsoleAppender.formatEnabledInEnv, parallel)
|
||||
os.writeObject(config)
|
||||
|
||||
val taskdefs = opts.tests.map(
|
||||
|
|
|
|||
|
|
@ -100,10 +100,18 @@ object Package {
|
|||
org: String,
|
||||
orgName: String): PackageOption = {
|
||||
import Attributes.Name._
|
||||
val attribKeys = Seq(IMPLEMENTATION_TITLE,
|
||||
IMPLEMENTATION_VERSION,
|
||||
IMPLEMENTATION_VENDOR,
|
||||
IMPLEMENTATION_VENDOR_ID)
|
||||
|
||||
// The ones in Attributes.Name are deprecated saying:
|
||||
// "Extension mechanism will be removed in a future release. Use class path instead."
|
||||
val IMPLEMENTATION_VENDOR_ID = new Attributes.Name("Implementation-Vendor-Id")
|
||||
val IMPLEMENTATION_URL = new Attributes.Name("Implementation-URL")
|
||||
|
||||
val attribKeys = Seq(
|
||||
IMPLEMENTATION_TITLE,
|
||||
IMPLEMENTATION_VERSION,
|
||||
IMPLEMENTATION_VENDOR,
|
||||
IMPLEMENTATION_VENDOR_ID,
|
||||
)
|
||||
val attribVals = Seq(name, version, orgName, org)
|
||||
ManifestAttributes((attribKeys zip attribVals) ++ {
|
||||
homepage map (h => (IMPLEMENTATION_URL, h.toString))
|
||||
|
|
|
|||
|
|
@ -7,6 +7,7 @@
|
|||
|
||||
package sbt
|
||||
|
||||
import scala.annotation.tailrec
|
||||
import java.io.File
|
||||
import sbt.internal.inc.{ RawCompiler, ScalaInstance }
|
||||
|
||||
|
|
@ -30,7 +31,7 @@ object RawCompileLike {
|
|||
type Gen = (Seq[File], Seq[File], File, Seq[String], Int, ManagedLogger) => Unit
|
||||
|
||||
private def optionFiles(options: Seq[String], fileInputOpts: Seq[String]): List[File] = {
|
||||
@annotation.tailrec
|
||||
@tailrec
|
||||
def loop(opt: List[String], result: List[File]): List[File] = {
|
||||
opt.dropWhile(!fileInputOpts.contains(_)) match {
|
||||
case List(_, fileOpt, tail @ _*) => {
|
||||
|
|
@ -46,6 +47,7 @@ object RawCompileLike {
|
|||
|
||||
def cached(cacheStoreFactory: CacheStoreFactory, doCompile: Gen): Gen =
|
||||
cached(cacheStoreFactory, Seq(), doCompile)
|
||||
|
||||
def cached(cacheStoreFactory: CacheStoreFactory,
|
||||
fileInputOpts: Seq[String],
|
||||
doCompile: Gen): Gen =
|
||||
|
|
@ -67,6 +69,7 @@ object RawCompileLike {
|
|||
}
|
||||
cachedComp(inputs)(exists(outputDirectory.allPaths.get.toSet))
|
||||
}
|
||||
|
||||
def prepare(description: String, doCompile: Gen): Gen =
|
||||
(sources, classpath, outputDirectory, options, maxErrors, log) => {
|
||||
if (sources.isEmpty)
|
||||
|
|
@ -79,20 +82,22 @@ object RawCompileLike {
|
|||
log.info(description.capitalize + " successful.")
|
||||
}
|
||||
}
|
||||
|
||||
def filterSources(f: File => Boolean, doCompile: Gen): Gen =
|
||||
(sources, classpath, outputDirectory, options, maxErrors, log) =>
|
||||
doCompile(sources filter f, classpath, outputDirectory, options, maxErrors, log)
|
||||
|
||||
def rawCompile(instance: ScalaInstance, cpOptions: ClasspathOptions): Gen =
|
||||
(sources, classpath, outputDirectory, options, maxErrors, log) => {
|
||||
(sources, classpath, outputDirectory, options, _, log) => {
|
||||
val compiler = new RawCompiler(instance, cpOptions, log)
|
||||
compiler(sources, classpath, outputDirectory, options)
|
||||
}
|
||||
|
||||
def compile(label: String,
|
||||
cacheStoreFactory: CacheStoreFactory,
|
||||
instance: ScalaInstance,
|
||||
cpOptions: ClasspathOptions): Gen =
|
||||
cached(cacheStoreFactory, prepare(label + " sources", rawCompile(instance, cpOptions)))
|
||||
|
||||
val nop: Gen = (sources, classpath, outputDirectory, options, maxErrors, log) => ()
|
||||
val nop: Gen = (_, _, _, _, _, _) => ()
|
||||
}
|
||||
|
|
|
|||
|
|
@ -30,10 +30,18 @@ import sjsonnew.{ Builder, JsonFormat, Unbuilder, deserializationError }
|
|||
* It is safe to use for its intended purpose: copying resources to a class output directory.
|
||||
*/
|
||||
object Sync {
|
||||
def apply(store: CacheStore,
|
||||
inStyle: FileInfo.Style = FileInfo.lastModified,
|
||||
outStyle: FileInfo.Style = FileInfo.exists)
|
||||
: Traversable[(File, File)] => Relation[File, File] =
|
||||
@deprecated("Use sync, which doesn't take the unused outStyle param", "1.1.1")
|
||||
def apply(
|
||||
store: CacheStore,
|
||||
inStyle: FileInfo.Style = FileInfo.lastModified,
|
||||
outStyle: FileInfo.Style = FileInfo.exists,
|
||||
): Traversable[(File, File)] => Relation[File, File] =
|
||||
sync(store, inStyle)
|
||||
|
||||
def sync(
|
||||
store: CacheStore,
|
||||
inStyle: FileInfo.Style = FileInfo.lastModified,
|
||||
): Traversable[(File, File)] => Relation[File, File] =
|
||||
mappings => {
|
||||
val relation = Relation.empty ++ mappings
|
||||
noDuplicateTargets(relation)
|
||||
|
|
@ -70,13 +78,9 @@ object Sync {
|
|||
}
|
||||
|
||||
def noDuplicateTargets(relation: Relation[File, File]): Unit = {
|
||||
val dups = relation.reverseMap.filter {
|
||||
case (_, srcs) =>
|
||||
srcs.size >= 2 && srcs.exists(!_.isDirectory)
|
||||
} map {
|
||||
case (target, srcs) =>
|
||||
"\n\t" + target + "\nfrom\n\t" + srcs.mkString("\n\t\t")
|
||||
}
|
||||
val dups = relation.reverseMap
|
||||
.filter { case (_, srcs) => srcs.size >= 2 && srcs.exists(!_.isDirectory) }
|
||||
.map { case (target, srcs) => "\n\t" + target + "\nfrom\n\t" + srcs.mkString("\n\t\t") }
|
||||
if (dups.nonEmpty)
|
||||
sys.error("Duplicate mappings:" + dups.mkString)
|
||||
}
|
||||
|
|
|
|||
|
|
@ -133,17 +133,20 @@ object TestResultLogger {
|
|||
failuresCount,
|
||||
ignoredCount,
|
||||
canceledCount,
|
||||
pendingCount) =
|
||||
pendingCount,
|
||||
) =
|
||||
results.events.foldLeft((0, 0, 0, 0, 0, 0, 0)) {
|
||||
case ((skippedAcc, errorAcc, passedAcc, failureAcc, ignoredAcc, canceledAcc, pendingAcc),
|
||||
(name @ _, testEvent)) =>
|
||||
case (acc, (_, testEvent)) =>
|
||||
val (skippedAcc, errorAcc, passedAcc, failureAcc, ignoredAcc, canceledAcc, pendingAcc) =
|
||||
acc
|
||||
(skippedAcc + testEvent.skippedCount,
|
||||
errorAcc + testEvent.errorCount,
|
||||
passedAcc + testEvent.passedCount,
|
||||
failureAcc + testEvent.failureCount,
|
||||
ignoredAcc + testEvent.ignoredCount,
|
||||
canceledAcc + testEvent.canceledCount,
|
||||
pendingAcc + testEvent.pendingCount)
|
||||
pendingAcc + testEvent.pendingCount,
|
||||
)
|
||||
}
|
||||
val totalCount = failuresCount + errorsCount + skippedCount + passedCount
|
||||
val base =
|
||||
|
|
|
|||
|
|
@ -34,6 +34,7 @@ import sbt.util.Logger
|
|||
import sbt.protocol.testing.TestResult
|
||||
|
||||
sealed trait TestOption
|
||||
|
||||
object Tests {
|
||||
|
||||
/**
|
||||
|
|
@ -227,7 +228,7 @@ object Tests {
|
|||
if (config.parallel)
|
||||
makeParallel(loader, runnables, setupTasks, config.tags) //.toSeq.join
|
||||
else
|
||||
makeSerial(loader, runnables, setupTasks, config.tags)
|
||||
makeSerial(loader, runnables, setupTasks)
|
||||
val taggedMainTasks = mainTasks.tagw(config.tags: _*)
|
||||
taggedMainTasks map processResults flatMap { results =>
|
||||
val cleanupTasks = fj(partApp(userCleanup) :+ frameworkCleanup(results.overall))
|
||||
|
|
@ -294,10 +295,20 @@ object Tests {
|
|||
}
|
||||
}
|
||||
|
||||
def makeSerial(loader: ClassLoader,
|
||||
runnables: Seq[TestRunnable],
|
||||
setupTasks: Task[Unit],
|
||||
tags: Seq[(Tag, Int)]): Task[List[(String, SuiteResult)]] = {
|
||||
@deprecated("Use the variant without tags", "1.1.1")
|
||||
def makeSerial(
|
||||
loader: ClassLoader,
|
||||
runnables: Seq[TestRunnable],
|
||||
setupTasks: Task[Unit],
|
||||
tags: Seq[(Tag, Int)],
|
||||
): Task[List[(String, SuiteResult)]] =
|
||||
makeSerial(loader, runnables, setupTasks)
|
||||
|
||||
def makeSerial(
|
||||
loader: ClassLoader,
|
||||
runnables: Seq[TestRunnable],
|
||||
setupTasks: Task[Unit],
|
||||
): Task[List[(String, SuiteResult)]] = {
|
||||
@tailrec
|
||||
def processRunnable(runnableList: List[TestRunnable],
|
||||
acc: List[(String, SuiteResult)]): List[(String, SuiteResult)] =
|
||||
|
|
|
|||
|
|
@ -1533,7 +1533,7 @@ object Defaults extends BuildCommon {
|
|||
val cacheStore = s.cacheStoreFactory make "copy-resources"
|
||||
val mappings = (resources.value --- dirs) pair (rebase(dirs, t) | flat(t))
|
||||
s.log.debug("Copy resource mappings: " + mappings.mkString("\n\t", "\n\t", ""))
|
||||
Sync(cacheStore)(mappings)
|
||||
Sync.sync(cacheStore)(mappings)
|
||||
mappings
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue