prepare readme for 0.7.0

This commit is contained in:
Johannes Rudolph 2012-10-22 10:30:22 +02:00
parent 83fe4f2960
commit d7f18e053c
1 changed files with 19 additions and 18 deletions

View File

@ -3,30 +3,23 @@ sbt-dependency-graph
Visualize your project's dependencies. Visualize your project's dependencies.
Requirements
------------
* Simple Build Tool
How To Use How To Use
---------- ----------
For sbt 0.11, add sbt-dependency-graph as a dependency in `project/plugins.sbt`: For sbt 0.11/0.12, add sbt-dependency-graph as a dependency in `project/plugins.sbt`:
```scala ```scala
addSbtPlugin("net.virtual-void" % "sbt-dependency-graph" % "0.6.0") addSbtPlugin("net.virtual-void" % "sbt-dependency-graph" % "0.7.0")
``` ```
*Note*: The organization has recently been changed to `net.virtual-void`.
Then, add the following to your `<project-root>/build.sbt` (that's not `project/build.sbt`!) as a standalone line: Then, add the following to your `<project-root>/build.sbt` (that's not `project/build.sbt`!) as a standalone line:
```scala ```scala
net.virtualvoid.sbt.graph.Plugin.graphSettings net.virtualvoid.sbt.graph.Plugin.graphSettings
``` ```
OR, alternatively, if you use the full configuration, i.e. you define your build definition in `project/build.scala`, for example, OR, alternatively, if you use the full configuration, i.e. you define your build definition in `project/build.scala`, for example,
to define a multi-module project, you should add to define a multi-module project, you should add
```scala ```scala
.settings(net.virtualvoid.sbt.graph.Plugin.graphSettings: _*) .settings(net.virtualvoid.sbt.graph.Plugin.graphSettings: _*)
@ -37,7 +30,7 @@ look approximately this way:
```scala ```scala
object MyBuild extends Build { object MyBuild extends Build {
val proj = val proj =
Project("my-project", file("base")) Project("my-project", file("base"))
.settings(net.virtualvoid.sbt.graph.Plugin.graphSettings: _*) .settings(net.virtualvoid.sbt.graph.Plugin.graphSettings: _*)
} }
@ -48,9 +41,12 @@ Check out the [example project] for a skeleton build setup.
Tasks & Settings Tasks & Settings
---------------- ----------------
* `dependency-graph`: Shows an ASCII graph of your dependency on the sbt console * `dependency-graph`: Shows an ASCII graph of the project's dependencies on the sbt console
* `dependency-graph-ml`: Generates a .graphml file with your dependencies to `target/dependencies-<config>.graphml`. * `dependency-graph-ml`: Generates a .graphml file with the project's dependencies to `target/dependencies-<config>.graphml`.
Use e.g. [yEd](http://www.yworks.com/en/products_yed_about.html) to format the graph to your needs. Use e.g. [yEd](http://www.yworks.com/en/products_yed_about.html) to format the graph to your needs.
* `dependency-tree`: Shows an ASCII tree representation of the project's dependencies
* `what-depends-on <organization> <module> <revision>`: Find out what depends on an artifact. Shows a reverse dependency
tree for the selected module.
* `dependency-graph-ml-file`: a setting which allows configuring the output path of `dependency-graph-ml`. * `dependency-graph-ml-file`: a setting which allows configuring the output path of `dependency-graph-ml`.
* `ivy-report`: let's ivy generate the resolution report for you project. Use * `ivy-report`: let's ivy generate the resolution report for you project. Use
`show ivy-report` for the filename of the generated report `show ivy-report` for the filename of the generated report
@ -63,19 +59,24 @@ Standalone usage
---------------- ----------------
You can use the project without sbt as well by either depending on the library and calling You can use the project without sbt as well by either depending on the library and calling
`IvyGraphMLDependencies.transfrom(sourceIvyReport, targetFile)` or by just getting the binary `IvyGraphMLDependencies.saveAsGraphML(IvyGraphMLDependencies.graph(reportFile), outputFile)` or by just getting the binary
and calling it like `scala sbt-dependency-graph-0.5.1.jar <ivy-report-xml-path> <target-path>`. and calling it like `scala sbt-dependency-graph-0.7.0.jar <ivy-report-xml-path> <target-path>`.
Inner Workings Inner Workings
-------------- --------------
sbt/Ivy's `update` task create ivy-report xml-files inside `.ivy2/cache`. You can sbt/Ivy's `update` task create ivy-report xml-files inside `.ivy2/cache` (in sbt 0.12.1:
`<project-dir>/target/resolution-cache/reports/<project-id>`. You can
just open them with your browser to look at the dependency report for your project. just open them with your browser to look at the dependency report for your project.
This project takes the report xml of your project and creates a graphml file out of it. (BTW, This project takes the report xml of your project and creates a graphml file out of it. (BTW,
ivy can create graphml files itself, but since I didn't want to spend to much time getting ivy can create graphml files itself, but since I didn't want to spend to much time getting
sbt to call into Ivy to create graphs, I went with the easy way here) sbt to call into Ivy to create graphs, I went with the easy way here)
Credits
-------
* Matt Russell (@mdr) for contributing the ASCII graph layout.
License License
------- -------