From 9668f0e10cfcec87349adfbad6189b37dcbc69ca Mon Sep 17 00:00:00 2001 From: Alexandre Archambault Date: Sun, 3 Jan 2016 16:38:29 +0100 Subject: [PATCH] Remove deprecated USAGE file --- USAGE.md | 69 -------------------------------------------------------- 1 file changed, 69 deletions(-) delete mode 100644 USAGE.md diff --git a/USAGE.md b/USAGE.md deleted file mode 100644 index a69607930..000000000 --- a/USAGE.md +++ /dev/null @@ -1,69 +0,0 @@ -# API - -Ensure you have a dependency on its artifact, e.g. add in `build.sbt`, -```scala -resolvers += Resolver.sonatypeRepo("snapshots") - -libraryDependencies += - "com.github.alexarchambault" %% "coursier" % "0.1.0-SNAPSHOT" -``` - -Then, -```scala -import coursier._ - -// Cache for metadata can be setup here, see cli/src/main/scala/coursier/Coursier.scala -val repositories = Seq( - Repository.ivy2Local, - Repository.mavenCentral -) - -val dependencies = Set( - Dependency(Module("com.lihaoyi", "ammonite-pprint_2.11"), "0.3.2"), - Dependency(Module("org.scala-lang", "scala-reflect"), "2.11.6") -) - - -val resolution = - Resolution(dependencies) - .process // Process ADT, allows to go from a Resolution to the next - .run(repositories) // Running the process, fetching metadata from these repositories - .run // Run the Task[Resolution], and get the resulting Resolution - -// Note that only metadata are downloaded during resolution -// Repositories use scalaz Task-s. Thus the line .run(repositories) implicitily -// runs the resolution process within Task-s. Alternative monads could run the process too. - -assert(resolution.isDone) // Check that resolution converged - -// Errors in -resolution.errors // Seq[(Dependency, Seq[String])], the Seq[String] contains the errors returned by each repository - -// Artifact URLs in -resolution.artifacts // Seq[Artifact] -// Artifact has in particular a field url: String - - -// Now if we want to download or cache the artifacts, add in build.sbt -// "com.github.alexarchambault" %% "coursier-files" % "0.1.0-SNAPSHOT" - -val files = Files( - Seq( - Repository.mavenCentral.fetch.root -> // URL with this prefix cached in directory: - new java.io.File(sys.props("user.home") + "/.coursier/cache/central/files") - ), - () => ???, // TODO Tmp directory for URLs with no cache - Some(logger) // Optional, logger: FilesLogger -) - -val cachePolicy = Repository.CachePolicy.Default - -for (artifact <- artifacts) - files.file(artifact, cachePolicy).run match { - case -\/(err) => // Download failed, err: String - case \/-(file) => // Success, file: java.io.File - } - -// Artifacts can be downloaded in parallel thanks to Task.gatherUnordered -// See the example in cli/src/main/scala/coursier/Coursier.scala -```