def labelsFor()

in modules/core/src/main/scala/org/scalasteward/core/forge/data/NewPullRequestData.scala [326:370]


  def labelsFor(
      update: Update,
      edits: List[EditAttempt] = List.empty,
      filesWithOldVersion: List[String] = List.empty,
      artifactIdToVersionScheme: Map[String, String] = Map.empty
  ): List[String] = {
    val commitCount = edits.flatMap(_.commits).size
    val commitCountLabel = "commit-count:" + (commitCount match {
      case n if n <= 1 => s"$n"
      case n           => s"n:$n"
    })

    def semverForUpdate(u: Update.Single): List[String] = {
      val semVerVersions =
        (SemVer.parse(u.currentVersion.value), SemVer.parse(u.nextVersion.value)).tupled
      val earlySemVerLabel = semVerVersions.flatMap { case (curr, next) =>
        SemVer.getChangeEarly(curr, next).map(c => s"early-semver-${c.render}")
      }
      val semVerSpecLabel = semVerVersions.flatMap { case (curr, next) =>
        SemVer.getChangeSpec(curr, next).map(c => s"semver-spec-${c.render}")
      }
      val versionSchemeLabel =
        artifactIdToVersionScheme.get(u.mainArtifactId).map(vs => s"version-scheme:$vs")
      List(earlySemVerLabel, semVerSpecLabel, versionSchemeLabel).flatten
    }
    val semverLabels =
      update.on(u => semverForUpdate(u), _.updates.flatMap(semverForUpdate(_)).distinct)

    val artifactMigrationsLabel = Option.when {
      update.asSingleUpdates
        .flatMap(_.forArtifactIds.toList)
        .exists(u => u.newerGroupId.nonEmpty || u.newerArtifactId.nonEmpty)
    }("artifact-migrations")
    val scalafixLabel = edits.collectFirst { case _: ScalafixEdit => "scalafix-migrations" }
    val oldVersionLabel = Option.when(filesWithOldVersion.nonEmpty)("old-version-remains")

    List.concat(
      updateTypeLabels(update),
      semverLabels,
      artifactMigrationsLabel,
      scalafixLabel,
      oldVersionLabel,
      List(commitCountLabel)
    )
  }