diff --git a/.git-blame-ignore-revs b/.git-blame-ignore-revs index 53309f2d..7aac8b7b 100644 --- a/.git-blame-ignore-revs +++ b/.git-blame-ignore-revs @@ -6,3 +6,6 @@ f6993516b833296bcd3bc9d93cb9b4b900bc888e # Scala Steward: Reformat with scalafmt 3.7.4 4edf63a849a246160396ccf2f4da0bb2069006a2 + +# Scala Steward: Reformat with scalafmt 3.8.6 +4934ae8bc324fdf40b29c87fb52b515c5fa294fd diff --git a/.scalafmt.conf b/.scalafmt.conf index 82df8319..f12e0133 100644 --- a/.scalafmt.conf +++ b/.scalafmt.conf @@ -1,4 +1,4 @@ -version = "3.8.3" +version = "3.8.6" runner.dialect = scala3 maxColumn = 110 docstrings.style = Asterisk diff --git a/build.sbt b/build.sbt index 4d65e443..1707d4bc 100644 --- a/build.sbt +++ b/build.sbt @@ -23,10 +23,8 @@ scalaVersion := "3.6.2" crossScalaVersions := Seq("2.12.19", "2.12.20", "2.13.15", "2.13.16", "3.3.4", "3.6.2") autoScalaLibrary := false crossVersion := CrossVersion.full -crossTarget := { - // workaround for https://github.com/sbt/sbt/issues/5097 - target.value / s"scala-${scalaVersion.value}" -} +// workaround for https://github.com/sbt/sbt/issues/5097 +crossTarget := target.value / s"scala-${scalaVersion.value}" versionScheme := Some("early-semver") semanticdbEnabled := (scalaBinaryVersion.value == "3") scalafixConfig := Some(file(if (scalaBinaryVersion.value == "3") ".scalafix.conf" else ".scalafix-2.conf")) diff --git a/src/main/scala-2/com/sksamuel/scapegoat/inspections/AvoidRequire.scala b/src/main/scala-2/com/sksamuel/scapegoat/inspections/AvoidRequire.scala index 83254e29..58c5c1b9 100644 --- a/src/main/scala-2/com/sksamuel/scapegoat/inspections/AvoidRequire.scala +++ b/src/main/scala-2/com/sksamuel/scapegoat/inspections/AvoidRequire.scala @@ -2,13 +2,13 @@ package com.sksamuel.scapegoat.inspections import com.sksamuel.scapegoat.{Inspection, InspectionContext, Inspector, Levels} -class AvoidRequire extends - Inspection( - text = "Use of require", - defaultLevel = Levels.Warning, - description = "Use require in code.", - explanation = "Using require throws an untyped Exception." - ) { +class AvoidRequire + extends Inspection( + text = "Use of require", + defaultLevel = Levels.Warning, + description = "Use require in code.", + explanation = "Using require throws an untyped Exception." + ) { def inspector(ctx: InspectionContext): Inspector = new Inspector(ctx) { diff --git a/src/main/scala-2/com/sksamuel/scapegoat/inspections/traits/AbstractTrait.scala b/src/main/scala-2/com/sksamuel/scapegoat/inspections/traits/AbstractTrait.scala index 69ed44cd..8893f127 100644 --- a/src/main/scala-2/com/sksamuel/scapegoat/inspections/traits/AbstractTrait.scala +++ b/src/main/scala-2/com/sksamuel/scapegoat/inspections/traits/AbstractTrait.scala @@ -3,12 +3,13 @@ package com.sksamuel.scapegoat.inspections.traits import com.sksamuel.scapegoat._ class AbstractTrait - extends Inspection( - text = "Use of abstract trait", - defaultLevel = Levels.Info, - description = "Traits are automatically abstract.", - explanation = "The abstract modifier is used in class definitions. It is redundant for traits, and mandatory for all other classes which have incomplete members." - ){ + extends Inspection( + text = "Use of abstract trait", + defaultLevel = Levels.Info, + description = "Traits are automatically abstract.", + explanation = + "The abstract modifier is used in class definitions. It is redundant for traits, and mandatory for all other classes which have incomplete members." + ) { override def inspector(ctx: InspectionContext): Inspector = { new Inspector(ctx) { @@ -17,9 +18,8 @@ class AbstractTrait import context.global._ - def isAbstractTrait(positions: Map[Long, Position]): Boolean = { + def isAbstractTrait(positions: Map[Long, Position]): Boolean = positions.contains(Flag.TRAIT) && positions.contains(Flag.ABSTRACT) - } override def inspect(tree: Tree): Unit = { tree match { diff --git a/src/main/scala-2/com/sksamuel/scapegoat/inspections/unsafe/IsInstanceOf.scala b/src/main/scala-2/com/sksamuel/scapegoat/inspections/unsafe/IsInstanceOf.scala index ee3c741b..e1ab0d12 100644 --- a/src/main/scala-2/com/sksamuel/scapegoat/inspections/unsafe/IsInstanceOf.scala +++ b/src/main/scala-2/com/sksamuel/scapegoat/inspections/unsafe/IsInstanceOf.scala @@ -26,8 +26,7 @@ class IsInstanceOf tree match { case TypeApply(Select(_, TermName("isInstanceOf")), _) => context.warn(tree.pos, self, tree.toString.take(500)) - case DefDef(modifiers, _, _, _, _, _) - if modifiers.hasFlag(Flag.SYNTHETIC) => // avoid partial function stuff + case DefDef(modifiers, _, _, _, _, _) if modifiers.hasFlag(Flag.SYNTHETIC) => // avoid partial function stuff case Match(_, cases) => // ignore selector and process cases cases.foreach(traverse) case _ => continue(tree) diff --git a/src/test/scala-2/com/sksamuel/scapegoat/inspections/equality/ComparingUnrelatedTypesTest.scala b/src/test/scala-2/com/sksamuel/scapegoat/inspections/equality/ComparingUnrelatedTypesTest.scala index dbaf443f..330835e6 100644 --- a/src/test/scala-2/com/sksamuel/scapegoat/inspections/equality/ComparingUnrelatedTypesTest.scala +++ b/src/test/scala-2/com/sksamuel/scapegoat/inspections/equality/ComparingUnrelatedTypesTest.scala @@ -55,17 +55,14 @@ class ComparingUnrelatedTypesTest extends InspectionTest { "compared to int literal" in verifyNoWarnings("""object A { val l = 100l; val b = l == 100 }""") } "for char" - { - "compared to char-sized long literal" in { - verifyNoWarnings("""object A { val c = 'a'; val l = c == 97L }""") - } - "compared to char-sized int literal" in { - verifyNoWarnings("""object A { val c = 'a'; val l = c == 97 }""") - } + "compared to char-sized long literal" in + verifyNoWarnings("""object A { val c = 'a'; val l = c == 97L }""") + "compared to char-sized int literal" in + verifyNoWarnings("""object A { val c = 'a'; val l = c == 97 }""") } "for short" - { - "compared to Short.MaxValue as int literal" in { - verifyNoWarnings("""object A { val s = 1.toShort; val b = s == 32767 }""") - } + "compared to Short.MaxValue as int literal" in + verifyNoWarnings("""object A { val s = 1.toShort; val b = s == 32767 }""") } "for double" - { "compared to zero" in verifyNoWarnings("""object A { val d = 100d; val b = d == 0 }""") @@ -113,9 +110,8 @@ class ComparingUnrelatedTypesTest extends InspectionTest { |}""".stripMargin ) } - "bound variable if guard" in { - verifyNoWarnings("""object A { System.getProperty("x") match { case s if s == "y" => } }""") - } + "bound variable if guard" in + verifyNoWarnings("""object A { System.getProperty("x") match { case s if s == "y" => } }""") } } } diff --git a/src/test/scala-2/com/sksamuel/scapegoat/inspections/unnecessary/UnusedMethodParameterTest.scala b/src/test/scala-2/com/sksamuel/scapegoat/inspections/unnecessary/UnusedMethodParameterTest.scala index 2f2ca9cd..43062aa8 100644 --- a/src/test/scala-2/com/sksamuel/scapegoat/inspections/unnecessary/UnusedMethodParameterTest.scala +++ b/src/test/scala-2/com/sksamuel/scapegoat/inspections/unnecessary/UnusedMethodParameterTest.scala @@ -140,9 +140,8 @@ class UnusedMethodParameterTest extends InspectionTest { } "should handle constructor params" - { - "ignore unused case class primary param" in { - assertNoWarnings("""case class Foo(x: Int)""") - } + "ignore unused case class primary param" in + assertNoWarnings("""case class Foo(x: Int)""") "warn on unused case class secondary params" in { val code = """case class Foo(x: Int)(y: Int)""" @@ -196,9 +195,8 @@ class UnusedMethodParameterTest extends InspectionTest { |}""".stripMargin) } - "not warn on non-case class primary params marked val" in { - assertNoWarnings("""class Foo(val x: Int)""") - } + "not warn on non-case class primary params marked val" in + assertNoWarnings("""class Foo(val x: Int)""") } } diff --git a/src/test/scala/com/sksamuel/scapegoat/WarningTest.scala b/src/test/scala/com/sksamuel/scapegoat/WarningTest.scala index 049373eb..f166fa9e 100644 --- a/src/test/scala/com/sksamuel/scapegoat/WarningTest.scala +++ b/src/test/scala/com/sksamuel/scapegoat/WarningTest.scala @@ -17,18 +17,14 @@ class WarningTest extends AnyFreeSpec { "Warning" - { "hasMinimalLevelOf" - { - "info >= info" in { - assert(warning.hasMinimalLevelOf(Levels.Info) === true) - } - "info < warning" in { - assert(warning.hasMinimalLevelOf(Levels.Warning) === false) - } - "info < error" in { - assert(warning.hasMinimalLevelOf(Levels.Error) === false) - } - "error > warning" in { - assert(warning.copy(level = Levels.Error).hasMinimalLevelOf(Levels.Warning) === true) - } + "info >= info" in + assert(warning.hasMinimalLevelOf(Levels.Info) === true) + "info < warning" in + assert(warning.hasMinimalLevelOf(Levels.Warning) === false) + "info < error" in + assert(warning.hasMinimalLevelOf(Levels.Error) === false) + "error > warning" in + assert(warning.copy(level = Levels.Error).hasMinimalLevelOf(Levels.Warning) === true) } }