From 2c7e9cd8933c75bbc0086a5c6b4ec6e9cd3a7cba Mon Sep 17 00:00:00 2001 From: Mark Harrah Date: Fri, 24 Aug 2012 13:27:34 -0400 Subject: [PATCH] Scala 2.10.0-M7 --- main/Act.scala | 4 ++-- main/EvaluateTask.scala | 3 ++- main/Resolvers.scala | 2 +- main/settings/SettingMacro.scala | 4 ++-- main/settings/Structure.scala | 8 ++++---- main/settings/TaskMacro.scala | 3 +-- project/Sbt.scala | 2 +- util/appmacro/ContextUtil.scala | 15 ++++++++++----- util/appmacro/Instance.scala | 4 ++-- util/appmacro/KListBuilder.scala | 2 +- util/appmacro/MixedBuilder.scala | 2 +- util/appmacro/TupleBuilder.scala | 2 +- util/appmacro/TupleNBuilder.scala | 2 +- 13 files changed, 29 insertions(+), 24 deletions(-) diff --git a/main/Act.scala b/main/Act.scala index f54628937..938e5b593 100644 --- a/main/Act.scala +++ b/main/Act.scala @@ -122,7 +122,7 @@ object Act { case Omitted => None +: defaultConfigurations(proj, index, defaultConfigs).flatMap(nonEmptyConfig(index, proj)) case ParsedGlobal => None :: Nil - case pv: ParsedValue[String] => Some(pv.value) :: Nil + case pv: ParsedValue[x] => Some(pv.value) :: Nil } def defaultConfigurations(proj: Option[ResolvedReference], index: KeyIndex, defaultConfigs: Option[ResolvedReference] => Seq[String]): Seq[String] = if(index exists proj) defaultConfigs(proj) else Nil @@ -217,7 +217,7 @@ object Act { case Omitted => Some(current) case ParsedGlobal => None - case pv: ParsedValue[ResolvedReference] => Some(pv.value) + case pv: ParsedValue[rr] => Some(pv.value) } def actParser(s: State): Parser[() => State] = requireSession(s, actParser0(s)) diff --git a/main/EvaluateTask.scala b/main/EvaluateTask.scala index fd3dd4160..e1d667b87 100644 --- a/main/EvaluateTask.scala +++ b/main/EvaluateTask.scala @@ -189,7 +189,8 @@ object EvaluateTask } type AnyCyclic = Execute[Task]#CyclicException[_] def convertCyclicInc: Incomplete => Incomplete = { - case in @ Incomplete(_, _, _, _, Some(c: AnyCyclic)) => in.copy(directCause = Some(new RuntimeException(convertCyclic(c))) ) + case in @ Incomplete(_, _, _, _, Some(c: AnyCyclic)) => + in.copy(directCause = Some(new RuntimeException(convertCyclic(c))) ) case i => i } def convertCyclic(c: AnyCyclic): String = diff --git a/main/Resolvers.scala b/main/Resolvers.scala index 24c54584f..aa89d1eb4 100644 --- a/main/Resolvers.scala +++ b/main/Resolvers.scala @@ -139,7 +139,7 @@ object Resolvers try { f } catch { - case e => + case e: Throwable => IO.delete(file) throw e } diff --git a/main/settings/SettingMacro.scala b/main/settings/SettingMacro.scala index b99d59584..11442811b 100644 --- a/main/settings/SettingMacro.scala +++ b/main/settings/SettingMacro.scala @@ -15,7 +15,7 @@ object InitializeInstance extends MonadInstance } object InitializeConvert extends Convert { - def apply[T: c.AbsTypeTag](c: reflect.makro.Context)(in: c.Tree): c.Tree = + def apply[T: c.AbsTypeTag](c: reflect.macros.Context)(in: c.Tree): c.Tree = { val u = appmacro.ContextUtil[c.type](c) if(in.tpe <:< u.atypeOf[Initialize[Task[T]]] || in.tpe <:< u.atypeOf[Task[T]]) @@ -32,7 +32,7 @@ object InitializeConvert extends Convert import language.experimental.macros import scala.reflect._ - import makro._ + import reflect.macros._ object SettingMacro { diff --git a/main/settings/Structure.scala b/main/settings/Structure.scala index 66aa07fd5..0fce1cd0d 100644 --- a/main/settings/Structure.scala +++ b/main/settings/Structure.scala @@ -140,17 +140,17 @@ object Scoped { protected def onTask[T](f: Task[S] => Task[T]): Initialize[Task[T]] = i apply f - def dependsOn(tasks: AnyInitTask*): Initialize[Task[S]] = (i, Initialize.joinAny(tasks)) { (thisTask, deps) => thisTask.dependsOn(deps : _*) } + def dependsOn(tasks: AnyInitTask*): Initialize[Task[S]] = (i, Initialize.joinAny[Task](tasks)) { (thisTask, deps) => thisTask.dependsOn(deps : _*) } def triggeredBy(tasks: AnyInitTask*): Initialize[Task[S]] = nonLocal(tasks, Def.triggeredBy) def runBefore(tasks: AnyInitTask*): Initialize[Task[S]] = nonLocal(tasks, Def.runBefore) private[this] def nonLocal(tasks: Seq[AnyInitTask], key: AttributeKey[Seq[Task[_]]]): Initialize[Task[S]] = - (Initialize.joinAny(tasks), i) { (ts, i) => i.copy(info = i.info.set(key, ts)) } + (Initialize.joinAny[Task](tasks), i) { (ts, i) => i.copy(info = i.info.set(key, ts)) } } final class RichInitializeInputTask[S](i: Initialize[InputTask[S]]) extends RichInitTaskBase[S,InputTask] { protected def onTask[T](f: Task[S] => Task[T]): Initialize[InputTask[T]] = i(_ mapTask f) - def dependsOn(tasks: AnyInitTask*): Initialize[InputTask[S]] = (i, Initialize.joinAny(tasks)) { (thisTask, deps) => thisTask.mapTask(_.dependsOn(deps : _*)) } + def dependsOn(tasks: AnyInitTask*): Initialize[InputTask[S]] = (i, Initialize.joinAny[Task](tasks)) { (thisTask, deps) => thisTask.mapTask(_.dependsOn(deps : _*)) } } sealed abstract class RichInitTaskBase[S, R[_]] @@ -184,7 +184,7 @@ object Scoped implicit def richAnyTaskSeq(in: Seq[AnyInitTask]): RichAnyTaskSeq = new RichAnyTaskSeq(in) final class RichAnyTaskSeq(keys: Seq[AnyInitTask]) { - def dependOn: Initialize[Task[Unit]] = Initialize.joinAny(keys).apply(deps => nop.dependsOn(deps : _*) ) + def dependOn: Initialize[Task[Unit]] = Initialize.joinAny[Task](keys).apply(deps => nop.dependsOn(deps : _*) ) } diff --git a/main/settings/TaskMacro.scala b/main/settings/TaskMacro.scala index 37d517887..344b90351 100644 --- a/main/settings/TaskMacro.scala +++ b/main/settings/TaskMacro.scala @@ -1,4 +1,3 @@ - package sbt package std @@ -9,7 +8,7 @@ package std import language.experimental.macros import scala.reflect._ - import makro._ + import reflect.macros._ /** Instance for the monad/applicative functor for plain Tasks. */ object TaskInstance extends MonadInstance diff --git a/project/Sbt.scala b/project/Sbt.scala index 37ff6b541..67091cff8 100644 --- a/project/Sbt.scala +++ b/project/Sbt.scala @@ -16,7 +16,7 @@ object Sbt extends Build organization := "org.scala-sbt", version := "0.13.0-SNAPSHOT", publishArtifact in packageDoc := false, - scalaVersion := "2.10.0-M6", + scalaVersion := "2.10.0-M7", publishMavenStyle := false, componentID := None, crossPaths := false, diff --git a/util/appmacro/ContextUtil.scala b/util/appmacro/ContextUtil.scala index 2451c7c98..ad66c84e2 100644 --- a/util/appmacro/ContextUtil.scala +++ b/util/appmacro/ContextUtil.scala @@ -2,7 +2,7 @@ package sbt package appmacro import scala.reflect._ - import makro._ + import macros._ import scala.tools.nsc.Global object ContextUtil { @@ -66,7 +66,7 @@ final class ContextUtil[C <: Context](val ctx: C) polyType(tvar :: Nil, refVar(tvar)) } /** A Type that references the given type variable. */ - def refVar(variable: TypeSymbol): Type = variable.asTypeConstructor + def refVar(variable: TypeSymbol): Type = variable.toTypeConstructor /** Constructs a new, synthetic type variable that is a type constructor. For example, in type Y[L[x]], L is such a type variable. */ def newTCVariable(owner: Symbol): TypeSymbol = { @@ -75,7 +75,7 @@ final class ContextUtil[C <: Context](val ctx: C) tc.setTypeSignature(PolyType(arg :: Nil, emptyTypeBounds)) tc } - def emptyTypeBounds: TypeBounds = TypeBounds(definitions.NothingClass.asType, definitions.AnyClass.asType) + def emptyTypeBounds: TypeBounds = TypeBounds(definitions.NothingClass.toType, definitions.AnyClass.toType) /** Returns the Symbol that references the statically accessible singleton `i`. */ def singleton[T <: AnyRef with Singleton](i: T)(implicit it: ctx.TypeTag[i.type]): Symbol = @@ -85,7 +85,12 @@ final class ContextUtil[C <: Context](val ctx: C) } /** Returns the symbol for the non-private method named `name` for the class/module `obj`. */ - def method(obj: Symbol, name: String): Symbol = obj.typeSignature.nonPrivateMember(newTermName(name)) + def method(obj: Symbol, name: String): Symbol = { + val global: Global = ctx.universe.asInstanceOf[Global] + val ts: Type = obj.typeSignature + val m: global.Symbol = ts.asInstanceOf[global.Type].nonPrivateMember(global.newTermName(name)) + m.asInstanceOf[Symbol] + } /** Returns a Type representing the type constructor tcp.. For example, given * `object Demo { type M[x] = List[x] }`, the call `extractTC(Demo, "M")` will return a type representing @@ -97,7 +102,7 @@ final class ContextUtil[C <: Context](val ctx: C) val itTpe = it.tpe.asInstanceOf[global.Type] val m = itTpe.nonPrivateMember(global.newTypeName(name)) val tc = itTpe.memberInfo(m).asInstanceOf[ctx.universe.Type] - assert(tc != NoType && tc.isHigherKinded, "Invalid type constructor: " + tc) + assert(tc != NoType && tc.takesTypeArgs, "Invalid type constructor: " + tc) tc } } \ No newline at end of file diff --git a/util/appmacro/Instance.scala b/util/appmacro/Instance.scala index 71360c1c7..e03a29cb2 100644 --- a/util/appmacro/Instance.scala +++ b/util/appmacro/Instance.scala @@ -18,7 +18,7 @@ trait Instance } trait Convert { - def apply[T: c.AbsTypeTag](c: scala.reflect.makro.Context)(in: c.Tree): c.Tree + def apply[T: c.AbsTypeTag](c: scala.reflect.macros.Context)(in: c.Tree): c.Tree } trait MonadInstance extends Instance { @@ -30,7 +30,7 @@ object InputWrapper } import scala.reflect._ - import makro._ + import macros._ object Instance { diff --git a/util/appmacro/KListBuilder.scala b/util/appmacro/KListBuilder.scala index b57a39449..7ae0696d0 100644 --- a/util/appmacro/KListBuilder.scala +++ b/util/appmacro/KListBuilder.scala @@ -4,7 +4,7 @@ package appmacro import Types.Id import scala.tools.nsc.Global import scala.reflect._ - import makro._ + import macros._ /** A `TupleBuilder` that uses a KList as the tuple representation.*/ object KListBuilder extends TupleBuilder diff --git a/util/appmacro/MixedBuilder.scala b/util/appmacro/MixedBuilder.scala index 593f60382..e58adb2b0 100644 --- a/util/appmacro/MixedBuilder.scala +++ b/util/appmacro/MixedBuilder.scala @@ -2,7 +2,7 @@ package sbt package appmacro import scala.reflect._ - import makro._ + import macros._ /** A builder that uses `TupleN` as the representation for small numbers of inputs (up to `TupleNBuilder.MaxInputs`) * and `KList` for larger numbers of inputs. This builder cannot handle fewer than 2 inputs.*/ diff --git a/util/appmacro/TupleBuilder.scala b/util/appmacro/TupleBuilder.scala index f91d3c91c..f6442cb02 100644 --- a/util/appmacro/TupleBuilder.scala +++ b/util/appmacro/TupleBuilder.scala @@ -4,7 +4,7 @@ package appmacro import Types.Id import scala.tools.nsc.Global import scala.reflect._ - import makro._ + import macros._ /** * A `TupleBuilder` abstracts the work of constructing a tuple data structure such as a `TupleN` or `KList` diff --git a/util/appmacro/TupleNBuilder.scala b/util/appmacro/TupleNBuilder.scala index 4f034adae..c7b9929ab 100644 --- a/util/appmacro/TupleNBuilder.scala +++ b/util/appmacro/TupleNBuilder.scala @@ -4,7 +4,7 @@ package appmacro import Types.Id import scala.tools.nsc.Global import scala.reflect._ - import makro._ + import macros._ /** A builder that uses a TupleN as the tuple representation. * It is limited to tuples of size 2 to `MaxInputs`. */