yacli 0.2.5 → 0.3.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: 33a8ea5998ca372d6ed034ee9d73fd24adff865d
4
- data.tar.gz: a84c611f2004e87bd4633568843dbb286aa27799
2
+ SHA256:
3
+ metadata.gz: 691fb6e6c5a723ad454e5f52beab77e8a5513244881aaa1e57175bc1408ba210
4
+ data.tar.gz: 8d5132e2f82c3a995e251c31bc2a745084d43685b6e950917b3f1b5385a02416
5
5
  SHA512:
6
- metadata.gz: 8f0421b540ae76883fb1b3de3c43496f441bb84856daac5070af11c888035ca4631d5a9a5abd8a615223fa57f5e25bb87c9300fc1e66ecda80fcbf0279657aa6
7
- data.tar.gz: f0a3f051ccbb3d2b1113fae9ac6464fd25eb7b729b3852eb155388e6b602bbf08f9e5452ffab28cc75d6285b320c9e0f91472c258d0167369e33c2825f20a885
6
+ metadata.gz: f99f9427890bc9088275a4dc3e0cf701090a73a686cc62f175aefe14acc1c25559a5177ac02a35730845b3880235c47596ecd3ea7fa640f84ddd08fd597f3386
7
+ data.tar.gz: d6540571c43f1889283f7a3a0ea11fa51b24a998d96b92a9ca82cc00ca414a0ef251f20c927989d7ee9c172c601bb050cd6a523c22a885cdae1bb926e2997c3c
data/.gitignore CHANGED
@@ -15,3 +15,4 @@ spec/reports
15
15
  test/tmp
16
16
  test/version_tmp
17
17
  tmp
18
+ .idea/
data/.rubocop.yml CHANGED
@@ -16,11 +16,15 @@ Metrics/AbcSize:
16
16
  SpecialGlobalVars:
17
17
  Enabled: false
18
18
 
19
- Style/AlignHash:
19
+ Layout/AlignHash:
20
20
  EnforcedHashRocketStyle: table
21
21
  EnforcedColonStyle: table
22
22
 
23
- Style/TrailingCommaInLiteral:
23
+ Style/TrailingCommaInArrayLiteral:
24
+ Enabled: true
25
+ EnforcedStyleForMultiline: comma
26
+
27
+ Style/TrailingCommaInHashLiteral:
24
28
  Enabled: true
25
29
  EnforcedStyleForMultiline: comma
26
30
 
data/.ruby-version CHANGED
@@ -1 +1 @@
1
- 2.1.5
1
+ 2.5.1
data/.travis.yml CHANGED
@@ -1,6 +1,6 @@
1
1
  language: ruby
2
2
  rvm:
3
- - 2.1.5
3
+ - 2.5.1
4
4
  deploy:
5
5
  provider: rubygems
6
6
  api_key:
data/README.md CHANGED
@@ -1,7 +1,9 @@
1
- yacli
2
- ============================================
1
+ Yacli
2
+ =====
3
+
3
4
  [![Gem Version](http://img.shields.io/gem/v/yacli.svg)][gem]
4
5
  [![Build Status](http://img.shields.io/travis/rombob/yacli.svg)][travis]
6
+ [![Code Climate](http://img.shields.io/codeclimate/github/rombob/yacli.svg)][codeclimate]
5
7
  [![Coverage Status](https://img.shields.io/coveralls/rombob/yacli.svg)][coveralls]
6
8
  [![Codacy Badge](https://api.codacy.com/project/badge/grade/dc6b761f73aa423ba610746d19f8597c)][codacy]
7
9
 
@@ -10,13 +12,30 @@ yacli
10
12
  [coveralls]: https://coveralls.io/r/rombob/yacli
11
13
  [codacy]: https://www.codacy.com/app/github_50/yacli
12
14
 
15
+ Description
16
+ -----------
17
+ Yacli a.k.a yet another CLI, is a simple gem allowing to build custom CLI wrappers.
18
+ It uses [Thor][thor] as a CLI option manager as well as additional minimal helpers for logging and output handling.
19
+
20
+ Please note: Yacli, by design, is a system tool created to allow seamless file and url
21
+ access, which should not receive application user input. It relies on [open-uri][open-uri],
22
+ which combined with application user input would provide a command injection attack
23
+ vector.
24
+
25
+ [thor]: https://github.com/ruby/rake
26
+ [open-uri]: https://ruby-doc.org/stdlib-2.5.1/libdoc/open-uri/rdoc/index.html
27
+
13
28
  Prerequisites
14
29
  -------------
15
30
  You will need the following:
16
31
 
17
- - Ruby 1.9+
32
+ - Ruby 2.5+
18
33
  - Bundler
19
34
 
35
+ Docker integration:
36
+
37
+ - TBD
38
+
20
39
  ## Installation
21
40
 
22
41
  Add this line to your application's Gemfile:
@@ -31,10 +50,21 @@ Or install it yourself as:
31
50
 
32
51
  $ gem install yacli
33
52
 
53
+ ## Installation with Docker
54
+
55
+ TBD:
56
+
57
+ tbd
58
+
34
59
  ## Usage
35
60
 
36
61
  $ yacli help [COMMAND] # Describe expanded available commands or one specific command
37
62
 
63
+ ## TODO
64
+ Wish-list of features [TODO][] file for suggestions.
65
+
66
+ [todo]: TODO.md
67
+
38
68
  ## Contributing
39
69
 
40
70
  1. [Fork it]( https://github.com/rombob/yacli/fork )
@@ -42,3 +72,8 @@ Or install it yourself as:
42
72
  3. Commit your changes (`git commit -am 'Add some feature'`)
43
73
  4. Push to the branch (`git push origin my-new-feature`)
44
74
  5. Create new Pull Request
75
+
76
+ ## License
77
+ Released under the MIT License. See the [LICENSE][] file for further details.
78
+
79
+ [license]: LICENSE.md
data/TODO.md ADDED
@@ -0,0 +1,4 @@
1
+ # TODO
2
+
3
+ 1. Add documentation
4
+ 1. Add docker-compose, k8s integration
data/lib/yacli/base.rb CHANGED
@@ -1,7 +1,7 @@
1
1
  require 'logger'
2
2
  require 'socket'
3
3
  require 'open3'
4
- require 'trollop'
4
+ require 'optimist'
5
5
 
6
6
  module ToBoolean
7
7
  def to_bool
data/lib/yacli/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Yacli
2
- VERSION = '0.2.5'
2
+ VERSION = '0.3.1'
3
3
  end
data/spec/spec_helper.rb CHANGED
@@ -3,10 +3,10 @@ require 'coveralls'
3
3
  require 'yacli'
4
4
  require 'yacli/base'
5
5
 
6
- SimpleCov.formatter = SimpleCov::Formatter::MultiFormatter[
6
+ SimpleCov.formatter = SimpleCov::Formatter::MultiFormatter.new([
7
7
  SimpleCov::Formatter::HTMLFormatter,
8
8
  Coveralls::SimpleCov::Formatter
9
- ]
9
+ ])
10
10
 
11
11
  SimpleCov.start do
12
12
  add_filter '/spec/'
data/yacli.gemspec CHANGED
@@ -18,16 +18,16 @@ Gem::Specification.new do |spec|
18
18
  spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
19
19
  spec.require_paths = ["lib"]
20
20
 
21
- spec.add_dependency "thor", "~> 0.19"
22
- spec.add_dependency "trollop", "~> 2.1"
21
+ spec.add_dependency "thor", "~> 0.20"
22
+ spec.add_dependency "optimist", "~> 3.0"
23
23
 
24
24
  spec.add_development_dependency "rspec_junit_formatter", "~> 0.2"
25
25
  spec.add_development_dependency "simplecov", "~> 0.12"
26
26
  spec.add_development_dependency "bundler", "~> 1.7"
27
- spec.add_development_dependency "rubocop", "~> 0.47"
27
+ spec.add_development_dependency "rubocop", "~> 0.59"
28
28
  spec.add_development_dependency "rake"
29
29
  spec.add_development_dependency "bump"
30
- spec.add_development_dependency "rspec", "~> 3.0"
30
+ spec.add_development_dependency "rspec", "~> 3.8"
31
31
  spec.add_development_dependency "growl"
32
- spec.add_development_dependency "coveralls"
32
+ spec.add_development_dependency "coveralls", "~> 0.7"
33
33
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: yacli
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.5
4
+ version: 0.3.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - rombob
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-01-17 00:00:00.000000000 Z
11
+ date: 2018-10-12 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: thor
@@ -16,28 +16,28 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '0.19'
19
+ version: '0.20'
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: '0.19'
26
+ version: '0.20'
27
27
  - !ruby/object:Gem::Dependency
28
- name: trollop
28
+ name: optimist
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
31
  - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: '2.1'
33
+ version: '3.0'
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - "~>"
39
39
  - !ruby/object:Gem::Version
40
- version: '2.1'
40
+ version: '3.0'
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: rspec_junit_formatter
43
43
  requirement: !ruby/object:Gem::Requirement
@@ -86,14 +86,14 @@ dependencies:
86
86
  requirements:
87
87
  - - "~>"
88
88
  - !ruby/object:Gem::Version
89
- version: '0.47'
89
+ version: '0.59'
90
90
  type: :development
91
91
  prerelease: false
92
92
  version_requirements: !ruby/object:Gem::Requirement
93
93
  requirements:
94
94
  - - "~>"
95
95
  - !ruby/object:Gem::Version
96
- version: '0.47'
96
+ version: '0.59'
97
97
  - !ruby/object:Gem::Dependency
98
98
  name: rake
99
99
  requirement: !ruby/object:Gem::Requirement
@@ -128,14 +128,14 @@ dependencies:
128
128
  requirements:
129
129
  - - "~>"
130
130
  - !ruby/object:Gem::Version
131
- version: '3.0'
131
+ version: '3.8'
132
132
  type: :development
133
133
  prerelease: false
134
134
  version_requirements: !ruby/object:Gem::Requirement
135
135
  requirements:
136
136
  - - "~>"
137
137
  - !ruby/object:Gem::Version
138
- version: '3.0'
138
+ version: '3.8'
139
139
  - !ruby/object:Gem::Dependency
140
140
  name: growl
141
141
  requirement: !ruby/object:Gem::Requirement
@@ -154,16 +154,16 @@ dependencies:
154
154
  name: coveralls
155
155
  requirement: !ruby/object:Gem::Requirement
156
156
  requirements:
157
- - - ">="
157
+ - - "~>"
158
158
  - !ruby/object:Gem::Version
159
- version: '0'
159
+ version: '0.7'
160
160
  type: :development
161
161
  prerelease: false
162
162
  version_requirements: !ruby/object:Gem::Requirement
163
163
  requirements:
164
- - - ">="
164
+ - - "~>"
165
165
  - !ruby/object:Gem::Version
166
- version: '0'
166
+ version: '0.7'
167
167
  description: Provide minimal tools for shell commands wrapper scripts
168
168
  email:
169
169
  - rombob@gmail.com
@@ -181,6 +181,7 @@ files:
181
181
  - LICENSE.txt
182
182
  - README.md
183
183
  - Rakefile
184
+ - TODO.md
184
185
  - bin/yacli
185
186
  - lib/yacli.rb
186
187
  - lib/yacli/base.rb
@@ -212,7 +213,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
212
213
  version: '0'
213
214
  requirements: []
214
215
  rubyforge_project:
215
- rubygems_version: 2.4.5
216
+ rubygems_version: 2.7.7
216
217
  signing_key:
217
218
  specification_version: 4
218
219
  summary: CLI wrapper library tool