maid 0.7.0 → 0.8.0.alpha.1

Sign up to get free protection for your applications and to get access to all the features.
@@ -12,3 +12,4 @@ rvm:
12
12
  - 2.1.5
13
13
  - 2.2.0
14
14
  - 2.2.1
15
+ - 2.2.2
data/AUTHORS.md CHANGED
@@ -18,4 +18,5 @@ In alphabetical order:
18
18
  * Nico Ritschel (@nicosuave)
19
19
  * Pedro Lambert (@p-lambert)
20
20
  * Shiro Hazuki (@HazukiShiro)
21
+ * Song Chen Wen (宋辰文, @songchenwen)
21
22
  * Vladimir Agafonkin (@mourner)
data/ChangeLog CHANGED
@@ -1,4 +1,16 @@
1
- maid (0.7.0) unstable; urgency=low
1
+ maid (0.8.0) unstable; urgency=low
2
+
3
+ * Started official support for Ruby 2.2.2.
4
+ * Song Chen Wen: Added OSX tagging tools (depends on `brew install tag`):
5
+ "tags", "has_tags?", "contains_tag?", "add_tag", "remove_tag", "set_tag"
6
+ (Closes: #125)
7
+ * Song Chen Wen: Added "hidden?", "has_been_used?", "used_at", "added_at"
8
+ tools, using OSX Spotlight metadata when available
9
+ * Song Chen Wen: Added Aria2 and Tunder support to "downloading?" tool
10
+
11
+ -- Benjamin Oakes <hello@benjaminoakes.com> TODO
12
+
13
+ maid (0.7.0) stable; urgency=low
2
14
 
3
15
  * Stats! { 'collaborators' => 19, 'downloads' => 19988, 'forks' => 49,
4
16
  'open_issues' => 40, 'closed_issues' => 105, 'stars' => 1070,
@@ -11,7 +23,7 @@ maid (0.7.0) unstable; urgency=low
11
23
  * Itsuki Kurokawa: Add "ignore_child_dirs", "tree_empty?" tools. (Closes: #144, #145)
12
24
  * Bugfix: "copy" now respects the dry-run/noop option
13
25
 
14
- -- Benjamin Oakes <hello@benjaminoakes.com> TODO
26
+ -- Benjamin Oakes <hello@benjaminoakes.com> Sat, 28 Mar 2015 22:13:00 +0000
15
27
 
16
28
  maid (0.6.1) stable; urgency=low
17
29
 
@@ -9,6 +9,8 @@ require 'mime/types'
9
9
  require 'dimensions'
10
10
  require 'zip'
11
11
 
12
+ require 'pathname'
13
+
12
14
  # These "tools" are methods available in the Maid DSL.
13
15
  #
14
16
  # In general, methods are expected to:
@@ -360,7 +362,7 @@ module Maid::Tools
360
362
  #
361
363
  # See also: `dir_safe`
362
364
  def downloading?(path)
363
- !!(chrome_downloading?(path) || firefox_downloading?(path) || safari_downloading?(path))
365
+ !!(chrome_downloading?(path) || firefox_downloading?(path) || safari_downloading?(path) || aria2_downloading?(path) || thunder_downloading?(path))
364
366
  end
365
367
 
366
368
  # Find all duplicate files in the given globs.
@@ -754,6 +756,188 @@ module Maid::Tools
754
756
  }
755
757
  end
756
758
 
759
+
760
+ # Get a list of Finder labels of a file or directory. Only available on OS X when you have tag installed.
761
+ #
762
+ # ## Example
763
+ #
764
+ # tags("~/Downloads/a.dmg.download") # => ["Unfinished"]
765
+ def tags(path)
766
+ unless has_tag_available_and_warn?()
767
+ return []
768
+ end
769
+
770
+ path = sh_escape(expand(path))
771
+ raw = cmd("tag -lN #{path}")
772
+ raw.strip.split(',')
773
+ end
774
+
775
+ # Tell if a file or directory has any Finder labels. Only available on OS X when you have tag installed.
776
+ #
777
+ # ## Example
778
+ #
779
+ # has_tags?("~/Downloads/a.dmg.download") # => true
780
+ def has_tags?(path)
781
+ unless has_tag_available_and_warn?()
782
+ return false
783
+ end
784
+
785
+ ts = tags(path)
786
+ ts && ts.count > 0
787
+ end
788
+
789
+ # Tell if a file or directory has a certain Finder labels. Only available on OS X when you have tag installed.
790
+ #
791
+ # ## Example
792
+ #
793
+ # contains_tag?("~/Downloads/a.dmg.download", "Unfinished") # => true
794
+ def contains_tag?(path, tag)
795
+ unless has_tag_available_and_warn?()
796
+ return false
797
+ end
798
+
799
+ path = expand(path)
800
+ ts = tags(path)
801
+ ts.include? tag
802
+ end
803
+
804
+ # Add a Finder label or a list of labels to a file or directory. Only available on OS X when you have tag installed.
805
+ #
806
+ # ## Example
807
+ #
808
+ # add_tag("~/Downloads/a.dmg.download", "Unfinished")
809
+ def add_tag(path, tag)
810
+ unless has_tag_available_and_warn?()
811
+ return
812
+ end
813
+
814
+ path = expand(path)
815
+ ts = Array(tag).join(",")
816
+ log "add tags #{ts} to #{path}"
817
+ if !@file_options[:noop]
818
+ cmd("tag -a #{ts} #{sh_escape(path)}")
819
+ end
820
+ end
821
+
822
+ # Remove a Finder label or a list of labels from a file or directory. Only available on OS X when you have tag installed.
823
+ #
824
+ # ## Example
825
+ #
826
+ # remove_tag("~/Downloads/a.dmg", "Unfinished")
827
+ def remove_tag(path, tag)
828
+ unless has_tag_available_and_warn?()
829
+ return
830
+ end
831
+
832
+ path = expand(path)
833
+ ts = Array(tag).join(",")
834
+ log "remove tags #{ts} from #{path}"
835
+ if !@file_options[:noop]
836
+ cmd("tag -r #{ts} #{sh_escape(path)}")
837
+ end
838
+ end
839
+
840
+ # Set Finder label of a file or directory to a label or a list of labels. Only available on OS X when you have tag installed.
841
+ #
842
+ # ## Example
843
+ #
844
+ # set_tag("~/Downloads/a.dmg.download", "Unfinished")
845
+ def set_tag(path, tag)
846
+ unless has_tag_available_and_warn?()
847
+ return
848
+ end
849
+
850
+ path = expand(path)
851
+ ts = Array(tag).join(",")
852
+ log "set tags #{ts} to #{path}"
853
+ if !@file_options[:noop]
854
+ `tag -s "#{ts}" "#{path}"`
855
+ end
856
+ end
857
+
858
+ # Tell if a file is hidden
859
+ #
860
+ # ## Example
861
+ #
862
+ # hidden?("~/.maid") # => true
863
+ def hidden?(path)
864
+ if Maid::Platform.osx?
865
+ attribute = 'kMDItemFSInvisible'
866
+ raw = cmd("mdls -raw -name #{attribute} #{ sh_escape(path) }")
867
+ return raw == '1'
868
+ else
869
+ p = Pathname.new(expand(path))
870
+ return p.basename =~ /^\./
871
+ end
872
+ end
873
+
874
+ # Tell if a file has been used since added
875
+ #
876
+ # ## Example
877
+ #
878
+ # has_been_used?("~/Downloads/downloading.download") # => false
879
+ def has_been_used?(path)
880
+ if Maid::Platform.osx?
881
+ path = expand(path)
882
+ raw = cmd("mdls -raw -name kMDItemLastUsedDate #{ sh_escape(path) }")
883
+ if raw == "(null)"
884
+ return false
885
+ end
886
+ begin
887
+ DateTime.parse(raw).to_time
888
+ return true
889
+ rescue Exception => e
890
+ return false
891
+ end
892
+ else
893
+ return used_at(path) <=> added_at(path) > 0
894
+ end
895
+ end
896
+
897
+ # The last used time of a file on OS X, or atime on Linux.
898
+ #
899
+ # ## Example
900
+ #
901
+ # used_at("foo.zip") # => Sat Apr 09 10:50:01 -0400 2011
902
+ def used_at(path)
903
+ if Maid::Platform.osx?
904
+ path = expand(path)
905
+ raw = cmd("mdls -raw -name kMDItemLastUsedDate #{ sh_escape(path) }")
906
+ if raw == "(null)"
907
+ return 3650.day.ago
908
+ end
909
+ begin
910
+ return DateTime.parse(raw).to_time
911
+ rescue Exception => e
912
+ return accessed_at(path)
913
+ end
914
+ else
915
+ return accessed_at(path)
916
+ end
917
+ end
918
+
919
+ # The added time of a file on OS X, or ctime on Linux.
920
+ #
921
+ # ## Example
922
+ #
923
+ # added_at("foo.zip") # => Sat Apr 09 10:50:01 -0400 2011
924
+ def added_at(path)
925
+ if Maid::Platform.osx?
926
+ path = expand(path)
927
+ raw = cmd("mdls -raw -name kMDItemDateAdded #{ sh_escape(path) }")
928
+ if raw == "(null)"
929
+ return 1.second.ago
930
+ end
931
+ begin
932
+ return DateTime.parse(raw).to_time
933
+ rescue Exception => e
934
+ return created_at(path)
935
+ end
936
+ else
937
+ return created_at(path)
938
+ end
939
+ end
940
+
757
941
  private
758
942
 
759
943
  def firefox_downloading?(path)
@@ -769,6 +953,30 @@ module Maid::Tools
769
953
  path =~ /\.download$/
770
954
  end
771
955
 
956
+ def aria2_downloading?(path)
957
+ File.exist?("#{path}.aria2") || path =~ /\.aria2$/
958
+ end
959
+
960
+ def thunder_downloading?(path)
961
+ path =~ /\.td$/ || path =~ /\.td.cfg$/
962
+ end
963
+
964
+ def has_tag_available?()
965
+ return Maid::Platform.osx? && system("which -s tag")
966
+ end
967
+
968
+ def has_tag_available_and_warn?()
969
+ unless has_tag_available?
970
+ if Maid::Platform.osx?
971
+ warn("To use this feature, you need `tag` installed. Run `brew install tag`")
972
+ else
973
+ warn("sorry, tagging is unavailable on your platform")
974
+ end
975
+ return false
976
+ end
977
+ return true
978
+ end
979
+
772
980
  def sh_escape(array)
773
981
  Escape.shell_command(Array(array))
774
982
  end
@@ -1,4 +1,4 @@
1
1
  module Maid
2
- VERSION = '0.7.0'
2
+ VERSION = '0.8.0.alpha.1'
3
3
  SUMMARY = 'Be lazy. Let Maid clean up after you, based on rules you define. Think of it as "Hazel for hackers".'
4
4
  end
@@ -771,5 +771,150 @@ module Maid
771
771
  expect(@maid.ignore_child_dirs(src).sort).to eq(expected)
772
772
  end
773
773
  end
774
+
775
+ describe '#tags' do
776
+ before do
777
+ @test_file = (@test_dir = '~/.maid/test/') + (@file_name = 'tag.zip')
778
+ `mkdir -p #{@test_dir}`
779
+ `touch #{@test_file}`
780
+ @maid.file_options[:noop] = false
781
+ end
782
+
783
+ after do
784
+ `rm -r #{@test_dir}`
785
+ @maid.file_options[:noop] = true
786
+ end
787
+
788
+ it 'get tags from a file that has one' do
789
+ if system("which -s tag")
790
+ @maid.file_options[:noop] = false
791
+ @maid.add_tag(@test_file, "Test")
792
+ expect(@maid.tags(@test_file)).to eq(["Test"])
793
+ end
794
+ end
795
+
796
+ it 'get tags from a file that has serveral tags' do
797
+ if system("which -s tag")
798
+ @maid.file_options[:noop] = false
799
+ @maid.add_tag(@test_file, ["Test", "Twice"])
800
+ expect(@maid.tags(@test_file)).to eq(["Test", "Twice"])
801
+ end
802
+ end
803
+ end
804
+
805
+ describe '#has_tags?' do
806
+ before do
807
+ @test_file = (@test_dir = '~/.maid/test/') + (@file_name = 'tag.zip')
808
+ `mkdir -p #{@test_dir}`
809
+ `touch #{@test_file}`
810
+ @maid.file_options[:noop] = false
811
+ end
812
+
813
+ after do
814
+ `rm -r #{@test_dir}`
815
+ @maid.file_options[:noop] = true
816
+ end
817
+
818
+ it 'A file with tags' do
819
+ if system("which -s tag")
820
+ @maid.add_tag(@test_file, "Test")
821
+ expect(@maid.has_tags?(@test_file)).to be(true)
822
+ end
823
+ end
824
+
825
+ it 'A file without tags' do
826
+ expect(@maid.has_tags?(@test_file)).to be(false)
827
+ end
828
+ end
829
+
830
+ describe '#contains_tag?' do
831
+ before do
832
+ @test_file = (@test_dir = '~/.maid/test/') + (@file_name = 'tag.zip')
833
+ `mkdir -p #{@test_dir}`
834
+ `touch #{@test_file}`
835
+ @maid.file_options[:noop] = false
836
+ end
837
+
838
+ after do
839
+ `rm -r #{@test_dir}`
840
+ @maid.file_options[:noop] = true
841
+ end
842
+
843
+ it 'A file with Test tag' do
844
+ if system("which -s tag")
845
+ @maid.add_tag(@test_file, "Test")
846
+ expect(@maid.contains_tag?(@test_file, "Test")).to be(true)
847
+ expect(@maid.contains_tag?(@test_file, "Not there")).to be(false)
848
+ end
849
+ end
850
+ end
851
+
852
+ describe '#add_tag' do
853
+ before do
854
+ @test_file = (@test_dir = '~/.maid/test/') + (@file_name = 'tag.zip')
855
+ `mkdir -p #{@test_dir}`
856
+ `touch #{@test_file}`
857
+ @maid.file_options[:noop] = false
858
+ end
859
+
860
+ after do
861
+ `rm -r #{@test_dir}`
862
+ @maid.file_options[:noop] = true
863
+ end
864
+
865
+ it 'Add Test tag to a file' do
866
+ if system("which -s tag")
867
+ @maid.add_tag(@test_file, "Test")
868
+ expect(@maid.contains_tag?(@test_file, "Test")).to be(true)
869
+ end
870
+ end
871
+ end
872
+
873
+ describe '#remove_tag' do
874
+ before do
875
+ @test_file = (@test_dir = '~/.maid/test/') + (@file_name = 'tag.zip')
876
+ `mkdir -p #{@test_dir}`
877
+ `touch #{@test_file}`
878
+ @maid.file_options[:noop] = false
879
+ end
880
+
881
+ after do
882
+ `rm -r #{@test_dir}`
883
+ @maid.file_options[:noop] = true
884
+ end
885
+
886
+ it 'Remove Test tag from a file' do
887
+ if system("which -s tag")
888
+ @maid.add_tag(@test_file, "Test")
889
+ expect(@maid.contains_tag?(@test_file, "Test")).to be(true)
890
+ @maid.remove_tag(@test_file, "Test")
891
+ expect(@maid.contains_tag?(@test_file, "Test")).to be(false)
892
+ end
893
+ end
894
+ end
895
+
896
+ describe '#set_tag' do
897
+ before do
898
+ @test_file = (@test_dir = '~/.maid/test/') + (@file_name = 'tag.zip')
899
+ `mkdir -p #{@test_dir}`
900
+ `touch #{@test_file}`
901
+ @maid.file_options[:noop] = false
902
+ end
903
+
904
+ after do
905
+ `rm -r #{@test_dir}`
906
+ @maid.file_options[:noop] = true
907
+ end
908
+
909
+ it 'Set Test tags to a file' do
910
+ if system("which -s tag")
911
+ @maid.set_tag(@test_file, "Test")
912
+ expect(@maid.contains_tag?(@test_file, "Test")).to be(true)
913
+ @maid.set_tag(@test_file, ["Test", "Twice"])
914
+ expect(@maid.contains_tag?(@test_file, "Test")).to be(true)
915
+ expect(@maid.contains_tag?(@test_file, "Twice")).to be(true)
916
+ end
917
+ end
918
+ end
774
919
  end
775
920
  end
metadata CHANGED
@@ -1,19 +1,19 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: maid
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.7.0
5
- prerelease:
4
+ version: 0.8.0.alpha.1
5
+ prerelease: 6
6
6
  platform: ruby
7
7
  authors:
8
8
  - Benjamin Oakes
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2015-03-28 00:00:00.000000000 Z
12
+ date: 2015-04-17 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: escape
16
- requirement: &10942860 !ruby/object:Gem::Requirement
16
+ requirement: &6312460 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ! '>='
@@ -24,10 +24,10 @@ dependencies:
24
24
  version: 0.1.0
25
25
  type: :runtime
26
26
  prerelease: false
27
- version_requirements: *10942860
27
+ version_requirements: *6312460
28
28
  - !ruby/object:Gem::Dependency
29
29
  name: thor
30
- requirement: &10960780 !ruby/object:Gem::Requirement
30
+ requirement: &6307360 !ruby/object:Gem::Requirement
31
31
  none: false
32
32
  requirements:
33
33
  - - ! '>='
@@ -38,10 +38,10 @@ dependencies:
38
38
  version: 1.0.0
39
39
  type: :runtime
40
40
  prerelease: false
41
- version_requirements: *10960780
41
+ version_requirements: *6307360
42
42
  - !ruby/object:Gem::Dependency
43
43
  name: deprecated
44
- requirement: &10981960 !ruby/object:Gem::Requirement
44
+ requirement: &6305140 !ruby/object:Gem::Requirement
45
45
  none: false
46
46
  requirements:
47
47
  - - ~>
@@ -49,10 +49,10 @@ dependencies:
49
49
  version: 3.0.0
50
50
  type: :runtime
51
51
  prerelease: false
52
- version_requirements: *10981960
52
+ version_requirements: *6305140
53
53
  - !ruby/object:Gem::Dependency
54
54
  name: dimensions
55
- requirement: &10979360 !ruby/object:Gem::Requirement
55
+ requirement: &6303640 !ruby/object:Gem::Requirement
56
56
  none: false
57
57
  requirements:
58
58
  - - ! '>='
@@ -63,10 +63,10 @@ dependencies:
63
63
  version: '2.0'
64
64
  type: :runtime
65
65
  prerelease: false
66
- version_requirements: *10979360
66
+ version_requirements: *6303640
67
67
  - !ruby/object:Gem::Dependency
68
68
  name: mime-types
69
- requirement: &10976100 !ruby/object:Gem::Requirement
69
+ requirement: &6300180 !ruby/object:Gem::Requirement
70
70
  none: false
71
71
  requirements:
72
72
  - - ~>
@@ -74,10 +74,10 @@ dependencies:
74
74
  version: '2.0'
75
75
  type: :runtime
76
76
  prerelease: false
77
- version_requirements: *10976100
77
+ version_requirements: *6300180
78
78
  - !ruby/object:Gem::Dependency
79
79
  name: rubyzip
80
- requirement: &10990880 !ruby/object:Gem::Requirement
80
+ requirement: &6299560 !ruby/object:Gem::Requirement
81
81
  none: false
82
82
  requirements:
83
83
  - - ~>
@@ -85,10 +85,10 @@ dependencies:
85
85
  version: 1.1.0
86
86
  type: :runtime
87
87
  prerelease: false
88
- version_requirements: *10990880
88
+ version_requirements: *6299560
89
89
  - !ruby/object:Gem::Dependency
90
90
  name: xdg
91
- requirement: &10989700 !ruby/object:Gem::Requirement
91
+ requirement: &6298260 !ruby/object:Gem::Requirement
92
92
  none: false
93
93
  requirements:
94
94
  - - ~>
@@ -96,10 +96,10 @@ dependencies:
96
96
  version: 2.2.3
97
97
  type: :runtime
98
98
  prerelease: false
99
- version_requirements: *10989700
99
+ version_requirements: *6298260
100
100
  - !ruby/object:Gem::Dependency
101
101
  name: listen
102
- requirement: &10987680 !ruby/object:Gem::Requirement
102
+ requirement: &6296740 !ruby/object:Gem::Requirement
103
103
  none: false
104
104
  requirements:
105
105
  - - ! '>='
@@ -110,10 +110,10 @@ dependencies:
110
110
  version: 2.11.0
111
111
  type: :runtime
112
112
  prerelease: false
113
- version_requirements: *10987680
113
+ version_requirements: *6296740
114
114
  - !ruby/object:Gem::Dependency
115
115
  name: rufus-scheduler
116
- requirement: &10985200 !ruby/object:Gem::Requirement
116
+ requirement: &6295240 !ruby/object:Gem::Requirement
117
117
  none: false
118
118
  requirements:
119
119
  - - ~>
@@ -121,10 +121,10 @@ dependencies:
121
121
  version: 3.0.6
122
122
  type: :runtime
123
123
  prerelease: false
124
- version_requirements: *10985200
124
+ version_requirements: *6295240
125
125
  - !ruby/object:Gem::Dependency
126
126
  name: exifr
127
- requirement: &10983060 !ruby/object:Gem::Requirement
127
+ requirement: &6293880 !ruby/object:Gem::Requirement
128
128
  none: false
129
129
  requirements:
130
130
  - - ~>
@@ -132,10 +132,10 @@ dependencies:
132
132
  version: 1.2.0
133
133
  type: :runtime
134
134
  prerelease: false
135
- version_requirements: *10983060
135
+ version_requirements: *6293880
136
136
  - !ruby/object:Gem::Dependency
137
137
  name: geocoder
138
- requirement: &11006360 !ruby/object:Gem::Requirement
138
+ requirement: &6292380 !ruby/object:Gem::Requirement
139
139
  none: false
140
140
  requirements:
141
141
  - - ~>
@@ -143,10 +143,10 @@ dependencies:
143
143
  version: 1.2.0
144
144
  type: :runtime
145
145
  prerelease: false
146
- version_requirements: *11006360
146
+ version_requirements: *6292380
147
147
  - !ruby/object:Gem::Dependency
148
148
  name: fakefs
149
- requirement: &11005300 !ruby/object:Gem::Requirement
149
+ requirement: &6290640 !ruby/object:Gem::Requirement
150
150
  none: false
151
151
  requirements:
152
152
  - - ~>
@@ -154,10 +154,10 @@ dependencies:
154
154
  version: 0.4.3
155
155
  type: :development
156
156
  prerelease: false
157
- version_requirements: *11005300
157
+ version_requirements: *6290640
158
158
  - !ruby/object:Gem::Dependency
159
159
  name: guard
160
- requirement: &11004340 !ruby/object:Gem::Requirement
160
+ requirement: &6289200 !ruby/object:Gem::Requirement
161
161
  none: false
162
162
  requirements:
163
163
  - - ~>
@@ -165,10 +165,10 @@ dependencies:
165
165
  version: 2.12.5
166
166
  type: :development
167
167
  prerelease: false
168
- version_requirements: *11004340
168
+ version_requirements: *6289200
169
169
  - !ruby/object:Gem::Dependency
170
170
  name: guard-rspec
171
- requirement: &11001040 !ruby/object:Gem::Requirement
171
+ requirement: &6287740 !ruby/object:Gem::Requirement
172
172
  none: false
173
173
  requirements:
174
174
  - - ~>
@@ -176,10 +176,10 @@ dependencies:
176
176
  version: 4.5.0
177
177
  type: :development
178
178
  prerelease: false
179
- version_requirements: *11001040
179
+ version_requirements: *6287740
180
180
  - !ruby/object:Gem::Dependency
181
181
  name: rake
182
- requirement: &11032920 !ruby/object:Gem::Requirement
182
+ requirement: &6286640 !ruby/object:Gem::Requirement
183
183
  none: false
184
184
  requirements:
185
185
  - - ~>
@@ -187,10 +187,10 @@ dependencies:
187
187
  version: 10.4.2
188
188
  type: :development
189
189
  prerelease: false
190
- version_requirements: *11032920
190
+ version_requirements: *6286640
191
191
  - !ruby/object:Gem::Dependency
192
192
  name: redcarpet
193
- requirement: &11039280 !ruby/object:Gem::Requirement
193
+ requirement: &6285780 !ruby/object:Gem::Requirement
194
194
  none: false
195
195
  requirements:
196
196
  - - ~>
@@ -198,10 +198,10 @@ dependencies:
198
198
  version: 3.2.2
199
199
  type: :development
200
200
  prerelease: false
201
- version_requirements: *11039280
201
+ version_requirements: *6285780
202
202
  - !ruby/object:Gem::Dependency
203
203
  name: rspec
204
- requirement: &11056760 !ruby/object:Gem::Requirement
204
+ requirement: &6284440 !ruby/object:Gem::Requirement
205
205
  none: false
206
206
  requirements:
207
207
  - - ~>
@@ -209,10 +209,10 @@ dependencies:
209
209
  version: 3.2.0
210
210
  type: :development
211
211
  prerelease: false
212
- version_requirements: *11056760
212
+ version_requirements: *6284440
213
213
  - !ruby/object:Gem::Dependency
214
214
  name: timecop
215
- requirement: &11055540 !ruby/object:Gem::Requirement
215
+ requirement: &6282200 !ruby/object:Gem::Requirement
216
216
  none: false
217
217
  requirements:
218
218
  - - ~>
@@ -220,10 +220,10 @@ dependencies:
220
220
  version: 0.7.0
221
221
  type: :development
222
222
  prerelease: false
223
- version_requirements: *11055540
223
+ version_requirements: *6282200
224
224
  - !ruby/object:Gem::Dependency
225
225
  name: yard
226
- requirement: &11074300 !ruby/object:Gem::Requirement
226
+ requirement: &6274480 !ruby/object:Gem::Requirement
227
227
  none: false
228
228
  requirements:
229
229
  - - ~>
@@ -231,10 +231,10 @@ dependencies:
231
231
  version: 0.8.4
232
232
  type: :development
233
233
  prerelease: false
234
- version_requirements: *11074300
234
+ version_requirements: *6274480
235
235
  - !ruby/object:Gem::Dependency
236
236
  name: rb-inotify
237
- requirement: &11067880 !ruby/object:Gem::Requirement
237
+ requirement: &6270600 !ruby/object:Gem::Requirement
238
238
  none: false
239
239
  requirements:
240
240
  - - ~>
@@ -242,10 +242,10 @@ dependencies:
242
242
  version: 0.9.0
243
243
  type: :development
244
244
  prerelease: false
245
- version_requirements: *11067880
245
+ version_requirements: *6270600
246
246
  - !ruby/object:Gem::Dependency
247
247
  name: rb-fsevent
248
- requirement: &11089020 !ruby/object:Gem::Requirement
248
+ requirement: &6267620 !ruby/object:Gem::Requirement
249
249
  none: false
250
250
  requirements:
251
251
  - - ~>
@@ -253,7 +253,7 @@ dependencies:
253
253
  version: 0.9.2
254
254
  type: :development
255
255
  prerelease: false
256
- version_requirements: *11089020
256
+ version_requirements: *6267620
257
257
  description: Be lazy. Let Maid clean up after you, based on rules you define. Think
258
258
  of it as "Hazel for hackers".
259
259
  email:
@@ -311,7 +311,7 @@ files:
311
311
  - spec/fixtures/files/ruby.jpg
312
312
  - spec/fixtures/files/sydney.jpg
313
313
  - spec/fixtures/files/unknown.foo
314
- - spec/fixtures/files/さ.zip
314
+ - ! "spec/fixtures/files/ã\x81\x95.zip"
315
315
  - spec/lib/maid/app_spec.rb
316
316
  - spec/lib/maid/maid_spec.rb
317
317
  - spec/lib/maid/numeric_extensions_spec.rb
@@ -340,9 +340,9 @@ required_ruby_version: !ruby/object:Gem::Requirement
340
340
  required_rubygems_version: !ruby/object:Gem::Requirement
341
341
  none: false
342
342
  requirements:
343
- - - ! '>='
343
+ - - ! '>'
344
344
  - !ruby/object:Gem::Version
345
- version: '0'
345
+ version: 1.3.1
346
346
  requirements: []
347
347
  rubyforge_project: maid
348
348
  rubygems_version: 1.8.11