scriptster 0.0.2 → 0.1.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 +4 -4
- data/lib/scriptster.rb +18 -14
- data/lib/scriptster/configuration.rb +184 -0
- data/lib/scriptster/logger.rb +45 -97
- data/lib/scriptster/shellcmd.rb +35 -34
- data/lib/scriptster/version.rb +1 -1
- data/scriptster.gemspec +1 -1
- metadata +4 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 717f92265d71abf28271c0da1d1c743d642d7c0d
|
4
|
+
data.tar.gz: b7c73d085a0686d41f40a18649264f9396515bc8
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: be02f5207e7ea2e71c87e1543628f9ffe40514ee72960e696af84e3277d4d7f780d544af1ec063195a39f4401bec540c1d0b98ed4a251436a92a368f37da2c17
|
7
|
+
data.tar.gz: f623e30ac8bf6ab3c371fb720c741770f96902787f5b02ad73c8b6790a10aad47ff537bbf9edf5e46089887d3a9d85c23645f45c3cd796d2fde787ad2be207ba
|
data/lib/scriptster.rb
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
# scriptster - A small library to make your scipts nicer
|
1
|
+
# scriptster - A small library to make your scipts a bit nicer
|
2
2
|
# Copyright (c) 2014 Radek Pazdera
|
3
3
|
|
4
4
|
# MIT License
|
@@ -23,24 +23,28 @@
|
|
23
23
|
require "scriptster/version"
|
24
24
|
require "scriptster/logger"
|
25
25
|
require "scriptster/shellcmd"
|
26
|
+
require "scriptster/configuration"
|
26
27
|
|
27
28
|
module Scriptster
|
28
|
-
|
29
|
-
|
29
|
+
def self.log(*args)
|
30
|
+
Logger::log *args
|
30
31
|
end
|
31
32
|
|
32
|
-
def
|
33
|
-
|
34
|
-
|
35
|
-
:verbosity => :informative,
|
36
|
-
:file => nil,
|
37
|
-
:time => true
|
38
|
-
}
|
33
|
+
def log(*args)
|
34
|
+
Logger::log *args
|
35
|
+
end
|
39
36
|
|
40
|
-
|
37
|
+
def self.cmd(*args)
|
38
|
+
ShellCmd.new *args
|
39
|
+
end
|
41
40
|
|
42
|
-
|
43
|
-
|
44
|
-
|
41
|
+
def cmd(*args)
|
42
|
+
ShellCmd.new *args
|
43
|
+
end
|
44
|
+
|
45
|
+
def self.configure
|
46
|
+
c = Configuration.new
|
47
|
+
yield c
|
48
|
+
c.apply
|
45
49
|
end
|
46
50
|
end
|
@@ -0,0 +1,184 @@
|
|
1
|
+
# scriptster - A small library to make your scipts a bit nicer
|
2
|
+
# Copyright (c) 2014 Radek Pazdera
|
3
|
+
|
4
|
+
# MIT License
|
5
|
+
|
6
|
+
# Permission is hereby granted, free of charge, to any person obtaining a copy
|
7
|
+
# of this software and associated documentation files (the "Software"), to deal
|
8
|
+
# in the Software without restriction, including without limitation the rights
|
9
|
+
# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
10
|
+
# copies of the Software, and to permit persons to whom the Software is
|
11
|
+
# furnished to do so, subject to the following conditions:
|
12
|
+
|
13
|
+
# The above copyright notice and this permission notice shall be included in
|
14
|
+
# all copies or substantial portions of the Software.
|
15
|
+
|
16
|
+
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
17
|
+
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
18
|
+
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
19
|
+
# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
20
|
+
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
21
|
+
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
22
|
+
|
23
|
+
require "scriptster/logger"
|
24
|
+
require "scriptster/shellcmd"
|
25
|
+
|
26
|
+
module Scriptster
|
27
|
+
class Configuration
|
28
|
+
attr_writer :name, :verbosity, :file, :timestamps, :scheme
|
29
|
+
|
30
|
+
def initialize
|
31
|
+
@name = File.basename($0)
|
32
|
+
@verbosity = :verbose
|
33
|
+
@file = nil
|
34
|
+
@timestamps = true
|
35
|
+
@scheme = :dark
|
36
|
+
end
|
37
|
+
|
38
|
+
# Put the settings from this object in effect
|
39
|
+
def apply
|
40
|
+
Logger.set_name @name if @name
|
41
|
+
Logger.set_verbosity @verbosity if @verbosity
|
42
|
+
Logger.set_file @file if @file
|
43
|
+
Logger.show_timestamps if @timestamps
|
44
|
+
|
45
|
+
ColourSchemes.send @scheme
|
46
|
+
end
|
47
|
+
end
|
48
|
+
|
49
|
+
module ColourSchemes
|
50
|
+
def self.dark
|
51
|
+
Tco::configure do |conf|
|
52
|
+
conf.names["green"] = "#99ad6a"
|
53
|
+
conf.names["yellow"] = "#d8ad4c"
|
54
|
+
conf.names["red"] = "#cc333f"
|
55
|
+
conf.names["light-grey"] = "#ababab"
|
56
|
+
conf.names["medium-grey"] = "#444444"
|
57
|
+
conf.names["dark-grey"] = "#2b2b2b"
|
58
|
+
conf.names["purple"] = "#90559e"
|
59
|
+
conf.names["blue"] = "#4d9eeb"
|
60
|
+
conf.names["orange"] = "#ff842a"
|
61
|
+
|
62
|
+
conf.styles["info"] = {
|
63
|
+
:fg => "green", :bg => "dark-grey",
|
64
|
+
:bright => false, :underline => false
|
65
|
+
}
|
66
|
+
conf.styles["info-message"] = {
|
67
|
+
:fg => "default", :bg => "default",
|
68
|
+
:bright => false, :underline => false
|
69
|
+
}
|
70
|
+
|
71
|
+
conf.styles["warn"] = {
|
72
|
+
:fg => "dark-grey", :bg => "yellow",
|
73
|
+
:bright => false, :underline => false
|
74
|
+
}
|
75
|
+
conf.styles["warn-message"] = {
|
76
|
+
:fg => "default", :bg => "default",
|
77
|
+
:bright => false, :underline => false
|
78
|
+
}
|
79
|
+
|
80
|
+
conf.styles["err"] = {
|
81
|
+
:fg => "dark-grey", :bg => "red",
|
82
|
+
:bright => false, :underline => false
|
83
|
+
}
|
84
|
+
conf.styles["err-message"] = {
|
85
|
+
:fg => "default", :bg => "default",
|
86
|
+
:bright => false, :underline => false
|
87
|
+
}
|
88
|
+
|
89
|
+
conf.styles["debug"] = {
|
90
|
+
:fg => "light-grey", :bg => "dark-grey",
|
91
|
+
:bright => false, :underline => false
|
92
|
+
}
|
93
|
+
conf.styles["debug-message"] = {
|
94
|
+
:fg => "medium-grey", :bg => "default",
|
95
|
+
:bright => false, :underline => false
|
96
|
+
}
|
97
|
+
|
98
|
+
conf.styles["name"] = {
|
99
|
+
:fg => "purple", :bg => "dark-grey",
|
100
|
+
:bright => false, :underline => false
|
101
|
+
}
|
102
|
+
conf.styles["highlight"] = {
|
103
|
+
:fg => "orange", :bg => "default",
|
104
|
+
:bright => false, :underline => false
|
105
|
+
}
|
106
|
+
conf.styles["cmd"] = {
|
107
|
+
:fg => "blue", :bg => "dark-grey",
|
108
|
+
:bright => false, :underline => false
|
109
|
+
}
|
110
|
+
conf.styles["timestamp"] = {
|
111
|
+
:fg => "medium-grey", :bg => "default",
|
112
|
+
:bright => false, :underline => false
|
113
|
+
}
|
114
|
+
end
|
115
|
+
end
|
116
|
+
|
117
|
+
def self.light
|
118
|
+
Tco::configure do |conf|
|
119
|
+
conf.names["green"] = "#99ad6a"
|
120
|
+
conf.names["yellow"] = "#d8ad4c"
|
121
|
+
conf.names["red"] = "#cc333f"
|
122
|
+
conf.names["light-grey"] = "#eeeeee"
|
123
|
+
conf.names["medium-grey"] = "#cccccc"
|
124
|
+
conf.names["dark-grey"] = "#2b2b2b"
|
125
|
+
conf.names["purple"] = "#90559e"
|
126
|
+
conf.names["blue"] = "#4d9eeb"
|
127
|
+
conf.names["orange"] = "#ff842a"
|
128
|
+
|
129
|
+
conf.styles["info"] = {
|
130
|
+
:fg => "green", :bg => "default",
|
131
|
+
:bright => false, :underline => false
|
132
|
+
}
|
133
|
+
conf.styles["info-message"] = {
|
134
|
+
:fg => "default", :bg => "default",
|
135
|
+
:bright => false, :underline => false
|
136
|
+
}
|
137
|
+
|
138
|
+
conf.styles["warn"] = {
|
139
|
+
:fg => "dark-grey", :bg => "yellow",
|
140
|
+
:bright => false, :underline => false
|
141
|
+
}
|
142
|
+
conf.styles["warn-message"] = {
|
143
|
+
:fg => "default", :bg => "default",
|
144
|
+
:bright => false, :underline => false
|
145
|
+
}
|
146
|
+
|
147
|
+
conf.styles["err"] = {
|
148
|
+
:fg => "dark-grey", :bg => "red",
|
149
|
+
:bright => false, :underline => false
|
150
|
+
}
|
151
|
+
conf.styles["err-message"] = {
|
152
|
+
:fg => "default", :bg => "default",
|
153
|
+
:bright => false, :underline => false
|
154
|
+
}
|
155
|
+
|
156
|
+
conf.styles["debug"] = {
|
157
|
+
:fg => "dark-grey", :bg => "default",
|
158
|
+
:bright => false, :underline => false
|
159
|
+
}
|
160
|
+
conf.styles["debug-message"] = {
|
161
|
+
:fg => "medium-grey", :bg => "default",
|
162
|
+
:bright => false, :underline => false
|
163
|
+
}
|
164
|
+
|
165
|
+
conf.styles["name"] = {
|
166
|
+
:fg => "purple", :bg => "light-grey",
|
167
|
+
:bright => false, :underline => false
|
168
|
+
}
|
169
|
+
conf.styles["highlight"] = {
|
170
|
+
:fg => "orange", :bg => "default",
|
171
|
+
:bright => false, :underline => false
|
172
|
+
}
|
173
|
+
conf.styles["cmd"] = {
|
174
|
+
:fg => "blue", :bg => "light-grey",
|
175
|
+
:bright => false, :underline => false
|
176
|
+
}
|
177
|
+
conf.styles["timestamp"] = {
|
178
|
+
:fg => "medium-grey", :bg => "default",
|
179
|
+
:bright => false, :underline => false
|
180
|
+
}
|
181
|
+
end
|
182
|
+
end
|
183
|
+
end
|
184
|
+
end
|
data/lib/scriptster/logger.rb
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
# scriptster - A small library to make your scipts nicer
|
1
|
+
# scriptster - A small library to make your scipts a bit nicer
|
2
2
|
# Copyright (c) 2014 Radek Pazdera
|
3
3
|
|
4
4
|
# MIT License
|
@@ -23,78 +23,35 @@
|
|
23
23
|
|
24
24
|
require "tco"
|
25
25
|
|
26
|
-
Tco::configure do |conf|
|
27
|
-
conf.names["green"] = "#99ad6a"
|
28
|
-
conf.names["yellow"] = "#d8ad4c"
|
29
|
-
conf.names["red"] = "#cc333f"
|
30
|
-
conf.names["light-grey"] = "#ababab"
|
31
|
-
conf.names["dark-grey"] = "#2b2b2b"
|
32
|
-
conf.names["purple"] = "#90559e"
|
33
|
-
conf.names["blue"] = "#4D9EEB"
|
34
|
-
conf.names["orange"] = "#ff842a"
|
35
|
-
conf.names["brown"] = "#6a4a3c"
|
36
|
-
|
37
|
-
conf.styles["info"] = {
|
38
|
-
:fg => "green",
|
39
|
-
:bg => "dark-grey",
|
40
|
-
:bright => false,
|
41
|
-
:underline => false
|
42
|
-
}
|
43
|
-
conf.styles["warn"] = {
|
44
|
-
:fg => "dark-grey",
|
45
|
-
:bg => "yellow",
|
46
|
-
:bright => false,
|
47
|
-
:underline => false
|
48
|
-
}
|
49
|
-
conf.styles["err"] = {
|
50
|
-
:fg => "dark-grey",
|
51
|
-
:bg => "red",
|
52
|
-
:bright => false,
|
53
|
-
:underline => false
|
54
|
-
}
|
55
|
-
conf.styles["debug"] = {
|
56
|
-
:fg => "light-grey",
|
57
|
-
:bg => "dark-grey",
|
58
|
-
:bright => false,
|
59
|
-
:underline => false
|
60
|
-
}
|
61
|
-
|
62
|
-
conf.styles["script-name"] = {
|
63
|
-
:fg => "purple",
|
64
|
-
:bg => "dark-grey",
|
65
|
-
:bright => false,
|
66
|
-
:underline => false
|
67
|
-
}
|
68
|
-
end
|
69
|
-
|
70
26
|
module Scriptster
|
71
27
|
module Logger
|
72
|
-
@@
|
28
|
+
@@name = nil
|
73
29
|
@@file = nil
|
74
|
-
@@
|
30
|
+
@@timestamps = false
|
75
31
|
|
76
32
|
@@message_types = {
|
77
33
|
:info => "info",
|
78
|
-
:warn => "
|
79
|
-
:err => "
|
80
|
-
:debug => "
|
34
|
+
:warn => "WARN",
|
35
|
+
:err => "ERR!",
|
36
|
+
:debug => "dbg?"
|
81
37
|
}
|
82
38
|
|
83
39
|
@@verbosity = :verbose
|
84
|
-
@@
|
85
|
-
:
|
86
|
-
:
|
87
|
-
:
|
88
|
-
:
|
40
|
+
@@verbosity_levels = {
|
41
|
+
:quiet => 0,
|
42
|
+
:essential => 1,
|
43
|
+
:important => 2,
|
44
|
+
:informative => 3,
|
45
|
+
:verbose => 4
|
89
46
|
}
|
90
47
|
|
91
|
-
def self.
|
92
|
-
@@
|
48
|
+
def self.set_name(name)
|
49
|
+
@@name = name
|
93
50
|
end
|
94
51
|
|
95
52
|
def self.set_verbosity(level)
|
96
53
|
msg = "Message verbosity level not recognised (#{})."
|
97
|
-
raise msg unless @@
|
54
|
+
raise msg unless @@verbosity_levels.has_key? level.to_sym
|
98
55
|
|
99
56
|
@@verbosity = level.to_sym
|
100
57
|
end
|
@@ -102,54 +59,45 @@ module Scriptster
|
|
102
59
|
def self.set_file(file)
|
103
60
|
@@file.close if @@file
|
104
61
|
@@file = nil
|
105
|
-
@@file = File.open file, "w" if
|
62
|
+
@@file = File.open file, "w" if file
|
106
63
|
end
|
107
64
|
|
108
|
-
def self.
|
109
|
-
@@
|
65
|
+
def self.show_timestamps
|
66
|
+
@@timestamps = true
|
110
67
|
end
|
111
68
|
|
112
|
-
def self.log(msg_type, msg, verbosity
|
113
|
-
|
114
|
-
|
115
|
-
|
116
|
-
|
117
|
-
|
118
|
-
|
119
|
-
|
120
|
-
|
121
|
-
|
122
|
-
|
123
|
-
|
124
|
-
|
125
|
-
|
126
|
-
|
127
|
-
|
128
|
-
|
129
|
-
|
130
|
-
|
131
|
-
|
132
|
-
|
133
|
-
verbosity = :verbose unless verbosity
|
134
|
-
end
|
135
|
-
|
136
|
-
if verbosity <= @@verbosity
|
137
|
-
out << " " << msg.chomp
|
138
|
-
puts out
|
69
|
+
def self.log(msg_type, msg, verbosity=:informative)
|
70
|
+
if @@verbosity_levels[verbosity] <= @@verbosity_levels[@@verbosity]
|
71
|
+
ts = if @@timestamps
|
72
|
+
Time.now.strftime("%Y-%m-%d %H:%M").style("timestamp") + " "
|
73
|
+
else
|
74
|
+
""
|
75
|
+
end
|
76
|
+
|
77
|
+
name = if @@name != nil && @@name.length > 0
|
78
|
+
@@name.style("name") + " "
|
79
|
+
else
|
80
|
+
""
|
81
|
+
end
|
82
|
+
|
83
|
+
msg.chomp!
|
84
|
+
msg = Tco::parse msg, Tco::get_style("#{msg_type.to_s}-message")
|
85
|
+
|
86
|
+
line = ts << name.style("name") <<
|
87
|
+
@@message_types[msg_type].style(msg_type.to_s) <<
|
88
|
+
" " << msg
|
89
|
+
puts line
|
139
90
|
STDOUT.flush
|
140
91
|
|
141
|
-
|
142
|
-
|
143
|
-
|
92
|
+
if @@file
|
93
|
+
# Strip colours from the message before writing to a file
|
94
|
+
@@file.puts line.gsub(/\033\[[0-9]+(;[0-9]+){0,2}m/, "")
|
95
|
+
end
|
144
96
|
end
|
145
97
|
end
|
146
98
|
|
147
|
-
def log(msg_type, msg, verbosity
|
148
|
-
Logger::log msg_type, msg
|
149
|
-
end
|
150
|
-
|
151
|
-
def tag(tag, msg)
|
152
|
-
tag.fg("blue").bg("dark-grey") << " " << msg
|
99
|
+
def log(msg_type, msg, verbosity=:informative)
|
100
|
+
Logger::log msg_type, msg, verbosity
|
153
101
|
end
|
154
102
|
end
|
155
103
|
end
|
data/lib/scriptster/shellcmd.rb
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
# scriptster - A small library to make your scipts nicer
|
1
|
+
# scriptster - A small library to make your scipts a bit nicer
|
2
2
|
# Copyright (c) 2014 Radek Pazdera
|
3
3
|
|
4
4
|
# MIT License
|
@@ -37,8 +37,8 @@ module Scriptster
|
|
37
37
|
|
38
38
|
@show_out = false
|
39
39
|
@show_err = true
|
40
|
-
@
|
41
|
-
@tag =
|
40
|
+
@raise = true
|
41
|
+
@tag = cmd.split[0]
|
42
42
|
@expect = 0
|
43
43
|
|
44
44
|
opts.each do |k, v|
|
@@ -54,45 +54,46 @@ module Scriptster
|
|
54
54
|
private
|
55
55
|
def run
|
56
56
|
Open3.popen3(@cmd) do |stdin, stdout, stderr, wait_thr|
|
57
|
-
pid = wait_thr.pid
|
58
|
-
|
59
57
|
stdout_buffer=""
|
60
58
|
stderr_buffer=""
|
61
59
|
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
|
60
|
+
streams = [stdout, stderr]
|
61
|
+
while streams.length > 0
|
62
|
+
IO.select(streams).flatten.compact.each do |io|
|
63
|
+
if io.eof?
|
64
|
+
streams.delete io
|
65
|
+
next
|
67
66
|
end
|
68
|
-
break if stdout.closed? && stderr.closed?
|
69
|
-
|
70
|
-
stdout_buffer.sub!(/.*\n/m) do
|
71
|
-
@out += $&
|
72
|
-
if @show_out
|
73
|
-
$&.strip.split("\n").each do |line|
|
74
|
-
line = tag(@tag, line) if @tag
|
75
|
-
log(:info, line)
|
76
|
-
end
|
77
|
-
end
|
78
67
|
|
79
|
-
|
80
|
-
|
68
|
+
stdout_buffer += io.readpartial(1) if io.fileno == stdout.fileno
|
69
|
+
stderr_buffer += io.readpartial(1) if io.fileno == stderr.fileno
|
70
|
+
end
|
81
71
|
|
82
|
-
|
83
|
-
|
84
|
-
|
85
|
-
|
86
|
-
|
87
|
-
|
88
|
-
|
72
|
+
# Remove and process all the finished lines from the output buffer
|
73
|
+
stdout_buffer.sub!(/.*\n/m) do
|
74
|
+
@out += $&
|
75
|
+
if @show_out
|
76
|
+
$&.strip.split("\n").each do |line|
|
77
|
+
line = @tag.style("cmd") + " " + line if @tag
|
78
|
+
log(:info, line)
|
89
79
|
end
|
80
|
+
end
|
90
81
|
|
91
|
-
|
82
|
+
''
|
83
|
+
end
|
84
|
+
|
85
|
+
# Remove and process all the finished lines from the error buffer
|
86
|
+
stderr_buffer.sub!(/.*\n/m) do
|
87
|
+
@err += $&
|
88
|
+
if @show_err
|
89
|
+
$&.strip.split("\n").each do |line|
|
90
|
+
line = @tag.style("cmd") + " " + line if @tag
|
91
|
+
log(:err, line)
|
92
|
+
end
|
92
93
|
end
|
94
|
+
|
95
|
+
''
|
93
96
|
end
|
94
|
-
rescue EOFError
|
95
|
-
;
|
96
97
|
end
|
97
98
|
|
98
99
|
@status = wait_thr.value
|
@@ -103,11 +104,11 @@ module Scriptster
|
|
103
104
|
unless @show_err
|
104
105
|
err_lines = @err.split "\n"
|
105
106
|
err_lines.each do |l|
|
106
|
-
l =
|
107
|
+
l = @tag.style("cmd") + " " + l if @tag
|
107
108
|
log(:err, l.chomp)
|
108
109
|
end
|
109
110
|
end
|
110
|
-
raise "'#{@cmd}' failed!"
|
111
|
+
raise "'#{@cmd}' failed!" if @raise
|
111
112
|
end
|
112
113
|
end
|
113
114
|
end
|
data/lib/scriptster/version.rb
CHANGED
data/scriptster.gemspec
CHANGED
@@ -8,7 +8,7 @@ Gem::Specification.new do |spec|
|
|
8
8
|
spec.version = Scriptster::VERSION
|
9
9
|
spec.authors = ["Radek Pazdera"]
|
10
10
|
spec.email = ["radek@pazdera.co.uk"]
|
11
|
-
spec.summary = %q{
|
11
|
+
spec.summary = %q{Making your Ruby scipts hip.}
|
12
12
|
spec.description = %q{A simple library for making your scipts a bit nicer.}
|
13
13
|
spec.homepage = "https://github.com/pazdera/scriptster"
|
14
14
|
spec.license = "MIT"
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: scriptster
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0
|
4
|
+
version: 0.1.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Radek Pazdera
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2014-10-
|
11
|
+
date: 2014-10-26 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: tco
|
@@ -65,6 +65,7 @@ files:
|
|
65
65
|
- README.md
|
66
66
|
- Rakefile
|
67
67
|
- lib/scriptster.rb
|
68
|
+
- lib/scriptster/configuration.rb
|
68
69
|
- lib/scriptster/logger.rb
|
69
70
|
- lib/scriptster/shellcmd.rb
|
70
71
|
- lib/scriptster/version.rb
|
@@ -92,5 +93,5 @@ rubyforge_project:
|
|
92
93
|
rubygems_version: 2.2.2
|
93
94
|
signing_key:
|
94
95
|
specification_version: 4
|
95
|
-
summary:
|
96
|
+
summary: Making your Ruby scipts hip.
|
96
97
|
test_files: []
|