0

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

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

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

pme
  • 14,156
  • 3
  • 52
  • 95

1 Answers1

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.

Dmytro Mitin
  • 48,194
  • 3
  • 28
  • 66