<commit_before>import sbt._
import Keys._
import sbtassembly.Plugin._
import AssemblyKeys._
import sbtunidoc.Plugin._
import UnidocKeys._

object build extends Build {
  lazy val ScalaVersions = Seq("2.11.8")
  lazy val LibraryVersion = "0.1.0-SNAPSHOT"

  lazy val root = Project(
    id = "root",
    base = file("root")
  ) settings (
    sharedSettings : _*
  ) settings (
    unidocSettings : _*
  ) settings (
    packagedArtifacts := Map.empty,
    unidocProjectFilter in (ScalaUnidoc, unidoc) := inAnyProject -- inProjects(foundation)
  ) aggregate (
    foundation,
    dialects,
    exceptions,
    inputs,
    parsers,
    prettyprinters,
    quasiquotes,
    scalameta,
    tokenizers,
    tokenquasiquotes,
    tokens,
    tql,
    trees
  )

  lazy val foundation = Project(
    id   = "foundation",
    base = file("foundation")
  ) settings (
    publishableSettings: _*
  ) settings (
    description := "Internal helpers shared between projects constituting scala.meta",
    enableMacros
  )

  lazy val dialects = Project(
    id   = "dialects",
    base = file("scalameta/dialects")
  ) settings (
    publishableSettings: _*
  ) settings (
    description := "Scala.meta's dialects",
    enableMacros
  ) dependsOn (foundation, exceptions)

  lazy val exceptions = Project(
    id   = "exceptions",
    base = file("scalameta/exceptions")
  ) settings (
    publishableSettings: _*
  ) settings (
    description := "Scala.meta's baseline exceptions"
  ) dependsOn (foundation)

  lazy val inputs = Project(
    id   = "inputs",
    base = file("scalameta/inputs")
  ) settings (
    publishableSettings: _*
  ) settings (
    description := "Scala.meta's APIs for source code in textual format"
  ) dependsOn (foundation, exceptions)

  lazy val parsers = Project(
    id   = "parsers",
    base = file("scalameta/parsers")
  ) settings (
    publishableSettings: _*
  ) settings (
    description := "Scala.meta's API for parsing and its baseline implementation"
  ) dependsOn (foundation, exceptions, trees, tokens, tokenizers % "test", tql % "test")

  lazy val prettyprinters = Project(
    id   = "prettyprinters",
    base = file("scalameta/prettyprinters")
  ) settings (
    publishableSettings: _*
  ) settings (
    description := "Scala.meta's baseline prettyprinters",
    enableMacros
  ) dependsOn (foundation, exceptions)

  lazy val quasiquotes = Project(
    id   = "quasiquotes",
    base = file("scalameta/quasiquotes")
  ) settings (
    publishableSettings: _*
  ) settings (
    description := "Scala.meta's quasiquotes for abstract syntax trees"
  ) dependsOn (foundation, exceptions, tokens, trees, parsers)

  lazy val tokenizers = Project(
    id   = "tokenizers",
    base = file("scalameta/tokenizers")
  ) settings (
    publishableSettings: _*
  ) settings (
    description := "Scala.meta's APIs for tokenization and its baseline implementation",
    // TODO: This is a major embarassment: we need scalac's parser to parse xml literals,
    // because it was too hard to implement the xml literal parser from scratch.
    libraryDependencies <+= (scalaVersion)("org.scala-lang" % "scala-compiler" % _)
  ) dependsOn (foundation, exceptions, tokens)

  lazy val tokenquasiquotes = Project(
    id   = "tokenquasiquotes",
    base = file("scalameta/tokenquasiquotes")
  ) settings (
    publishableSettings: _*
  ) settings (
    description := "Scala.meta's quasiquotes for tokens",
    enableMacros
  ) dependsOn (foundation, exceptions, tokens, tokenizers)

  lazy val tokens = Project(
    id   = "tokens",
    base = file("scalameta/tokens")
  ) settings (
    publishableSettings: _*
  ) settings (
    description := "Scala.meta's tokens and token-based abstractions (inputs and positions)",
    enableMacros
  ) dependsOn (foundation, exceptions, prettyprinters, dialects, inputs)

  lazy val tql = Project(
    id   = "tql",
    base = file("scalameta/tql")
  ) settings (
    publishableSettings: _*
  ) settings (
    description := "Scala.meta's tree query language (basic and extended APIs)",
    enableMacros
  ) dependsOn (foundation, exceptions, trees)

  lazy val trees = Project(
    id   = "trees",
    base = file("scalameta/trees")
  ) settings (
    publishableSettings: _*
  ) settings (
    description := "Scala.meta's abstract syntax trees",
    enableMacros
  ) dependsOn (foundation, exceptions, prettyprinters, inputs, tokens, tokenquasiquotes)

  lazy val scalameta = Project(
    id   = "scalameta",
    base = file("scalameta/scalameta")
  ) settings (
    publishableSettings: _*
  ) settings (
    description := "Scala.meta's metaprogramming and hosting APIs"
  ) dependsOn (foundation, exceptions, dialects, parsers, prettyprinters, quasiquotes, tokenizers, tokenquasiquotes, tql, trees)

  lazy val sharedSettings = Defaults.defaultSettings ++ Seq(
    scalaVersion := ScalaVersions.max,
    crossScalaVersions := ScalaVersions,
    crossVersion := CrossVersion.binary,
    version := LibraryVersion,
    organization := "org.scalameta",
    resolvers += Resolver.sonatypeRepo("snapshots"),
    resolvers += Resolver.sonatypeRepo("releases"),
    addCompilerPlugin("org.scalamacros" % "paradise" % "2.1.0" cross CrossVersion.full),
    libraryDependencies += "org.scalatest" %% "scalatest" % "2.1.3" % "test",
    libraryDependencies += "org.scalacheck" %% "scalacheck" % "1.11.3" % "test",
    publishMavenStyle := true,
    publishArtifact in Compile := false,
    publishArtifact in Test := false,
    scalacOptions ++= Seq("-deprecation", "-feature", "-unchecked"),
    scalacOptions in (Compile, doc) ++= Seq("-skip-packages", ""),
    scalacOptions in (Compile, doc) ++= Seq("-implicits", "-implicits-hide:."),
    scalacOptions in (Compile, doc) ++= Seq("-groups"),
    scalacOptions in Test ++= Seq("-Xfatal-warnings"),<commit_msg>clarifies the description of the scalameta artifact<commit_after>import sbt._
import Keys._
import sbtassembly.Plugin._
import AssemblyKeys._
import sbtunidoc.Plugin._
import UnidocKeys._

object build extends Build {
  lazy val ScalaVersions = Seq("2.11.8")
  lazy val LibraryVersion = "0.1.0-SNAPSHOT"

  lazy val root = Project(
    id = "root",
    base = file("root")
  ) settings (
    sharedSettings : _*
  ) settings (
    unidocSettings : _*
  ) settings (
    packagedArtifacts := Map.empty,
    unidocProjectFilter in (ScalaUnidoc, unidoc) := inAnyProject -- inProjects(foundation)
  ) aggregate (
    foundation,
    dialects,
    exceptions,
    inputs,
    parsers,
    prettyprinters,
    quasiquotes,
    scalameta,
    tokenizers,
    tokenquasiquotes,
    tokens,
    tql,
    trees
  )

  lazy val foundation = Project(
    id   = "foundation",
    base = file("foundation")
  ) settings (
    publishableSettings: _*
  ) settings (
    description := "Internal helpers shared between projects constituting scala.meta",
    enableMacros
  )

  lazy val dialects = Project(
    id   = "dialects",
    base = file("scalameta/dialects")
  ) settings (
    publishableSettings: _*
  ) settings (
    description := "Scala.meta's dialects",
    enableMacros
  ) dependsOn (foundation, exceptions)

  lazy val exceptions = Project(
    id   = "exceptions",
    base = file("scalameta/exceptions")
  ) settings (
    publishableSettings: _*
  ) settings (
    description := "Scala.meta's baseline exceptions"
  ) dependsOn (foundation)

  lazy val inputs = Project(
    id   = "inputs",
    base = file("scalameta/inputs")
  ) settings (
    publishableSettings: _*
  ) settings (
    description := "Scala.meta's APIs for source code in textual format"
  ) dependsOn (foundation, exceptions)

  lazy val parsers = Project(
    id   = "parsers",
    base = file("scalameta/parsers")
  ) settings (
    publishableSettings: _*
  ) settings (
    description := "Scala.meta's API for parsing and its baseline implementation"
  ) dependsOn (foundation, exceptions, trees, tokens, tokenizers % "test", tql % "test")

  lazy val prettyprinters = Project(
    id   = "prettyprinters",
    base = file("scalameta/prettyprinters")
  ) settings (
    publishableSettings: _*
  ) settings (
    description := "Scala.meta's baseline prettyprinters",
    enableMacros
  ) dependsOn (foundation, exceptions)

  lazy val quasiquotes = Project(
    id   = "quasiquotes",
    base = file("scalameta/quasiquotes")
  ) settings (
    publishableSettings: _*
  ) settings (
    description := "Scala.meta's quasiquotes for abstract syntax trees"
  ) dependsOn (foundation, exceptions, tokens, trees, parsers)

  lazy val tokenizers = Project(
    id   = "tokenizers",
    base = file("scalameta/tokenizers")
  ) settings (
    publishableSettings: _*
  ) settings (
    description := "Scala.meta's APIs for tokenization and its baseline implementation",
    // TODO: This is a major embarassment: we need scalac's parser to parse xml literals,
    // because it was too hard to implement the xml literal parser from scratch.
    libraryDependencies <+= (scalaVersion)("org.scala-lang" % "scala-compiler" % _)
  ) dependsOn (foundation, exceptions, tokens)

  lazy val tokenquasiquotes = Project(
    id   = "tokenquasiquotes",
    base = file("scalameta/tokenquasiquotes")
  ) settings (
    publishableSettings: _*
  ) settings (
    description := "Scala.meta's quasiquotes for tokens",
    enableMacros
  ) dependsOn (foundation, exceptions, tokens, tokenizers)

  lazy val tokens = Project(
    id   = "tokens",
    base = file("scalameta/tokens")
  ) settings (
    publishableSettings: _*
  ) settings (
    description := "Scala.meta's tokens and token-based abstractions (inputs and positions)",
    enableMacros
  ) dependsOn (foundation, exceptions, prettyprinters, dialects, inputs)

  lazy val tql = Project(
    id   = "tql",
    base = file("scalameta/tql")
  ) settings (
    publishableSettings: _*
  ) settings (
    description := "Scala.meta's tree query language (basic and extended APIs)",
    enableMacros
  ) dependsOn (foundation, exceptions, trees)

  lazy val trees = Project(
    id   = "trees",
    base = file("scalameta/trees")
  ) settings (
    publishableSettings: _*
  ) settings (
    description := "Scala.meta's abstract syntax trees",
    enableMacros
  ) dependsOn (foundation, exceptions, prettyprinters, inputs, tokens, tokenquasiquotes)

  lazy val scalameta = Project(
    id   = "scalameta",
    base = file("scalameta/scalameta")
  ) settings (
    publishableSettings: _*
  ) settings (
    description := "Scala.meta's metaprogramming APIs"
  ) dependsOn (foundation, exceptions, dialects, parsers, prettyprinters, quasiquotes, tokenizers, tokenquasiquotes, tql, trees)

  lazy val sharedSettings = Defaults.defaultSettings ++ Seq(
    scalaVersion := ScalaVersions.max,
    crossScalaVersions := ScalaVersions,
    crossVersion := CrossVersion.binary,
    version := LibraryVersion,
    organization := "org.scalameta",
    resolvers += Resolver.sonatypeRepo("snapshots"),
    resolvers += Resolver.sonatypeRepo("releases"),
    addCompilerPlugin("org.scalamacros" % "paradise" % "2.1.0" cross CrossVersion.full),
    libraryDependencies += "org.scalatest" %% "scalatest" % "2.1.3" % "test",
    libraryDependencies += "org.scalacheck" %% "scalacheck" % "1.11.3" % "test",
    publishMavenStyle := true,
    publishArtifact in Compile := false,
    publishArtifact in Test := false,
    scalacOptions ++= Seq("-deprecation", "-feature", "-unchecked"),
    scalacOptions in (Compile, doc) ++= Seq("-skip-packages", ""),
    scalacOptions in (Compile, doc) ++= Seq("-implicits", "-implicits-hide:."),
    scalacOptions in (Compile, doc) ++= Seq("-groups"),
    scalacOptions in Test ++= Seq("-Xfatal-warnings"),
{'fraction_non_alphanumeric': 0.11592465753424658, 'fraction_numerical': 0.0029109589041095892, 'mean_word_length': 3.546905410665629, 'pattern_counts': {'":': 0, '<': 5, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 4}, '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': '615206', 'n_tokens_mistral': 3698, 'n_tokens_neox': 3612, 'n_words': 917}