ProjectZetta / RemoteFutures

Remote execution of futures in a distributed system.
http://remotefutures.org
Other
4 stars 1 forks source link

2.11.0.RC does not work with pickling 0.8.0-SNAPSHOT. - Build fails with "bad macro impl binding: macroEngine is supposed to be there" #8

Closed MartinSenne closed 10 years ago

MartinSenne commented 10 years ago

Are you able to compile on current master?

ghost commented 10 years ago

Nope, get the same issue on the command line using SBT compile. I guess the macro-paradise dependency hasn't worked out the way it should.

I investigate this thing now.

MartinSenne commented 10 years ago

I have also investigated the stuff, neither with 2.10.2/3 nor with 2.11.0.RC1 I was able to compile.

When using scalaVersion 2.10.2 and for scala-pickling

resolvers += Resolver.sonatypeRepo("snapshots")
libraryDependencies += "org.scala-lang" %% "scala-pickling" % "0.8.0-SNAPSHOT" withSources() withJavadoc()

I obtain

.../IdeaProjects/DistributedRemoteFutures/src/scala/main/main.scala:35: PickleFormatType resolved as HelloPickler.pckl.PickleFormatType is invalid for HelloPickler.this.pckl of type HelloPickler.pckl.type
[error]   val lst: Any = pckl.unpickle[List[Int]]

First, do we need Pickling right now? Second, is there any reason why to work on 2.11.0.RC1 instead of 2.10.3 ?

Cheers, Martin

ghost commented 10 years ago

Hi, problem is caused by SI-8375 and fixed in 2.11RC2 https://issues.scala-lang.org/browse/SI-8375

There are many reasons to prefer 2.11 over 2.10. One of them is improved macros, String interpolation and quite a neat improvement on the compiler which is now much more strict compared to the 2.10 compiler.

However, I suggest dropping pickler until RC2 is out, which should be soon and then try it again because I don't really need pickler at this stage but most likely soon afterwards.

Also, I should say that I've had those and similar quirks quite often while I've working with pickler last time. It really is in an early stage and most likely targeted for 2.12 or even later.

I've made a commit that fixes the issue by simply removing the code & pickler dependency. Pull request is on the way.

MartinSenne commented 10 years ago

Okay. Let's keep that issue open, until RC2 is out.

ghost commented 10 years ago

Okay,

I test it again then

ghost commented 10 years ago

Same here,

it's "fixed" by falling back to 2.10 so I've closed this issue.

MartinSenne commented 10 years ago

Hmm, do we need pickiing right now? I totally switched the project to depend on Scala 2.10.4 ...... does that infer any difficulties?

ghost commented 10 years ago

Sorry my bad, forgot to mention, no, we don't need it and I doubt we ever will need it. Going to Scala 2.10 is perfectly fine.