cl 0.1.28 → 1.0.0
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 +5 -5
- data/Gemfile +1 -0
- data/Gemfile.lock +19 -1
- data/NOTES.md +2 -0
- data/README.md +210 -142
- data/examples/args/cast +53 -41
- data/examples/args/opts +72 -14
- data/examples/args/required +28 -14
- data/examples/args/splat +29 -32
- data/examples/gem +26 -37
- data/examples/heroku +15 -16
- data/examples/rakeish +13 -15
- data/examples/readme/abstract +6 -5
- data/examples/readme/alias +4 -7
- data/examples/readme/arg +4 -2
- data/examples/readme/arg_array +4 -2
- data/examples/readme/arg_type +3 -1
- data/examples/readme/args_splat +13 -4
- data/examples/readme/default +2 -2
- data/examples/readme/deprecated +3 -6
- data/examples/readme/deprecated_alias +2 -4
- data/examples/readme/downcase +2 -2
- data/examples/readme/enum +10 -5
- data/examples/readme/example +6 -4
- data/examples/readme/format +9 -7
- data/examples/readme/internal +8 -4
- data/examples/readme/negate +20 -5
- data/examples/readme/node +19 -0
- data/examples/readme/opts +8 -8
- data/examples/readme/opts_block +4 -3
- data/examples/readme/range +9 -7
- data/examples/readme/required +9 -7
- data/examples/readme/requireds +26 -18
- data/examples/readme/requires +13 -14
- data/examples/readme/secret +7 -9
- data/examples/readme/see +6 -8
- data/examples/readme/type +2 -6
- data/examples/src/args/cast.erb.rb +96 -0
- data/examples/src/args/opts.erb.rb +96 -0
- data/examples/src/args/required.erb.rb +61 -0
- data/examples/src/args/splat.erb.rb +55 -0
- data/examples/src/gem.erb.rb +95 -0
- data/examples/src/heroku.erb.rb +47 -0
- data/examples/src/rakeish.erb.rb +54 -0
- data/examples/src/readme/abstract.erb.rb +25 -0
- data/examples/src/readme/alias.erb.rb +20 -0
- data/examples/src/readme/arg.erb.rb +19 -0
- data/examples/src/readme/arg_array.erb.rb +19 -0
- data/examples/src/readme/arg_type.erb.rb +21 -0
- data/examples/src/readme/args_splat.erb.rb +49 -0
- data/examples/src/readme/array.erb.rb +19 -0
- data/examples/src/readme/default.erb.rb +19 -0
- data/examples/src/readme/deprecated.erb.rb +19 -0
- data/examples/src/readme/deprecated_alias.erb.rb +19 -0
- data/examples/src/readme/downcase.erb.rb +19 -0
- data/examples/src/readme/enum.erb.rb +33 -0
- data/examples/src/readme/example.erb.rb +23 -0
- data/examples/src/readme/format.erb.rb +33 -0
- data/examples/src/readme/internal.erb.rb +26 -0
- data/examples/src/readme/negate.erb.rb +35 -0
- data/examples/src/readme/node.erb.rb +23 -0
- data/examples/src/readme/opts.erb.rb +31 -0
- data/examples/src/readme/opts_block.erb.rb +28 -0
- data/examples/src/readme/range.erb.rb +33 -0
- data/examples/src/readme/required.erb.rb +33 -0
- data/examples/src/readme/requireds.erb.rb +44 -0
- data/examples/src/readme/requires.erb.rb +33 -0
- data/examples/src/readme/secret.erb.rb +20 -0
- data/examples/src/readme/see.erb.rb +23 -0
- data/examples/src/readme/type.erb.rb +19 -0
- data/lib/cl/ui.rb +2 -2
- data/lib/cl/version.rb +1 -1
- metadata +40 -10
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
#!/usr/bin/env ruby
|
|
2
|
+
$: << File.expand_path('lib')
|
|
3
|
+
|
|
4
|
+
<%= run sq(<<-'rb')
|
|
5
|
+
class Add < Cl::Cmd
|
|
6
|
+
opt '--to GROUP'
|
|
7
|
+
opt '--other GROUP', requires: :to
|
|
8
|
+
|
|
9
|
+
def run
|
|
10
|
+
p to: to, other: other
|
|
11
|
+
end
|
|
12
|
+
end
|
|
13
|
+
rb
|
|
14
|
+
-%>
|
|
15
|
+
|
|
16
|
+
<%= run "Cl.new('owners').run(%w(add --to one --other two))" %>
|
|
17
|
+
|
|
18
|
+
<%= out '{:to=>"one", :other=>"two"}' %>
|
|
19
|
+
|
|
20
|
+
<%= run "Cl.new('owners').run(%w(add --other two))" %>
|
|
21
|
+
|
|
22
|
+
<%= out sq(<<-'str')
|
|
23
|
+
Missing option: to (required by other)
|
|
24
|
+
|
|
25
|
+
Usage: owners add [options]
|
|
26
|
+
|
|
27
|
+
Options:
|
|
28
|
+
|
|
29
|
+
--to GROUP type: string
|
|
30
|
+
--other GROUP type: string, requires: to
|
|
31
|
+
--help Get help on this command
|
|
32
|
+
str
|
|
33
|
+
%>
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
#!/usr/bin/env ruby
|
|
2
|
+
$: << File.expand_path('lib')
|
|
3
|
+
|
|
4
|
+
<%= run sq(<<-'rb')
|
|
5
|
+
class Add < Cl::Cmd
|
|
6
|
+
opt '--pass PASS', secret: true
|
|
7
|
+
|
|
8
|
+
def run
|
|
9
|
+
p(
|
|
10
|
+
secret?: self.class.opts[:pass].secret?,
|
|
11
|
+
tainted?: pass.tainted?
|
|
12
|
+
)
|
|
13
|
+
end
|
|
14
|
+
end
|
|
15
|
+
rb
|
|
16
|
+
-%>
|
|
17
|
+
|
|
18
|
+
<%= run "Cl.new('owners').run(%w(add --pass pass))" %>
|
|
19
|
+
|
|
20
|
+
<%= out '{:secret?=>true, :tainted?=>true}' %>
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
#!/usr/bin/env ruby
|
|
2
|
+
$: << File.expand_path('lib')
|
|
3
|
+
|
|
4
|
+
<%= run sq(<<-'rb')
|
|
5
|
+
require 'cl'
|
|
6
|
+
|
|
7
|
+
class Add < Cl::Cmd
|
|
8
|
+
opt '--to GROUP', see: 'https://docs.io/cli/owners/add'
|
|
9
|
+
end
|
|
10
|
+
rb
|
|
11
|
+
-%>
|
|
12
|
+
|
|
13
|
+
<%= run "Cl.new('owners').run(%w(add --help))" %>
|
|
14
|
+
|
|
15
|
+
<%= out sq(<<-'str')
|
|
16
|
+
Usage: owners add [options]
|
|
17
|
+
|
|
18
|
+
Options:
|
|
19
|
+
|
|
20
|
+
--to GROUP type: string, see: https://docs.io/cli/owners/add
|
|
21
|
+
--help Get help on this command
|
|
22
|
+
str
|
|
23
|
+
%>
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
#!/usr/bin/env ruby
|
|
2
|
+
$: << File.expand_path('lib')
|
|
3
|
+
|
|
4
|
+
<%= run sq(<<-'rb')
|
|
5
|
+
class Add < Cl::Cmd
|
|
6
|
+
opt '--active BOOL', type: :boolean
|
|
7
|
+
opt '--retries INT', type: :integer
|
|
8
|
+
opt '--sleep FLOAT', type: :float
|
|
9
|
+
|
|
10
|
+
def run
|
|
11
|
+
p active: active.class, retries: retries.class, sleep: sleep.class
|
|
12
|
+
end
|
|
13
|
+
end
|
|
14
|
+
rb
|
|
15
|
+
-%>
|
|
16
|
+
|
|
17
|
+
<%= run "Cl.new('owners').run(%w(add --active yes --retries 1 --sleep 0.1))" %>
|
|
18
|
+
|
|
19
|
+
<%= out "{:active=>TrueClass, :retries=>#{RUBY_VERSION < '2.4' ? 'Fixnum' : 'Integer'}, :sleep=>Float}" %>
|
data/lib/cl/ui.rb
CHANGED
data/lib/cl/version.rb
CHANGED
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: cl
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.
|
|
4
|
+
version: 1.0.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Sven Fuchs
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2019-08-
|
|
11
|
+
date: 2019-08-10 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: regstry
|
|
@@ -28,13 +28,10 @@ description: |-
|
|
|
28
28
|
OptionParser based CLI support for rapid CLI development in an object-oriented
|
|
29
29
|
context.
|
|
30
30
|
|
|
31
|
-
This library wraps Ruby's OptionParser
|
|
32
|
-
|
|
31
|
+
This library wraps Ruby's OptionParser for parsing your options under the hood,
|
|
32
|
+
so you get all the goodness that the Ruby standard library provides.
|
|
33
33
|
|
|
34
|
-
|
|
35
|
-
the goodness that this library provides.
|
|
36
|
-
|
|
37
|
-
But on top of that it also provides a rich DSL for defining, validating, and
|
|
34
|
+
On top of that it adds a rich and powerful DSL for defining, validating, and
|
|
38
35
|
normalizing options, as well as automatic and gorgeous help output (modeled
|
|
39
36
|
after `gem --help`).
|
|
40
37
|
email:
|
|
@@ -71,6 +68,7 @@ files:
|
|
|
71
68
|
- examples/readme/format
|
|
72
69
|
- examples/readme/internal
|
|
73
70
|
- examples/readme/negate
|
|
71
|
+
- examples/readme/node
|
|
74
72
|
- examples/readme/note
|
|
75
73
|
- examples/readme/opts
|
|
76
74
|
- examples/readme/opts_block
|
|
@@ -81,6 +79,39 @@ files:
|
|
|
81
79
|
- examples/readme/secret
|
|
82
80
|
- examples/readme/see
|
|
83
81
|
- examples/readme/type
|
|
82
|
+
- examples/src/args/cast.erb.rb
|
|
83
|
+
- examples/src/args/opts.erb.rb
|
|
84
|
+
- examples/src/args/required.erb.rb
|
|
85
|
+
- examples/src/args/splat.erb.rb
|
|
86
|
+
- examples/src/gem.erb.rb
|
|
87
|
+
- examples/src/heroku.erb.rb
|
|
88
|
+
- examples/src/rakeish.erb.rb
|
|
89
|
+
- examples/src/readme/abstract.erb.rb
|
|
90
|
+
- examples/src/readme/alias.erb.rb
|
|
91
|
+
- examples/src/readme/arg.erb.rb
|
|
92
|
+
- examples/src/readme/arg_array.erb.rb
|
|
93
|
+
- examples/src/readme/arg_type.erb.rb
|
|
94
|
+
- examples/src/readme/args_splat.erb.rb
|
|
95
|
+
- examples/src/readme/array.erb.rb
|
|
96
|
+
- examples/src/readme/default.erb.rb
|
|
97
|
+
- examples/src/readme/deprecated.erb.rb
|
|
98
|
+
- examples/src/readme/deprecated_alias.erb.rb
|
|
99
|
+
- examples/src/readme/downcase.erb.rb
|
|
100
|
+
- examples/src/readme/enum.erb.rb
|
|
101
|
+
- examples/src/readme/example.erb.rb
|
|
102
|
+
- examples/src/readme/format.erb.rb
|
|
103
|
+
- examples/src/readme/internal.erb.rb
|
|
104
|
+
- examples/src/readme/negate.erb.rb
|
|
105
|
+
- examples/src/readme/node.erb.rb
|
|
106
|
+
- examples/src/readme/opts.erb.rb
|
|
107
|
+
- examples/src/readme/opts_block.erb.rb
|
|
108
|
+
- examples/src/readme/range.erb.rb
|
|
109
|
+
- examples/src/readme/required.erb.rb
|
|
110
|
+
- examples/src/readme/requireds.erb.rb
|
|
111
|
+
- examples/src/readme/requires.erb.rb
|
|
112
|
+
- examples/src/readme/secret.erb.rb
|
|
113
|
+
- examples/src/readme/see.erb.rb
|
|
114
|
+
- examples/src/readme/type.erb.rb
|
|
84
115
|
- lib/cl.rb
|
|
85
116
|
- lib/cl/arg.rb
|
|
86
117
|
- lib/cl/args.rb
|
|
@@ -125,8 +156,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
125
156
|
- !ruby/object:Gem::Version
|
|
126
157
|
version: '0'
|
|
127
158
|
requirements: []
|
|
128
|
-
|
|
129
|
-
rubygems_version: 2.6.13
|
|
159
|
+
rubygems_version: 3.0.3
|
|
130
160
|
signing_key:
|
|
131
161
|
specification_version: 4
|
|
132
162
|
summary: Object-oriented OptionParser based CLI support
|