I upgraded from 2.13.2 -> 2.13.3 this morning. Didn’t change any scalacOptions and am now flooded with the following warning/error:
“Block result was adapted via implicit conversion (method apply) taking a by-name parameter”
Here is one example among many where the warning is raised:
implicit val encoder: io.circe.Encoder[Foo] = io.circe.generic.deriveEncoder[Foo]
which calls into:
final def deriveDecoder[A](implicit decode: Lazy[DerivedDecoder[A]]): Decoder[A] = decode.value
I’m not 100% sure what this warning is even trying to warn me about but there doesn’t appear to be a by-name implicit there. As a side note, the SIP that introduced by-name implicits is still marked as pending on the scala site: https://docs.scala-lang.org/sips/byname-implicits.html despite it being implemented in 2.13.