Scala Meta: Confused about the versions


Scala Meta: Confused about the versions



In the tutorial you find 2 versions for Scala-Meta.


lazy val MetaVersion = "3.7.2"
lazy val MetaVersion1 = "1.8.0"



I am a bit confused as they seem to refer the same project:


lazy val scalameta1 = "org.scalameta" %% "scalameta" % MetaVersion1
lazy val scalameta = "org.scalameta" %% "scalameta" % MetaVersion



Can somebody point out the difference, and when you use which one of these?



The Tutorial only mentions "3.7.2", but with that I got the exception


"3.7.2"



ERROR: new-style ("inline") macros require scala.meta


ERROR: new-style ("inline") macros require scala.meta



explained here: new-style-inline-macros-require-scala-meta




1 Answer
1



3.7.2 is the current version of scalameta (actually already 3.7.4).



1.8.0 is the last version of scalameta that worked with scalameta macro annotations through scalameta paradise compiler plugin (1 2 3).



So if you need the latest version of scalameta you use 3.7.4. If you need scalameta macros you use 1.8.0.






By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

Popular posts from this blog

Extract Id from Twitch Clip URL

Why are these constructs (using ++) undefined behavior in C?

I'm Still Waiting (Diana Ross song)