The error I get is as follows:
[error] undefined: new simulacrum.noop # 1982310: TermRef(TypeRef(TermRef(ThisType(TypeRef(NoPrefix,module class <root>)),module simulacrum),noop),<init>) at sbt-api
[warn] sbt-api: Unhandled type class dotty.tools.dotc.core.Types$$anon$7 : <error undefined: new simulacrum.noop # 1982310: TermRef(TypeRef(TermRef(ThisType(TypeRef(NoPrefix,module class <root>)),module simulacrum),noop),<init>) at sbt-api>
You can reproduce this by attempting to build Cats Effect series/2.x branch against Cats 2.3.0-M1 removing the withDottyCompat on the dependencies. We originally thought this was because simulacrum-scalafix was being stripped from the Cats POM, but I removed that in this PR, published locally, and still see the above.
Just to push even further, I explicitly added "org.typelevel" %% "simulacrum-scalafix-annotations" % "0.5.1" % Provided to the core libraryDependencies and it appears to have gotten further. I think I also have to add it to laws, but you see where this is going. It just generally appears that annotations, defined in Scala and published against Dotty, when used by an upstream project, do not correctly parse on the downstream project unless the annotation library is a direct dependency.
This is probably fixable by removing % Provided in the Cats build, but then simulacrum-scalafix is on everyone's classpath randomly.
The error I get is as follows:
You can reproduce this by attempting to build Cats Effect
series/2.xbranch against Cats 2.3.0-M1 removing thewithDottyCompaton the dependencies. We originally thought this was because simulacrum-scalafix was being stripped from the Cats POM, but I removed that in this PR, published locally, and still see the above.Just to push even further, I explicitly added
"org.typelevel" %% "simulacrum-scalafix-annotations" % "0.5.1" % Providedto thecorelibraryDependenciesand it appears to have gotten further. I think I also have to add it tolaws, but you see where this is going. It just generally appears that annotations, defined in Scala and published against Dotty, when used by an upstream project, do not correctly parse on the downstream project unless the annotation library is a direct dependency.This is probably fixable by removing
% Providedin the Cats build, but then simulacrum-scalafix is on everyone's classpath randomly.