Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

run scalafix on Scala 3 sources #1918

Merged
merged 1 commit into from
Feb 3, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .scalafix.conf → .scalafix-scala2.conf
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ ExplicitResultTypes {
OrganizeImports {
groupedImports = Explode
expandRelative = true
removeUnused = true # done already by RemoveUnused rule
removeUnused = true
groups = [
"re:javax?\\."
"scala."
Expand Down
15 changes: 15 additions & 0 deletions .scalafix-scala3.conf
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
rules = [
OrganizeImports
]

OrganizeImports {
groupedImports = Explode
expandRelative = true
removeUnused = false
groups = [
"re:javax?\\."
"scala."
"scala.meta."
"*"
]
}
16 changes: 12 additions & 4 deletions project/ScalafixBuild.scala
Original file line number Diff line number Diff line change
Expand Up @@ -179,6 +179,7 @@ object ScalafixBuild extends AutoPlugin with GhpagesKeys {
import autoImport._

override def globalSettings: Seq[Def.Setting[_]] = List(
excludeLintKeys += scalafixConfig, // defined on projects where ScalafixPlugin is disabled
stableVersion := (ThisBuild / version).value.replaceFirst("\\+.*", ""),
resolvers ++=
Resolver.sonatypeOssRepos("snapshots") ++
Expand Down Expand Up @@ -330,16 +331,23 @@ object ScalafixBuild extends AutoPlugin with GhpagesKeys {

private def configSettings: Seq[Def.Setting[_]] = List(
// Workaround for https://github.com/scalacenter/scalafix/issues/1592:
// effectively skip scalafix[All] if the scala binary version of the project
// does not match the scalafix one (which cannot be per-project as it must be
// defined on ThisBuild)
// effectively skip scalafix[All] on 2.x projects not matching scalafixScalaBinaryVersion
scalafix / unmanagedSources := {
val prev = (scalafix / unmanagedSources).value
if (scalaBinaryVersion.value == scalafixScalaBinaryVersion.value) {
if (
Seq(scalafixScalaBinaryVersion.value, "3")
.contains(scalaBinaryVersion.value)
) {
prev
} else {
Seq()
}
},
scalafixConfig := {
if (scalaBinaryVersion.value.startsWith("2"))
Some(file(".scalafix-scala2.conf"))
else
Some(file(".scalafix-scala3.conf"))
}
)

Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
package scalafix.util

import scala.meta.internal.semanticdb.XtensionSemanticdbType
import scala.meta.internal.semanticdb.XtensionSemanticdbScope
import scala.meta.internal.semanticdb.XtensionSemanticdbType

object CompatSemanticdbType {
type SemanticdbType = XtensionSemanticdbType
Expand Down
Original file line number Diff line number Diff line change
@@ -1,24 +1,23 @@
package scalafix.internal.reflect

import java.io.File

import dotty.tools.dotc.Compiler
import dotty.tools.dotc.Run
import dotty.tools.dotc.core.Contexts.FreshContext
import dotty.tools.dotc.util.SourceFile
import dotty.tools.dotc.reporting.StoreReporter
import dotty.tools.dotc.interactive.InteractiveDriver
import dotty.tools.dotc.reporting.StoreReporter
import dotty.tools.dotc.util.SourceFile
import dotty.tools.io.AbstractFile
import dotty.tools.io.Directory
import dotty.tools.io.PlainDirectory
import dotty.tools.io.VirtualFile
import dotty.tools.io.VirtualDirectory
import dotty.tools.io.VirtualFile
import dotty.tools.repl.AbstractFileClassLoader

import metaconfig.ConfError
import metaconfig.Configured
import metaconfig.Input
import metaconfig.ConfError
import metaconfig.Position

import java.io.File
class RuleCompiler(
classpath: String,
targetDirectory: Option[File] = None
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -33,9 +33,7 @@ import metaconfig.ConfOps
import metaconfig.Configured
import metaconfig.internal.ConfGet
import scalafix.internal.config.ScalaVersion
import scalafix.internal.rule.ImportMatcher.*
import scalafix.internal.rule.ImportMatcher.---
import scalafix.internal.rule.ImportMatcher.parse
import scalafix.internal.rule.ImportMatcher._
import scalafix.lint.Diagnostic
import scalafix.patch.Patch
import scalafix.v1.Configuration
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
package scalafix.tests.util.compat

import java.nio.file.Path

import dotty.tools.dotc.Main

object CompatSemanticdb {
Expand Down