monkey-reloader 0.0.1 → 0.0.3
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/monkey-reloader.rb +44 -6
- data/lib/monkey-reloader/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 5743e94643dba7fb9fab7f37cbbcff4c17dc6aee
|
4
|
+
data.tar.gz: 29a6ad7d9a71ab739c63ef481b29b54858148c0a
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 6396da66d132cfc23a020b943ed9a3ea71a0b15ed067818bf2d12e5140cbb7c91dc9b48975f1b6aad936362b3d2953f30ba80e3af9470f19c5b9dd2827b2f760
|
7
|
+
data.tar.gz: 0dbce19a3933054b2e92014c1021f32ba3963b92b717d2f6c38c89889e6b818ed4884fdaef95ee15c9be0d46d10cf5dc7847d9b06ca174d3da16acb53e0d7a24
|
data/lib/monkey-reloader.rb
CHANGED
@@ -1,10 +1,48 @@
|
|
1
1
|
module MonkeyReloader
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
2
|
+
class << self
|
3
|
+
|
4
|
+
|
5
|
+
def init(blacklist = [])
|
6
|
+
@@blacklist = Array(blacklist)
|
7
|
+
update_hash
|
8
|
+
|
9
|
+
true
|
8
10
|
end
|
11
|
+
|
12
|
+
def load
|
13
|
+
files = changed_files.reject do |file|
|
14
|
+
@@blacklist.include? file
|
15
|
+
end
|
16
|
+
update_hash
|
17
|
+
|
18
|
+
files.each do |file|
|
19
|
+
Kernel.load file
|
20
|
+
end
|
21
|
+
end
|
22
|
+
|
23
|
+
|
24
|
+
private
|
25
|
+
|
26
|
+
def update_hash
|
27
|
+
@@hash = `git rev-parse HEAD`.strip
|
28
|
+
end
|
29
|
+
|
30
|
+
def changed_files
|
31
|
+
files = []
|
32
|
+
awk = "awk '{ print $2 }'"
|
33
|
+
|
34
|
+
# find recent changes
|
35
|
+
files += `git status -s | #{awk}`.split
|
36
|
+
|
37
|
+
# find committed changes if there was a branch change / rebase
|
38
|
+
files += `git diff --name-status HEAD..#{@@hash} | #{awk}`.split
|
39
|
+
|
40
|
+
# filter for ruby files and those that dissapeared during
|
41
|
+
# a branch change
|
42
|
+
files.select do |file|
|
43
|
+
/\.rb$/.match file and File.exists? file
|
44
|
+
end
|
45
|
+
end
|
46
|
+
|
9
47
|
end
|
10
48
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: monkey-reloader
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Daniel Pepper
|
@@ -20,7 +20,7 @@ extra_rdoc_files: []
|
|
20
20
|
files:
|
21
21
|
- lib/monkey-reloader.rb
|
22
22
|
- lib/monkey-reloader/version.rb
|
23
|
-
homepage:
|
23
|
+
homepage: https://github.com/d1hotpep/monkey_reloader
|
24
24
|
licenses:
|
25
25
|
- MIT
|
26
26
|
metadata: {}
|