scalafix icon indicating copy to clipboard operation
scalafix copied to clipboard

scala 3: publish scalafix-cli_3

Open mlachkar opened this issue 3 years ago • 0 comments
trafficstars

Remaining steps before publishing

  • check status of https://github.com/scalameta/scalameta/pull/3347
  • many of tests in ScalafixArgumentsSuite rely on semanticRule, and we don't have any yet for scala 3. We need to create a simple semanticrule and test the ignored tests for scala 3 (search for "i1680" in code)
  • coursier lookups in scalafix-cli_3 should fallback to loading 2.13 artifacts for requested community rules artfacts not available in scala 3
  • do we really need full-cross-version in Scala 3? Consider https://www.scala-lang.org/blog/2022/08/17/long-term-compatibility-plans.html
  • publish artifacts (only SNAPSHOTs to start with? how can we prevent cs install to pick up scalafix-cli_3 which has the known limitations of not supporting quasiquotes when loading source rules?)
  • document the experimental aspect of the Scala 3 artifacts (quasiquotes can't be used, 2.13 artifacts ending up in the classpath)
  • update integration tests
  • reenable testing scala latest with Scala 3 build
  • https://github.com/scalacenter/scalafix/issues/1949

Next steps

  • advocate for community rules to cross-compile to scala 3 by updating https://github.com/scalacenter/scalafix.g8 & https://scalacenter.github.io/scalafix/docs/developers/cross-publish-custom-rules.html
  • make it possible (but not default?) in sbt-scalafix to use scalafix-cli_3 when sources are in scala 3
  • drop support for testing Scala 3 targets with Scala 2.12 in https://github.com/scalacenter/scalafix.g8 ?

mlachkar avatar Oct 01 '22 06:10 mlachkar