jdegoes/blueeyes — Issue #31: IDEA compilation shows many errors, sbt does not
Author: mslinn
Created: 2011-11-07 16:11:33+00:00
State: open

build.sbt references Akka 1.2 instead of 1.1.2. After fixing build.sbt, 'sbt compile' only shows 3 warnings:

````
[warn] /home/mslinn/work/blueeyes/src/main/scala/blueeyes/core/service/HttpServiceDescriptorFactoryCombinators.scala:271: non variable type-argument T in type pattern blueeyes.core.http.HttpRequest[T] is unchecked since it is eliminated by erasure
[warn] case (request: HttpRequest[T], response: Future[HttpResponse[T]]) => {
[warn] ^
[warn] /home/mslinn/work/blueeyes/src/main/scala/blueeyes/core/service/HttpServices.scala:120: non variable type-argument A in type pattern blueeyes.core.service.DelegatingService[A,B,C,D] is unchecked since it is eliminated by erasure
[warn] case DelegatingService(child) => pathMetadata(child, services, path ++ child.metadata)
[warn] ^
[warn] /home/mslinn/work/blueeyes/src/main/scala/blueeyes/persistence/mongo/MongoFilterEvaluator.scala:72: match is not exhaustive!
[warn] missing combination $notExists
[warn] def apply(lhs: JPath, operator: MongoFilterOperator): FieldFilterEvaluator = operator match{
[warn] ^
[warn] /home/mslinn/work/blueeyes/src/main/scala/blueeyes/persistence/mongo/json/BijectionsMongoJson.scala:41: match is not exhaustive!
[warn] missing combination JField
[warn] private def toStorageValue(v: JValue): ValidationNEL[String, Any] = v match {
[warn] ^
[warn] three warnings found
````

However, compiling with IDEA gives 65 errors, after using gen-idea to create an IDEA project from sbt.build:

````
Information:Compilation completed with 65 errors and 0 warnings
Information:65 errors
Information:0 warnings
/home/mslinn/work/blueeyes/src/main/scala/blueeyes/actor/package.scala
Error:Error:line (8)error: illegal cyclic reference involving type Actor
type ActorState[A, B] = (B, Actor[A, B])
/home/mslinn/work/blueeyes/src/main/scala/blueeyes/actor/ActorMonads.scala
Error:Error:line (21)error: type mismatch;
found : Any
required: blueeyes.actor.package.Actor[A,?]
Note: implicit method ActorMonadParallel is not applicable here because it comes after the application point and it lacks an explicit result type
(bb, bind(next1, (b: B) => next2))
Error:Error:line (21)error: type mismatch;
found : Any
required: blueeyes.actor.package.Actor[A,?]
Note: implicit method ActorMonadParallel is not applicable here because it comes after the application point and it lacks an explicit result type
(bb, bind(next1, (b: B) => next2))
/home/mslinn/work/blueeyes/src/main/scala/blueeyes/actor/ActorMHelpers.scala
Error:Error:line (57)error: value ! is not a member of Any
case (_, n) => n ! a
Error:Error:line (56)error: no type parameters for method unwrapM: (m: M[(M[B], )])(implicit evidence$1: scalaz.Monad[M])(M[B], ) exist so that it can be applied to arguments (M[Nothing])
--- because ---
argument expression's type is not compatible with formal parameter type;
found : M[Nothing]
required: ?M[(?M[?B], )]
unwrapM(m.map {
/home/mslinn/work/blueeyes/src/main/scala/blueeyes/actor/ActorTypeclasses.scala
Error:Error:line (29)error: type mismatch;
found : Any
required: blueeyes.actor.package.Actor[A,? => ?]
Note: implicit method ActorApply is not applicable here because it comes after the application point and it lacks an explicit result type
(c, apply(next1, next2))
Error:Error:line (29)error: type mismatch;
found : Any
required: blueeyes.actor.package.Actor[A,?]
Note: implicit method ActorApply is not applicable here because it comes after the application point and it lacks an explicit result type
(c, apply(next1, next2))
Error:Error:line (47)error: type mismatch;
found : Any
required: blueeyes.actor.package.Actor[?,?]
Note: implicit value ActorCategory is not applicable here because it comes after the application point and it lacks an explicit result type
(c, compose(next2, next1))
Error:Error:line (47)error: type mismatch;
found : Any
required: blueeyes.actor.package.Actor[?,?]
Note: implicit value ActorCategory is not applicable here because it comes after the application point and it lacks an explicit result type
(c, compose(next2, next1))
Error:Error:line (62)error: type mismatch;
found : Any
required: blueeyes.actor.package.Actor[?,?]
Note: implicit value ActorArrow is not applicable here because it comes after the application point and it lacks an explicit result type
((b, c), first(next))
Error:Error:line (70)error: type mismatch;
found : Any
required: blueeyes.actor.package.Actor[?,?]
Note: implicit value ActorArrow is not applicable here because it comes after the application point and it lacks an explicit result type
((c, b), second(next))
Error:Error:line (86)error: type mismatch;
found : Any
required: blueeyes.actor.ActorV[?,? => ?]
Note: implicit method ActorStateApply is not applicable here because it comes after the application point and it lacks an explicit result type
(bToC(b), ActorApply.apply(next1, next2))
Error:Error:line (86)error: type mismatch;
found : Any
required: blueeyes.actor.ActorV[?,?]
Note: implicit method ActorStateApply is not applicable here because it comes after the application point and it lacks an explicit result type
(bToC(b), ActorApply.apply(next1, next2))
/home/mslinn/work/blueeyes/src/main/scala/blueeyes/actor/Actor.scala
Error:Error:line (27)error: value ! is not a member of Any
val (b, next) = actor ! a
Error:Error:line (29)error: type mismatch;
found : scala.collection.immutable.Vector[Any]
required: scala.collection.immutable.Vector[B]
(seq :+ b, next)
Error:Error:line (25)error: type mismatch;
found : (scala.collection.immutable.Vector[B], Any)
required: (Seq[B], blueeyes.actor.package.Actor[A,B])
tail.foldLeft((Vector(b), actor)) {
Error:Error:line (40)error: type mismatch;
found : Any
required: blueeyes.actor.package.Actor[A,B]
tail.foldLeft[(B, Actor[A, B])]((b, actor)) {
/home/mslinn/work/blueeyes/src/main/scala/blueeyes/actor/ActorMTypeclasses.scala
Error:Error:line (30)error: type mismatch;
found : Any
required: blueeyes.actor.package.ActorM[M,A,? => ?]
Note: implicit method ActorMApply is not applicable here because it comes after the application point and it lacks an explicit result type
(monad.pure(c), apply(next1, next2))
Error:Error:line (30)error: type mismatch;
found : Any
required: blueeyes.actor.package.ActorM[M,A,?]
Note: implicit method ActorMApply is not applicable here because it comes after the application point and it lacks an explicit result type
(monad.pure(c), apply(next1, next2))
Error:Error:line (49)error: type mismatch;
found : Any
required: blueeyes.actor.package.ActorM[M,?,?]
Note: implicit method ActorMCategory is not applicable here because it comes after the application point and it lacks an explicit result type
case (c, next2) => (c, compose(next2, next1))
Error:Error:line (49)error: type mismatch;
found : Any
required: blueeyes.actor.package.ActorM[M,?,?]
Note: implicit method ActorMCategory is not applicable here because it comes after the application point and it lacks an explicit result type
case (c, next2) => (c, compose(next2, next1))
Error:Error:line (65)error: type mismatch;
found : Any
required: blueeyes.actor.package.ActorM[M,?,?]
Note: implicit method ActorMArrow is not applicable here because it comes after the application point and it lacks an explicit result type
(mb.map(b => (b, c)), first(next))
Error:Error:line (73)error: type mismatch;
found : Any
required: blueeyes.actor.package.ActorM[M,?,?]
Note: implicit method ActorMArrow is not applicable here because it comes after the application point and it lacks an explicit result type
(mb.map(b => (c, b)), second(next))
Error:Error:line (90)error: type mismatch;
found : Any
required: blueeyes.actor.ActorV[?,M[? => ?]]
Note: implicit method ActorMStateApply is not applicable here because it comes after the application point and it lacks an explicit result type
(for (bToC <- bToCM; b <- bM) yield bToC(b), ActorMApply.apply(next1, next2))
Error:Error:line (90)error: type mismatch;
found : Any
required: blueeyes.actor.ActorV[?,M[?]]
Note: implicit method ActorMStateApply is not applicable here because it comes after the application point and it lacks an explicit result type
(for (bToC <- bToCM; b <- bM) yield bToC(b), ActorMApply.apply(next1, next2))
/home/mslinn/work/blueeyes/src/main/scala/blueeyes/actor/ActorPimps.scala
Error:Error:line (27)error: value premap is not a member of type parameter B
(value ! f(aa)).mapElements[B, Actor[AA, B]](identity, _.premap[AA](f))
Error:Error:line (55)error: value & is not a member of Any
((b, c), selfNext & thatNext)
Error:Error:line (63)error: value ^ is not a member of type parameter B
case Left(a) => (value ! a).mapElements(Left.apply _, _ ^ that)
Error:Error:line (64)error: type mismatch;
found : B
required: blueeyes.actor.package.Actor[?,?]
case Right(c) => (that ! c).mapElements(Right.apply _, value ^ _)
Error:Error:line (75)error: type mismatch;
found : Any
required: blueeyes.actor.package.Actor[(?, blueeyes.actor.package.Actor[A,B]),(?, blueeyes.actor.package.Actor[A,B])]
(d, this2 ~> that2)
Error:Error:line (88)error: value * is not a member of Any
((b, bb), next1 * next2)
Error:Error:line (110)error: value scan is not a member of Any
(z2, next.scan(z2)(f))
Error:Error:line (121)error: type mismatch;
found : Any
required: blueeyes.actor.package.Actor[A,B]
(f(z, b), actor2)
Error:Error:line (141)error: type mismatch;
found : Any
required: blueeyes.actor.package.Actor[B,C]
(c, reduce((p1, a2), orElse))
Error:Error:line (158)error: value lift is not a member of Any
(monad.pure(b), next.lift[M])
Error:Error:line (165)error: type mismatch;
found : (B, ) => x$15._1.type forSome { val x$15: (B, ) }
required: (B, ) => B
(future.map(_._1), ActorMHelpers.receive[Future, A, B] { a: A =>
Error:Error:line (167)error: value ! is not a member of Any
case (_, next) => next ! a
Error:Error:line (166)error: no type parameters for method map: (f: (B, ) => S)blueeyes.concurrent.Future[S] exist so that it can be applied to arguments ((B, ) => )
--- because ---
undetermined type
unwrap(future.map {
Error:Error:line (186)error: value filter is not a member of Any
(if (f(tb)) tb else implicitly[Empty[T]].empty[B], next.filter(f))
Error:Error:line (196)error: value >- is not a member of Any
(c, next >- (f))
Error:Error:line (206)error: value | is not a member of type parameter B
result.mapElements(identity, _ | that.variant[A, Validation[E, B]]) match {
Error:Error:line (207)error: value | is not a member of Nothing
case (Failure(_), next) => (that ! a).variant[A, Validation[E, B]].mapElements(identity, next | _)
Error:Error:line (227)error: value <~ is not a member of Any
(b, self2 <~ that2)
Error:Error:line (233)error: value premap is not a member of type parameter B
def premap[AA](f: AA => A): (B, Actor[AA, B]) = value.mapElements[B, Actor[AA, B]](identity, _.premap[AA](f))
Error:Error:line (235)error: value postmap is not a member of type parameter B
def postmap[BB](f: B => BB): (BB, Actor[A, BB]) = value.mapElements[BB, Actor[A, BB]](f, _.postmap[BB](f))
Error:Error:line (237)error: value variant is not a member of type parameter B
def variant[AA <: A, BB >: B]: (BB, Actor[AA, BB]) = value.mapElements((b: B) => (b : BB), _.variant[AA, BB])
/home/mslinn/work/blueeyes/src/main/scala/blueeyes/actor/ActorMPimps.scala
Error:Error:line (23)error: value premap is not a member of type parameter B
(value ! f(aa)).mapElements(identity, _.premap(f))
Error:Error:line (38)error: value & is not a member of Any
(for (b <- bM; c <- cM) yield (b, c), selfNext & thatNext)
Error:Error:line (45)error: value ^ is not a member of type parameter B
case Left(a) => (value ! a).mapElements(_.map(Left.apply _), _ ^ that)
Error:Error:line (46)error: type mismatch;
found : B
required: blueeyes.actor.package.ActorM[M,?,?]
case Right(c) => (that ! c).mapElements(_.map(Right.apply _), value ^ _)
Error:Error:line (55)error: type mismatch;
found : Any
required: blueeyes.actor.package.ActorM[M,(?, blueeyes.actor.package.ActorM[M,A,B]),(?, blueeyes.actor.package.ActorM[M,A,B])]
case (d, this2) => (monad.pure(d), this2 ~> that2)
Error:Error:line (65)error: value * is not a member of Any
(for (b <- bM; bb <- bbM) yield (b, bb), next1 * next2)
Error:Error:line (85)error: value scan is not a member of Any
unwrapM[M, A, Z](for (z2 <- mz2) yield (mz2, next.scan(z2)(f)))
Error:Error:line (97)error: type mismatch;
found : Any
required: blueeyes.actor.package.ActorM[M,A,B]
(for (z <- mz; b <- mb) yield f(z, b), actor2)
Error:Error:line (111)error: type mismatch;
found : Any
required: blueeyes.actor.package.ActorM[M,B,C]
(c, reduce((p1, a2), orElse))
Error:Error:line (125)error: value filter is not a member of Any
(for (tb <- mtb) yield if (f(tb)) tb else implicitly[Empty[T]].empty[B], next.filter(f))
Error:Error:line (137)error: value >- is not a member of Any
(monad.pure(c), next >- (f))
Error:Error:line (148)error: type arguments [A,scalaz.Validation[E,B]] do not conform to method variant's type parameter bounds [AA <: A,BB >: scalaz.Validation[EE,BB]]
case Failure(_) => (that ! a).variant[A, Validation[E, B]].mapElements(identity, next | _)
Error:Error:line (150)error: value | is not a member of Any
case x => (monad.pure(x), next | that.variant[A, Validation[E, B]])
Error:Error:line (158)error: type arguments [A,scalaz.Validation[E,B]] do not conform to method variant's type parameter bounds [AA <: A,BB >: scalaz.Validation[EE,BB]]
val (result2, that2) = (that ! a).variant[A, Validation[E, B]]
Error:Error:line (161)error: value || is not a member of Any
case Failure(_) => (result2, self2 || that2)
Error:Error:line (163)error: value || is not a member of Any
case x @ Success(_) => (monad.pure(x), self2 || that.variant[A, Validation[E, B]])
Error:Error:line (179)error: value <~ is not a member of Any
(monad.pure(b), self2 <~ that2)
Error:Error:line (186)error: value premap is not a member of type parameter B
def premap[AA](f: AA => A): ActorMState[M, AA, B] = value.mapElements[M[B], ActorM[M, AA, B]](identity, _.premap[AA](f))
Error:Error:line (189)error: value postmap is not a member of type parameter B
value.mapElements[M[BB], ActorM[M, A, BB]](m => monad.fmap(m, f), _.postmap[BB](f))
````