From 253a7d263d1d5f917eb286b906d15b04a42a6eb3 Mon Sep 17 00:00:00 2001 From: Alexandre Archambault Date: Sun, 28 Jun 2015 18:08:52 +0200 Subject: [PATCH] Add release notes --- notes/0.1.0-M1.markdown | 41 +++++++++++++++++++++++++++++++++++++++++ notes/about.markdown | 1 + 2 files changed, 42 insertions(+) create mode 100644 notes/0.1.0-M1.markdown create mode 100644 notes/about.markdown diff --git a/notes/0.1.0-M1.markdown b/notes/0.1.0-M1.markdown new file mode 100644 index 000000000..199c5509b --- /dev/null +++ b/notes/0.1.0-M1.markdown @@ -0,0 +1,41 @@ +[coursier](https://github.com/alexarchambault/coursier/) is a pure Scala +substitute for [Aether](http://www.eclipse.org/aether/). Given a set +of dependencies, and Maven repositories, it can list all their transitive +dependencies, solving possible version conflicts. + +This is the first release of coursier. + +Test it in your browser with its [Scala JS demo](https://alexarchambault.github.io/coursier/#demo). + +### Overview + +Use it like +```scala +val repositories = Seq( + Repository.ivy2Local, + Repository.mavenCentral +) + +val dependencies = Set( + Dependency(Module("com.github.alexarchambault", "argonaut-shapeless_6.1_2.11"), "0.2.0"), + Dependency(Module("com.github.alexarchambault", "shapeless-refined-std_2.11"), "0.1.1") +) + +val resolution = + Resolution(dependencies) // Initial resolution state + .process // Resolution process (scalaz-stream like) + .run(repositories) // Run the resolution with these repositories + .run // Run the resulting Task[Resolution] + +val allDependencies = resolution.minDependencies // Set[Dependency] +val allArtifacts = resolution.artifacts // Seq[Artifact] + +val errors = resolution.errors // Metadata errors (not found, malformed, ...) +val conflicts = resolution.conflicts // Version conflicts + +// URLs of the artifacts (JARs) +val allArtifactsUrls = allArtifacts.map(_.url) // Seq[String] +``` + +Both metadata and artifacts can be cached. Resolution per se only fetches +metadata, and gives you back artifact URLs. diff --git a/notes/about.markdown b/notes/about.markdown new file mode 100644 index 000000000..a43ce7d41 --- /dev/null +++ b/notes/about.markdown @@ -0,0 +1 @@ +[coursier](http://github.com/alexarchambault/coursier) is a pure Scala library to resolve and fetch Maven dependencies and artifacts.