Remove deprecated stuff

Not to have to make it Java 6-compatible
This commit is contained in:
Alexandre Archambault 2016-11-27 13:44:14 +01:00
parent 8813a31cd9
commit d2c827a1a0
3 changed files with 1 additions and 160 deletions

View File

@ -19,7 +19,6 @@ object CoursierPlugin extends AutoPlugin {
val coursierTtl = Keys.coursierTtl
val coursierVerbosity = Keys.coursierVerbosity
val mavenProfiles = Keys.mavenProfiles
val coursierSourceRepositories = Keys.coursierSourceRepositories
val coursierResolvers = Keys.coursierResolvers
val coursierRecursiveResolvers = Keys.coursierRecursiveResolvers
val coursierSbtResolvers = Keys.coursierSbtResolvers
@ -39,11 +38,6 @@ object CoursierPlugin extends AutoPlugin {
val coursierDependencyTree = Keys.coursierDependencyTree
val coursierDependencyInverseTree = Keys.coursierDependencyInverseTree
val coursierExport = Keys.coursierExport
val coursierExportDirectory = Keys.coursierExportDirectory
val coursierExportJavadoc = Keys.coursierExportJavadoc
val coursierExportSources = Keys.coursierExportSources
}
import autoImport._
@ -67,7 +61,6 @@ object CoursierPlugin extends AutoPlugin {
coursierTtl := Cache.defaultTtl,
coursierVerbosity := Settings.defaultVerbosityLevel,
mavenProfiles := Set.empty,
coursierSourceRepositories := Nil,
coursierResolvers <<= Tasks.coursierResolversTask,
coursierRecursiveResolvers <<= Tasks.coursierRecursiveResolversTask,
coursierSbtResolvers <<= externalResolvers in updateSbtClassifiers,
@ -93,11 +86,7 @@ object CoursierPlugin extends AutoPlugin {
coursierResolution <<= Tasks.resolutionTask(),
coursierSbtClassifiersResolution <<= Tasks.resolutionTask(
sbtClassifiers = true
),
coursierExport <<= Tasks.coursierExportTask,
coursierExportDirectory := baseDirectory.in(ThisBuild).value / "target" / "repository",
coursierExportJavadoc := false,
coursierExportSources := false
)
) ++
inConfig(Compile)(treeSettings) ++
inConfig(Test)(treeSettings)

View File

@ -22,7 +22,6 @@ object Keys {
val mavenProfiles = SettingKey[Set[String]]("maven-profiles")
val coursierSourceRepositories = SettingKey[Seq[File]]("coursier-source-repositories")
val coursierResolvers = TaskKey[Seq[Resolver]]("coursier-resolvers")
val coursierRecursiveResolvers = TaskKey[Seq[Resolver]]("coursier-recursive-resolvers", "Resolvers of the current project, plus those of all from its inter-dependency projects")
val coursierSbtResolvers = TaskKey[Seq[Resolver]]("coursier-sbt-resolvers")
@ -52,21 +51,4 @@ object Keys {
"coursier-dependency-inverse-tree",
"Prints dependencies and transitive dependencies as an inverted tree (dependees as children)"
)
val coursierExport = TaskKey[Option[File]](
"coursier-export",
"Generates files allowing using these sources as a source dependency repository"
)
val coursierExportDirectory = TaskKey[File](
"coursier-export-directory",
"Base directory for the products of coursierExport"
)
val coursierExportJavadoc = SettingKey[Boolean](
"coursier-export-javadoc",
"Build javadoc packages for the coursier source dependency repository"
)
val coursierExportSources = SettingKey[Boolean](
"coursier-export-sources",
"Build sources packages for the coursier source dependency repository"
)
}

View File

@ -2,14 +2,12 @@ package coursier
import java.io.{ OutputStreamWriter, File }
import java.net.URL
import java.nio.file.Files
import java.util.concurrent.{ ExecutorService, Executors }
import coursier.core.{ Authentication, Publication }
import coursier.ivy.{ IvyRepository, PropertiesPattern }
import coursier.Keys._
import coursier.Structure._
import coursier.maven.WritePom
import coursier.util.{ Config, Print }
import org.apache.ivy.core.module.id.ModuleRevisionId
@ -397,38 +395,6 @@ object Tasks {
else
coursierRecursiveResolvers.value.distinct
val sourceRepositories = coursierSourceRepositories.value.map { dir =>
// FIXME Don't hardcode this path?
new File(dir, "target/repository")
}
val sourceRepositoriesForcedDependencies = sourceRepositories.flatMap {
base =>
def pomDirComponents(f: File, components: Vector[String]): Stream[Vector[String]] =
if (f.isDirectory) {
val components0 = components :+ f.getName
Option(f.listFiles()).toStream.flatten.flatMap(pomDirComponents(_, components0))
} else if (f.getName.endsWith(".pom"))
Stream(components)
else
Stream.empty
Option(base.listFiles())
.toVector
.flatten
.flatMap(pomDirComponents(_, Vector()))
// at least 3 for org / name / version - the contrary should not happen, but who knows
.filter(_.length >= 3)
.map { components =>
val org = components.dropRight(2).mkString(".")
val name = components(components.length - 2)
val version = components.last
Module(org, name) -> version
}
}
// TODO Warn about possible duplicated modules from source repositories?
val verbosityLevel = coursierVerbosity.value
@ -449,7 +415,6 @@ object Tasks {
forceVersions =
// order matters here
userForceVersions ++
sourceRepositoriesForcedDependencies ++
forcedScalaModules(so, sv) ++
interProjectDependencies.map(_.moduleVersion)
)
@ -508,11 +473,6 @@ object Tasks {
val authenticationByRepositoryId = coursierCredentials.value.mapValues(_.authentication)
val sourceRepositories0 = sourceRepositories.map {
base =>
MavenRepository(base.toURI.toString, changing = Some(true))
}
val fallbackDependenciesRepositories =
if (fallbackDependencies.isEmpty)
Nil
@ -564,7 +524,6 @@ object Tasks {
val repositories =
internalRepositories ++
sourceRepositories0 ++
resolvers.flatMap { resolver =>
FromSbt.repository(
resolver,
@ -998,93 +957,4 @@ object Tasks {
)
}
def coursierExportTask =
(
sbt.Keys.state,
sbt.Keys.thisProjectRef,
sbt.Keys.projectID,
sbt.Keys.scalaVersion,
sbt.Keys.scalaBinaryVersion,
sbt.Keys.ivyConfigurations,
streams,
coursierProject,
coursierExportDirectory,
coursierExportJavadoc,
coursierExportSources
).flatMap { (state, projectRef, projId, sv, sbv, ivyConfs, streams, proj, exportDir, exportJavadoc, exportSources) =>
val javadocPackageTasks =
if (exportJavadoc)
Seq(Some("javadoc") -> packageDoc)
else
Nil
val sourcesPackageTasks =
if (exportJavadoc)
Seq(Some("sources") -> packageSrc)
else
Nil
val packageTasks = Seq(None -> packageBin) ++ javadocPackageTasks ++ sourcesPackageTasks
val configs = Seq(None -> Compile, Some("tests") -> Test)
val productTasks =
for {
(classifierOpt, pkgTask) <- packageTasks
(classifierPrefixOpt, config) <- configs
if publishArtifact.in(projectRef).in(pkgTask).in(config).getOrElse(state, false)
} yield {
val classifier = (classifierPrefixOpt.toSeq ++ classifierOpt.toSeq).mkString("-")
pkgTask.in(projectRef).in(config).get(state).map((classifier, _))
}
val productTask = sbt.std.TaskExtra.joinTasks(productTasks).join
val dir = new File(
exportDir,
s"${proj.module.organization.replace('.', '/')}/${proj.module.name}/${proj.version}"
)
def pom = "<?xml version='1.0' encoding='UTF-8'?>\n" + WritePom.project(proj, Some("jar"))
val log = streams.log
productTask.map { products =>
if (products.isEmpty)
None
else {
dir.mkdirs()
val pomFile = new File(dir, s"${proj.module.name}-${proj.version}.pom")
Files.write(pomFile.toPath, pom.getBytes("UTF-8"))
log.info(s"Wrote POM file to $pomFile")
for ((classifier, f) <- products) {
val suffix = if (classifier.isEmpty) "" else "-" + classifier
val jarPath = new File(dir, s"${proj.module.name}-${proj.version}$suffix.jar")
if (jarPath.exists()) {
if (!jarPath.delete())
log.warn(s"Cannot remove $jarPath")
}
Files.createSymbolicLink(
jarPath.toPath,
dir.toPath.relativize(f.toPath)
)
log.info(s"Created symbolic link $jarPath -> $f")
}
// TODO Clean extra files in dir
Some(exportDir)
}
}
}
}