Сбой компиляции sbt с неправильной опцией: '-Ywarn-macros: after' - PullRequest
0 голосов
/ 12 февраля 2019

С файлом build.sbt, например:

ThisBuild / organization := "com.company"
ThisBuild / version := "1.0.0-SNAPSHOT"
ThisBuild / scalaVersion := "2.11.12"

Global / concurrentRestrictions += Tags.limit(Tags.Test, 1)

Global / scalacOptions ++= Seq("-Ypartial-unification",
                               "-unchecked",
                               "-Xfatal-warnings",
                               "-Ywarn-dead-code",
                               "-Ywarn-inaccessible",
                               "-Ywarn-unused",
                               "-Ywarn-unused-import",
                               "-Ywarn-macros:after")

Я получаю [error] bad option: '-Ywarn-macros:none' после запуска sbt clean compile

Без -Ywarn-macros:after, неиспользуемое предупреждение об импорте вызывает ложные предупреждения в файлахиспользуя макросы Circe, например: import io.circe.{ Decoder, Encoder }.

1 Ответ

0 голосов
/ 12 февраля 2019

-Ywarn-macros не был добавлен до Scala 2.12, поэтому ожидается ошибка.

Можете ли вы перейти на Scala 2.12?Если вы застряли на 2.11, возможно, вам придется жить без -Ywarn-unused-import.(Неиспользуемые предупреждения в целом значительно улучшились по мере развития серии 2.12.x благодаря неустанной работе над ним Сома Снитта.)

Возможно, вы сможете ограничить использование кода на Circe подпроектом, изатем отключите неиспользуемые предупреждения только в этом подпроекте, чтобы оставить их включенными в остальной части вашей кодовой базы.

Другая возможность состоит в том, чтобы попробовать https://github.com/ghik/silencer.

...