filewatcher 2.1.0 → 3.0.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/filewatcher/snapshot.rb +6 -5
- data/lib/filewatcher/spec_helper/ruby_watch_run.rb +1 -1
- data/lib/filewatcher/spec_helper/watch_run.rb +20 -20
- data/lib/filewatcher/spec_helper.rb +1 -1
- data/lib/filewatcher/version.rb +1 -1
- data/spec/examples.txt +7 -7
- data/spec/filewatcher_spec.rb +16 -14
- metadata +12 -155
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 25f23553b187f2173b966b5a278bf7948f855390b5184196626b417b5ac1b190
|
|
4
|
+
data.tar.gz: 469558d39224bf9116d9b54a99ac962de9f6a22db295f28b5fae65c2f3808672
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: b044368afdc3d968e9ec27d726133e7fb64508411a2e15dba47c0492c059dc95bac3c6d3844c957d97f4dee815582efd5ca8dc75b535ad0040860600aadc1449
|
|
7
|
+
data.tar.gz: 1fd293c552bc6dfc32a3dbca59aae016b5b294a8012174b15a11ee44ca16e0cd1d0666ddd38b1449981b29c080531656865e19cde089d026b905c7d238f2797f
|
data/lib/filewatcher/snapshot.rb
CHANGED
|
@@ -6,7 +6,8 @@ class Filewatcher
|
|
|
6
6
|
# Class for snapshots of file system
|
|
7
7
|
class Snapshot
|
|
8
8
|
extend Forwardable
|
|
9
|
-
|
|
9
|
+
|
|
10
|
+
def_delegators :@data, :[], :each, :each_key, :keys
|
|
10
11
|
|
|
11
12
|
def initialize(filenames)
|
|
12
13
|
@data = filenames.each_with_object({}) do |filename, data|
|
|
@@ -21,7 +22,7 @@ class Filewatcher
|
|
|
21
22
|
changes[filename] = snapshot_file - other[filename]
|
|
22
23
|
end
|
|
23
24
|
|
|
24
|
-
other.
|
|
25
|
+
other.each_key do |filename|
|
|
25
26
|
changes[filename] = :deleted unless self[filename]
|
|
26
27
|
end
|
|
27
28
|
|
|
@@ -36,18 +37,18 @@ class Filewatcher
|
|
|
36
37
|
end
|
|
37
38
|
|
|
38
39
|
def populate_stats(stats)
|
|
39
|
-
defined?(super) ? super
|
|
40
|
+
defined?(super) ? super : stats
|
|
40
41
|
end
|
|
41
42
|
|
|
42
43
|
def subtractions
|
|
43
44
|
@subtractions ||= populate_subtractions(
|
|
44
|
-
created:
|
|
45
|
+
created: lambda(&:nil?),
|
|
45
46
|
updated: ->(other) { mtime && mtime > other.mtime }
|
|
46
47
|
)
|
|
47
48
|
end
|
|
48
49
|
|
|
49
50
|
def populate_subtractions(hash)
|
|
50
|
-
hash = super
|
|
51
|
+
hash = super if defined?(super)
|
|
51
52
|
hash
|
|
52
53
|
end
|
|
53
54
|
end
|
|
@@ -12,7 +12,26 @@ class Filewatcher
|
|
|
12
12
|
|
|
13
13
|
TMP_DIR = 'spec/tmp'
|
|
14
14
|
## It's requried to split modifying files from result files like CLI dumpers
|
|
15
|
-
TMP_FILES_DIR = "#{TMP_DIR}/files"
|
|
15
|
+
TMP_FILES_DIR = "#{TMP_DIR}/files".freeze
|
|
16
|
+
|
|
17
|
+
create_update_action = lambda do |change_file, change_data|
|
|
18
|
+
new_content = change_data.fetch(:content, 'content2')
|
|
19
|
+
|
|
20
|
+
FileUtils.mkdir_p File.dirname(change_file)
|
|
21
|
+
|
|
22
|
+
## There is no `File.write` because of strange difference in parallel `File.mtime`
|
|
23
|
+
## https://cirrus-ci.com/task/6107605053472768?command=test#L497-L511
|
|
24
|
+
system "echo '#{new_content}' > #{change_file}"
|
|
25
|
+
|
|
26
|
+
debug_file_mtime(change_file)
|
|
27
|
+
end.freeze
|
|
28
|
+
|
|
29
|
+
CHANGES = {
|
|
30
|
+
create: create_update_action,
|
|
31
|
+
update: create_update_action,
|
|
32
|
+
create_dir: ->(change_file, *_args) { FileUtils.mkdir_p(change_file) },
|
|
33
|
+
delete: ->(change_file, *_args) { FileUtils.remove(change_file) }
|
|
34
|
+
}.freeze
|
|
16
35
|
|
|
17
36
|
attr_reader :initial_files
|
|
18
37
|
|
|
@@ -73,25 +92,6 @@ class Filewatcher
|
|
|
73
92
|
|
|
74
93
|
private
|
|
75
94
|
|
|
76
|
-
create_update_action = lambda do |change_file, change_data|
|
|
77
|
-
new_content = change_data.fetch(:content, 'content2')
|
|
78
|
-
|
|
79
|
-
FileUtils.mkdir_p File.dirname(change_file)
|
|
80
|
-
|
|
81
|
-
## There is no `File.write` because of strange difference in parallel `File.mtime`
|
|
82
|
-
## https://cirrus-ci.com/task/6107605053472768?command=test#L497-L511
|
|
83
|
-
system "echo '#{new_content}' > #{change_file}"
|
|
84
|
-
|
|
85
|
-
debug_file_mtime(change_file)
|
|
86
|
-
end.freeze
|
|
87
|
-
|
|
88
|
-
CHANGES = {
|
|
89
|
-
create: create_update_action,
|
|
90
|
-
update: create_update_action,
|
|
91
|
-
create_dir: ->(change_file, *_args) { FileUtils.mkdir_p(change_file) },
|
|
92
|
-
delete: ->(change_file, *_args) { FileUtils.remove(change_file) }
|
|
93
|
-
}.freeze
|
|
94
|
-
|
|
95
95
|
def make_changes
|
|
96
96
|
@changes.each do |change_file, change_data|
|
|
97
97
|
debug "make changes, change_file = #{change_file}, change_data = #{change_data}"
|
data/lib/filewatcher/version.rb
CHANGED
data/spec/examples.txt
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
example_id | status | run_time |
|
|
2
2
|
------------------------------------------ | ------ | --------------- |
|
|
3
|
-
./spec/filewatcher/snapshot_spec.rb[1:1:1] | passed | 0.
|
|
3
|
+
./spec/filewatcher/snapshot_spec.rb[1:1:1] | passed | 0.00101 seconds |
|
|
4
4
|
./spec/filewatcher/snapshot_spec.rb[1:2:1] | passed | 1 second |
|
|
5
|
-
./spec/filewatcher/version_spec.rb[1:1] | passed | 0.
|
|
6
|
-
./spec/filewatcher_spec.rb[1:1:1] | passed | 0.
|
|
7
|
-
./spec/filewatcher_spec.rb[1:2:1:1:1] | passed | 6.
|
|
5
|
+
./spec/filewatcher/version_spec.rb[1:1] | passed | 0.00075 seconds |
|
|
6
|
+
./spec/filewatcher_spec.rb[1:1:1] | passed | 0.01465 seconds |
|
|
7
|
+
./spec/filewatcher_spec.rb[1:2:1:1:1] | passed | 6.01 seconds |
|
|
8
8
|
./spec/filewatcher_spec.rb[1:2:1:2:1] | passed | 5.01 seconds |
|
|
9
9
|
./spec/filewatcher_spec.rb[1:2:1:3:1] | passed | 5.01 seconds |
|
|
10
10
|
./spec/filewatcher_spec.rb[1:2:1:4:1] | passed | 5.01 seconds |
|
|
@@ -16,13 +16,13 @@ example_id | status | run_time |
|
|
|
16
16
|
./spec/filewatcher_spec.rb[1:2:2:2:1] | passed | 2 seconds |
|
|
17
17
|
./spec/filewatcher_spec.rb[1:2:2:2:2:1] | passed | 2 seconds |
|
|
18
18
|
./spec/filewatcher_spec.rb[1:3:1:1:1] | passed | 5.01 seconds |
|
|
19
|
-
./spec/filewatcher_spec.rb[1:3:1:2:1] | passed | 5.
|
|
19
|
+
./spec/filewatcher_spec.rb[1:3:1:2:1] | passed | 5.01 seconds |
|
|
20
20
|
./spec/filewatcher_spec.rb[1:3:1:3:1] | passed | 5.01 seconds |
|
|
21
21
|
./spec/filewatcher_spec.rb[1:3:1:4:1] | passed | 5.01 seconds |
|
|
22
22
|
./spec/filewatcher_spec.rb[1:3:1:5:1] | passed | 5.01 seconds |
|
|
23
|
-
./spec/filewatcher_spec.rb[1:3:2:1] | passed | 2
|
|
23
|
+
./spec/filewatcher_spec.rb[1:3:2:1] | passed | 2 seconds |
|
|
24
24
|
./spec/filewatcher_spec.rb[1:4:1] | passed | 2 seconds |
|
|
25
25
|
./spec/filewatcher_spec.rb[1:5:1] | passed | 7.21 seconds |
|
|
26
26
|
./spec/filewatcher_spec.rb[1:6:1:1] | passed | 7.41 seconds |
|
|
27
|
-
./spec/filewatcher_spec.rb[1:6:2:1] | passed | 11.
|
|
27
|
+
./spec/filewatcher_spec.rb[1:6:2:1] | passed | 11.61 seconds |
|
|
28
28
|
./spec/filewatcher_spec.rb[1:7:1] | passed | 6.01 seconds |
|
data/spec/filewatcher_spec.rb
CHANGED
|
@@ -10,7 +10,7 @@ describe Filewatcher do
|
|
|
10
10
|
logger.debug "FileUtils.rm_r #{tmp_dir}"
|
|
11
11
|
FileUtils.rm_r tmp_dir if File.exist?(tmp_dir)
|
|
12
12
|
|
|
13
|
-
|
|
13
|
+
described_class::SpecHelper.wait seconds: 5, interval: 0.2 do
|
|
14
14
|
!File.exist?(tmp_dir)
|
|
15
15
|
end
|
|
16
16
|
end
|
|
@@ -23,11 +23,11 @@ describe Filewatcher do
|
|
|
23
23
|
ruby_watch_run_class.transform_spec_files(file)
|
|
24
24
|
end
|
|
25
25
|
|
|
26
|
-
let(:ruby_watch_run_class) {
|
|
26
|
+
let(:ruby_watch_run_class) { described_class::SpecHelper::RubyWatchRun }
|
|
27
27
|
|
|
28
28
|
let(:tmp_dir) { ruby_watch_run_class::TMP_DIR }
|
|
29
29
|
let(:tmp_files_dir) { ruby_watch_run_class::TMP_FILES_DIR }
|
|
30
|
-
let(:logger) {
|
|
30
|
+
let(:logger) { described_class::SpecHelper.logger }
|
|
31
31
|
|
|
32
32
|
let(:raw_file_name) { 'tmp_file.txt' }
|
|
33
33
|
let(:initial_files) { { raw_file_name => {} } }
|
|
@@ -68,7 +68,7 @@ describe Filewatcher do
|
|
|
68
68
|
subject(:method_call) { described_class.print_version }
|
|
69
69
|
|
|
70
70
|
let(:ruby_version_regexp) { '(j|truffle)?ruby \d+\.\d+\.\d+.*' }
|
|
71
|
-
let(:filewatcher_version_regexp) { "Filewatcher #{
|
|
71
|
+
let(:filewatcher_version_regexp) { "Filewatcher #{described_class::VERSION}" }
|
|
72
72
|
|
|
73
73
|
it do
|
|
74
74
|
expect { method_call }.to output(
|
|
@@ -124,22 +124,24 @@ describe Filewatcher do
|
|
|
124
124
|
end
|
|
125
125
|
|
|
126
126
|
context 'with Array of paths' do
|
|
127
|
-
let(:
|
|
127
|
+
let(:initial_file) { 'tmp_initial_file.txt' }
|
|
128
128
|
let(:subdir) { 'subdir' }
|
|
129
|
-
let(:
|
|
129
|
+
let(:new_file) { "#{subdir}/tmp_new_file.txt" }
|
|
130
130
|
|
|
131
|
-
let(:filewatcher_files)
|
|
131
|
+
let(:filewatcher_files) do
|
|
132
|
+
["#{tmp_files_dir}/#{initial_file}", "#{tmp_files_dir}/#{subdir}"]
|
|
133
|
+
end
|
|
132
134
|
|
|
133
135
|
let(:initial_files) do
|
|
134
136
|
{
|
|
135
|
-
|
|
137
|
+
initial_file => {}
|
|
136
138
|
}
|
|
137
139
|
end
|
|
138
140
|
|
|
139
141
|
let(:changes) do
|
|
140
142
|
initial_files.to_h { |key, _value| [transform_spec_files(key), { event: :update }] }
|
|
141
143
|
.merge(
|
|
142
|
-
transform_spec_files(
|
|
144
|
+
transform_spec_files(new_file) => { event: :create }
|
|
143
145
|
)
|
|
144
146
|
end
|
|
145
147
|
|
|
@@ -147,14 +149,14 @@ describe Filewatcher do
|
|
|
147
149
|
[
|
|
148
150
|
initial_files.to_h { |key, _value| [transform_spec_files(key), :updated] }
|
|
149
151
|
.merge(
|
|
150
|
-
|
|
152
|
+
expected_new_file_change
|
|
151
153
|
)
|
|
152
154
|
]
|
|
153
155
|
end
|
|
154
156
|
|
|
155
|
-
let(:
|
|
157
|
+
let(:expected_new_file_change) do
|
|
156
158
|
{
|
|
157
|
-
transform_spec_files(
|
|
159
|
+
transform_spec_files(new_file) => :created
|
|
158
160
|
}
|
|
159
161
|
end
|
|
160
162
|
|
|
@@ -163,7 +165,7 @@ describe Filewatcher do
|
|
|
163
165
|
expect(processed).to eq(expected_changes)
|
|
164
166
|
.or contain_exactly(
|
|
165
167
|
*initial_files.map { |key, _value| { transform_spec_files(key) => :updated } },
|
|
166
|
-
|
|
168
|
+
expected_new_file_change
|
|
167
169
|
)
|
|
168
170
|
end
|
|
169
171
|
end
|
|
@@ -298,7 +300,7 @@ describe Filewatcher do
|
|
|
298
300
|
logger.debug 'filewatcher.pause'
|
|
299
301
|
watch_run.filewatcher.pause
|
|
300
302
|
|
|
301
|
-
|
|
303
|
+
described_class::SpecHelper.wait seconds: 1
|
|
302
304
|
|
|
303
305
|
write_tmp_files 1..4
|
|
304
306
|
end
|
metadata
CHANGED
|
@@ -1,184 +1,43 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: filewatcher
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version:
|
|
4
|
+
version: 3.0.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Thomas Flemming
|
|
8
8
|
- Alexander Popov
|
|
9
|
-
autorequire:
|
|
10
9
|
bindir: bin
|
|
11
10
|
cert_chain: []
|
|
12
|
-
date:
|
|
11
|
+
date: 2026-02-03 00:00:00.000000000 Z
|
|
13
12
|
dependencies:
|
|
14
13
|
- !ruby/object:Gem::Dependency
|
|
15
|
-
name:
|
|
14
|
+
name: logger
|
|
16
15
|
requirement: !ruby/object:Gem::Requirement
|
|
17
16
|
requirements:
|
|
18
17
|
- - "~>"
|
|
19
18
|
- !ruby/object:Gem::Version
|
|
20
|
-
version:
|
|
19
|
+
version: '1.7'
|
|
21
20
|
type: :runtime
|
|
22
21
|
prerelease: false
|
|
23
22
|
version_requirements: !ruby/object:Gem::Requirement
|
|
24
23
|
requirements:
|
|
25
24
|
- - "~>"
|
|
26
25
|
- !ruby/object:Gem::Version
|
|
27
|
-
version:
|
|
28
|
-
- !ruby/object:Gem::Dependency
|
|
29
|
-
name: bundler
|
|
30
|
-
requirement: !ruby/object:Gem::Requirement
|
|
31
|
-
requirements:
|
|
32
|
-
- - "~>"
|
|
33
|
-
- !ruby/object:Gem::Version
|
|
34
|
-
version: '2.0'
|
|
35
|
-
type: :development
|
|
36
|
-
prerelease: false
|
|
37
|
-
version_requirements: !ruby/object:Gem::Requirement
|
|
38
|
-
requirements:
|
|
39
|
-
- - "~>"
|
|
40
|
-
- !ruby/object:Gem::Version
|
|
41
|
-
version: '2.0'
|
|
42
|
-
- !ruby/object:Gem::Dependency
|
|
43
|
-
name: bundler-audit
|
|
44
|
-
requirement: !ruby/object:Gem::Requirement
|
|
45
|
-
requirements:
|
|
46
|
-
- - "~>"
|
|
47
|
-
- !ruby/object:Gem::Version
|
|
48
|
-
version: 0.9.0
|
|
49
|
-
type: :development
|
|
50
|
-
prerelease: false
|
|
51
|
-
version_requirements: !ruby/object:Gem::Requirement
|
|
52
|
-
requirements:
|
|
53
|
-
- - "~>"
|
|
54
|
-
- !ruby/object:Gem::Version
|
|
55
|
-
version: 0.9.0
|
|
56
|
-
- !ruby/object:Gem::Dependency
|
|
57
|
-
name: gem_toys
|
|
58
|
-
requirement: !ruby/object:Gem::Requirement
|
|
59
|
-
requirements:
|
|
60
|
-
- - "~>"
|
|
61
|
-
- !ruby/object:Gem::Version
|
|
62
|
-
version: 0.12.1
|
|
63
|
-
type: :development
|
|
64
|
-
prerelease: false
|
|
65
|
-
version_requirements: !ruby/object:Gem::Requirement
|
|
66
|
-
requirements:
|
|
67
|
-
- - "~>"
|
|
68
|
-
- !ruby/object:Gem::Version
|
|
69
|
-
version: 0.12.1
|
|
26
|
+
version: '1.7'
|
|
70
27
|
- !ruby/object:Gem::Dependency
|
|
71
|
-
name:
|
|
72
|
-
requirement: !ruby/object:Gem::Requirement
|
|
73
|
-
requirements:
|
|
74
|
-
- - "~>"
|
|
75
|
-
- !ruby/object:Gem::Version
|
|
76
|
-
version: 0.14.2
|
|
77
|
-
type: :development
|
|
78
|
-
prerelease: false
|
|
79
|
-
version_requirements: !ruby/object:Gem::Requirement
|
|
80
|
-
requirements:
|
|
81
|
-
- - "~>"
|
|
82
|
-
- !ruby/object:Gem::Version
|
|
83
|
-
version: 0.14.2
|
|
84
|
-
- !ruby/object:Gem::Dependency
|
|
85
|
-
name: codecov
|
|
86
|
-
requirement: !ruby/object:Gem::Requirement
|
|
87
|
-
requirements:
|
|
88
|
-
- - "~>"
|
|
89
|
-
- !ruby/object:Gem::Version
|
|
90
|
-
version: 0.6.0
|
|
91
|
-
type: :development
|
|
92
|
-
prerelease: false
|
|
93
|
-
version_requirements: !ruby/object:Gem::Requirement
|
|
94
|
-
requirements:
|
|
95
|
-
- - "~>"
|
|
96
|
-
- !ruby/object:Gem::Version
|
|
97
|
-
version: 0.6.0
|
|
98
|
-
- !ruby/object:Gem::Dependency
|
|
99
|
-
name: rspec
|
|
100
|
-
requirement: !ruby/object:Gem::Requirement
|
|
101
|
-
requirements:
|
|
102
|
-
- - "~>"
|
|
103
|
-
- !ruby/object:Gem::Version
|
|
104
|
-
version: '3.8'
|
|
105
|
-
type: :development
|
|
106
|
-
prerelease: false
|
|
107
|
-
version_requirements: !ruby/object:Gem::Requirement
|
|
108
|
-
requirements:
|
|
109
|
-
- - "~>"
|
|
110
|
-
- !ruby/object:Gem::Version
|
|
111
|
-
version: '3.8'
|
|
112
|
-
- !ruby/object:Gem::Dependency
|
|
113
|
-
name: simplecov
|
|
114
|
-
requirement: !ruby/object:Gem::Requirement
|
|
115
|
-
requirements:
|
|
116
|
-
- - "~>"
|
|
117
|
-
- !ruby/object:Gem::Version
|
|
118
|
-
version: 0.21.0
|
|
119
|
-
type: :development
|
|
120
|
-
prerelease: false
|
|
121
|
-
version_requirements: !ruby/object:Gem::Requirement
|
|
122
|
-
requirements:
|
|
123
|
-
- - "~>"
|
|
124
|
-
- !ruby/object:Gem::Version
|
|
125
|
-
version: 0.21.0
|
|
126
|
-
- !ruby/object:Gem::Dependency
|
|
127
|
-
name: simplecov-cobertura
|
|
128
|
-
requirement: !ruby/object:Gem::Requirement
|
|
129
|
-
requirements:
|
|
130
|
-
- - "~>"
|
|
131
|
-
- !ruby/object:Gem::Version
|
|
132
|
-
version: '2.1'
|
|
133
|
-
type: :development
|
|
134
|
-
prerelease: false
|
|
135
|
-
version_requirements: !ruby/object:Gem::Requirement
|
|
136
|
-
requirements:
|
|
137
|
-
- - "~>"
|
|
138
|
-
- !ruby/object:Gem::Version
|
|
139
|
-
version: '2.1'
|
|
140
|
-
- !ruby/object:Gem::Dependency
|
|
141
|
-
name: rubocop
|
|
142
|
-
requirement: !ruby/object:Gem::Requirement
|
|
143
|
-
requirements:
|
|
144
|
-
- - "~>"
|
|
145
|
-
- !ruby/object:Gem::Version
|
|
146
|
-
version: 1.39.0
|
|
147
|
-
type: :development
|
|
148
|
-
prerelease: false
|
|
149
|
-
version_requirements: !ruby/object:Gem::Requirement
|
|
150
|
-
requirements:
|
|
151
|
-
- - "~>"
|
|
152
|
-
- !ruby/object:Gem::Version
|
|
153
|
-
version: 1.39.0
|
|
154
|
-
- !ruby/object:Gem::Dependency
|
|
155
|
-
name: rubocop-performance
|
|
156
|
-
requirement: !ruby/object:Gem::Requirement
|
|
157
|
-
requirements:
|
|
158
|
-
- - "~>"
|
|
159
|
-
- !ruby/object:Gem::Version
|
|
160
|
-
version: '1.5'
|
|
161
|
-
type: :development
|
|
162
|
-
prerelease: false
|
|
163
|
-
version_requirements: !ruby/object:Gem::Requirement
|
|
164
|
-
requirements:
|
|
165
|
-
- - "~>"
|
|
166
|
-
- !ruby/object:Gem::Version
|
|
167
|
-
version: '1.5'
|
|
168
|
-
- !ruby/object:Gem::Dependency
|
|
169
|
-
name: rubocop-rspec
|
|
28
|
+
name: module_methods
|
|
170
29
|
requirement: !ruby/object:Gem::Requirement
|
|
171
30
|
requirements:
|
|
172
31
|
- - "~>"
|
|
173
32
|
- !ruby/object:Gem::Version
|
|
174
|
-
version:
|
|
175
|
-
type: :
|
|
33
|
+
version: 0.1.0
|
|
34
|
+
type: :runtime
|
|
176
35
|
prerelease: false
|
|
177
36
|
version_requirements: !ruby/object:Gem::Requirement
|
|
178
37
|
requirements:
|
|
179
38
|
- - "~>"
|
|
180
39
|
- !ruby/object:Gem::Version
|
|
181
|
-
version:
|
|
40
|
+
version: 0.1.0
|
|
182
41
|
description: Detect changes in file system. Works anywhere.
|
|
183
42
|
email:
|
|
184
43
|
- thomas.flemming@gmail.com
|
|
@@ -205,7 +64,6 @@ licenses:
|
|
|
205
64
|
- MIT
|
|
206
65
|
metadata:
|
|
207
66
|
rubygems_mfa_required: 'true'
|
|
208
|
-
post_install_message:
|
|
209
67
|
rdoc_options: []
|
|
210
68
|
require_paths:
|
|
211
69
|
- lib
|
|
@@ -213,18 +71,17 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
|
213
71
|
requirements:
|
|
214
72
|
- - ">="
|
|
215
73
|
- !ruby/object:Gem::Version
|
|
216
|
-
version: '2
|
|
74
|
+
version: '3.2'
|
|
217
75
|
- - "<"
|
|
218
76
|
- !ruby/object:Gem::Version
|
|
219
|
-
version: '
|
|
77
|
+
version: '5'
|
|
220
78
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
|
221
79
|
requirements:
|
|
222
80
|
- - ">="
|
|
223
81
|
- !ruby/object:Gem::Version
|
|
224
82
|
version: '0'
|
|
225
83
|
requirements: []
|
|
226
|
-
rubygems_version: 3.
|
|
227
|
-
signing_key:
|
|
84
|
+
rubygems_version: 3.6.2
|
|
228
85
|
specification_version: 4
|
|
229
86
|
summary: Lightweight filewatcher.
|
|
230
87
|
test_files: []
|