<commit_before>import Dependencies._
import Publishing._

/* The base, minimal settings for every project, including the root aggregate project */
val BaseSettings = Seq(
  organization := "com.tapad.sbt",
  licenses += ("BSD New", url("https://opensource.org/licenses/BSD-3-Clause")),
  scalaVersion := Dependencies.ScalaVersion
)

/* Common settings for all non-aggregate subprojects */
val CommonSettings = BaseSettings ++ Seq(
  scalacOptions ++= Seq("-deprecation", "-language:_"),
  libraryDependencies ++= Seq(
    "org.scalatest" %% "scalatest" % ScalaTestVersion % Test
  )
)

val PluginSettings = CommonSettings ++ scriptedSettings ++ Seq(
  sbtPlugin := true,
  name := "sbt-" + name.value,
  scriptedLaunchOpts ++= Seq("-Xmx1024M", "-XX:MaxPermSize=256M", "-Dplugin.version=" + version.value),
  scriptedBufferLog := false
)

lazy val root = (project in file("."))
  .settings(BaseSettings: _*)
  .settings(NoopPublishSettings: _*)
  .settings(ReleaseSettings: _*)
  .aggregate(marathon, templating, templatingLib, util)
  .enablePlugins(CrossPerProjectPlugin)

lazy val marathon = (project in file("marathon"))
  .settings(PluginSettings: _*)
  .settings(PluginPublishSettings: _*)
  .settings(
    crossSbtVersions := Seq("0.13.16", "1.0.0"),
    libraryDependencies ++= Seq(
      "org.slf4j"      % "slf4j-api"        % "1.7.21",
      "org.slf4j"      % "slf4j-jdk14"      % "1.7.21" % Test,
      "org.scalactic" %% "scalactic"        % ScalacticVersion,
      "com.twitter"   %% "finagle-core"     % finagleVersion(scalaVersion.value),
      "com.twitter"   %% "finagle-http"     % finagleVersion(scalaVersion.value),
      "org.json4sbt"  %% "json4sbt-jackson" % Json4sbtVersion
    ),
    publishLocal := {
      (publishLocal.dependsOn(publishLocal in util)).value
    },
    testOptions in Test += Tests.Argument("-l", "sbtmarathon.FunctionalTest")
  )
  .dependsOn(util)

lazy val templating = (project in file("templating"))
  .settings(PluginSettings: _*)
  .settings(PluginPublishSettings: _*)
  .settings(
    name := "sbt-marathon-templating",
    crossSbtVersions := Seq("0.13.16"),
    buildInfoKeys := Seq[BuildInfoKey](version),
    buildInfoPackage := "sbtmarathon",
    libraryDependencies ++= {
      val currentSbtVersion = (sbtBinaryVersion in pluginCrossBuild).value
      Seq(
        Defaults.sbtPluginExtra(
          "com.typesafe.sbt" % "sbt-twirl" % "1.3.12",
          currentSbtVersion,
          scalaBinaryVersion.value
        ),
        Defaults.sbtPluginExtra(
          (organization in marathon).value % (name in marathon).value % version.value,
          currentSbtVersion,
          scalaBinaryVersion.value
        )<commit_msg>cross-publish templating plugin for sbt 0.13 and 1.0<commit_after>import Dependencies._
import Publishing._

/* The base, minimal settings for every project, including the root aggregate project */
val BaseSettings = Seq(
  organization := "com.tapad.sbt",
  licenses += ("BSD New", url("https://opensource.org/licenses/BSD-3-Clause")),
  scalaVersion := Dependencies.ScalaVersion
)

/* Common settings for all non-aggregate subprojects */
val CommonSettings = BaseSettings ++ Seq(
  scalacOptions ++= Seq("-deprecation", "-language:_"),
  libraryDependencies ++= Seq(
    "org.scalatest" %% "scalatest" % ScalaTestVersion % Test
  )
)

val PluginSettings = CommonSettings ++ scriptedSettings ++ Seq(
  sbtPlugin := true,
  name := "sbt-" + name.value,
  scriptedLaunchOpts ++= Seq("-Xmx1024M", "-XX:MaxPermSize=256M", "-Dplugin.version=" + version.value),
  scriptedBufferLog := false
)

lazy val root = (project in file("."))
  .settings(BaseSettings: _*)
  .settings(NoopPublishSettings: _*)
  .settings(ReleaseSettings: _*)
  .aggregate(marathon, templating, templatingLib, util)
  .enablePlugins(CrossPerProjectPlugin)

lazy val marathon = (project in file("marathon"))
  .settings(PluginSettings: _*)
  .settings(PluginPublishSettings: _*)
  .settings(
    crossSbtVersions := Seq("0.13.16", "1.0.0"),
    libraryDependencies ++= Seq(
      "org.slf4j"      % "slf4j-api"        % "1.7.21",
      "org.slf4j"      % "slf4j-jdk14"      % "1.7.21" % Test,
      "org.scalactic" %% "scalactic"        % ScalacticVersion,
      "com.twitter"   %% "finagle-core"     % finagleVersion(scalaVersion.value),
      "com.twitter"   %% "finagle-http"     % finagleVersion(scalaVersion.value),
      "org.json4sbt"  %% "json4sbt-jackson" % Json4sbtVersion
    ),
    publishLocal := {
      (publishLocal.dependsOn(publishLocal in util)).value
    },
    testOptions in Test += Tests.Argument("-l", "sbtmarathon.FunctionalTest")
  )
  .dependsOn(util)

lazy val templating = (project in file("templating"))
  .settings(PluginSettings: _*)
  .settings(PluginPublishSettings: _*)
  .settings(
    name := "sbt-marathon-templating",
    crossSbtVersions := Seq("0.13.16", "1.0.0"),
    buildInfoKeys := Seq[BuildInfoKey](version),
    buildInfoPackage := "sbtmarathon",
    libraryDependencies ++= {
      val currentSbtVersion = (sbtBinaryVersion in pluginCrossBuild).value
      Seq(
        Defaults.sbtPluginExtra(
          "com.typesafe.sbt" % "sbt-twirl" % "1.3.12",
          currentSbtVersion,
          scalaBinaryVersion.value
        ),
        Defaults.sbtPluginExtra(
          (organization in marathon).value % (name in marathon).value % version.value,
          currentSbtVersion,
          scalaBinaryVersion.value
        )
{'fraction_non_alphanumeric': 0.1435954226651901, 'fraction_numerical': 0.01698043558508675, 'mean_word_length': 3.449096880131363, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 2, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '586770', 'n_tokens_mistral': 1842, 'n_tokens_neox': 1766, 'n_words': 328}