dev_commands 0.0.22 → 0.0.23
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 +7 -0
- data/lib/array.rb +24 -24
- data/lib/command.rb +128 -128
- data/lib/doc.rb +8 -8
- data/lib/gemspec.rb +35 -35
- data/lib/git.rb +8 -8
- data/lib/hash.rb +20 -20
- data/lib/publish.rb +6 -6
- data/lib/push.rb +7 -7
- data/lib/setup.rb +8 -8
- data/lib/test.rb +4 -4
- data/lib/text.rb +14 -14
- data/lib/{Timer.rb → timer.rb} +40 -40
- data/spec/command_spec.rb +109 -109
- data/spec/text_spec.rb +11 -11
- metadata +24 -74
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: 0ba796e5048a64e2b520720283850e771417af10
|
4
|
+
data.tar.gz: 24ca4fd01762a1a48f6df4ec6bb7332d6ebd2488
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: 81af5cce3f8f0141004467a78b25eb5b155889c34c2ebf46890812fd90c614926d27553ff5f355f3c29e44d9d45ced3163e8163f15cde478a016f8651e91e946
|
7
|
+
data.tar.gz: 820419d439ccac4fb9f44750bca31ac7478add38942f993c103b6d9b0ed5fa9a0c0294e4363d6936d4b2c686d096c8a0fdfc38f4db5eed70461e687445e39ec0
|
data/lib/array.rb
CHANGED
@@ -1,25 +1,25 @@
|
|
1
|
-
class Array
|
2
|
-
def execute
|
3
|
-
i=0
|
4
|
-
while i < self.length
|
5
|
-
self[i]=Command.new(self[i]) if(self[i].is_a?(String))
|
6
|
-
self[i]=Command.new(self[i]) if(self[i].is_a?(Hash) && !self[i].is_a?(Command))
|
7
|
-
self[i].execute if(self[i].is_a?(Command))
|
8
|
-
i=i+1
|
9
|
-
end
|
10
|
-
end
|
11
|
-
|
12
|
-
def add command
|
13
|
-
self << command if(!include?(command))
|
14
|
-
end
|
15
|
-
|
16
|
-
def to_html
|
17
|
-
html=Array.new
|
18
|
-
html << '<div>'
|
19
|
-
self.each{|e|
|
20
|
-
html << e.to_html if e.respond_to?(:to_html)
|
21
|
-
}
|
22
|
-
html << '</div>'
|
23
|
-
html.join
|
24
|
-
end
|
1
|
+
class Array
|
2
|
+
def execute
|
3
|
+
i=0
|
4
|
+
while i < self.length
|
5
|
+
self[i]=Command.new(self[i]) if(self[i].is_a?(String))
|
6
|
+
self[i]=Command.new(self[i]) if(self[i].is_a?(Hash) && !self[i].is_a?(Command))
|
7
|
+
self[i].execute if(self[i].is_a?(Command))
|
8
|
+
i=i+1
|
9
|
+
end
|
10
|
+
end
|
11
|
+
|
12
|
+
def add command
|
13
|
+
self << command if(!include?(command))
|
14
|
+
end
|
15
|
+
|
16
|
+
def to_html
|
17
|
+
html=Array.new
|
18
|
+
html << '<div>'
|
19
|
+
self.each{|e|
|
20
|
+
html << e.to_html if e.respond_to?(:to_html)
|
21
|
+
}
|
22
|
+
html << '</div>'
|
23
|
+
html.join
|
24
|
+
end
|
25
25
|
end
|
data/lib/command.rb
CHANGED
@@ -1,129 +1,129 @@
|
|
1
|
-
require 'open3'
|
2
|
-
require_relative('./array.rb')
|
3
|
-
require_relative('./hash.rb')
|
4
|
-
require_relative('./timer.rb')
|
5
|
-
|
6
|
-
class Command < Hash
|
7
|
-
def initialize command
|
8
|
-
|
9
|
-
self[:input] = ''
|
10
|
-
self[:timeout] = 0
|
11
|
-
self[:directory] = ''
|
12
|
-
self[:exit_code] = 0
|
13
|
-
self[:output] = ''
|
14
|
-
self[:error] = ''
|
15
|
-
self[:machine] = ''
|
16
|
-
self[:user] = ''
|
17
|
-
self[:start_time] = nil
|
18
|
-
self[:end_time] = nil
|
19
|
-
|
20
|
-
if(command.kind_of?(String))
|
21
|
-
self[:input] = command
|
22
|
-
end
|
23
|
-
|
24
|
-
if(command.kind_of?(Hash))
|
25
|
-
command.each{|k,v|
|
26
|
-
self[k.to_sym]=v
|
27
|
-
}
|
28
|
-
end
|
29
|
-
end
|
30
|
-
|
31
|
-
def execute
|
32
|
-
puts "#{self[:input]}"
|
33
|
-
pwd=Dir.pwd
|
34
|
-
Dir.chdir(self[:directory]) if(self.has_key?(:directory) && File.exists?(self[:directory]))
|
35
|
-
self[:directory] = pwd if(self[:directory].length==0)
|
36
|
-
|
37
|
-
self[:machine] = Command.machine
|
38
|
-
self[:user] = Command.user
|
39
|
-
|
40
|
-
self[:start_time]=Time.now
|
41
|
-
timer=Timer.new
|
42
|
-
if self[:input].include?('<%') && self[:input].include?('%>')
|
43
|
-
ruby = self[:input].gsub("<%","").gsub("%>","")
|
44
|
-
|
45
|
-
begin
|
46
|
-
self[:output]=eval(ruby)
|
47
|
-
rescue
|
48
|
-
self[:exit_code]=1
|
49
|
-
self[:error]="unable to eval(#{ruby})"
|
50
|
-
end
|
51
|
-
|
52
|
-
self[:elapsed] = timer.elapsed_str
|
53
|
-
self[:end_time] = Time.now
|
54
|
-
else
|
55
|
-
begin
|
56
|
-
self[:output],self[:error],status= Open3.capture3(self[:input])
|
57
|
-
self[:exit_code]=status.to_i
|
58
|
-
self[:elapsed] = timer.elapsed_str
|
59
|
-
self[:end_time] = Time.now
|
60
|
-
rescue Exception => e
|
61
|
-
self[:elapsed] = timer.elapsed_str
|
62
|
-
self[:end_time] = Time.now
|
63
|
-
self[:error] = "Exception: " + e.to_s
|
64
|
-
self[:exit_code]=1
|
65
|
-
end
|
66
|
-
end
|
67
|
-
|
68
|
-
Dir.chdir(pwd) if pwd != Dir.pwd
|
69
|
-
|
70
|
-
if(self[:exit_code] != 0)
|
71
|
-
puts ' '
|
72
|
-
puts "exit_code=#{self[:exit_code]}"
|
73
|
-
puts ' '
|
74
|
-
puts self[:output]
|
75
|
-
puts self[:error]
|
76
|
-
puts ' '
|
77
|
-
if(!self.has_key?(:ignore_failure) || !self[:ignore_failure])
|
78
|
-
raise "#{self[:input]} failed"
|
79
|
-
end #unless (self.has_key?(:ignore_failure) && self[:ignore_failure]==true)
|
80
|
-
end
|
81
|
-
end
|
82
|
-
|
83
|
-
def self.machine
|
84
|
-
if !ENV['COMPUTERNAME'].nil?
|
85
|
-
return ENV['COMPUTERNAME']
|
86
|
-
end
|
87
|
-
|
88
|
-
machine = `hostname`
|
89
|
-
machine = machine.split('.')[0] if machine.include?('.')
|
90
|
-
return machine.strip
|
91
|
-
end
|
92
|
-
|
93
|
-
def self.user
|
94
|
-
ENV['USER'].nil? ? ENV['USERNAME'] : ENV['USER']
|
95
|
-
end
|
96
|
-
|
97
|
-
def self.exit_code command
|
98
|
-
cmd = Command.new(command)
|
99
|
-
cmd[:ignore_failure]=true
|
100
|
-
cmd.execute
|
101
|
-
cmd[:exit_code]
|
102
|
-
end
|
103
|
-
|
104
|
-
def self.output command
|
105
|
-
cmd = Command.new(command)
|
106
|
-
cmd[:ignore_failure]=true
|
107
|
-
cmd.execute
|
108
|
-
cmd[:output]
|
109
|
-
end
|
110
|
-
|
111
|
-
def to_html
|
112
|
-
if self[:exit_code] == 0
|
113
|
-
[
|
114
|
-
'<div><table><tr><td width="20"></td><td><pre>',
|
115
|
-
self[:input],
|
116
|
-
'</pre></td></tr></table></div>'
|
117
|
-
].join
|
118
|
-
else
|
119
|
-
[
|
120
|
-
'<div><table><tr><td width="20"></td><td><pre>',
|
121
|
-
self[:input],
|
122
|
-
'</pre><table><tr><td width="20"></td><td><table>',
|
123
|
-
map { |k, v| ["<tr><td><strong>#{k}</strong></td>", v.respond_to?(:to_html) ? v.to_html : "<td><span><pre>#{v}</pre></span></td></tr>"] },
|
124
|
-
'</table>',
|
125
|
-
'</td></tr></table></td></tr></table></div>'
|
126
|
-
].join
|
127
|
-
end
|
128
|
-
end
|
1
|
+
require 'open3'
|
2
|
+
require_relative('./array.rb')
|
3
|
+
require_relative('./hash.rb')
|
4
|
+
require_relative('./timer.rb')
|
5
|
+
|
6
|
+
class Command < Hash
|
7
|
+
def initialize command
|
8
|
+
|
9
|
+
self[:input] = ''
|
10
|
+
self[:timeout] = 0
|
11
|
+
self[:directory] = ''
|
12
|
+
self[:exit_code] = 0
|
13
|
+
self[:output] = ''
|
14
|
+
self[:error] = ''
|
15
|
+
self[:machine] = ''
|
16
|
+
self[:user] = ''
|
17
|
+
self[:start_time] = nil
|
18
|
+
self[:end_time] = nil
|
19
|
+
|
20
|
+
if(command.kind_of?(String))
|
21
|
+
self[:input] = command
|
22
|
+
end
|
23
|
+
|
24
|
+
if(command.kind_of?(Hash))
|
25
|
+
command.each{|k,v|
|
26
|
+
self[k.to_sym]=v
|
27
|
+
}
|
28
|
+
end
|
29
|
+
end
|
30
|
+
|
31
|
+
def execute
|
32
|
+
puts "#{self[:input]}"
|
33
|
+
pwd=Dir.pwd
|
34
|
+
Dir.chdir(self[:directory]) if(self.has_key?(:directory) && File.exists?(self[:directory]))
|
35
|
+
self[:directory] = pwd if(self[:directory].length==0)
|
36
|
+
|
37
|
+
self[:machine] = Command.machine
|
38
|
+
self[:user] = Command.user
|
39
|
+
|
40
|
+
self[:start_time]=Time.now
|
41
|
+
timer=Timer.new
|
42
|
+
if self[:input].include?('<%') && self[:input].include?('%>')
|
43
|
+
ruby = self[:input].gsub("<%","").gsub("%>","")
|
44
|
+
|
45
|
+
begin
|
46
|
+
self[:output]=eval(ruby)
|
47
|
+
rescue
|
48
|
+
self[:exit_code]=1
|
49
|
+
self[:error]="unable to eval(#{ruby})"
|
50
|
+
end
|
51
|
+
|
52
|
+
self[:elapsed] = timer.elapsed_str
|
53
|
+
self[:end_time] = Time.now
|
54
|
+
else
|
55
|
+
begin
|
56
|
+
self[:output],self[:error],status= Open3.capture3(self[:input])
|
57
|
+
self[:exit_code]=status.to_i
|
58
|
+
self[:elapsed] = timer.elapsed_str
|
59
|
+
self[:end_time] = Time.now
|
60
|
+
rescue Exception => e
|
61
|
+
self[:elapsed] = timer.elapsed_str
|
62
|
+
self[:end_time] = Time.now
|
63
|
+
self[:error] = "Exception: " + e.to_s
|
64
|
+
self[:exit_code]=1
|
65
|
+
end
|
66
|
+
end
|
67
|
+
|
68
|
+
Dir.chdir(pwd) if pwd != Dir.pwd
|
69
|
+
|
70
|
+
if(self[:exit_code] != 0)
|
71
|
+
puts ' '
|
72
|
+
puts "exit_code=#{self[:exit_code]}"
|
73
|
+
puts ' '
|
74
|
+
puts self[:output]
|
75
|
+
puts self[:error]
|
76
|
+
puts ' '
|
77
|
+
if(!self.has_key?(:ignore_failure) || !self[:ignore_failure])
|
78
|
+
raise "#{self[:input]} failed"
|
79
|
+
end #unless (self.has_key?(:ignore_failure) && self[:ignore_failure]==true)
|
80
|
+
end
|
81
|
+
end
|
82
|
+
|
83
|
+
def self.machine
|
84
|
+
if !ENV['COMPUTERNAME'].nil?
|
85
|
+
return ENV['COMPUTERNAME']
|
86
|
+
end
|
87
|
+
|
88
|
+
machine = `hostname`
|
89
|
+
machine = machine.split('.')[0] if machine.include?('.')
|
90
|
+
return machine.strip
|
91
|
+
end
|
92
|
+
|
93
|
+
def self.user
|
94
|
+
ENV['USER'].nil? ? ENV['USERNAME'] : ENV['USER']
|
95
|
+
end
|
96
|
+
|
97
|
+
def self.exit_code command
|
98
|
+
cmd = Command.new(command)
|
99
|
+
cmd[:ignore_failure]=true
|
100
|
+
cmd.execute
|
101
|
+
cmd[:exit_code]
|
102
|
+
end
|
103
|
+
|
104
|
+
def self.output command
|
105
|
+
cmd = Command.new(command)
|
106
|
+
cmd[:ignore_failure]=true
|
107
|
+
cmd.execute
|
108
|
+
cmd[:output]
|
109
|
+
end
|
110
|
+
|
111
|
+
def to_html
|
112
|
+
if self[:exit_code] == 0
|
113
|
+
[
|
114
|
+
'<div><table><tr><td width="20"></td><td><pre>',
|
115
|
+
self[:input],
|
116
|
+
'</pre></td></tr></table></div>'
|
117
|
+
].join
|
118
|
+
else
|
119
|
+
[
|
120
|
+
'<div><table><tr><td width="20"></td><td><pre>',
|
121
|
+
self[:input],
|
122
|
+
'</pre><table><tr><td width="20"></td><td><table>',
|
123
|
+
map { |k, v| ["<tr><td><strong>#{k}</strong></td>", v.respond_to?(:to_html) ? v.to_html : "<td><span><pre>#{v}</pre></span></td></tr>"] },
|
124
|
+
'</table>',
|
125
|
+
'</td></tr></table></td></tr></table></div>'
|
126
|
+
].join
|
127
|
+
end
|
128
|
+
end
|
129
129
|
end
|
data/lib/doc.rb
CHANGED
@@ -1,9 +1,9 @@
|
|
1
|
-
class Doc < Array
|
2
|
-
def update
|
3
|
-
#cmd=Command.new ({ :input => 'yard --version', :ignore_failure => true})
|
4
|
-
#cmd.execute
|
5
|
-
if(Command.exit_code('yard --version'))
|
6
|
-
add 'yard doc - LICENSE' if File.exists?('README.md') && File.exists?('LICENSE')
|
7
|
-
end
|
8
|
-
end
|
1
|
+
class Doc < Array
|
2
|
+
def update
|
3
|
+
#cmd=Command.new ({ :input => 'yard --version', :ignore_failure => true})
|
4
|
+
#cmd.execute
|
5
|
+
if(Command.exit_code('yard --version'))
|
6
|
+
add 'yard doc - LICENSE' if File.exists?('README.md') && File.exists?('LICENSE')
|
7
|
+
end
|
8
|
+
end
|
9
9
|
end
|
data/lib/gemspec.rb
CHANGED
@@ -1,36 +1,36 @@
|
|
1
|
-
class Gemspec
|
2
|
-
def self.update gemspec_file
|
3
|
-
Text.replace_in_file gemspec_file,
|
4
|
-
/('\d{4}-\d{2}-\d{2}')/,
|
5
|
-
"'#{Time.now.strftime('%Y-%m-%d')}'"
|
6
|
-
end
|
7
|
-
|
8
|
-
def self.gemfile gemspec_file
|
9
|
-
spec=Gem::Specification.load(gemspec_file)
|
10
|
-
return "#{spec.name}-#{spec.version}.gem"
|
11
|
-
end
|
12
|
-
|
13
|
-
def self.version gemspec_file
|
14
|
-
spec=Gem::Specification.load(gemspec_file)
|
15
|
-
return spec.version.to_s
|
16
|
-
end
|
17
|
-
|
18
|
-
def self.published_version gemspec_file
|
19
|
-
published_version=''
|
20
|
-
spec=Gem::Specification.load(gemspec_file)
|
21
|
-
begin
|
22
|
-
published_version = `gem list #{spec.name} -r`.scan(/\((\d+.\d+.\d+)\)/)[0][0]
|
23
|
-
rescue
|
24
|
-
published_version=''
|
25
|
-
end
|
26
|
-
published_version
|
27
|
-
end
|
28
|
-
def self.published? gemspec_file
|
29
|
-
published_version(gemspec_file)==version(gemspec_file) ? true : false
|
30
|
-
end
|
31
|
-
|
32
|
-
def self.normalize gemspec_file
|
33
|
-
spec=Gem::Specification.load(gemspec_file)
|
34
|
-
File.open(gemspec_file,'w'){|f|f.write(spec.to_ruby)}
|
35
|
-
end
|
1
|
+
class Gemspec
|
2
|
+
def self.update gemspec_file
|
3
|
+
Text.replace_in_file gemspec_file,
|
4
|
+
/('\d{4}-\d{2}-\d{2}')/,
|
5
|
+
"'#{Time.now.strftime('%Y-%m-%d')}'"
|
6
|
+
end
|
7
|
+
|
8
|
+
def self.gemfile gemspec_file
|
9
|
+
spec=Gem::Specification.load(gemspec_file)
|
10
|
+
return "#{spec.name}-#{spec.version}.gem"
|
11
|
+
end
|
12
|
+
|
13
|
+
def self.version gemspec_file
|
14
|
+
spec=Gem::Specification.load(gemspec_file)
|
15
|
+
return spec.version.to_s
|
16
|
+
end
|
17
|
+
|
18
|
+
def self.published_version gemspec_file
|
19
|
+
published_version=''
|
20
|
+
spec=Gem::Specification.load(gemspec_file)
|
21
|
+
begin
|
22
|
+
published_version = `gem list #{spec.name} -r`.scan(/\((\d+.\d+.\d+)\)/)[0][0]
|
23
|
+
rescue
|
24
|
+
published_version=''
|
25
|
+
end
|
26
|
+
published_version
|
27
|
+
end
|
28
|
+
def self.published? gemspec_file
|
29
|
+
published_version(gemspec_file)==version(gemspec_file) ? true : false
|
30
|
+
end
|
31
|
+
|
32
|
+
def self.normalize gemspec_file
|
33
|
+
spec=Gem::Specification.load(gemspec_file)
|
34
|
+
File.open(gemspec_file,'w'){|f|f.write(spec.to_ruby)}
|
35
|
+
end
|
36
36
|
end
|
data/lib/git.rb
CHANGED
@@ -1,9 +1,9 @@
|
|
1
|
-
class Git
|
2
|
-
def self.branch
|
3
|
-
begin
|
4
|
-
`git branch`.scan(/\* ([.\w-]+)/)[0][0]
|
5
|
-
rescue
|
6
|
-
''
|
7
|
-
end
|
8
|
-
end
|
1
|
+
class Git
|
2
|
+
def self.branch
|
3
|
+
begin
|
4
|
+
`git branch`.scan(/\* ([.\w-]+)/)[0][0]
|
5
|
+
rescue
|
6
|
+
''
|
7
|
+
end
|
8
|
+
end
|
9
9
|
end
|
data/lib/hash.rb
CHANGED
@@ -1,21 +1,21 @@
|
|
1
|
-
class Hash
|
2
|
-
def execute
|
3
|
-
self.each{|k,v|
|
4
|
-
v.update if v.respond_to?(:update)
|
5
|
-
if(v.is_a?(Array) && v.length==0)
|
6
|
-
self.delete k
|
7
|
-
else
|
8
|
-
#puts "executing #{k}"
|
9
|
-
|
10
|
-
v.execute if v.respond_to?(:execute)
|
11
|
-
end
|
12
|
-
}
|
13
|
-
end
|
14
|
-
def to_html
|
15
|
-
[
|
16
|
-
'<div>',
|
17
|
-
map { |k, v| ["<br/><div><strong>#{k}</strong>", v.respond_to?(:to_html) ? v.to_html : "<span>#{v}</span></div><br/>"] },
|
18
|
-
'</div>'
|
19
|
-
].join
|
20
|
-
end
|
1
|
+
class Hash
|
2
|
+
def execute
|
3
|
+
self.each{|k,v|
|
4
|
+
v.update if v.respond_to?(:update)
|
5
|
+
if(v.is_a?(Array) && v.length==0)
|
6
|
+
self.delete k
|
7
|
+
else
|
8
|
+
#puts "executing #{k}"
|
9
|
+
|
10
|
+
v.execute if v.respond_to?(:execute)
|
11
|
+
end
|
12
|
+
}
|
13
|
+
end
|
14
|
+
def to_html
|
15
|
+
[
|
16
|
+
'<div>',
|
17
|
+
map { |k, v| ["<br/><div><strong>#{k}</strong>", v.respond_to?(:to_html) ? v.to_html : "<span>#{v}</span></div><br/>"] },
|
18
|
+
'</div>'
|
19
|
+
].join
|
20
|
+
end
|
21
21
|
end
|
data/lib/publish.rb
CHANGED
@@ -1,7 +1,7 @@
|
|
1
|
-
class Publish < Array
|
2
|
-
def update
|
3
|
-
Dir.glob('*.gemspec').each{|gemspec_file|
|
4
|
-
add "gem push #{Gemspec.gemfile(gemspec_file)}" if !Gemspec.published? gemspec_file
|
5
|
-
}
|
6
|
-
end
|
1
|
+
class Publish < Array
|
2
|
+
def update
|
3
|
+
Dir.glob('*.gemspec').each{|gemspec_file|
|
4
|
+
add "gem push #{Gemspec.gemfile(gemspec_file)}" if !Gemspec.published? gemspec_file
|
5
|
+
}
|
6
|
+
end
|
7
7
|
end
|
data/lib/push.rb
CHANGED
@@ -1,8 +1,8 @@
|
|
1
|
-
class Push < Array
|
2
|
-
def update
|
3
|
-
if(File.exists?('.git') && `git config --list`.include?('user.name='))
|
4
|
-
add 'git config --global push.default simple'
|
5
|
-
self << 'git push' if Git.branch != 'develop'
|
6
|
-
end
|
7
|
-
end
|
1
|
+
class Push < Array
|
2
|
+
def update
|
3
|
+
if(File.exists?('.git') && `git config --list`.include?('user.name='))
|
4
|
+
add 'git config --global push.default simple'
|
5
|
+
self << 'git push' if Git.branch != 'develop'
|
6
|
+
end
|
7
|
+
end
|
8
8
|
end
|
data/lib/setup.rb
CHANGED
@@ -1,9 +1,9 @@
|
|
1
|
-
class Setup < Array
|
2
|
-
def update
|
3
|
-
add 'bundle install' if(File.exists?('Gemfile'))
|
4
|
-
|
5
|
-
Dir.glob('*.gemspec').each{|gemspec_file|
|
6
|
-
add "<%Gemspec.update('#{gemspec_file}')%>"
|
7
|
-
}
|
8
|
-
end
|
1
|
+
class Setup < Array
|
2
|
+
def update
|
3
|
+
add 'bundle install' if(File.exists?('Gemfile'))
|
4
|
+
|
5
|
+
Dir.glob('*.gemspec').each{|gemspec_file|
|
6
|
+
add "<%Gemspec.update('#{gemspec_file}')%>"
|
7
|
+
}
|
8
|
+
end
|
9
9
|
end
|
data/lib/test.rb
CHANGED
@@ -1,5 +1,5 @@
|
|
1
|
-
class Test < Array
|
2
|
-
def update
|
3
|
-
add 'rspec' if File.exists?('spec')
|
4
|
-
end
|
1
|
+
class Test < Array
|
2
|
+
def update
|
3
|
+
add 'rspec' if File.exists?('spec')
|
4
|
+
end
|
5
5
|
end
|
data/lib/text.rb
CHANGED
@@ -1,15 +1,15 @@
|
|
1
|
-
class Text
|
2
|
-
def self.replace_in_glob(glob,search,replace)
|
3
|
-
Dir.glob(glob).each{ |f| replace_text_in_file(f,search,replace) }
|
4
|
-
end
|
5
|
-
|
6
|
-
def self.replace_in_file(filename,search,replace)
|
7
|
-
text1 = IO.read(filename).force_encoding("ISO-8859-1").encode("utf-8", replace: nil)
|
8
|
-
#File.read(f,:encoding=>'UTF-8')
|
9
|
-
text2 = text1.gsub(search) { |str| str=replace }
|
10
|
-
unless text1==text2
|
11
|
-
File.open(filename,"w") { |f| f.puts text2 }
|
12
|
-
end
|
13
|
-
end
|
14
|
-
|
1
|
+
class Text
|
2
|
+
def self.replace_in_glob(glob,search,replace)
|
3
|
+
Dir.glob(glob).each{ |f| replace_text_in_file(f,search,replace) }
|
4
|
+
end
|
5
|
+
|
6
|
+
def self.replace_in_file(filename,search,replace)
|
7
|
+
text1 = IO.read(filename).force_encoding("ISO-8859-1").encode("utf-8", replace: nil)
|
8
|
+
#File.read(f,:encoding=>'UTF-8')
|
9
|
+
text2 = text1.gsub(search) { |str| str=replace }
|
10
|
+
unless text1==text2
|
11
|
+
File.open(filename,"w") { |f| f.puts text2 }
|
12
|
+
end
|
13
|
+
end
|
14
|
+
|
15
15
|
end
|
data/lib/{Timer.rb → timer.rb}
RENAMED
@@ -1,41 +1,41 @@
|
|
1
|
-
class Timer
|
2
|
-
attr_accessor :start_time
|
3
|
-
|
4
|
-
def initialize
|
5
|
-
@start_time=Time.now
|
6
|
-
end
|
7
|
-
|
8
|
-
def elapsed # in seconds
|
9
|
-
return Time.now-@start_time
|
10
|
-
end
|
11
|
-
|
12
|
-
def elapsed_str
|
13
|
-
elapsed_str="[" + "%.0f" %(elapsed) + "s]"
|
14
|
-
end
|
15
|
-
|
16
|
-
def self.elapsed_exceeds?(name,duration_seconds)
|
17
|
-
if(Timer.get_elapsed(name).nil? || Timer.get_elapsed(name) > duration_seconds)
|
18
|
-
return true
|
19
|
-
end
|
20
|
-
return false
|
21
|
-
end
|
22
|
-
|
23
|
-
def self.get_elapsed(name)
|
24
|
-
timestamp=get_timestamp(name)
|
25
|
-
return Time.now-timestamp if(!timestamp.nil?)
|
26
|
-
nil
|
27
|
-
end
|
28
|
-
|
29
|
-
def self.get_timestamp(name)
|
30
|
-
dir=Rake.application.original_dir
|
31
|
-
if(File.exists?("#{DEV[:dev_root]}/log/#{name}.timestamp"))
|
32
|
-
return Time.parse(File.read("#{DEV[:dev_root]}/log/#{name}.timestamp").strip)
|
33
|
-
end
|
34
|
-
nil
|
35
|
-
end
|
36
|
-
|
37
|
-
def self.set_timestamp(name)
|
38
|
-
Dir.mkdir("#{DEV_TASKS[:dev_root]}/log") if(!Dir.exists?("#{DEV_TASKS[:dev_root]}/log"))
|
39
|
-
File.open("#{DEV_TASKS[:dev_root]}/log/#{name}.timestamp",'w'){|f|f.puts(Time.now.to_s)}
|
40
|
-
end
|
1
|
+
class Timer
|
2
|
+
attr_accessor :start_time
|
3
|
+
|
4
|
+
def initialize
|
5
|
+
@start_time=Time.now
|
6
|
+
end
|
7
|
+
|
8
|
+
def elapsed # in seconds
|
9
|
+
return Time.now-@start_time
|
10
|
+
end
|
11
|
+
|
12
|
+
def elapsed_str
|
13
|
+
elapsed_str="[" + "%.0f" %(elapsed) + "s]"
|
14
|
+
end
|
15
|
+
|
16
|
+
def self.elapsed_exceeds?(name,duration_seconds)
|
17
|
+
if(Timer.get_elapsed(name).nil? || Timer.get_elapsed(name) > duration_seconds)
|
18
|
+
return true
|
19
|
+
end
|
20
|
+
return false
|
21
|
+
end
|
22
|
+
|
23
|
+
def self.get_elapsed(name)
|
24
|
+
timestamp=get_timestamp(name)
|
25
|
+
return Time.now-timestamp if(!timestamp.nil?)
|
26
|
+
nil
|
27
|
+
end
|
28
|
+
|
29
|
+
def self.get_timestamp(name)
|
30
|
+
dir=Rake.application.original_dir
|
31
|
+
if(File.exists?("#{DEV[:dev_root]}/log/#{name}.timestamp"))
|
32
|
+
return Time.parse(File.read("#{DEV[:dev_root]}/log/#{name}.timestamp").strip)
|
33
|
+
end
|
34
|
+
nil
|
35
|
+
end
|
36
|
+
|
37
|
+
def self.set_timestamp(name)
|
38
|
+
Dir.mkdir("#{DEV_TASKS[:dev_root]}/log") if(!Dir.exists?("#{DEV_TASKS[:dev_root]}/log"))
|
39
|
+
File.open("#{DEV_TASKS[:dev_root]}/log/#{name}.timestamp",'w'){|f|f.puts(Time.now.to_s)}
|
40
|
+
end
|
41
41
|
end
|
data/spec/command_spec.rb
CHANGED
@@ -1,110 +1,110 @@
|
|
1
|
-
require_relative '../lib/command.rb'
|
2
|
-
require 'json'
|
3
|
-
require 'fileutils'
|
4
|
-
|
5
|
-
describe Command do
|
6
|
-
it "should be able to execute ruby --version command" do
|
7
|
-
cmd=Command.new("ruby --version")
|
8
|
-
# Timeout
|
9
|
-
expect(cmd[:timeout]).to eq(0)
|
10
|
-
cmd[:timeout]=3000
|
11
|
-
expect(cmd[:timeout]).to eq(3000)
|
12
|
-
|
13
|
-
# Directory
|
14
|
-
expect(cmd[:directory]).to eq("")
|
15
|
-
cmd[:directory] = File.dirname(__FILE__)
|
16
|
-
expect(cmd[:directory]).to eq(File.dirname(__FILE__))
|
17
|
-
|
18
|
-
# ExitCode
|
19
|
-
expect(cmd[:exit_code]).to eq(0)
|
20
|
-
cmd[:exit_code] = 1
|
21
|
-
expect(cmd[:exit_code]).to eq(1)
|
22
|
-
|
23
|
-
# Input
|
24
|
-
expect(cmd[:input]).to eq("ruby --version")
|
25
|
-
cmd2 = Command.new('')
|
26
|
-
expect(cmd2[:input]).to eq('')
|
27
|
-
|
28
|
-
# Output
|
29
|
-
expect(cmd[:output]).to eq('')
|
30
|
-
cmd[:output]='test'
|
31
|
-
expect(cmd[:output]).to eq('test')
|
32
|
-
|
33
|
-
# Error
|
34
|
-
expect(cmd[:error]).to eq('')
|
35
|
-
cmd[:error]='error_test'
|
36
|
-
expect(cmd[:error]).to eq('error_test')
|
37
|
-
|
38
|
-
# Machine
|
39
|
-
expect(cmd[:machine]).to eq('')
|
40
|
-
cmd[:machine]='machine_test'
|
41
|
-
expect(cmd[:machine]).to eq('machine_test')
|
42
|
-
|
43
|
-
# User
|
44
|
-
expect(cmd[:user]).to eq('')
|
45
|
-
cmd[:user]='user_test'
|
46
|
-
expect(cmd[:user]).to eq('user_test')
|
47
|
-
|
48
|
-
# StartTime
|
49
|
-
expect(cmd[:start_time]).to eq(nil)
|
50
|
-
cmd[:start_time]=Time.now
|
51
|
-
expect(cmd[:start_time]).not_to eq(nil)
|
52
|
-
|
53
|
-
# EndTime
|
54
|
-
expect(cmd[:end_time]).to eq(nil)
|
55
|
-
cmd[:end_time]=Time.now
|
56
|
-
expect(cmd[:end_time]).not_to eq(nil)
|
57
|
-
|
58
|
-
end
|
59
|
-
|
60
|
-
it "should be able to write to/load from JSON" do
|
61
|
-
cmd=Command.new("ruby --version")
|
62
|
-
expect(cmd[:timeout]).to eq(0)
|
63
|
-
expect(cmd[:input]).to eq("ruby --version")
|
64
|
-
cmd2=Command.new(JSON.parse(cmd.to_json))
|
65
|
-
expect(cmd2[:timeout]).to eq(0)
|
66
|
-
expect(cmd2[:input]).to eq("ruby --version")
|
67
|
-
end
|
68
|
-
|
69
|
-
it "should be able to execute rake command in specific directory" do
|
70
|
-
dir="#{File.dirname(__FILE__)}/tmp/rake_test"
|
71
|
-
FileUtils.mkdir_p(dir) if(!File.exists?(dir))
|
72
|
-
File.open("#{dir}/rakefile.rb","w") { |f|
|
73
|
-
f.puts "task :default do"
|
74
|
-
f.puts " puts 'rake_test'"
|
75
|
-
f.puts "end"
|
76
|
-
}
|
77
|
-
cmd=Command.new("rake")
|
78
|
-
cmd[:directory]=dir
|
79
|
-
cmd.execute
|
80
|
-
FileUtils.rm_r("#{File.dirname(__FILE__)}/tmp")
|
81
|
-
expect(cmd[:output].include?('rake_test')).to eq(true)
|
82
|
-
end
|
83
|
-
|
84
|
-
it "should be able to execute an array of commands" do
|
85
|
-
help=['git --help','rake --help','ruby --help']
|
86
|
-
help.execute
|
87
|
-
File.open('help.html','w'){|f|f.write(help.to_html)}
|
88
|
-
end
|
89
|
-
|
90
|
-
it "should be able to execute a hash with arrays or commands" do
|
91
|
-
commands=Hash.new
|
92
|
-
commands[:help]=['git --help','rake --help','ruby --help']
|
93
|
-
commands[:version]=['git --version','rake --version','ruby --version']
|
94
|
-
commands.execute
|
95
|
-
File.open('commands.html','w'){|f|f.write(commands.to_html)}
|
96
|
-
end
|
97
|
-
|
98
|
-
it "hsould be able to get the output" do
|
99
|
-
expect(Command.output('git --version').include?('git version')).to eq(true)
|
100
|
-
expect(Command.output('bogus --version').include?('bogus version')).to eq(false)
|
101
|
-
end
|
102
|
-
|
103
|
-
it "should be able to get the exit_code" do
|
104
|
-
expect(Command.exit_code('rake --version')).to eq(0)
|
105
|
-
expect(Command.exit_code('bogus --version')).not_to eq(0)
|
106
|
-
end
|
107
|
-
#it "should fail this test" do
|
108
|
-
# expect(false).to eq(true)
|
109
|
-
#end
|
1
|
+
require_relative '../lib/command.rb'
|
2
|
+
require 'json'
|
3
|
+
require 'fileutils'
|
4
|
+
|
5
|
+
describe Command do
|
6
|
+
it "should be able to execute ruby --version command" do
|
7
|
+
cmd=Command.new("ruby --version")
|
8
|
+
# Timeout
|
9
|
+
expect(cmd[:timeout]).to eq(0)
|
10
|
+
cmd[:timeout]=3000
|
11
|
+
expect(cmd[:timeout]).to eq(3000)
|
12
|
+
|
13
|
+
# Directory
|
14
|
+
expect(cmd[:directory]).to eq("")
|
15
|
+
cmd[:directory] = File.dirname(__FILE__)
|
16
|
+
expect(cmd[:directory]).to eq(File.dirname(__FILE__))
|
17
|
+
|
18
|
+
# ExitCode
|
19
|
+
expect(cmd[:exit_code]).to eq(0)
|
20
|
+
cmd[:exit_code] = 1
|
21
|
+
expect(cmd[:exit_code]).to eq(1)
|
22
|
+
|
23
|
+
# Input
|
24
|
+
expect(cmd[:input]).to eq("ruby --version")
|
25
|
+
cmd2 = Command.new('')
|
26
|
+
expect(cmd2[:input]).to eq('')
|
27
|
+
|
28
|
+
# Output
|
29
|
+
expect(cmd[:output]).to eq('')
|
30
|
+
cmd[:output]='test'
|
31
|
+
expect(cmd[:output]).to eq('test')
|
32
|
+
|
33
|
+
# Error
|
34
|
+
expect(cmd[:error]).to eq('')
|
35
|
+
cmd[:error]='error_test'
|
36
|
+
expect(cmd[:error]).to eq('error_test')
|
37
|
+
|
38
|
+
# Machine
|
39
|
+
expect(cmd[:machine]).to eq('')
|
40
|
+
cmd[:machine]='machine_test'
|
41
|
+
expect(cmd[:machine]).to eq('machine_test')
|
42
|
+
|
43
|
+
# User
|
44
|
+
expect(cmd[:user]).to eq('')
|
45
|
+
cmd[:user]='user_test'
|
46
|
+
expect(cmd[:user]).to eq('user_test')
|
47
|
+
|
48
|
+
# StartTime
|
49
|
+
expect(cmd[:start_time]).to eq(nil)
|
50
|
+
cmd[:start_time]=Time.now
|
51
|
+
expect(cmd[:start_time]).not_to eq(nil)
|
52
|
+
|
53
|
+
# EndTime
|
54
|
+
expect(cmd[:end_time]).to eq(nil)
|
55
|
+
cmd[:end_time]=Time.now
|
56
|
+
expect(cmd[:end_time]).not_to eq(nil)
|
57
|
+
|
58
|
+
end
|
59
|
+
|
60
|
+
it "should be able to write to/load from JSON" do
|
61
|
+
cmd=Command.new("ruby --version")
|
62
|
+
expect(cmd[:timeout]).to eq(0)
|
63
|
+
expect(cmd[:input]).to eq("ruby --version")
|
64
|
+
cmd2=Command.new(JSON.parse(cmd.to_json))
|
65
|
+
expect(cmd2[:timeout]).to eq(0)
|
66
|
+
expect(cmd2[:input]).to eq("ruby --version")
|
67
|
+
end
|
68
|
+
|
69
|
+
it "should be able to execute rake command in specific directory" do
|
70
|
+
dir="#{File.dirname(__FILE__)}/tmp/rake_test"
|
71
|
+
FileUtils.mkdir_p(dir) if(!File.exists?(dir))
|
72
|
+
File.open("#{dir}/rakefile.rb","w") { |f|
|
73
|
+
f.puts "task :default do"
|
74
|
+
f.puts " puts 'rake_test'"
|
75
|
+
f.puts "end"
|
76
|
+
}
|
77
|
+
cmd=Command.new("rake")
|
78
|
+
cmd[:directory]=dir
|
79
|
+
cmd.execute
|
80
|
+
FileUtils.rm_r("#{File.dirname(__FILE__)}/tmp")
|
81
|
+
expect(cmd[:output].include?('rake_test')).to eq(true)
|
82
|
+
end
|
83
|
+
|
84
|
+
it "should be able to execute an array of commands" do
|
85
|
+
help=['git --help','rake --help','ruby --help']
|
86
|
+
help.execute
|
87
|
+
File.open('help.html','w'){|f|f.write(help.to_html)}
|
88
|
+
end
|
89
|
+
|
90
|
+
it "should be able to execute a hash with arrays or commands" do
|
91
|
+
commands=Hash.new
|
92
|
+
commands[:help]=['git --help','rake --help','ruby --help']
|
93
|
+
commands[:version]=['git --version','rake --version','ruby --version']
|
94
|
+
commands.execute
|
95
|
+
File.open('commands.html','w'){|f|f.write(commands.to_html)}
|
96
|
+
end
|
97
|
+
|
98
|
+
it "hsould be able to get the output" do
|
99
|
+
expect(Command.output('git --version').include?('git version')).to eq(true)
|
100
|
+
expect(Command.output('bogus --version').include?('bogus version')).to eq(false)
|
101
|
+
end
|
102
|
+
|
103
|
+
it "should be able to get the exit_code" do
|
104
|
+
expect(Command.exit_code('rake --version')).to eq(0)
|
105
|
+
expect(Command.exit_code('bogus --version')).not_to eq(0)
|
106
|
+
end
|
107
|
+
#it "should fail this test" do
|
108
|
+
# expect(false).to eq(true)
|
109
|
+
#end
|
110
110
|
end
|
data/spec/text_spec.rb
CHANGED
@@ -1,12 +1,12 @@
|
|
1
|
-
require_relative '../lib/text.rb'
|
2
|
-
|
3
|
-
describe Text do
|
4
|
-
it "should be able to replace text in file" do
|
5
|
-
FileUtils.mkdir('tmp') if(!File.exists?('tmp'))
|
6
|
-
File.open('tmp/test.txt','w'){|f|
|
7
|
-
f.write("test thing")
|
8
|
-
}
|
9
|
-
Text.replace_in_file('tmp/test.txt','thing','string')
|
10
|
-
expect(IO.read('tmp/test.txt').include?('test string')).to eq(true)
|
11
|
-
end
|
1
|
+
require_relative '../lib/text.rb'
|
2
|
+
|
3
|
+
describe Text do
|
4
|
+
it "should be able to replace text in file" do
|
5
|
+
FileUtils.mkdir('tmp') if(!File.exists?('tmp'))
|
6
|
+
File.open('tmp/test.txt','w'){|f|
|
7
|
+
f.write("test thing")
|
8
|
+
}
|
9
|
+
Text.replace_in_file('tmp/test.txt','thing','string')
|
10
|
+
expect(IO.read('tmp/test.txt').include?('test string')).to eq(true)
|
11
|
+
end
|
12
12
|
end
|
metadata
CHANGED
@@ -1,8 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: dev_commands
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
5
|
-
prerelease:
|
4
|
+
version: 0.0.23
|
6
5
|
platform: ruby
|
7
6
|
authors:
|
8
7
|
- Lou Parslow
|
@@ -14,161 +13,113 @@ dependencies:
|
|
14
13
|
- !ruby/object:Gem::Dependency
|
15
14
|
name: rake
|
16
15
|
requirement: !ruby/object:Gem::Requirement
|
17
|
-
none: false
|
18
16
|
requirements:
|
19
|
-
- -
|
17
|
+
- - '>='
|
20
18
|
- !ruby/object:Gem::Version
|
21
19
|
version: '0'
|
22
20
|
type: :runtime
|
23
21
|
prerelease: false
|
24
22
|
version_requirements: !ruby/object:Gem::Requirement
|
25
|
-
none: false
|
26
23
|
requirements:
|
27
|
-
- -
|
24
|
+
- - '>='
|
28
25
|
- !ruby/object:Gem::Version
|
29
26
|
version: '0'
|
30
27
|
- !ruby/object:Gem::Dependency
|
31
28
|
name: rspec
|
32
29
|
requirement: !ruby/object:Gem::Requirement
|
33
|
-
none: false
|
34
30
|
requirements:
|
35
|
-
- -
|
31
|
+
- - '>='
|
36
32
|
- !ruby/object:Gem::Version
|
37
33
|
version: '0'
|
38
34
|
type: :runtime
|
39
35
|
prerelease: false
|
40
36
|
version_requirements: !ruby/object:Gem::Requirement
|
41
|
-
none: false
|
42
37
|
requirements:
|
43
|
-
- -
|
44
|
-
- !ruby/object:Gem::Version
|
45
|
-
version: '0'
|
46
|
-
- !ruby/object:Gem::Dependency
|
47
|
-
name: json
|
48
|
-
requirement: !ruby/object:Gem::Requirement
|
49
|
-
none: false
|
50
|
-
requirements:
|
51
|
-
- - ! '>='
|
52
|
-
- !ruby/object:Gem::Version
|
53
|
-
version: '0'
|
54
|
-
type: :runtime
|
55
|
-
prerelease: false
|
56
|
-
version_requirements: !ruby/object:Gem::Requirement
|
57
|
-
none: false
|
58
|
-
requirements:
|
59
|
-
- - ! '>='
|
38
|
+
- - '>='
|
60
39
|
- !ruby/object:Gem::Version
|
61
40
|
version: '0'
|
62
41
|
- !ruby/object:Gem::Dependency
|
63
42
|
name: yard
|
64
43
|
requirement: !ruby/object:Gem::Requirement
|
65
|
-
none: false
|
66
44
|
requirements:
|
67
|
-
- -
|
45
|
+
- - '>='
|
68
46
|
- !ruby/object:Gem::Version
|
69
47
|
version: '0'
|
70
48
|
type: :runtime
|
71
49
|
prerelease: false
|
72
50
|
version_requirements: !ruby/object:Gem::Requirement
|
73
|
-
none: false
|
74
51
|
requirements:
|
75
|
-
- -
|
52
|
+
- - '>='
|
76
53
|
- !ruby/object:Gem::Version
|
77
54
|
version: '0'
|
78
55
|
- !ruby/object:Gem::Dependency
|
79
56
|
name: bundler
|
80
57
|
requirement: !ruby/object:Gem::Requirement
|
81
|
-
none: false
|
82
58
|
requirements:
|
83
|
-
- -
|
59
|
+
- - '>='
|
84
60
|
- !ruby/object:Gem::Version
|
85
61
|
version: '0'
|
86
62
|
type: :runtime
|
87
63
|
prerelease: false
|
88
64
|
version_requirements: !ruby/object:Gem::Requirement
|
89
|
-
none: false
|
90
65
|
requirements:
|
91
|
-
- -
|
66
|
+
- - '>='
|
92
67
|
- !ruby/object:Gem::Version
|
93
68
|
version: '0'
|
94
69
|
- !ruby/object:Gem::Dependency
|
95
70
|
name: rake
|
96
71
|
requirement: !ruby/object:Gem::Requirement
|
97
|
-
none: false
|
98
72
|
requirements:
|
99
|
-
- -
|
73
|
+
- - '>='
|
100
74
|
- !ruby/object:Gem::Version
|
101
75
|
version: '0'
|
102
76
|
type: :development
|
103
77
|
prerelease: false
|
104
78
|
version_requirements: !ruby/object:Gem::Requirement
|
105
|
-
none: false
|
106
79
|
requirements:
|
107
|
-
- -
|
80
|
+
- - '>='
|
108
81
|
- !ruby/object:Gem::Version
|
109
82
|
version: '0'
|
110
83
|
- !ruby/object:Gem::Dependency
|
111
84
|
name: rspec
|
112
85
|
requirement: !ruby/object:Gem::Requirement
|
113
|
-
none: false
|
114
|
-
requirements:
|
115
|
-
- - ! '>='
|
116
|
-
- !ruby/object:Gem::Version
|
117
|
-
version: '0'
|
118
|
-
type: :development
|
119
|
-
prerelease: false
|
120
|
-
version_requirements: !ruby/object:Gem::Requirement
|
121
|
-
none: false
|
122
|
-
requirements:
|
123
|
-
- - ! '>='
|
124
|
-
- !ruby/object:Gem::Version
|
125
|
-
version: '0'
|
126
|
-
- !ruby/object:Gem::Dependency
|
127
|
-
name: json
|
128
|
-
requirement: !ruby/object:Gem::Requirement
|
129
|
-
none: false
|
130
86
|
requirements:
|
131
|
-
- -
|
87
|
+
- - '>='
|
132
88
|
- !ruby/object:Gem::Version
|
133
89
|
version: '0'
|
134
90
|
type: :development
|
135
91
|
prerelease: false
|
136
92
|
version_requirements: !ruby/object:Gem::Requirement
|
137
|
-
none: false
|
138
93
|
requirements:
|
139
|
-
- -
|
94
|
+
- - '>='
|
140
95
|
- !ruby/object:Gem::Version
|
141
96
|
version: '0'
|
142
97
|
- !ruby/object:Gem::Dependency
|
143
98
|
name: yard
|
144
99
|
requirement: !ruby/object:Gem::Requirement
|
145
|
-
none: false
|
146
100
|
requirements:
|
147
|
-
- -
|
101
|
+
- - '>='
|
148
102
|
- !ruby/object:Gem::Version
|
149
103
|
version: '0'
|
150
104
|
type: :development
|
151
105
|
prerelease: false
|
152
106
|
version_requirements: !ruby/object:Gem::Requirement
|
153
|
-
none: false
|
154
107
|
requirements:
|
155
|
-
- -
|
108
|
+
- - '>='
|
156
109
|
- !ruby/object:Gem::Version
|
157
110
|
version: '0'
|
158
111
|
- !ruby/object:Gem::Dependency
|
159
112
|
name: bundler
|
160
113
|
requirement: !ruby/object:Gem::Requirement
|
161
|
-
none: false
|
162
114
|
requirements:
|
163
|
-
- -
|
115
|
+
- - '>='
|
164
116
|
- !ruby/object:Gem::Version
|
165
117
|
version: '0'
|
166
118
|
type: :development
|
167
119
|
prerelease: false
|
168
120
|
version_requirements: !ruby/object:Gem::Requirement
|
169
|
-
none: false
|
170
121
|
requirements:
|
171
|
-
- -
|
122
|
+
- - '>='
|
172
123
|
- !ruby/object:Gem::Version
|
173
124
|
version: '0'
|
174
125
|
description: execution of system commands
|
@@ -197,10 +148,10 @@ files:
|
|
197
148
|
- lib/setup.rb
|
198
149
|
- lib/test.rb
|
199
150
|
- lib/text.rb
|
200
|
-
- lib/
|
151
|
+
- lib/timer.rb
|
201
152
|
- lib/update.rb
|
202
|
-
- spec/commands_spec.rb
|
203
153
|
- spec/command_spec.rb
|
154
|
+
- spec/commands_spec.rb
|
204
155
|
- spec/gem-example/rakefile.rb
|
205
156
|
- spec/text_spec.rb
|
206
157
|
- LICENSE
|
@@ -208,27 +159,26 @@ files:
|
|
208
159
|
homepage: http://github.com/lou-parslow/dev_commands.gem
|
209
160
|
licenses:
|
210
161
|
- Apache 2.0
|
162
|
+
metadata: {}
|
211
163
|
post_install_message:
|
212
164
|
rdoc_options: []
|
213
165
|
require_paths:
|
214
166
|
- lib
|
215
167
|
required_ruby_version: !ruby/object:Gem::Requirement
|
216
|
-
none: false
|
217
168
|
requirements:
|
218
|
-
- -
|
169
|
+
- - '>='
|
219
170
|
- !ruby/object:Gem::Version
|
220
171
|
version: '0'
|
221
172
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
222
|
-
none: false
|
223
173
|
requirements:
|
224
|
-
- -
|
174
|
+
- - '>='
|
225
175
|
- !ruby/object:Gem::Version
|
226
176
|
version: '0'
|
227
177
|
requirements: []
|
228
178
|
rubyforge_project:
|
229
|
-
rubygems_version:
|
179
|
+
rubygems_version: 2.0.14
|
230
180
|
signing_key:
|
231
|
-
specification_version:
|
181
|
+
specification_version: 4
|
232
182
|
summary: gem to execute system commands
|
233
183
|
test_files: []
|
234
184
|
has_rdoc:
|