BundleOutdatedFormatter
BundleOutdatedFormatter is a command-line tool to format output of bundle outdated
.
Installation
Add this line to your application's Gemfile:
gem 'bof'
And then execute:
$ bundle
Or install it yourself as:
$ gem install bof
Usage
$ bundle outdated | bof
Command Options
Option | Alias | Description | Default |
---|
--format | -f | Format. terminal , markdown , json , yaml , csv , tsv , xml , or html . | terminal |
--pretty | -p | true if pretty output. This option is available in json , xml , or html formats. | false |
--style | -s | Terminal table style. unicode or ascii . This option is available in terminal format. | unicode |
--column | -c | Output columns. The columns are sorted in specified order. | gem newest installed requested groups |
Examples
Output of bundle outdated
:
Fetching gem metadata from https://rubygems.org/..........
Fetching version metadata from https://rubygems.org/...
Fetching dependency metadata from https://rubygems.org/..
Resolving dependencies...
Outdated gems included in the bundle:
* faker (newest 1.6.6, installed 1.6.5, requested ~> 1.4) in groups "development, test"
* hashie (newest 3.4.6, installed 1.2.0, requested = 1.2.0) in group "default"
* headless (newest 2.3.1, installed 2.2.3)
Convert to Terminal
Unicode style:
┌──────────┬────────┬───────────┬───────────┬───────────────────┐
│ gem │ newest │ installed │ requested │ groups │
├──────────┼────────┼───────────┼───────────┼───────────────────┤
│ faker │ 1.6.6 │ 1.6.5 │ ~> 1.4 │ development, test │
│ hashie │ 3.4.6 │ 1.2.0 │ = 1.2.0 │ default │
│ headless │ 2.3.1 │ 2.2.3 │ │ │
└──────────┴────────┴───────────┴───────────┴───────────────────┘
ASCII style:
+----------+--------+-----------+-----------+-------------------+
| gem | newest | installed | requested | groups |
+----------+--------+-----------+-----------+-------------------+
| faker | 1.6.6 | 1.6.5 | ~> 1.4 | development, test |
| hashie | 3.4.6 | 1.2.0 | = 1.2.0 | default |
| headless | 2.3.1 | 2.2.3 | | |
+----------+--------+-----------+-----------+-------------------+
Convert to Markdown
| gem | newest | installed | requested | groups |
| --- | --- | --- | --- | --- |
| faker | 1.6.6 | 1.6.5 | ~> 1.4 | development, test |
| hashie | 3.4.6 | 1.2.0 | = 1.2.0 | default |
| headless | 2.3.1 | 2.2.3 | | |
Convert to JSON
Normal output:
[{"gem":"faker","newest":"1.6.6","installed":"1.6.5","requested":"~> 1.4","groups":"development, test"},{"gem":"hashie","newest":"3.4.6","installed":"1.2.0","requested":"= 1.2.0","groups":"default"},{"gem":"headless","newest":"2.3.1","installed":"2.2.3","requested":"","groups":""}]
Pretty output:
[
{
"gem": "faker",
"newest": "1.6.6",
"installed": "1.6.5",
"requested": "~> 1.4",
"groups": "development, test"
},
{
"gem": "hashie",
"newest": "3.4.6",
"installed": "1.2.0",
"requested": "= 1.2.0",
"groups": "default"
},
{
"gem": "headless",
"newest": "2.3.1",
"installed": "2.2.3",
"requested": "",
"groups": ""
}
]
Convert to YAML
---
- gem: faker
newest: 1.6.6
installed: 1.6.5
requested: "~> 1.4"
groups: development, test
- gem: hashie
newest: 3.4.6
installed: 1.2.0
requested: "= 1.2.0"
groups: default
- gem: headless
newest: 2.3.1
installed: 2.2.3
requested: ''
groups: ''
Convert to CSV
"gem","newest","installed","requested","groups"
"faker","1.6.6","1.6.5","~> 1.4","development, test"
"hashie","3.4.6","1.2.0","= 1.2.0","default"
"headless","2.3.1","2.2.3","",""
Convert to TSV
"gem" "newest" "installed" "requested" "groups"
"faker" "1.6.6" "1.6.5" "~> 1.4" "development, test"
"hashie" "3.4.6" "1.2.0" "= 1.2.0" "default"
"headless" "2.3.1" "2.2.3" "" ""
Convert to XML
Normal output:
<?xml version="1.0" encoding="UTF-8"?><gems><outdated><gem>faker</gem><newest>1.6.6</newest><installed>1.6.5</installed><requested>~> 1.4</requested><groups>development, test</groups></outdated><outdated><gem>hashie</gem><newest>3.4.6</newest><installed>1.2.0</installed><requested>= 1.2.0</requested><groups>default</groups></outdated><outdated><gem>headless</gem><newest>2.3.1</newest><installed>2.2.3</installed><requested></requested><groups></groups></outdated></gems>
Pretty output:
<?xml version="1.0" encoding="UTF-8"?>
<gems>
<outdated>
<gem>faker</gem>
<newest>1.6.6</newest>
<installed>1.6.5</installed>
<requested>~> 1.4</requested>
<groups>development, test</groups>
</outdated>
<outdated>
<gem>hashie</gem>
<newest>3.4.6</newest>
<installed>1.2.0</installed>
<requested>= 1.2.0</requested>
<groups>default</groups>
</outdated>
<outdated>
<gem>headless</gem>
<newest>2.3.1</newest>
<installed>2.2.3</installed>
<requested></requested>
<groups></groups>
</outdated>
</gems>
Convert to HTML
Normal output:
<table><tr><th>gem</th><th>newest</th><th>installed</th><th>requested</th><th>groups</th></tr><tr><td>faker</td><td>1.6.6</td><td>1.6.5</td><td>~> 1.4</td><td>development, test</td></tr><tr><td>hashie</td><td>3.4.6</td><td>1.2.0</td><td>= 1.2.0</td><td>default</td></tr><tr><td>headless</td><td>2.3.1</td><td>2.2.3</td><td></td><td></td></tr></table>
Pretty output:
<table>
<tr>
<th>gem</th>
<th>newest</th>
<th>installed</th>
<th>requested</th>
<th>groups</th>
</tr>
<tr>
<td>faker</td>
<td>1.6.6</td>
<td>1.6.5</td>
<td>~> 1.4</td>
<td>development, test</td>
</tr>
<tr>
<td>hashie</td>
<td>3.4.6</td>
<td>1.2.0</td>
<td>= 1.2.0</td>
<td>default</td>
</tr>
<tr>
<td>headless</td>
<td>2.3.1</td>
<td>2.2.3</td>
<td></td>
<td></td>
</tr>
</table>
Related
Supported Ruby Versions
Ruby 2.0.0, 2.1, 2.2, 2.3, 2.4, 2.5, 2.6, 2.7, 3.0
Contributing
Bug reports and pull requests are welcome.
License
MIT