From 738e8fb2f395f79364cb450e97c50d0db0331921 Mon Sep 17 00:00:00 2001 From: Eugene Yokota Date: Thu, 5 May 2016 16:11:57 -0400 Subject: [PATCH] Adjust discovery code to new Zinc --- main/actions/src/main/scala/sbt/Tests.scala | 6 ++++-- main/src/main/scala/sbt/PluginDiscovery.scala | 7 +++++-- sbt/src/sbt-test/actions/aggregate/test | 2 ++ 3 files changed, 11 insertions(+), 4 deletions(-) diff --git a/main/actions/src/main/scala/sbt/Tests.scala b/main/actions/src/main/scala/sbt/Tests.scala index 79f29de01..c0a518e4a 100644 --- a/main/actions/src/main/scala/sbt/Tests.scala +++ b/main/actions/src/main/scala/sbt/Tests.scala @@ -275,10 +275,12 @@ object Tests { def allDefs(analysis: CompileAnalysis) = analysis match { case analysis: Analysis => - analysis.apis.internal.values.flatMap { ac => + val acs: Seq[xsbti.api.AnalyzedClass] = analysis.apis.internal.values.toVector + acs.flatMap { ac => val companions = ac.api val all = - companions.classApi.structure.declared ++ companions.classApi.structure.inherited ++ + Seq(companions.classApi, companions.objectApi) ++ + companions.classApi.structure.declared ++ companions.classApi.structure.inherited ++ companions.objectApi.structure.declared ++ companions.objectApi.structure.inherited all diff --git a/main/src/main/scala/sbt/PluginDiscovery.scala b/main/src/main/scala/sbt/PluginDiscovery.scala index b1eeed519..2f8525e5b 100644 --- a/main/src/main/scala/sbt/PluginDiscovery.scala +++ b/main/src/main/scala/sbt/PluginDiscovery.scala @@ -23,7 +23,9 @@ object PluginDiscovery { final val Builds = "sbt/sbt.builds" } /** Names of top-level modules that subclass sbt plugin-related classes: [[Plugin]], [[AutoPlugin]], and [[BuildDef]]. */ - final class DiscoveredNames(val plugins: Seq[String], val autoPlugins: Seq[String], val builds: Seq[String]) + final class DiscoveredNames(val plugins: Seq[String], val autoPlugins: Seq[String], val builds: Seq[String]) { + override def toString: String = s"""DiscoveredNames($plugins, $autoPlugins, $builds)""" + } def emptyDiscoveredNames: DiscoveredNames = new DiscoveredNames(Nil, Nil, Nil) @@ -96,7 +98,8 @@ object PluginDiscovery { def sourceModuleNames(analysis: CompileAnalysis, subclasses: String*): Seq[String] = { val subclassSet = subclasses.toSet - val ds = Discovery(subclassSet, Set.empty)(Tests.allDefs(analysis)) + val defs = Tests.allDefs(analysis) + val ds = Discovery(subclassSet, Set.empty)(defs) ds.flatMap { case (definition, Discovered(subs, _, _, true)) => if ((subs & subclassSet).isEmpty) Nil else definition.name :: Nil diff --git a/sbt/src/sbt-test/actions/aggregate/test b/sbt/src/sbt-test/actions/aggregate/test index 054847bc4..223cc9476 100644 --- a/sbt/src/sbt-test/actions/aggregate/test +++ b/sbt/src/sbt-test/actions/aggregate/test @@ -1,3 +1,5 @@ +> plugins + # single project, 'mark' not defined -> mark $ absent ran