rego 1.5.2 → 1.6.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 +15 -0
- data/bin/rego +42 -3
- data/lib/rego.rb +1 -1
- data/rego.gemspec +1 -1
- metadata +5 -11
checksums.yaml
ADDED
@@ -0,0 +1,15 @@
|
|
1
|
+
---
|
2
|
+
!binary "U0hBMQ==":
|
3
|
+
metadata.gz: !binary |-
|
4
|
+
NDBmMTk2ZTFiMWNkODIxZjNmYjg1NTQ3ZGVjNzYyMWU3Mjk1MjkxNQ==
|
5
|
+
data.tar.gz: !binary |-
|
6
|
+
NTE5Mzc1OWY4NzExOWE2YTgzNDZmNmExMjEzMTZjYzBhMWM5OTAxZQ==
|
7
|
+
!binary "U0hBNTEy":
|
8
|
+
metadata.gz: !binary |-
|
9
|
+
OGIwNGE0NDAwMjUzNTViN2E5MjIzNDdlNzE4ZGU4YTNhZjEwOTU0MTEzMTJm
|
10
|
+
ZmJkNTMwNTJkYTRhNDNlNzYxYjNkNzFjOGQwZWJmYTk0NzJiYWZmMTFjMzcy
|
11
|
+
MzVlMjIyZjA0ZWY5YjViYzI0OWQ1NGQ4ZGE0ZTllN2E2ZTFkNGI=
|
12
|
+
data.tar.gz: !binary |-
|
13
|
+
NzAzNzU5OThkMGY4YmEyYzk5Nzc3MmI1MzZhNWM2ZTg0NTg5NDRlMTRlYjQ1
|
14
|
+
NzhmYTVmZDNlNTFkNTA0NWNlNDE4MWRkMDdlNGViZmJmNDA0NzA2NjNiZjI1
|
15
|
+
MDlmYjMyYmVlZmU3MGJhZGE5NmJhZGRiNmFjNTRmN2Q0YWE5YzM=
|
data/bin/rego
CHANGED
@@ -84,12 +84,14 @@ Main {
|
|
84
84
|
end
|
85
85
|
|
86
86
|
def loop_watching_files_and_running_commands
|
87
|
+
@initial_directories = []
|
87
88
|
@directories = []
|
88
89
|
@files = []
|
89
90
|
|
90
91
|
@paths.each do |path|
|
91
92
|
if test(?d, path)
|
92
93
|
@directories.push(Rego.realpath(path))
|
94
|
+
@initial_directories.push(Rego.realpath(path))
|
93
95
|
else
|
94
96
|
@files.push(Rego.realpath(path))
|
95
97
|
@directories.push(Rego.realpath(File.dirname(path)))
|
@@ -135,19 +137,54 @@ Main {
|
|
135
137
|
end
|
136
138
|
|
137
139
|
#
|
138
|
-
|
140
|
+
q = Queue.new
|
141
|
+
|
142
|
+
Thread.new do
|
143
|
+
loop do
|
144
|
+
rego.call(q.pop)
|
145
|
+
end
|
146
|
+
end
|
147
|
+
|
139
148
|
|
140
149
|
#
|
141
150
|
fsevent = FSEvent.new
|
142
151
|
|
143
152
|
options = {
|
144
|
-
:latency => 0.
|
153
|
+
:latency => 0.01,
|
145
154
|
:no_defer => true,
|
146
155
|
:file_events => true,
|
147
156
|
:since_when => 0
|
148
157
|
}
|
149
158
|
|
150
|
-
|
159
|
+
watching = (@files + @directories).inject(Hash.new){|hash, path| hash.update(path => true)}
|
160
|
+
|
161
|
+
fsevent.watch(@files + @directories, options) do |*args|
|
162
|
+
args.flatten.compact.each do |path|
|
163
|
+
path =
|
164
|
+
begin
|
165
|
+
Rego.realpath(path)
|
166
|
+
rescue Object
|
167
|
+
next
|
168
|
+
end
|
169
|
+
|
170
|
+
@initial_directories.each do |directory|
|
171
|
+
if path =~ /^#{ Regexp.escape(directory) }\b/
|
172
|
+
watching[path] = true
|
173
|
+
end
|
174
|
+
end
|
175
|
+
|
176
|
+
if watching[path]
|
177
|
+
before = stats[path]
|
178
|
+
after = File.stat(path)
|
179
|
+
|
180
|
+
if before.nil? or after.mtime > before.mtime
|
181
|
+
stats[path] = after
|
182
|
+
q.push(path)
|
183
|
+
end
|
184
|
+
end
|
185
|
+
end
|
186
|
+
|
187
|
+
=begin
|
151
188
|
unless $running
|
152
189
|
$running = true
|
153
190
|
|
@@ -175,6 +212,7 @@ Main {
|
|
175
212
|
end
|
176
213
|
end
|
177
214
|
$running = false
|
215
|
+
=end
|
178
216
|
end
|
179
217
|
|
180
218
|
begin
|
@@ -270,6 +308,7 @@ if false
|
|
270
308
|
end
|
271
309
|
|
272
310
|
require 'pathname'
|
311
|
+
require 'thread'
|
273
312
|
|
274
313
|
this = Pathname.new(__FILE__).realpath.to_s
|
275
314
|
bindir = File.dirname(this)
|
data/lib/rego.rb
CHANGED
data/rego.gemspec
CHANGED
metadata
CHANGED
@@ -1,20 +1,18 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rego
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
5
|
-
prerelease:
|
4
|
+
version: 1.6.0
|
6
5
|
platform: ruby
|
7
6
|
authors:
|
8
7
|
- Ara T. Howard
|
9
8
|
autorequire:
|
10
9
|
bindir: bin
|
11
10
|
cert_chain: []
|
12
|
-
date: 2013-
|
11
|
+
date: 2013-11-04 00:00:00.000000000 Z
|
13
12
|
dependencies:
|
14
13
|
- !ruby/object:Gem::Dependency
|
15
14
|
name: main
|
16
15
|
requirement: !ruby/object:Gem::Requirement
|
17
|
-
none: false
|
18
16
|
requirements:
|
19
17
|
- - ! '>='
|
20
18
|
- !ruby/object:Gem::Version
|
@@ -22,7 +20,6 @@ dependencies:
|
|
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
|
@@ -30,7 +27,6 @@ dependencies:
|
|
30
27
|
- !ruby/object:Gem::Dependency
|
31
28
|
name: rb-fsevent
|
32
29
|
requirement: !ruby/object:Gem::Requirement
|
33
|
-
none: false
|
34
30
|
requirements:
|
35
31
|
- - ! '>='
|
36
32
|
- !ruby/object:Gem::Version
|
@@ -38,7 +34,6 @@ dependencies:
|
|
38
34
|
type: :runtime
|
39
35
|
prerelease: false
|
40
36
|
version_requirements: !ruby/object:Gem::Requirement
|
41
|
-
none: false
|
42
37
|
requirements:
|
43
38
|
- - ! '>='
|
44
39
|
- !ruby/object:Gem::Version
|
@@ -58,26 +53,25 @@ files:
|
|
58
53
|
- rego.gemspec
|
59
54
|
homepage: https://github.com/ahoward/rego
|
60
55
|
licenses: []
|
56
|
+
metadata: {}
|
61
57
|
post_install_message:
|
62
58
|
rdoc_options: []
|
63
59
|
require_paths:
|
64
60
|
- lib
|
65
61
|
required_ruby_version: !ruby/object:Gem::Requirement
|
66
|
-
none: false
|
67
62
|
requirements:
|
68
63
|
- - ! '>='
|
69
64
|
- !ruby/object:Gem::Version
|
70
65
|
version: '0'
|
71
66
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
72
|
-
none: false
|
73
67
|
requirements:
|
74
68
|
- - ! '>='
|
75
69
|
- !ruby/object:Gem::Version
|
76
70
|
version: '0'
|
77
71
|
requirements: []
|
78
72
|
rubyforge_project: codeforpeople
|
79
|
-
rubygems_version:
|
73
|
+
rubygems_version: 2.0.3
|
80
74
|
signing_key:
|
81
|
-
specification_version:
|
75
|
+
specification_version: 4
|
82
76
|
summary: rego
|
83
77
|
test_files: []
|