acyclic icon indicating copy to clipboard operation
acyclic copied to clipboard

acyclic.skipped not working with chained packages

Open jibbers42 opened this issue 6 years ago • 0 comments

A.scala:

package skip
package a

import acyclic.skipped

trait A {
  val b: B
}

B.scala:

package skip
package a

import acyclic.skipped

trait B {
  val a: A
}

build.sbt:

organization in ThisBuild := "skip"
version in ThisBuild := "1.0-SNAPSHOT"
scalaVersion in ThisBuild := "2.12.5"

val acyclicVersion = "0.1.7"
val acyclicDep = "com.lihaoyi" %% "acyclic" % acyclicVersion % Provided
lazy val acyclicCompilerPlugin = addCompilerPlugin("com.lihaoyi" %% "acyclic" % acyclicVersion)

autoCompilerPlugins in ThisBuild := true

lazy val `acyclic` = (project in file("."))
  .settings(settings)

lazy val settings = Seq(
  libraryDependencies ++= Seq(
    acyclicDep
  ),
  acyclicCompilerPlugin
)

scalacOptions in ThisBuild ++= Seq(
  "-P:acyclic:force",                  // Run cyclic dependencies check on all files
)

If you change

package skip
package a

to package skip.a in both files, then it compiles fine.

jibbers42 avatar Apr 19 '18 16:04 jibbers42