victor-cli 0.4.1 → 0.4.2

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: f0ed324cb5ba0472bebcb5eb497c288d88c90f4ec4edb2fdb6d7a752323424ba
4
- data.tar.gz: 3ce04218f855f60ca6c303ac83a28f48d413508cad29619c02c3d9d3c1a05118
3
+ metadata.gz: d98e13f725c7cdf8cbc8c8347d6f8c3451156ea8821def4600c4887ad4d9a0f5
4
+ data.tar.gz: f0376f778644e49d7980764441d2fc2cd11b3c13f47ae57698d13faf0009bf0d
5
5
  SHA512:
6
- metadata.gz: 688682610e101eb864750e8c2e3906b7bea4d50ce7c8bb96fe7c748ae561bc85e46c924a8f37122af7ffc5c58f6b2dac30e365c09953547ddcdc47967d6704cd
7
- data.tar.gz: 989722f87a901add75dc40e2cf51f24d38209068178a4e6772d28940d8dcdc0e0a790c1fae8aeef6b782cb6b724b9ae7110ea7e7ea9ad25292f67cec04436e07
6
+ metadata.gz: 1a827fd286bfbe5242e037c9f66d5c3f2cd8a13b70e3ee599ddee0be679870e9f5b953422cfe44d276161edcf8b106ac5e9aec65c3b4bdb3c34543e5f1ff106d
7
+ data.tar.gz: f40b48786f747c6acd6782eb85ab777c93d611b0e56dde93d1ec02d579cf5c51c37fb9e490fa90d08da6178f56bb60853f3e5aa5bd2754e48db3195fb08cfc95
@@ -1,4 +1,4 @@
1
- require 'filewatcher'
1
+ require 'listen'
2
2
 
3
3
  module Victor
4
4
  module CLI
@@ -56,25 +56,36 @@ module Victor
56
56
  end
57
57
 
58
58
  def watch
59
- say "Watching #{ruby_file} for changes"
60
- file_watcher.watch do |changes|
61
- changes.each_value do |event|
62
- yield unless event == :deleted
63
- end
59
+ l = listener do |modified, added, _removed|
60
+ changes = modified + added
61
+ yield unless changes.empty?
64
62
  end
63
+ l.start
64
+ sleep
65
65
  end
66
66
 
67
67
  def watch_and_generate
68
- watch do
69
- generate
70
- rescue => e
71
- say! "ru`#{e.class}`\n#{e.message}"
68
+ say "Watching #{ruby_file} for changes"
69
+ safe_generate
70
+ begin
71
+ watch { safe_generate }
72
+ rescue Interrupt
73
+ say "\nGoodbye"
72
74
  end
73
75
  end
74
76
 
75
- def file_watcher
76
- @file_watcher ||= Filewatcher.new(ruby_file, immediate: true)
77
+ def safe_generate
78
+ generate
79
+ rescue => e
80
+ say! "ru`#{e.class}`\n#{e.message}"
77
81
  end
82
+
83
+ def listener(&)
84
+ Listen.to(ruby_dir, force_polling: true, latency: 3, only: ruby_glob, &)
85
+ end
86
+
87
+ def ruby_dir = @ruby_dir ||= File.dirname(ruby_file)
88
+ def ruby_glob = @ruby_glob ||= /\A#{Regexp.escape(File.basename(ruby_file))}\z/
78
89
  end
79
90
  end
80
91
  end
@@ -1,5 +1,5 @@
1
1
  module Victor
2
2
  module CLI
3
- VERSION = '0.4.1'
3
+ VERSION = '0.4.2'
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: victor-cli
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.1
4
+ version: 0.4.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Danny Ben Shitrit
@@ -39,19 +39,33 @@ dependencies:
39
39
  - !ruby/object:Gem::Version
40
40
  version: '1.7'
41
41
  - !ruby/object:Gem::Dependency
42
- name: filewatcher
42
+ name: listen
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
45
  - - "~>"
46
46
  - !ruby/object:Gem::Version
47
- version: '2.0'
47
+ version: '3.9'
48
48
  type: :runtime
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
52
  - - "~>"
53
53
  - !ruby/object:Gem::Version
54
- version: '2.0'
54
+ version: '3.9'
55
+ - !ruby/object:Gem::Dependency
56
+ name: logger
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - "~>"
60
+ - !ruby/object:Gem::Version
61
+ version: '1.7'
62
+ type: :runtime
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - "~>"
67
+ - !ruby/object:Gem::Version
68
+ version: '1.7'
55
69
  - !ruby/object:Gem::Dependency
56
70
  name: mister_bin
57
71
  requirement: !ruby/object:Gem::Requirement
@@ -136,20 +150,6 @@ dependencies:
136
150
  - - "~>"
137
151
  - !ruby/object:Gem::Version
138
152
  version: '0.4'
139
- - !ruby/object:Gem::Dependency
140
- name: logger
141
- requirement: !ruby/object:Gem::Requirement
142
- requirements:
143
- - - "~>"
144
- - !ruby/object:Gem::Version
145
- version: '1.6'
146
- type: :runtime
147
- prerelease: false
148
- version_requirements: !ruby/object:Gem::Requirement
149
- requirements:
150
- - - "~>"
151
- - !ruby/object:Gem::Version
152
- version: '1.6'
153
153
  description: CLI for Victor, the SVG Library
154
154
  email: db@dannyben.com
155
155
  executables:
@@ -202,7 +202,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
202
202
  - !ruby/object:Gem::Version
203
203
  version: '0'
204
204
  requirements: []
205
- rubygems_version: 3.6.9
205
+ rubygems_version: 4.0.3
206
206
  specification_version: 4
207
207
  summary: CLI for Victor, the SVG Library
208
208
  test_files: []