winr 1.0.6 → 1.1.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/bin/winr +17 -7
- data/bin/winr-scan.rb +24 -0
- data/bin/winr.yaml +10 -0
- data/winr.gemspec +1 -1
- metadata +5 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 82fb01b69c84385579f3004548ec2f191b144da19bf4e357b1dc585b83015a17
|
4
|
+
data.tar.gz: d640496674a3504eee59be7b1fbb84de642d5e91ca5a2b469a8821d947219067
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 4acf7eb25952a98e41892ee2ee336de39d207b02e483f8b4ac7fa268fa2c6de50ea13b1e8aec50ae871e10b718d16cb9d0b9f3485a4ea84f03fee285549be671
|
7
|
+
data.tar.gz: 43806ccb95fd0f33f4cfd91bb2b18bd89ad7d62c133a606edff7df68a56341a30e5ea8c4fabd04b9d54fc6f8328f2bada26289f755a16ab1440d3f5441def126
|
data/bin/winr
CHANGED
@@ -20,6 +20,7 @@ trap("INT") { abort "\n" }
|
|
20
20
|
require "erb"
|
21
21
|
require "optparse"
|
22
22
|
require "shellwords"
|
23
|
+
require "yaml"
|
23
24
|
require "tempfile"
|
24
25
|
|
25
26
|
OptionParser.new.instance_eval do
|
@@ -225,15 +226,24 @@ end
|
|
225
226
|
|
226
227
|
# ==[ Workflow ]==
|
227
228
|
|
228
|
-
#
|
229
|
-
winr = ARGV.first or abort "missing winr script"
|
229
|
+
# compile the template
|
230
230
|
tmpl = ERB.new(template)
|
231
231
|
|
232
|
-
#
|
233
|
-
|
234
|
-
|
235
|
-
|
236
|
-
|
232
|
+
# read the winr script
|
233
|
+
winr = ARGV.first or abort "missing winr script"
|
234
|
+
case File.extname(winr)
|
235
|
+
when ".yaml"
|
236
|
+
$config = YAML.load(File.read(winr))
|
237
|
+
es = [ {} ]
|
238
|
+
cs = [ begin: $config["begin"] ]
|
239
|
+
ts = $config["tasks"].map {|k,v| { name: k, script: v } }
|
240
|
+
when ".rb"
|
241
|
+
$config = eval(File.read(winr))
|
242
|
+
es = $config.environments || [{}]
|
243
|
+
cs = $config.contexts || [{}]
|
244
|
+
ts = $config.tasks || [{}]
|
245
|
+
else abort "unknown winr script format '#{winr}'"
|
246
|
+
end
|
237
247
|
|
238
248
|
# adjust script fields, if needed
|
239
249
|
[*es, *cs].each do |item|
|
data/bin/winr-scan.rb
ADDED
@@ -0,0 +1,24 @@
|
|
1
|
+
{
|
2
|
+
contexts: [
|
3
|
+
{
|
4
|
+
begin: <<~"|".strip
|
5
|
+
require "strscan"
|
6
|
+
scanner = StringScanner.new("test string")
|
7
|
+
|
|
8
|
+
}
|
9
|
+
],
|
10
|
+
tasks: [
|
11
|
+
{
|
12
|
+
name: "regexp_pattern",
|
13
|
+
script: 'scanner.scan(/\w/)'
|
14
|
+
},
|
15
|
+
{
|
16
|
+
name: "regexp_literal",
|
17
|
+
script: 'scanner.scan(/test/)'
|
18
|
+
},
|
19
|
+
{
|
20
|
+
name: "string",
|
21
|
+
script: 'scanner.scan("test")'
|
22
|
+
},
|
23
|
+
]
|
24
|
+
}
|
data/bin/winr.yaml
ADDED
data/winr.gemspec
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: winr
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0
|
4
|
+
version: 1.1.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Steve Shreeve
|
@@ -14,6 +14,8 @@ description: A quick and lightweight benchmarking tool for Ruby
|
|
14
14
|
email: steve.shreeve@gmail.com
|
15
15
|
executables:
|
16
16
|
- winr
|
17
|
+
- winr-scan.rb
|
18
|
+
- winr.yaml
|
17
19
|
extensions: []
|
18
20
|
extra_rdoc_files: []
|
19
21
|
files:
|
@@ -21,6 +23,8 @@ files:
|
|
21
23
|
- LICENSE
|
22
24
|
- README.md
|
23
25
|
- bin/winr
|
26
|
+
- bin/winr-scan.rb
|
27
|
+
- bin/winr.yaml
|
24
28
|
- test/sum.rb
|
25
29
|
- winr.gemspec
|
26
30
|
homepage: https://github.com/shreeve/winr
|