README.md in lapidarius-3.4.0 vs README.md in lapidarius-4.0.1
- old
+ new
@@ -2,63 +2,69 @@
* [Scope](#scope)
* [Alternatives](#alternatives)
* [gem dep](#gem-dep)
* [bundle viz](#bundle-viz)
-* [Warning](#warning)
* [Installation](#installation)
* [Usage](#usage)
* [Version](#version)
+ * [Remote](#remote)
## Scope
This gem is aimed to recursively collect the `runtime dependencies` footprint of the specified gem.
The output of the library mimics the `tree` shell utility, highlighting the nested dependencies via ASCII characters.
### Alternatives
Some alternatives exists:
#### gem dep
-The standard *gem dep* command just unearth one level of dependencies.
+The standard `gem dep` command just unearth one level of dependencies.
#### bundle viz
-The *bundle viz* command relies on the Gemfile and the [graphviz](http://www.graphviz.org/) library to generate a visual representation of the gem inter-dependencies.
+The `bundle viz` command relies on the Gemfile and the [graphviz](http://www.graphviz.org/) library to generate a visual representation of the gem inter-dependencies.
While it is great to visualize inter-dependencies, i have hard times figuring out gem's runtime footprint.
-## Warning
-Consider only the gems local to your system are scanned by the library.
-No remote fetching is performed.
-
## Installation
Install the gem from your shell:
```shell
gem install lapidarius
```
## Usage
This library invokes the `Gem::Commands::DependencyCommand` class recursively to collect all the levels of dependency.
-Both runtime and development dependencies are counted (identical dependencies are counted once).
-Just the runtime dependencies tree is printed to screen:
+Both runtime and development dependencies are counted (identical dependencies are counted once), but just the former are printed on screen:
```shell
+> lapidarius sinatra
+sinatra (2.0.0)
+├── mustermann (~> 1.0)
+├── rack (~> 2.0)
+├── rack-protection (= 2.0.0)
+│ └── rack (>= 0)
+└── tilt (~> 2.0)
+
+4 runtime, 4 development
+```
+
+### Version
+By default this library scans for the first version `>= 0` found at [rubygems.org](https://rubygems.org/).
+In case you are interested on a specific version just specify the `-v` option:
+```shell
+> lapidarius sinatra -v 1.4.7
sinatra (1.4.7)
├── rack (~> 1.5)
├── rack-protection (~> 1.4)
│ └── rack (>= 0)
└── tilt (< 3, >= 1.3)
3 runtime, 4 development
```
-### Version
-By default this library scans for the first version `>= 0`.
-In case you have multiple versions of a gem installed, just specify the version you need to cut as the second argument:
+### Remote
+By default this library scan for local gems, if you want to scan for remote ones specify the `-r` option (be aware of slowness):
```shell
-$ lapidarius sinatra 2.0.0
-sinatra (2.0.0)
-├── mustermann (~> 1.0)
-├── rack (~> 2.0)
-├── rack-protection (= 2.0.0)
-│ └── rack (>= 0)
-└── tilt (~> 2.0)
+$ lapidarius roda -v 3.3.0 -r
+roda (3.3.0)
+└── rack (>= 0)
-4 runtime, 4 development
+1 runtime, 10 development
```